VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtEnvironmentalIconCenteringUpdater Class Reference

A DtEnvironmentalIconCenteringUpdater updates the attached scene object to be centered in the center of mass of a closed area or along the center of the line of an unclosed area. Setting the control points or whether or not an item is closed will cause a recalculation of the center.

Inheritance diagram for makVrv::DtEnvironmentalIconCenteringUpdater:
Inheritance graph
[legend]

Public Member Functions

 DtEnvironmentalIconCenteringUpdater (DtDe &de, DtUniqueID id)
 
virtual ~DtEnvironmentalIconCenteringUpdater ()
 
virtual bool needsUpdate (DtTime tNow)
 
virtual void update (DtTime tNow)
 
virtual void setSceneObject (DtSceneObject *sceneObject)
 
virtual void setEnvironmentalSceneObject (DtSceneObject *sceneObject)
 
virtual void setOrderGroup (int)
 
- Public Member Functions inherited from makVrv::DtTickable
virtual bool updateIfNeeded (DtTime tNow)
 
virtual ~DtTickable ()
 
virtual void setTickableEnabled (bool enabled)
 
virtual void setIsThreadSafe (bool safe)
 
virtual bool isThreadSafe () const
 
virtual void setTickableListState (TickableListState safeList)
 
virtual TickableListState tickableListState () const
 
virtual void setUpdatePeriod (unsigned int period)
 
virtual unsigned int updatePeriod () const
 
virtual bool adaptiveTickLodEnabled () const
 

Protected Member Functions

virtual void centerIcon ()
 
virtual DtVector calculateGeometricCenter () const
 
virtual DtVector calculateLineCenter () const
 
Slots

Called when an object is to be deleted

virtual void slot_sceneObjectToBeDeleted (const DtUniqueID &id)
 
virtual void slot_modelAdded (DtModel *)
 
virtual void slot_modelRemoved (DtModel *)
 
virtual void slot_coordinateSystemChanged ()
 
- Protected Member Functions inherited from makVrv::DtTickable
 DtTickable (DtTickableManagerInterface *manager)
 
 DtTickable ()=delete
 
virtual void slot_managerAboutToBeDeleted ()
 

Protected Attributes

DtDemyDe
 
DtUniqueID myUniqueId
 
DtSceneObjectmySceneObject
 
DtPolygonModelmyEnvironmentalPolygonModel
 
DtLineModelmyEnvironmentalLineModel
 
DtExtrudedLineModelmyEnvironmentalExtrudedLineModel
 
DtSceneObjectmyEnvironmentalSceneObject
 
std::vector< DtVector > myPoints
 
DtVector myOrigin
 
int myOrderGroup
 
bool myUpdate
 
boost::signalslib::connection mySceneObjectConnection
 
boost::signalslib::connection myEnvironmentalSceneObjectConnection
 
boost::signalslib::connection myModelAddedConnection
 
boost::signalslib::connection myModelRemovedConnection
 
DtCoordinateSystemmyCoordinateSystem = nullptr
 
- Protected Attributes inherited from makVrv::DtTickable
DtTickableManagerInterfacemyManager
 
DtSignalConnectionManager myConnections
 
unsigned int myFrameCounter
 
unsigned int myFrameToUpdate
 
unsigned int myUpdatePeriod
 
unsigned int myTickableIndex
 
DtTime myLastUpdateTime
 
bool myIsThreadSafe
 
TickableListState myTickableListState
 

Additional Inherited Members

- Public Types inherited from makVrv::DtTickable
enum  TickableListState { TickableNotOnList, TickableOnMainList, TickableOnThreadSafeList }
 

Constructor & Destructor Documentation

makVrv::DtEnvironmentalIconCenteringUpdater::DtEnvironmentalIconCenteringUpdater ( DtDe de,
DtUniqueID  id 
)

CTOR.

virtual makVrv::DtEnvironmentalIconCenteringUpdater::~DtEnvironmentalIconCenteringUpdater ( )
virtual

DTOR.

Member Function Documentation

