casa
5.7.0-16
|
Implementation of a ellipse. More...
#include <DSEllipse.h>
Public Member Functions | |
DSEllipse (const casacore::Bool &onlyShowOneHandle=false) | |
Constructors and destructors. More... | |
DSEllipse (const DSEllipse &other) | |
DSEllipse (const casacore::Float &xPos, const casacore::Float &yPos, const casacore::Float &major, const casacore::Float &minor, const casacore::Bool &hasHandles=false, const casacore::Bool &drawHandles=false, const casacore::Bool &onlyShowOneHandle=false) | |
virtual | ~DSEllipse () |
virtual void | draw (PixelCanvas *pix) |
General DisplayShape functions. More... | |
virtual void | move (const casacore::Float &dX, const casacore::Float &dY) |
virtual casacore::Bool | inObject (const casacore::Float &xPos, const casacore::Float &yPos) |
Is the supplied point within the DisplayShape? More... | |
virtual void | rotate (const casacore::Float &angle) |
Rotate the shape about its center by a set angle (angle in degrees). More... | |
virtual void | rotateAbout (const casacore::Float &angle, const casacore::Float &aboutX, const casacore::Float &aboutY) |
virtual void | setCenter (const casacore::Float &xPos, const casacore::Float &yPos) |
Sets the center of the DisplayShape. More... | |
virtual casacore::Vector < casacore::Float > | getCenter () |
Returns the center of the DisplayShape (x,y). More... | |
virtual void | changePoint (const casacore::Vector< casacore::Float > &newPoint) |
Changes the closest point to the supplied location to that location. More... | |
virtual void | changePoint (const casacore::Vector< casacore::Float > &newPoint, const casacore::Int nPoint) |
Changes the nth point making up the DisplayShape ot the specified location. More... | |
virtual void | scale (const casacore::Float &scaleFactor) |
Scale the shape about its center by the scaleFactor. More... | |
virtual casacore::Float | getMinorAxis () |
Functions to set / get the minor and major axis of the ellipse (in pixels). More... | |
virtual casacore::Float | getMajorAxis () |
virtual void | setMajorAxis (const casacore::Float &newMajor) |
virtual void | setMinorAxis (const casacore::Float &newMinor) |
virtual casacore::Record | getOptions () |
Get and set options. More... | |
virtual casacore::Bool | setOptions (const casacore::Record &settings) |
Public Member Functions inherited from casa::DSClosed | |
DSClosed () | |
Constructors and destructors. More... | |
DSClosed (const DSClosed &other) | |
virtual | ~DSClosed () |
virtual void | setFillStyle (DSClosed::FillStyle fill) |
Get / Set fill options. More... | |
virtual DSClosed::FillStyle | getFillStyle () |
virtual void | setFillColor (casacore::String color) |
virtual casacore::String | getFillColor () |
Public Member Functions inherited from casa::DSBasic | |
DSBasic () | |
Default constructor. More... | |
DSBasic (const DSBasic &other) | |
Copy constructor. More... | |
virtual | ~DSBasic () |
Destructor. More... | |
virtual void | setLineWidth (const casacore::Int pixels) |
Manage line width. More... | |
virtual casacore::Int | getLineWidth () |
Public Member Functions inherited from casa::DisplayShape | |
DisplayShape () | |
Default constructor. More... | |
DisplayShape (const DisplayShape &other) | |
Copy constructor. More... | |
virtual | ~DisplayShape () |
Destructor. More... | |
virtual casacore::Matrix < casacore::Float > | rotatePolygon (const casacore::Matrix< casacore::Float > &toRotate, const casacore::Float &angle, const casacore::Float &aboutX, const casacore::Float &aboutY) |
Rotate the supplied polygon (column 1 - x values, column 2 - y values) about the supplied point by the supplied angle. More... | |
virtual casacore::Vector < casacore::Float > | rotatePoint (const casacore::Vector< casacore::Float > &toRotate, const casacore::Float &angle, const casacore::Float &aboutX, const casacore::Float &aboutY) |
Rotates a point around the point specified. More... | |
virtual casacore::Matrix < casacore::Float > | translateMatrix (const casacore::Matrix< casacore::Float > &points, const casacore::Float &dx, const casacore::Float &dy) |
Translate an entire matrix by the specified dx / dy amounts. More... | |
virtual casacore::Bool | inPolygon (const casacore::Matrix< casacore::Float > &points, const casacore::Float &xPos, const casacore::Float &yPos) |
Is xPos, YPos inside the supplied points (column 1 - x values, clolumn 2 - y values) More... | |
virtual casacore::Bool | closestLine (const casacore::Matrix< casacore::Float > &points, const casacore::Float &xPos, const casacore::Float &yPos, casacore::Int &firstVert, casacore::Int &secondVert, const casacore::Bool &closedPoly=true) |
Determine the two vertices (firstVert, secondVert) which join the line closest to the xPos, yPos point supplied. More... | |
virtual casacore::Bool | closestPoint (const casacore::Matrix< casacore::Float > &points, const casacore::Float &xPos, const casacore::Float &yPos, casacore::Int &out) |
For a specified set of points, find the closest to xPos,YPos. More... | |
virtual casacore::Bool | closestPoints (const casacore::Matrix< casacore::Float > &points, const casacore::Float &xPos, const casacore::Float &yPos, casacore::Int &outClosest, casacore::Int &outSecond) |
Find the closest two Points from a casacore::Matrix to the specified point. More... | |
virtual casacore::Float | toRadians (const casacore::Float °rees) |
Convert degrees to radians. More... | |
virtual casacore::Float | toDegrees (const casacore::Float &radians) |
Conver radians to degree. More... | |
virtual void | addPoint (const casacore::Vector< casacore::Float > &) |
If applicable, this function will add a point to the shape in the most meaningful location. More... | |
virtual void | addLocked (DisplayShape *toLock) |
Allow locking of other shapes onto this one. More... | |
virtual void | removeLocked (DisplayShape *removeLock) |
Removes a lock from the specified shape. More... | |
virtual void | buildHandles (const casacore::Matrix< casacore::Float > &startPoints) |
Handle management. More... | |
virtual casacore::Matrix < casacore::Float > | getHandleLocations () |
virtual void | setHandlePositions (const casacore::Matrix< casacore::Float > &newPoints) |
virtual DSClosed * | makeHandle (const casacore::Vector< casacore::Float > &newHandlePos) |
virtual void | addHandle (const casacore::Vector< casacore::Float > &newHandlePos, const casacore::Bool &atEnd=true, const casacore::Int position=0) |
virtual casacore::Bool | removeHandle (const casacore::Vector< casacore::Float > &getRidOf) |
virtual casacore::Bool | removeHandle (const casacore::Int nHandle) |
virtual casacore::Bool | onHandles (const casacore::Float &xPos, const casacore::Float &yPos) |
virtual casacore::Bool | whichHandle (const casacore::Float &xPos, const casacore::Float &yPos, casacore::Int &out) |
virtual void | setDrawHandles (const casacore::Bool &shouldIDraw) |
virtual casacore::Bool | drawingHandles () |
virtual void | setHasHandles (const casacore::Bool &hasHandles) |
virtual void | setHandleShape (const DisplayShape::HandleShape &shape) |
virtual void | setHandleSize (const casacore::Int pixelSize) |
virtual void | setHandleColor (const casacore::String &handleColor) |
virtual casacore::uInt | nHandles () |
virtual void | setColor (const casacore::String &newColor) |
Manage the color of object. More... | |
virtual casacore::String | getColor () |
virtual void | recalculateScreenPosition () |
Protected Member Functions | |
virtual void | calculateHandlePositions () |
Required on update. More... | |
Private Member Functions | |
virtual void | setDefaultOptions () |
Called when def. More... | |
Additional Inherited Members | |
Public Types inherited from casa::DSClosed | |
enum | FillStyle { No_Fill, Full_Fill } |
Type of fill to use. More... | |
Public Types inherited from casa::DisplayShape | |
enum | HandleShape { Filled_Square, Open_Square, Filled_Circle, Open_Circle, Filled_Triangle, Open_Triangle } |
Handle style. More... | |
Implementation of a ellipse.
DSEllipse is a method of managing the drawing of a ellipse onto a PixelCanvas.
DSEllipse is the DisplayShape implementation of the primitive ellipse.
There are generally two ways to make DisplayShape(s); To create them in "one hit" by providing arguments to the constructor, or by using the default constructor and then the "setOptions" method. A simple interface for all classes inheriting from the DisplayShape class is provided by DisplayShapeInterface.
To allow the management of ellipses being draw to a pixel canvas.
Definition at line 71 of file DSEllipse.h.
casa::DSEllipse::DSEllipse | ( | const casacore::Bool & | onlyShowOneHandle = false | ) |
Constructors and destructors.
the 'onlyShowOneHandle' flag is primarily for use if the ellipse is intended to remain symmetrical i.e. a circle.
casa::DSEllipse::DSEllipse | ( | const DSEllipse & | other | ) |
casa::DSEllipse::DSEllipse | ( | const casacore::Float & | xPos, |
const casacore::Float & | yPos, | ||
const casacore::Float & | major, | ||
const casacore::Float & | minor, | ||
const casacore::Bool & | hasHandles = false , |
||
const casacore::Bool & | drawHandles = false , |
||
const casacore::Bool & | onlyShowOneHandle = false |
||
) |
|
virtual |
|
protectedvirtual |
Required on update.
|
virtual |
Changes the closest point to the supplied location to that location.
Implements casa::DisplayShape.
Reimplemented in casa::DSCircle, casa::DSWorldEllipse, and casa::DSScreenEllipse.
|
virtual |
Changes the nth point making up the DisplayShape ot the specified location.
Implements casa::DisplayShape.
Reimplemented in casa::DSCircle, casa::DSWorldEllipse, and casa::DSScreenEllipse.
|
virtual |
General DisplayShape functions.
Reimplemented from casa::DSClosed.
Reimplemented in casa::DSWorldEllipse.
|
virtual |
Returns the center of the DisplayShape (x,y).
Implements casa::DisplayShape.
|
virtual |
|
virtual |
Functions to set / get the minor and major axis of the ellipse (in pixels).
|
virtual |
Get and set options.
Reimplemented from casa::DSClosed.
Reimplemented in casa::DSCircle, casa::DSWorldEllipse, casa::DSPixelEllipse, and casa::DSScreenEllipse.
Referenced by casa::DSPixelEllipse::getRawOptions(), casa::DSScreenEllipse::getRawOptions(), and casa::DSWorldEllipse::getRawOptions().
|
virtual |
Is the supplied point within the DisplayShape?
Implements casa::DisplayShape.
Reimplemented in casa::DSCircle.
|
virtual |
Reimplemented from casa::DSClosed.
Reimplemented in casa::DSWorldEllipse, and casa::DSScreenEllipse.
|
virtual |
Rotate the shape about its center by a set angle (angle in degrees).
Implements casa::DisplayShape.
Reimplemented in casa::DSCircle, casa::DSWorldEllipse, and casa::DSScreenEllipse.
|
virtual |
Reimplemented from casa::DSClosed.
|
virtual |
Scale the shape about its center by the scaleFactor.
Implements casa::DisplayShape.
|
virtual |
Sets the center of the DisplayShape.
Implements casa::DisplayShape.
Reimplemented in casa::DSCircle, casa::DSWorldEllipse, and casa::DSScreenEllipse.
|
privatevirtual |
Called when def.
constructor used
Reimplemented from casa::DSClosed.
Reimplemented in casa::DSCircle.
|
virtual |
Reimplemented in casa::DSCircle.
|
virtual |
Reimplemented in casa::DSCircle.
|
virtual |
Reimplemented from casa::DSClosed.
Reimplemented in casa::DSCircle, casa::DSWorldEllipse, casa::DSPixelEllipse, and casa::DSScreenEllipse.
|
private |
Definition at line 122 of file DSEllipse.h.
|
private |
Definition at line 121 of file DSEllipse.h.
|
private |
Definition at line 126 of file DSEllipse.h.
|
private |
Definition at line 123 of file DSEllipse.h.
|
private |
Definition at line 123 of file DSEllipse.h.
|
private |
Definition at line 124 of file DSEllipse.h.
|
private |
Definition at line 124 of file DSEllipse.h.