Class which will keep track of Intervisibility between an origin and an end point.
More...
Public Member Functions |
| | DtAttachableIntervisibilityUpdater (DtDe &de, DtElementID id, bool suppressTick=false) |
| | CTOR.
|
| virtual | ~DtAttachableIntervisibilityUpdater () |
| | DTOR.
|
| virtual void | setFixedDistance (bool) |
| | If true, sets the end point to be a fixed distance (given the current distance) from the start point, if the start points moves and the end point is not attached.
|
| | DtLineModelUpdater (DtDe &de, DtElementID id, bool suppressTick=false) |
| | CTOR.
|
| virtual | ~DtLineModelUpdater () |
| | DTOR.
|
| virtual void | setStartPoint (const DtVector &position) |
| | Sets the origin of the line (absolute)
|
| virtual void | attachStartPoint (DtElementID id) |
| | Sets the origin of the line to be attached to an element.
|
| virtual void | setStartPointOffset (const DtVector &offset) |
| | Sets the offset of the start attach point.
|
| virtual void | setEndPoint (const DtVector &position) |
| | Sets the end of the Intervisibility line (absolute)
|
| virtual void | attachEndPoint (DtElementID id) |
| | Sets the end of the line to be attached to an element.
|
| virtual void | setEndPointOffset (const DtVector &offset) |
| | Sets the offset of the end attach point.
|
| virtual DtVector | calculateStartPoint () |
| | Accessor for the origin of the line.
|
| virtual DtVector | calculateEndPoint () |
| | Accessor for the end point of the line.
|
| virtual void | setSceneObject (DtSceneObject *sceneObject) |
| | Override to set model set to use for intersections.
|
| | DtAttachableUpdater (DtDe &de, DtUniqueID id, bool suppressTick=false) |
| | CTOR.
|
| virtual | ~DtAttachableUpdater () |
| | DTOR.
|
| virtual void | addAttachedPoint (const DtVector &position, int targetVertexIndex) |
| | Add a (vertex) attach point.
|
| virtual void | addAttachedPoint (DtUniqueID uniqueID, int targetVertexIndex) |
| | Add a (object) attach point.
|
| virtual void | addAttachedPoint (DtUniqueID uniqueID, int vtx1, int vtx2, double proportion, int targetVertexIndex) |
| | Add a (linear) attach point.
|
| virtual const AttachedPoint & | attachedPoint (int targetVertexIndex) const |
| | Returns the attached point at the given vertex.
|
| virtual void | setPositionOffset (const DtVector &offset) |
| | positionally offset the attach points by this amount.
|
| virtual void | setPositionOffset (const DtVector &offset, int vtx) |
| | positionally offset the specific attach point by this amount.
|
| virtual void | setOrientationOffset (const DtTaitBryan &offset) |
| | rotationally offset the attach points by this amount.
|
| virtual void | setAttachedPointMode (unsigned int mode, int vtx) |
| | Set whether an attached point updates position, orientation, or both.
|
| virtual void | doAttachment (DtTime tNow) |
| | Find the actual position and orientation based on the attach points and offsets.
|
| | DtSceneObjectUpdater (DtDe &de, DtUniqueID id, bool suppressTick=false) |
| | CTOR.
|
| virtual | ~DtSceneObjectUpdater () |
| | Virtual DTOR.
|
| virtual bool | needsUpdate (DtTime tNow) |
| | The check function called by DtTickableManager to verify if an update is required.
|
| virtual DtTime | lastUpdateTime () const |
| | Get the time-stamp of the last update.
|
| DtSceneObject * | findSceneObject () |
| | Get the current scene object for this updater.
|
| DtUniqueID | uniqueId () const |
| | Returns the distributed object id of this updater.
|
| virtual void | setUpdaterPosition (int vtx, const DtVector &pos) |
| | Set the position of a scene object vertex.
|
| virtual const DtVector & | updaterPosition (int vtx) const |
| | Get the position of a scene object vertex.
|
| virtual void | setUpdaterOrientation (int vtx, const DtTaitBryan &ori) |
| | Set the orientation of a scene object vertex.
|
| virtual const DtTaitBryan & | updaterOrientation (int vtx) const |
| | Get the orientation of a scene object vertex.
|
| virtual void | terrainScaleTransformsIfNeeded () |
| | Scales the transforms if the terrain scaling flag is set.
|
Protected Member Functions |
| virtual void | update (DtTime tNow) |
| | Sees if inter-visibility needs to be recalculated, and, if so recalculates and sets all associated lines.
|
| virtual bool | doIntersection () |
| | Does intersection if points have changed. Returns true if something has changed.
|
| virtual void | updateSceneObject (DtTime tNow) |
| | Update the scene object position and orientation at each vertex and set the last updated time-stamp.
|
| virtual double | calculateDistance (const DtVector &start, const DtVector &end, DtVector *circleOrigin=0) const |
| | Calculates distance based on topo coordinates in 3 dimensions.
|
| virtual void | calculateFixedDistance () |
| | Calculates the distance from the start to end point and assigns to myFixedDistance member.
|
| virtual DtVector | fixedDistanceFrom (const DtVector &start, const DtVector &end, double heading, double distance) const |
| | Given two points (for an angle), returns a fixed distance from the start point.
|
| virtual double | calculateHeading (const DtVector &start, const DtVector &end) const |
| | Calculates topographic heading from start to end point.
|
| virtual void | cleanup (PointInformation &pointInfo) |
| | Cleans up (resets) information for given point.
|
| virtual DtVector | offsetPoint (DtVector point, const DtVector &offset, const DtTaitBryan &ori=DtTaitBryan()) const |
| | Offsets the given point and returns new position Applies the given offset to the input point at the given orientation.
|
| virtual DtVector | getAttachedPosition (PointInformation &pointInfo) |
| | Gets the attached position of the given point Attempts to get and return the attached position of the given point, and returns pointInfo.position if obtaining the attached scene object or updater failed.
|
| virtual void | getSceneInformation (const PointInformation &info, DtUniqueID &sceneId) |
| | Gets the id of the attached element to use for positioning.
|
| virtual void | slot_attachedSceneObjectToBeDeleted (DtUniqueID, PointInformation *) |
| | Called when scene object that this item is attached to is to be deleted.
|
| virtual void | slot_attachedUpdaterToBeDeleted (DtUniqueID, PointInformation *) |
| | Called when updater of attached scene object is to be deleted.
|
| virtual void | slot_attachedSceneObjectToBeDeleted (const DtUniqueID &) |
| virtual void | slot_attachedUpdaterToBeDeleted (const DtUniqueID &id) |
| virtual bool | pointLocationAndOrientation (AttachedPoint *point, double simTime, DtVector &location, DtTaitBryan &orientation) |
| virtual void | removeAttachedPoint (int vtx, DtVector *positionOffset=0) |
| | Returns current position offset in supplied pointer.
|
| virtual void | slot_sceneObjectToBeDeleted (const DtUniqueID &id) |
| | Signal that this updater is being destroyed.
|
Class which will keep track of Intervisibility between an origin and an end point.
Will update all scene objects attached to it with the Intervisibility information.