VR-Forces 4.0.4 Class Documentation
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Attributes
vrvControlToolkit::DtCylinderObject Class Reference

A class for representing cylinders. More...

Inheritance diagram for vrvControlToolkit::DtCylinderObject:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DtCylinderObject (DtExerciseConn *exConn, unsigned id, const DtVdc3DAttachPoint &attachment, double length, const DtVdcVector2D &diameters, const DtVector &offset=DtVector::zero(), const DtTaitBryan &rotation=zeros, DtVdcColor color=DtVdcColor::DtVdcWhite, bool flashing=false)
 Construct the Cylindrical Draw Control Object attached at one point.
 DtCylinderObject (DtExerciseConn *exConn, unsigned id, const DtVdc3DAttachPoint &startAttachment, const DtVdc3DAttachPoint &endAttachment, const DtVdcVector2D &diameters, const DtVector &offset=DtVector::zero(), DtVdcColor color=DtVdcColor::DtVdcWhite, bool flashing=false)
 Construct the Cylindrical Draw Control Object attached at two points.
virtual ~DtCylinderObject ()
virtual const DtVdc3DAttachPointattachment () const
 attachment accessor
virtual void setAttachment (const DtVdc3DAttachPoint &attachment)
 attachment mutator
virtual const DtVdc3DAttachPointstartAttachment () const
 startAttachment accessor
virtual void setStartAttachment (const DtVdc3DAttachPoint &startAttachment)
 startAttachment mutator
virtual const DtVdc3DAttachPointendAttachment () const
 endAttachment accessor
virtual void setEndAttachment (const DtVdc3DAttachPoint &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 DtVdcVector2Ddiameters () const
 diameters accessor
virtual void setDiameters (const DtVdcVector2D &diameters)
 diameters mutator
virtual const DtTaitBryan & rotation () const
 rotation accessor
virtual void setRotation (const DtTaitBryan &rotation)
 rotation mutator
virtual const DtVdcColorcolor () const
 color accessor
virtual void setColor (const DtVdcColor &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

Protected Member Functions

void initRecords ()

Protected Attributes

DtVdc3DAttachPoint myStartAttachment
DtVdc3DAttachPoint myEndAttachment
double myLength
DtVdcVector2D myDiameters
DtVector myOffset
DtVdcColor myColor
DtTaitBryan myRotation
bool myFlashing
Dt3DGraphicalObjectStateRecord myStateRecord
DtEnvironmentalFixedCylinderRecord myFixedCylinderRecord
DtEnvironmentalArticulatingCylinderRecord myArticulatingCylinderRecord

Private Member Functions

 DtCylinderObject ()
 Default constructor.
 DtCylinderObject (const DtCylinderObject &orig)
 Copy constructor.
DtCylinderObjectoperator= (const DtCylinderObject &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

vrvControlToolkit::DtCylinderObject::DtCylinderObject ( DtExerciseConn *  exConn,
unsigned  id,
const DtVdc3DAttachPoint attachment,
double  length,
const DtVdcVector2D diameters,
const DtVector offset = DtVector::zero(),
const DtTaitBryan &  rotation = zeros,
DtVdcColor  color = DtVdcColor::DtVdcWhite,
bool  flashing = false 
)

Construct the Cylindrical Draw Control Object attached at one point.

Parameters:
idPassed to DtDrawControlObject base (see)
attachmentDtVdc3DAttachPoint 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
vrvControlToolkit::DtCylinderObject::DtCylinderObject ( DtExerciseConn *  exConn,
unsigned  id,
const DtVdc3DAttachPoint startAttachment,
const DtVdc3DAttachPoint endAttachment,
const DtVdcVector2D diameters,
const DtVector offset = DtVector::zero(),
DtVdcColor  color = DtVdcColor::DtVdcWhite,
bool  flashing = false 
)

Construct the Cylindrical Draw Control Object attached at two points.

Parameters:
idPassed to DtDrawControlObject base (see)
startAttachmentDtVdc3DAttachPoint indicating where one end of the cylinder is placed in 3D
endAttachmentDtVdc3DAttachPoint 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

Default constructor.

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

Copy constructor.

Private and unimplemented - not copyable.


Member Function Documentation

DtCylinderObject& vrvControlToolkit::DtCylinderObject::operator= ( const DtCylinderObject rhs) [private]

Assignment operator.

Private and unimplemented - not copyable.

attachment accessor

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

Returns:
DtVdc3DAttachPoint, which contains the attachment type and associated data
virtual void vrvControlToolkit::DtCylinderObject::setAttachment ( const DtVdc3DAttachPoint attachment) [virtual]

attachment mutator

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

Parameters:
attachment

startAttachment accessor

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

Returns:
DtVdc3DAttachPoint, which contains the attachment type and associated data

Implements vrvControlToolkit::Dt3DTwoPositionedObject.

virtual void vrvControlToolkit::DtCylinderObject::setStartAttachment ( const DtVdc3DAttachPoint startAttachment) [virtual]

startAttachment mutator

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

Parameters:
startAttachment

Implements vrvControlToolkit::Dt3DTwoPositionedObject.

endAttachment accessor

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

Returns:
DtVdc3DAttachPoint, which contains the attachment type and associated data

Implements vrvControlToolkit::Dt3DTwoPositionedObject.

virtual void vrvControlToolkit::DtCylinderObject::setEndAttachment ( const DtVdc3DAttachPoint endAttachment) [virtual]

endAttachment mutator

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

Parameters:
endAttachment

Implements vrvControlToolkit::Dt3DTwoPositionedObject.

virtual const DtVector& vrvControlToolkit::DtCylinderObject::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 vrvControlToolkit::DtCylinderObject::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 vrvControlToolkit::DtCylinderObject::length ( ) const [virtual]

length accessor

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

virtual void vrvControlToolkit::DtCylinderObject::setLength ( double  length) [virtual]

length mutator

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

diameters accessor

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

Returns:
[Y, Z] diameters in meters
virtual void vrvControlToolkit::DtCylinderObject::setDiameters ( const DtVdcVector2D diameters) [virtual]

diameters mutator

Set the object's diameters

Parameters:
diameters[Y, Z] diameters in meters
virtual const DtTaitBryan& vrvControlToolkit::DtCylinderObject::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 vrvControlToolkit::DtCylinderObject::setRotation ( const DtTaitBryan &  rotation) [virtual]

rotation mutator

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

Parameters:
rotation[psi, theta, phi] radians
virtual const DtVdcColor& vrvControlToolkit::DtCylinderObject::color ( ) const [virtual]

color accessor

Get the color assigned to this object

Returns:
Instance of DtVdcColor

Reimplemented from vrvControlToolkit::DtDrawControlObject.

virtual void vrvControlToolkit::DtCylinderObject::setColor ( const DtVdcColor color) [virtual]

color mutator

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

Parameters:
colorThe DtVdcColor to use

Reimplemented from vrvControlToolkit::DtDrawControlObject.

flashing accessor

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

Returns:
true or false

Reimplemented from vrvControlToolkit::DtDrawControlObject.

virtual void vrvControlToolkit::DtCylinderObject::setFlashing ( bool  flashing) [virtual]

flashing mutator

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

Parameters:
flashingtrue or false

Reimplemented from vrvControlToolkit::DtDrawControlObject.

virtual void vrvControlToolkit::DtCylinderObject::setRemoteGraphicSet ( const std::string &  setName) [virtual]
virtual void vrvControlToolkit::DtCylinderObject::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 vrvControlToolkit::DtDrawControlObject.


Member Data Documentation

DtTaitBryan vrvControlToolkit::DtCylinderObject::zeros [static, private]

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)