VR-Forces 4.1 Class Documentation
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Attributes
DtSdcCylinderObject Class Reference

A class for representing cylinders. More...

Inheritance diagram for DtSdcCylinderObject:
Inheritance graph
[legend]

Public Member Functions

 DtSdcCylinderObject (DtExerciseConn *exConn, unsigned id, const DtSdc3DAttachPoint &attachment, double length, const DtSdcVector2D &diameters, const DtVector &offset=DtVector::zero(), const DtTaitBryan &rotation=zeros, DtSdcColor color=DtSdcColor::DtSdcWhite, bool flashing=false)
 Construct the Cylindrical Draw Control Object attached at one point.
 DtSdcCylinderObject (DtExerciseConn *exConn, unsigned id, const DtSdc3DAttachPoint &startAttachment, const DtSdc3DAttachPoint &endAttachment, const DtSdcVector2D &diameters, const DtVector &offset=DtVector::zero(), DtSdcColor color=DtSdcColor::DtSdcWhite, bool flashing=false)
 Construct the Cylindrical Draw Control Object attached at two points.
virtual ~DtSdcCylinderObject ()
virtual const DtSdc3DAttachPointattachment () const
 attachment accessor
virtual void setAttachment (const DtSdc3DAttachPoint &attachment)
 attachment mutator
virtual const DtSdc3DAttachPointstartAttachment () const
 startAttachment accessor
virtual void setStartAttachment (const DtSdc3DAttachPoint &startAttachment)
 startAttachment mutator
virtual const DtSdc3DAttachPointendAttachment () const
 endAttachment accessor
virtual void setEndAttachment (const DtSdc3DAttachPoint &endAttachment)
 endAttachment mutator
virtual const DtVectoroffset () const
 offset accessor
virtual void setOffset (const DtVector &off)
 offset mutator
virtual double length () const
 length accessor
virtual void setLength (double length)
 length mutator
virtual const DtSdcVector2Ddiameters () const
 diameters accessor
virtual void setDiameters (const DtSdcVector2D &diameters)
 diameters mutator
virtual const DtTaitBryan & rotation () const
 rotation accessor
virtual void setRotation (const DtTaitBryan &rotation)
 rotation mutator
virtual const DtSdcColorcolor () const
 color accessor
virtual void setColor (const DtSdcColor &color)
 color mutator
virtual bool flashing () const
 flashing accessor
virtual void setFlashing (bool flashing)
 flashing mutator
virtual void setRemoteGraphicSet (const std::string &setName)
virtual void update ()
 update the internal pdu
- Public Member Functions inherited from DtSdc3DTwoPositionedObject
 DtSdc3DTwoPositionedObject (DtExerciseConn *exConn, unsigned id, const DtString &objName)
virtual ~DtSdc3DTwoPositionedObject ()
- Public Member Functions inherited from DtSdcObject
 DtSdcObject (DtExerciseConn *exConn, unsigned id, const DtString &objName)
 Parameterized constructor.
virtual ~DtSdcObject ()
 Virtual destructor.
virtual unsigned id () const
 id accessor
virtual void setId (unsigned id)
 id mutator
virtual const
DtGlobalObjectDesignator & 
globalId () const
virtual void setVisible (bool yesNo)
virtual bool visible () const

Protected Member Functions

void initRecords ()

Protected Attributes

DtSdc3DAttachPoint myStartAttachment
DtSdc3DAttachPoint myEndAttachment
double myLength
DtSdcVector2D myDiameters
DtVector myOffset
DtSdcColor myColor
DtTaitBryan myRotation
bool myFlashing
Dt3DGraphicalObjectStateRecord myStateRecord
DtEnvironmentalFixedCylinderRecord myFixedCylinderRecord
DtEnvironmentalArticulatingCylinderRecord myArticulatingCylinderRecord

Private Member Functions

 DtSdcCylinderObject ()
 Default constructor.
 DtSdcCylinderObject (const DtSdcCylinderObject &orig)
 Copy constructor.
DtSdcCylinderObjectoperator= (const DtSdcCylinderObject &rhs)
 Assignment operator.

