casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
casa::DSBasic Class Reference

Base class for all "basic" shapes. More...

#include <DSBasic.h>

Inheritance diagram for casa::DSBasic:
casa::DisplayShape casa::DSClosed casa::DSMarker casa::DSPolyLine casa::DSEllipse casa::DSPoly casa::DSPixelMarker casa::DSScreenMarker casa::DSWorldMarker casa::DSLine casa::DSPixelPolyLine casa::DSScreenPolyLine casa::DSWorldPolyLine

Public Member Functions

 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 ()
 
virtual void draw (PixelCanvas *pc)
 Standard fns. More...
 
virtual void rotateAbout (const casacore::Float &angle, const casacore::Float &aboutX, const casacore::Float &aboutY)
 
virtual void move (const casacore::Float &dX, const casacore::Float &dY)
 
virtual casacore::Record getOptions ()
 Settings. More...
 
virtual casacore::Bool setOptions (const casacore::Record &settings)
 
- 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::Bool inObject (const casacore::Float &xPos, const casacore::Float &yPos)=0
 Is the supplied point within the DisplayShape? More...
 
virtual casacore::Float toRadians (const casacore::Float &degrees)
 Convert degrees to radians. More...
 
virtual casacore::Float toDegrees (const casacore::Float &radians)
 Conver radians to degree. More...
 
virtual void setCenter (const casacore::Float &xPos, const casacore::Float &yPos)=0
 Sets the center of the DisplayShape. More...
 
virtual casacore::Vector
< casacore::Float
getCenter ()=0
 Returns the center of the DisplayShape (x,y). More...
 
virtual void changePoint (const casacore::Vector< casacore::Float > &newPos)=0
 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)=0
 Changes the nth point making up the DisplayShape ot the specified location. 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 rotate (const casacore::Float &angle)=0
 Rotate the shape about its center by a set angle (angle in degrees). More...
 
virtual void scale (const casacore::Float &scaleFactor)=0
 Scale the shape about its center by the scaleFactor. 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 DSClosedmakeHandle (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 ()
 

Private Attributes

DParameterRange< casacore::Int > * itsLineWidth
 

Additional Inherited Members

- Public Types inherited from casa::DisplayShape
enum  HandleShape {
  Filled_Square,
  Open_Square,
  Filled_Circle,
  Open_Circle,
  Filled_Triangle,
  Open_Triangle
}
 Handle style. More...
 

Detailed Description

Base class for all "basic" shapes.

Prerequisite

Etymology

DSBasic is a base for all basic classes, it manages linewidth.

Synopsis

DSBasic is a base class for any shape using basic lines to draw it self, i.e. shapes such as lines, circles and polygons should extend this class. More complex DisplayShapes, e.g. text should not.

Motivation

A common interface for the setting of linewidths

Example

Definition at line 68 of file DSBasic.h.

Constructor & Destructor Documentation

casa::DSBasic::DSBasic ( )

Default constructor.

casa::DSBasic::DSBasic ( const DSBasic other)

Copy constructor.

virtual casa::DSBasic::~DSBasic ( )
virtual

Destructor.

Member Function Documentation

virtual void casa::DSBasic::draw ( PixelCanvas pc)
virtual
virtual casacore::Int casa::DSBasic::getLineWidth ( )
virtual
virtual casacore::Record casa::DSBasic::getOptions ( )
virtual
virtual void casa::DSBasic::move ( const casacore::Float dX,
const casacore::Float dY 
)
virtual
virtual void casa::DSBasic::rotateAbout ( const casacore::Float angle,
const casacore::Float aboutX,
const casacore::Float aboutY 
)
virtual
virtual void casa::DSBasic::setLineWidth ( const casacore::Int  pixels)
virtual

Manage line width.

virtual casacore::Bool casa::DSBasic::setOptions ( const casacore::Record settings)
virtual

Member Data Documentation

DParameterRange<casacore::Int>* casa::DSBasic::itsLineWidth
private

Definition at line 99 of file DSBasic.h.


The documentation for this class was generated from the following file: