VR-Forces 4.0.4 Class Documentation
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
DtSdcEllRectBase Class Reference

A common base class for representing ellipses and rectangles. More...

Inheritance diagram for DtSdcEllRectBase:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual DtSdcVector2D position () const
 position accessor
virtual void setPosition (const DtSdcVector2D &position)
 position mutator
virtual DtSdcVector2D size () const
 size accessor
virtual void setSize (const DtSdcVector2D &size)
 size mutator
virtual double rotation () const
 rotation accessor
virtual void setRotation (double rotation)
 rotation mutator
virtual const DtSdcColorcolor () const
 color accessor
virtual void setColor (const DtSdcColor &color)
 color mutator
virtual bool fill () const
 fill accessor
virtual void setFill (bool fill)
 fill mutator
virtual unsigned pattern () const
 pattern accessor
virtual void setPattern (unsigned pattern)
 pattern mutator
virtual bool flashing () const
 flashing accessor
virtual void setFlashing (bool flashing)
 flashing mutator
virtual double scale () const
 scale accessor
virtual void setScale (double scale)
 scale mutator
virtual void setRemoteGraphicSet (const std::string &setName)
virtual void update ()
 update the internal pdu

Protected Member Functions

 DtSdcEllRectBase (DtExerciseConn *exConn, unsigned id, const DtString &objName, const DtSdcVector2D &position, const DtSdcVector2D &size, double rotation=0.0, double scale=1.0, DtSdcColor color=DtSdcColor::DtSdcWhite, bool fill=false, unsigned pattern=0xffffffff, bool flashing=false)
 Construct the basis of an Ellipse or Rectangle Draw Control Object.
virtual ~DtSdcEllRectBase ()

Protected Attributes

DtSdcVector2D myPosition
DtSdcVector2D mySize
DtSdcColor myColor
unsigned myPattern
bool myFill
double myRotation
bool myFlashing
double myScale
Dt2DGraphicalObjectStateRecordmyStateRecord

Private Member Functions

 DtSdcEllRectBase ()
 Default constructor.

Detailed Description

A common base class for representing ellipses and rectangles.

DtSdcEllRectBase in inherited by both DtSdcEllipseObject and DtSdcRectangleObject. Ellipses and rectangles are represented in the exact same way on the network, except for a type field which indicates which should be drawn. This base class provides mutators that allow the user to specify the position, shape, rotation, and color of the ellipse or rectangle on the Stealth screen; specify whether the object should be filled (and specify a fill pattern if it is); and optionally, make the object flash. This class shuold not be instantiated on its own (and its constructors are protected to prevent that).


Constructor & Destructor Documentation

DtSdcEllRectBase::DtSdcEllRectBase ( DtExerciseConn *  exConn,
unsigned  id,
const DtString objName,
const DtSdcVector2D position,
const DtSdcVector2D size,
double  rotation = 0.0,
double  scale = 1.0,
DtSdcColor  color = DtSdcColor::DtSdcWhite,
bool  fill = false,
unsigned  pattern = 0xffffffff,
bool  flashing = false 
) [protected]

Construct the basis of an Ellipse or Rectangle Draw Control Object.

Parameters:
idPassed to DtSdcObject base (see)
positionCenter position on the screen - values go from [0.,0.] (left, bottom) to [1.,1.] (right, top)
sizeSize of object along the X and Y axes (before rotation) = values go from [0.,0.] to [1.,1.] (the entire screen)
rotationA counter-clockwise rotation to apply to the object - values go from 0 to 2 PI
colorThe color of the object outline (and fill, if filled)
fillA boolean parameter indicating whether or not the object should be filled
patternA pattern used when filling the object - values go from 0x00000000 (no fill) to 0xFFFFFF (solid)
flashingA boolean parameter indicating whether or not the object should be flashing
virtual DtSdcEllRectBase::~DtSdcEllRectBase ( ) [protected, virtual]

Default constructor.

Private and not implemented - you must supply an id and basic geometric parameters to construct the ellipse or rectangle


Member Function Documentation

virtual DtSdcVector2D DtSdcEllRectBase::position ( ) const [virtual]

position accessor