Static Private Attributes

static DtTaitBryan zeros

Detailed Description

A class for representing cylinders.

The DtSdcCylinder class provides mutators that allow the user to specify the attachment, shape, rotation, and color of the cylinder on the Stealth screen; and optionally, make the object flash. The cylinder may be placed at a location which becomes its center, and then a length and rotation specified, OR the cylinder can be attached at either end (in which case there are no length or rotation parameters, although the diameters may still be changed).

Constructor & Destructor Documentation

DtSdcCylinderObject::DtSdcCylinderObject ( DtExerciseConn *  exConn,
unsigned  id,
const DtSdc3DAttachPoint attachment,
double  length,
const DtSdcVector2D diameters,
const DtVector offset = DtVector::zero(),
const DtTaitBryan &  rotation = zeros,
DtSdcColor  color = DtSdcColor::DtSdcWhite,
bool  flashing = false 
)

Construct the Cylindrical Draw Control Object attached at one point.

Parameters
idPassed to DtSdcObject base (see)
attachmentDtSdc3DAttachPoint indicating the center of the cylinder in 3D
lengthlength of the cylinder, in meters
diametersDiameters of the cylinder; since these can be different, it means that cylinders can be created with elliptical cross sections
enuOffseta 3D vector indicating an east/north/up offset (in meters) from the base attachment
rotationrotations to apply to the object, about the Geocentric Z, Y and X axes (DIS/HLA-RPR). Values go from 0 to 2 PI
colorThe color of the object outline (and fill, if filled)
flashingA boolean parameter indicating whether or not the object should be flashing
DtSdcCylinderObject::DtSdcCylinderObject ( DtExerciseConn *  exConn,
unsigned  id,
const DtSdc3DAttachPoint startAttachment,
const DtSdc3DAttachPoint endAttachment,
const DtSdcVector2D diameters,
const DtVector offset = DtVector::zero(),
DtSdcColor  color = DtSdcColor::DtSdcWhite,
bool  flashing = false 
)

Construct the Cylindrical Draw Control Object attached at two points.

Parameters
idPassed to DtSdcObject base (see)
startAttachmentDtSdc3DAttachPoint indicating where one end of the cylinder is placed in 3D
endAttachmentDtSdc3DAttachPoint indicating where the other end of the cylinder is placed in 3D
diametersDiameters of the cylinder; since these can be different, it means that cylinders can be created with elliptical cross sections
enuOffseta 3D vector indicating an east/north/up offset (in meters) from the base attachment
colorThe color of the object outline (and fill, if filled)
flashingA boolean parameter indicating whether or not the object should be flashing
virtual DtSdcCylinderObject::~DtSdcCylinderObject ( )
virtual
DtSdcCylinderObject::DtSdcCylinderObject ( )
private

Default constructor.

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

DtSdcCylinderObject::DtSdcCylinderObject ( const DtSdcCylinderObject orig)
private

Copy constructor.

Private and unimplemented - not copyable.

Member Function Documentation

DtSdcCylinderObject& DtSdcCylinderObject::operator= ( const DtSdcCylinderObject rhs)
private

Assignment operator.

Private and unimplemented - not copyable.

virtual const DtSdc3DAttachPoint& DtSdcCylinderObject::attachment ( ) const
virtual

attachment accessor

Get the object's attachment information when attached at a single point

Returns
DtSdc3DAttachPoint, which contains the attachment type and associated data
virtual void DtSdcCylinderObject::setAttachment ( const DtSdc3DAttachPoint attachment)
virtual

attachment mutator

Set the object's attachment information when attached at a single point

Parameters
attachment
virtual const DtSdc3DAttachPoint& DtSdcCylinderObject::startAttachment ( ) const
virtual

startAttachment accessor

Get the object's first attachment information when attached at two points

Returns
DtSdc3DAttachPoint, which contains the attachment type and associated data

Implements DtSdc3DTwoPositionedObject.

virtual void DtSdcCylinderObject::setStartAttachment ( const DtSdc3DAttachPoint startAttachment)
virtual