virtual bool makVrv::DtEnvironmentalIconCenteringUpdater::needsUpdate ( DtTime  tNow)
virtual

Does this updater need to update?

Reimplemented from makVrv::DtTickable.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::update ( DtTime  tNow)
virtual

Calls centerIcon()

Implements makVrv::DtTickable.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::setSceneObject ( DtSceneObject sceneObject)
virtual

Set the scene object to be updated.

Parameters
[in]sceneObjectis the scene object to receive updates.
virtual void makVrv::DtEnvironmentalIconCenteringUpdater::setEnvironmentalSceneObject ( DtSceneObject sceneObject)
virtual

Set the scene object that contains the original environmental (line or area).

Parameters
[in]sceneObjectis the scene object to look at for positional changes.
virtual void makVrv::DtEnvironmentalIconCenteringUpdater::setOrderGroup ( int  )
virtual

Sets the z order on which to place the icons.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::centerIcon ( )
protectedvirtual

Find the actual position and orientation based on the attach points and offsets.

virtual DtVector makVrv::DtEnvironmentalIconCenteringUpdater::calculateGeometricCenter ( ) const
protectedvirtual

Calculates the geometric center of the polygonal area.

virtual DtVector makVrv::DtEnvironmentalIconCenteringUpdater::calculateLineCenter ( ) const
protectedvirtual

Calculates the point on the center of the line given the line distance.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::slot_sceneObjectToBeDeleted ( const DtUniqueID id)
protectedvirtual

Called when a model is added to the scene object.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::slot_modelAdded ( DtModel )
protectedvirtual

Called when a model is added to the scene object.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::slot_modelRemoved ( DtModel )
protectedvirtual

Called when a model is removed from the scene object.

virtual void makVrv::DtEnvironmentalIconCenteringUpdater::slot_coordinateSystemChanged ( )
protectedvirtual

slot for when the coordinate system changes

Member Data Documentation

DtDe& makVrv::DtEnvironmentalIconCenteringUpdater::myDe
protected

The display engine.

DtUniqueID makVrv::DtEnvironmentalIconCenteringUpdater::myUniqueId
protected

This distributed object's unique identifier.

DtSceneObject* makVrv::DtEnvironmentalIconCenteringUpdater::mySceneObject
protected

A pointer to the current scene object being updated.

DtPolygonModel* makVrv::DtEnvironmentalIconCenteringUpdater::myEnvironmentalPolygonModel
protected

A pointer to the current environmental model object. Only one may be valid, however, both pointers are around for convenience.

DtLineModel* makVrv::DtEnvironmentalIconCenteringUpdater::myEnvironmentalLineModel
protected
DtExtrudedLineModel* makVrv::DtEnvironmentalIconCenteringUpdater::myEnvironmentalExtrudedLineModel
protected
DtSceneObject* makVrv::DtEnvironmentalIconCenteringUpdater::myEnvironmentalSceneObject
protected

A pointer tothe current environmental scene object agent.

std::vector<DtVector> makVrv::DtEnvironmentalIconCenteringUpdater::myPoints
protected

Points that were last used for calculation.

DtVector makVrv::DtEnvironmentalIconCenteringUpdater::myOrigin
protected

The origin which points are offset from - used only when updating based on a DtExtrudedLineModel.

int makVrv::DtEnvironmentalIconCenteringUpdater::myOrderGroup
protected
bool makVrv::DtEnvironmentalIconCenteringUpdater::myUpdate
protected
boost::signalslib::connection makVrv::DtEnvironmentalIconCenteringUpdater::mySceneObjectConnection
protected
boost::signalslib::connection makVrv::DtEnvironmentalIconCenteringUpdater::myEnvironmentalSceneObjectConnection
protected
boost::signalslib::connection makVrv::DtEnvironmentalIconCenteringUpdater::myModelAddedConnection
protected
boost::signalslib::connection makVrv::DtEnvironmentalIconCenteringUpdater::myModelRemovedConnection
protected
DtCoordinateSystem* makVrv::DtEnvironmentalIconCenteringUpdater::myCoordinateSystem = nullptr
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)