Get the object's center position

Returns:
[0.,0.] (left, bottom) to [1.,1.] (right, top)

Implements DtSdc2DPositionedObject.

virtual void DtSdcEllRectBase::setPosition ( const DtSdcVector2D position) [virtual]

position mutator

Set the object's center position

Parameters:
position[0.,0.] (left, bottom) to [1.,1.] (right, top)

Implements DtSdc2DPositionedObject.

virtual DtSdcVector2D DtSdcEllRectBase::size ( ) const [virtual]

size accessor

Get the object's size

Returns:
[0.,0.] to [1.,1.] (the entire screen)
virtual void DtSdcEllRectBase::setSize ( const DtSdcVector2D size) [virtual]

size mutator

Set the object's size

Parameters:
size[0.,0.] to [1.,1.] (the entire screen)
virtual double DtSdcEllRectBase::rotation ( ) const [virtual]

rotation accessor

Get the counter-clockwise rotation of the object about its center

Returns:
0. to 2 PI radians
virtual void DtSdcEllRectBase::setRotation ( double  rotation) [virtual]

rotation mutator

Set the counter-clockwise rotation of the object about center

Parameters:
rotation0. to 2 PI radians
virtual const DtSdcColor& DtSdcEllRectBase::color ( ) const [virtual]

color accessor

Get the color assigned to this object

Returns:
Instance of DtSdcColor

Reimplemented from DtSdcObject.

virtual void DtSdcEllRectBase::setColor ( const DtSdcColor color) [virtual]

color mutator

Set the color to use when drawing (and filling) this object

Parameters:
colorThe DtSdcColor to use

Reimplemented from DtSdcObject.

virtual bool DtSdcEllRectBase::fill ( ) const [virtual]

fill accessor

Get the boolean that indicates whether or not the object should be filled when drawn.

Returns:
Boolean fill value
virtual void DtSdcEllRectBase::setFill ( bool  fill) [virtual]

fill mutator

Set the boolean that indicates whether or not the object should be filled when drawn.

Parameters:
filltrue or false
virtual unsigned DtSdcEllRectBase::pattern ( ) const [virtual]

pattern accessor

Get the fill pattern to use if the object will be filled

Returns:
The fill pattern, 0x00000000 to 0xFFFFFFFF
virtual void DtSdcEllRectBase::setPattern ( unsigned  pattern) [virtual]

pattern mutator

Set the fill pattern to use if the object will be filled

Parameters:
patternThe fill pattern, 0x00000000 to 0xFFFFFFFF. The object is filled by a series of vertical lines that conform to the pattern, where each on bit results in a vertical line of the object's color
virtual bool DtSdcEllRectBase::flashing ( ) const [virtual]

flashing accessor

Get the boolean that indicates whether or not the object should flash

Returns:
true or false

Reimplemented from DtSdcObject.

virtual void DtSdcEllRectBase::setFlashing ( bool  flashing) [virtual]

flashing mutator

Set the boolean that indicates whether or not the object should flash

Parameters:
flashingtrue or false

Reimplemented from DtSdcObject.

virtual double DtSdcEllRectBase::scale ( ) const [virtual]

scale accessor

Get the scale factor applied to the object's size

Returns:
0+
virtual void DtSdcEllRectBase::setScale ( double  scale) [virtual]

scale mutator

Set the scale factor applied to the object's size

Parameters:
scale0+
virtual void DtSdcEllRectBase::setRemoteGraphicSet ( const std::string &  setName) [virtual]

Reimplemented from DtSdcObject.

virtual void DtSdcEllRectBase::update ( ) [virtual]

update the internal pdu

Make sure the internal pdu reflects the actual state of the draw control object's members. This is necessary because some members can be modified directly (which make the interface easier to use). DtStealthRemoteDrawer::update() calls this, so the user doesn't need to; but if the user is accessing the pdu directly (via the pdu() accessor) this should be called before using the pdu.

Implements DtSdcObject.


Member Data Documentation

unsigned DtSdcEllRectBase::myPattern [protected]
double DtSdcEllRectBase::myRotation [protected]
double DtSdcEllRectBase::myScale [protected]

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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)