startAttachment mutator

Set the object's startAttachment information when attached at two points

Parameters
startAttachment

Implements DtSdc3DTwoPositionedObject.

virtual const DtSdc3DAttachPoint& DtSdcCylinderObject::endAttachment ( ) const
virtual

endAttachment accessor

Get the object's second attachment information when attached at two points

Returns
DtSdc3DAttachPoint, which contains the attachment type and associated data

Implements DtSdc3DTwoPositionedObject.

virtual void DtSdcCylinderObject::setEndAttachment ( const DtSdc3DAttachPoint endAttachment)
virtual

endAttachment mutator

Set the object's endAttachment information when attached at two points

Parameters
endAttachment

Implements DtSdc3DTwoPositionedObject.

virtual const DtVector& DtSdcCylinderObject::offset ( ) const
virtual

offset accessor

Get the object's offset from the attach point, in entity coordinates if attached, geocentric otherwise

Returns
[X, Y, Z] enuOffset
virtual void DtSdcCylinderObject::setOffset ( const DtVector off)
virtual

offset mutator

Set the object's offset from the attach point, in entity coordinates if attached, geocentric otherwise

Parameters
enuOffset[X, Y, Z]
virtual double DtSdcCylinderObject::length ( ) const
virtual

length accessor

Get the cylinder's length (when attached at a single point) /return cylinder length, in meters

virtual void DtSdcCylinderObject::setLength ( double  length)
virtual

length mutator

Set the cylinder's length (when attached at a single point) /param length, in meters

virtual const DtSdcVector2D& DtSdcCylinderObject::diameters ( ) const
virtual

diameters accessor

Get the object's cross section diameters (in Y and Z)

Returns
[Y, Z] diameters in meters
virtual void DtSdcCylinderObject::setDiameters ( const DtSdcVector2D diameters)
virtual

diameters mutator

Set the object's diameters

Parameters
diameters[Y, Z] diameters in meters
virtual const DtTaitBryan& DtSdcCylinderObject::rotation ( ) const
virtual

rotation accessor

Get the counter-clockwise rotation of the object about its axes (only applies when cylinder is attached at a single point)

Returns
[psi, theta, phi] radians
virtual void DtSdcCylinderObject::setRotation ( const DtTaitBryan &  rotation)
virtual

rotation mutator

Set the counter-clockwise rotations of the object about it's axes (only applies when cylinder is attached at a single point)

Parameters
rotation[psi, theta, phi] radians
virtual const DtSdcColor& DtSdcCylinderObject::color ( ) const
virtual

color accessor

Get the color assigned to this object

Returns
Instance of DtSdcColor

Reimplemented from DtSdcObject.

virtual void DtSdcCylinderObject::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 DtSdcCylinderObject::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 DtSdcCylinderObject::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 void DtSdcCylinderObject::setRemoteGraphicSet ( const std::string &  setName)
virtual

Reimplemented from DtSdcObject.

virtual void DtSdcCylinderObject::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.

void DtSdcCylinderObject::initRecords ( )
protected

Member Data Documentation

DtTaitBryan DtSdcCylinderObject::zeros
staticprivate
DtSdc3DAttachPoint DtSdcCylinderObject::myStartAttachment
protected
DtSdc3DAttachPoint DtSdcCylinderObject::myEndAttachment
protected
double DtSdcCylinderObject::myLength
protected
DtSdcVector2D DtSdcCylinderObject::myDiameters
protected
DtVector DtSdcCylinderObject::myOffset
protected
DtSdcColor DtSdcCylinderObject::myColor
protected
DtTaitBryan DtSdcCylinderObject::myRotation
protected
bool DtSdcCylinderObject::myFlashing
protected
Dt3DGraphicalObjectStateRecord DtSdcCylinderObject::myStateRecord
protected
DtEnvironmentalFixedCylinderRecord DtSdcCylinderObject::myFixedCylinderRecord
protected
DtEnvironmentalArticulatingCylinderRecord DtSdcCylinderObject::myArticulatingCylinderRecord
protected

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

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)