VR-Forces 4.0.4 Class Documentation
Public Types | Public Member Functions | Protected Attributes
DtSdc3DAttachPoint Class Reference

DtSdc3DAttachPoint represents the 3 methods for attaching a 3D draw control object in 3-space. More...

List of all members.

Public Types

enum  DtSdc3DAttachmentType { attachmentTypeUndefined = 0, attachmentTypeScene = 1, attachmentTypeEntity = 2, attachmentTypeDrawObject = 3 }

Public Member Functions

 DtSdc3DAttachPoint (const DtVector &location)
 Geocentric coordinates constructor.
 DtSdc3DAttachPoint (const DtGlobalObjectDesignator &entityId)
 HLA/DIS object id constructor.
 DtSdc3DAttachPoint (const DtGlobalObjectDesignator &drawObjectId, double relativePosition)
 HLA/DIS object id constructor.
 DtSdc3DAttachPoint (const DtSdc3DAttachPoint &orig)
 Copy constructor.
DtSdc3DAttachPointoperator= (const DtSdc3DAttachPoint &rhs)
 Assignment operator.
virtual ~DtSdc3DAttachPoint ()
 Virtual destructor.
 DtSdc3DAttachPoint ()
 Default constructor.
virtual DtSdc3DAttachmentType attachmentType () const
 Attachment Type accessor.
virtual DtVector location () const
 Location accessor.
virtual DtVectorlocation ()
virtual void setLocation (DtVector location)
 Location mutator.
virtual const
DtGlobalObjectDesignator & 
drawObjectId () const
 Draw Object ID accessor.
virtual void setDrawObjectId (const DtGlobalObjectDesignator &drawObjectId)
 Draw Object Id mutator.
virtual double relativePosition () const
 Draw Object relative position accessor; draw object attached only.
virtual void setRelativePosition (double relativePosition)
 Draw Object relative position mutator.
virtual DtGlobalObjectDesignator entityId () const
 Entity ID accessor.
virtual void setEntityId (const DtGlobalObjectDesignator &entityId)
 Entity Id mutator.
virtual bool isAttached () const
virtual const
DtGlobalObjectDesignator & 
attachedId () const

Protected Attributes

DtVector myLocation
DtGlobalObjectDesignator myAttachedId
double myRelativePosition
DtSdc3DAttachmentType myAttachmentType

Detailed Description

DtSdc3DAttachPoint represents the 3 methods for attaching a 3D draw control object in 3-space.

DtSdc3DAttachPoint defines the interface and storage for a class that functions as a discriminated union representing the 3 methods for attaching a 3D draw control object in 3-space. Objects can be placed in the scene by specifying 3D geocentric coordinates; an HLA/DIS entity id (DtGlobalObjectDesignator); or the id of another draw control object.


Member Enumeration Documentation

Enumerator:
attachmentTypeUndefined 
attachmentTypeScene 
attachmentTypeEntity 
attachmentTypeDrawObject 

Constructor & Destructor Documentation

Geocentric coordinates constructor.

Parameters:
locationGeocentric location in the scene at which to place this object
DtSdc3DAttachPoint::DtSdc3DAttachPoint ( const DtGlobalObjectDesignator &  entityId)

HLA/DIS object id constructor.

Parameters:
entityIdHLA/DIS global object designator of entity to attach to
DtSdc3DAttachPoint::DtSdc3DAttachPoint ( const DtGlobalObjectDesignator &  drawObjectId,
double  relativePosition 
)

HLA/DIS object id constructor.

Parameters:
drawObjectIdid of draw object to attach to
relativePositionIf the attachment is to a draw control object that has 2 ends (line or cylinder) then a relative position can be specified that indicates the position between those two end points. 0. to 100. percent (default 0.)

Copy constructor.

Virtual destructor.

Default constructor.


Member Function Documentation

DtSdc3DAttachPoint& DtSdc3DAttachPoint::operator= ( const DtSdc3DAttachPoint rhs)

Assignment operator.

Attachment Type accessor.

Get the type of attachment that this attach point represents

Returns:
One of the DtSdc3DAttachmentType enumerations
virtual DtVector DtSdc3DAttachPoint::location ( ) const [virtual]

Location accessor.

Get the geocentric location to attached to

Returns:
Geocentric location of object if attachment type is attachmentTypeScene; [0.0, 0.0, 0.0] otherwise
virtual DtVector& DtSdc3DAttachPoint::location ( ) [virtual]
virtual void DtSdc3DAttachPoint::setLocation ( DtVector  location) [virtual]

Location mutator.

Set the geocentric location to attached to. This also sets the attachment type to attachmentTypeScene as a side effect

Parameters:
locationGeocentric location to attach to
virtual const DtGlobalObjectDesignator& DtSdc3DAttachPoint::drawObjectId ( ) const [virtual]

Draw Object ID accessor.

Get the ID of the draw object to attach to

Returns:
Draw Object ID if attachment type is attachmentTypeDrawObject; 0 otherwise
virtual void DtSdc3DAttachPoint::setDrawObjectId ( const DtGlobalObjectDesignator &  drawObjectId) [virtual]

Draw Object Id mutator.

Set the draw object to attached to. This also sets the attachment type to attachmentTypeDrawObject as a side effect

Parameters:
drawObjectIdID of draw object to attach to
virtual double DtSdc3DAttachPoint::relativePosition ( ) const [virtual]

Draw Object relative position accessor; draw object attached only.

Returns:
Relative position as a percentage (0. to 100.)
virtual void DtSdc3DAttachPoint::setRelativePosition ( double  relativePosition) [virtual]

Draw Object relative position mutator.

Parameters:
relativePosition0. to 100. (percent)
virtual DtGlobalObjectDesignator DtSdc3DAttachPoint::entityId ( ) const [virtual]

Entity ID accessor.

Get the Global Object Designator of the entity to attach to

Returns:
Global Object Designator if attachment type is attachmentTypeDrawEntity; GlobalObjectDesignator::nullId() (in HLA) or GlobalObjectDesignator::nullString() (in DIS) otherwise
virtual void DtSdc3DAttachPoint::setEntityId ( const DtGlobalObjectDesignator &  entityId) [virtual]

Entity Id mutator.

Set the entity to attached to. This also sets the attachment type to attachmentTypeEntity as a side effect

Parameters:
entityIdGlobal Object Designator of entity to attach to
virtual bool DtSdc3DAttachPoint::isAttached ( ) const [virtual]
virtual const DtGlobalObjectDesignator& DtSdc3DAttachPoint::attachedId ( ) const [virtual]

Member Data Documentation

DtGlobalObjectDesignator DtSdc3DAttachPoint::myAttachedId [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)