VR-Forces 4.8 Class Documentation
 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::DtOsgExtrudedPolygonModel Class Reference

OSG implementation of 3D Extruded Polygon. More...

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

Public Member Functions

 DtOsgExtrudedPolygonModel (DtDe &de, DtUniqueID id)
 CTOR. More...
 
virtual ~DtOsgExtrudedPolygonModel ()
 DTOR. More...
 
virtual void setHeight (float)
 Sets the height of the Polygon (-half height to + half height around center). More...
 
virtual void setDimensions (float width, float height)
 Sets the dimensions of the Polygon. More...
 
virtual void setLineWidth (float width)
 Sets the width of the line in pixel space, not world. More...
 
virtual void setScribeWidth (float width)
 Sets the width of the scribe line in pixel space. More...
 
virtual void setScribed (bool b)
 Sets the Polygon to be scribed (default true) More...
 
virtual void setScribeColor (float r, float g, float b, float a)
 Sets the color of the scribe line. More...
 
virtual void setTexturePath (const std::string &texturePath)
 Set the path to the polygon's texture. More...
 
virtual void setNumTextureTiles (double numTiles)
 Set the number of times to tile the polygon's texture. More...
 
virtual void setPolygonMode (int)
 Sets the polygon mode. More...
 
virtual const std::vector
< DtVector > & 
points () const
 Returns the points that are part of this polygon model. More...
 
virtual void setUseDynamicOrigin (bool)
 Set whether or not to use dynamic origin. More...
 
virtual void setModelDefinition (const std::string &str)
 Sets the model definition on the model instance. More...
 
virtual void addPoint (const DtVector &position, int index=-1)
 Add a new point on the Polygon at specified index, or at the end if index is -1. More...
 
virtual void removePoint (int index)
 Removes the point at the specified index. More...
 
virtual void removePosition (int index)
 Calls removePoint. More...
 
virtual void setPoint (int index, const DtVector &position)
 Sets the position of the point at the specified index. More...
 
virtual void setPosition (int index, const DtVector &position)
 If index is 0, sets origin. More...
 
virtual void setPositions (const std::vector< DtVector > &, const DtVector &origin)
 Sets the points of the line, using the given origin as the origin of the line (the point by which all other points are offset from) More...
 
virtual int pointCount () const
 Retrieves the number of points in the model. More...
 
virtual DtVector point (int) const
 Retrieves the point inclusive of the origin. More...
 
virtual void setOrigin (const DtVector &)
 Sets the origin. More...
 
virtual void setOrientation (int vtx, const DtTaitBryan &orientation)
 Sets the orientation of the Polygon. More...
 
virtual void setStipplePattern (unsigned int stipple)
 Parameters for Polygon stippling. More...
 
virtual void setColor (float r, float g, float b, float a)
 Sets the color of the Polygon (inside and outside) More...
 
virtual void setInsideColor (float r, float g, float b, float a)
 Sets the inside color of the Polygon (if filled) More...
 
virtual void setOutsideColor (float r, float g, float b, float a)
 Sets the outside color of the Polygon (esentially the same as setColor) More...
 
virtual void setScribeAllPolygons (bool)
 Sets whether or not to only scribe the outline (and not the line edges). More...
 
virtual void setSolid (bool solid)
 Sets shape solid or outPolygond only. More...
 
virtual void setIsSupportModel (bool isSupport)
 Set whether the model is part of the support group (whether or not other scene objects can ground clamp to this model) More...
 
virtual void setFill (bool filled)
 Sets whether or not the polygon is filled or simply an outline. More...
 
virtual void setPickable (bool)
 Sets whether or not Polygon is pickable. More...
 
virtual void setVisible (bool)
 Sets model shown/hidden. More...
 
virtual void setUpExtent (float)
 Sets the height of the Polygon ("above" the origin point) More...
 
virtual void setDownExtent (float)
 Sets the height of the Polygon ("below" the origin point) More...
 
virtual void setLeftExtent (float)
 Sets the height of the Polygon ("left" of the origin point) More...
 
virtual void setRightExtent (float)
 Sets the height of the Polygon ("right" of the origin point) More...
 
- Public Member Functions inherited from makVrv::DtExtrudedPolygonModel
 DtExtrudedPolygonModel (DtDe &de, DtUniqueID id)
 Constructor. More...
 
 ~DtExtrudedPolygonModel ()
 Destructor. More...
 
virtual void setWidth (float)
 Override to no-op. More...
 
- Public Member Functions inherited from makVrv::DtPolygonModel
 DtPolygonModel (DtDe &de, DtUniqueID id)
 CTOR. More...
 
virtual ~DtPolygonModel ()
 DTOR. More...
 
- Public Member Functions inherited from makVrv::DtModel
 DtModel (DtDe &de, DtUniqueID id)
 CTOR. More...
 
virtual ~DtModel ()
 DTOR. More...
 
DtModelInstancecreateModelInstance (const std::string &modelDefName, bool realize=true)
 Set the model definition and creates an instance of the model. More...
 
virtual const std::string & modelDefinitionName ()
 returns the model definition name. More...
 
virtual void saveModelToFile (const std::string &filename)
 
virtual const std::string & className () const
 Get the class name of the model instance owner. More...
 
unsigned int transformSize () const
 Get the number of position/orientations this model has. More...
 
virtual const DtVectorposition (int vtx=0) const
 Get the Position of a given point. More...
 
virtual void setPositionOffset (const DtVector &positionOffset)
 Set the position offset of the model. More...
 
virtual const DtVectorpositionOffset () const
 Get the Position Offset of the model. More...
 
virtual void setPositionAndOrientation (int vtx, const DtVector &positionOffset, const DtTaitBryan &orientation)
 Set the position and orientation of a vertex in the model at the same time. More...
 
virtual const DtTaitBryan & orientation (int vtx=0) const
 Get the Orientation of a given point. More...
 
virtual void setOrientationOffset (const DtTaitBryan &orientationOffset)
 Set the Orientation Offset of the model. More...
 
virtual const DtTaitBryan & orientationOffset () const
 Get the Orientation Offset of the model. More...
 
virtual void enableColorBlending (bool b)
 Enable / disable color blending for this model. More...
 
virtual void setBlendColor (float r, float g, float b, float a)
 Set color to use if color blending is enabled. More...
 
virtual void getBlendColor (float &r, float &g, float &b, float &a)
 Returns the blend color. More...
 
virtual bool colorBlendingEnabled () const
 Returns whether or not blending is enabled. More...
 
virtual void enableLighting (bool l)
 set whether the model is lit; this may not be an option on all models More...
 
virtual int modelSet () const
 Get the model set this model is part of. More...
 
const DtVectorboundingBoxExtents () const
 Get the bounding box extents of the model instance. More...
 
void getBoundingBoxExtents (double &x, double &y, double &z) const
 Get the bounding box extents of the model instance. More...
 
const DtVectorboundingBoxCenter () const
 Get the bounding box center of the model instance. More...
 
virtual void getBoundingBoxCenter (double &x, double &y, double &z) const
 Get the bounding box center of the model instance. More...
 
virtual void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 Get the minimum and maximum X,Y,Z components of the bounding box. More...
 
void setContributesToBound (bool trueOrFalse)
 Set whether this model instance contributes to an object's overall bounding volume. More...
 
bool contributesToBound () const
 Get whether this model instance contributes to an object's overall bounding volume. More...
 
DtDede ()
 Get the DtDe object. More...
 
virtual void setModelInstance (DtModelInstance *modelInstance)
 Internally set the model instance pointer. More...
 
virtual void promoteBackgroundModelInstance (DtModelDefinition &defintion)
 Internally set the model instance pointer to the background one, also realizes and sends signal. More...
 
virtual bool visible () const
 Get the visible state of the model. More...
 
DtUniqueID parentSceneObjectID () const
 Parent of the model. More...
 
virtual void addedToSceneObjectAsProp (const DtUniqueID &sceneObj)
 Called when a scene object added the model as a prop. More...
 
virtual void addedToSceneObject (const DtUniqueID &sceneObj, int modelSet, int visualizerType)
 Called when a scene object added the model with the given model set and visualizer type. More...
 
virtual void setElementId (DtUniqueID id)
 Called when the element ID of the model's parent object is set. More...
 
virtual void removedFromSceneObject ()
 Called when the model was removed from a scene object. More...
 
virtual bool isProp ()
 Return whether or not this model was added as a prop. More...
 
virtual void updateMinLastFrameDistance (float distance)
 updates the closest distance to an observer over the last frame More...
 
virtual void resetLastFrameDistance ()
 resets the closest distance to an observer More...
 
virtual float minLastFrameDistance () const
 gets the closest distance to an observer last frame More...
 
virtual DtModelInstancemodelInstance ()
 Get the model instance. More...
 
virtual const DtModelInstancemodelInstance () const
 
int visualizerType () const
 The visualizer type determines which channel-specific group node this model will be parented to, and consequently, which observer setting will cause it to be rendered in which channel. More...
 
virtual bool supportsMultithreadedLoad ()
 can be quickly overridden to disable background loading More...
 
virtual void backgroundLoad ()
 the chunk of loading that can safely happen in the background More...
 
virtual void foregroundLoad ()
 the chunk of loading that must happen happen in the foreground, adding to scene graph etc. More...
 
virtual bool isActivelyBackgroundLoading ()
 is this being actively loaded (it has a myInLoadQueueHandle object and it's loading) More...
 
virtual DtLoaderHandlegetLoadQueueHandle ()
 returns the load queue object More...
 

Protected Member Functions

virtual void update ()
 Called on tick when updated, calls updateGeometry() of model instance. More...
 
virtual void needsUpdate ()
 Sets needs update flag such that on next update pass the object is updated. More...
 
virtual void addToScene (const DtUniqueID &sceneObjectId, int modelSet, int visualizerType)
 Attaches the model to the scene. More...
 
virtual void removeFromScene ()
 Detaches the model from the scene. More...
 
- Protected Member Functions inherited from makVrv::DtModel
virtual void addToSceneAsProp (const DtUniqueID &sceneObjectId)
 Add this model to the scene as a prop. More...
 
virtual void initializeModelInstance ()
 Push any state maintained by the model to the model instance. More...
 
void slot_modelInstanceChanged (DtModelInstance *instance)
 Called when the model instance changed. More...
 
virtual void waitAndClearLoadHandle ()
 avoids race condition, on destruction subclasses need to wait for the model to cleanly finish loading this can happen if an object times in and out very quickly More...
 
virtual void removedFromLoadQueue ()
 deletes the myInLoadQueueHandle handle More...
 
virtual void setDoneBackgroundLoading ()
 called by async task, updates myCurrentlyLoading atomic More...
 
virtual void setActivelyBackgroundLoading ()
 called right before tbb task creation More...
 

Protected Attributes

DtOsgSceneConnectormySceneConnector
 
DtUniqueID myParentId
 
DtVector myOrigin
 
bool myUseDynamicOrigin
 
bool myNeedsUpdate
 
- Protected Attributes inherited from makVrv::DtModel
DtLoaderHandlemyInLoadQueueHandle
 
DtDemyDe
 
const DtUniqueID myUniqueId
 The unique id is constant after initialization. More...
 
bool myColorBlendingEnabled
 The color blending enabled is needed to be set by the derived class so it doesn't get down to the model instances when instancing is enabled. More...
 
DtModelInstancemyBackgroundModelInstance
 holds the model created in the background for a bit More...
 
float myMinLastFrameDistance
 last frames mimimal distance to the camera, calculated by the instancing system More...
 
TransformList myTransforms
 We keep our own copy in case we get updates before we get a model instance. More...
 
DtModelInstancemyModelInstance
 
int myModelSet
 
int myVisualizerType
 
bool myContributesToBound
 
DtUniqueID myParentSceneObjectID
 
bool myIsPropFlag
 
float myBlendColor [4]
 
bool myVisibleFlag
 
DtVector myPositionOffset
 
DtTaitBryan myOrientationOffset
 
std::string myModelDefinitionName
 

Additional Inherited Members

- Public Types inherited from makVrv::DtExtrudedPolygonModel
enum  PolygonMode { TopAndBottom = 0, Top = 1, Bottom = 2 }
 
- Public Attributes inherited from makVrv::DtModel
boost::signal< void(DtModel *)> signal_modelToBeDestroyed
 Signal emitted when the model is to be destroyed. More...
 
boost::signal< void(DtModel *)> signal_modelChanged
 
boost::signal< bool(DtModel
*, bool), SlotReturnOR
signal_visibilityChangeRequested
 Signal when the visibility has been requested, if any slot returns false, it will not change. More...
 
boost::signal< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceCreated
 Signal emitted when the model instance is created. More...
 
boost::signal< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceToBeDestroyed
 Signal emitted when the model instance is to be destroyed. More...
 
- Protected Types inherited from makVrv::DtModel
typedef std::vector
< ObjectTransform
TransformList
 
- Static Protected Attributes inherited from makVrv::DtModel
static bool theInittedState
 

Detailed Description

OSG implementation of 3D Extruded Polygon.

Constructor & Destructor Documentation

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

CTOR.

virtual makVrv::DtOsgExtrudedPolygonModel::~DtOsgExtrudedPolygonModel ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtOsgExtrudedPolygonModel::addPoint ( const DtVector position,
int  index = -1 
)
virtual

Add a new point on the Polygon at specified index, or at the end if index is -1.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::removePoint ( int  index)
virtual

Removes the point at the specified index.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::removePosition ( int  index)
virtual

Calls removePoint.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setPoint ( int  index,
const DtVector position 
)
virtual

Sets the position of the point at the specified index.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setPosition ( int  index,
const DtVector position 
)
virtual

If index is 0, sets origin.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setPositions ( const std::vector< DtVector > &  ,
const DtVector origin 
)
virtual

Sets the points of the line, using the given origin as the origin of the line (the point by which all other points are offset from)

virtual int makVrv::DtOsgExtrudedPolygonModel::pointCount ( ) const
virtual

Retrieves the number of points in the model.

Implements makVrv::DtExtrudedPolygonModel.

virtual DtVector makVrv::DtOsgExtrudedPolygonModel::point ( int  ) const
virtual

Retrieves the point inclusive of the origin.

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setOrigin ( const DtVector )
virtual

Sets the origin.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setOrientation ( int  vtx,
const DtTaitBryan &  orientation 
)
virtual

Sets the orientation of the Polygon.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setStipplePattern ( unsigned int  stipple)
virtual

Parameters for Polygon stippling.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Sets the color of the Polygon (inside and outside)

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setInsideColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Sets the inside color of the Polygon (if filled)

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setOutsideColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Sets the outside color of the Polygon (esentially the same as setColor)

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setScribeAllPolygons ( bool  )
virtual

Sets whether or not to only scribe the outline (and not the line edges).

Only valid if scribed is true. If set to true will scribe all point connections along the polygon. If false will only scribe the top and bottom of the polygon

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setSolid ( bool  solid)
virtual

Sets shape solid or outPolygond only.

If outPolygond only, and not scribed, will scribe the Polygon with color of alpha

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setIsSupportModel ( bool  isSupport)
virtual

Set whether the model is part of the support group (whether or not other scene objects can ground clamp to this model)

Implements makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setFill ( bool  filled)
virtual

Sets whether or not the polygon is filled or simply an outline.

Reimplemented from makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setPickable ( bool  )
virtual

Sets whether or not Polygon is pickable.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setVisible ( bool  )
virtual

Sets model shown/hidden.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setUpExtent ( float  )
virtual

Sets the height of the Polygon ("above" the origin point)

Sets the values of the extents of the line. Extents of the line are different than the width or height in that in setting the width or height those are centered around the points. The extents work from the point and move in the direction of the extent in topographic space. For example, if you imagine a straight line, the up extent moves straight up from that line, the down extent straight down, left to the left and right to the right. As the line rotates and orients the extents orient and rotate with that line

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setDownExtent ( float  )
virtual

Sets the height of the Polygon ("below" the origin point)

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setLeftExtent ( float  )
virtual

Sets the height of the Polygon ("left" of the origin point)

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setRightExtent ( float  )
virtual

Sets the height of the Polygon ("right" of the origin point)

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setHeight ( float  )
virtual

Sets the height of the Polygon (-half height to + half height around center).

If width is set, will 0 out width or for the entire Polygon

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setDimensions ( float  width,
float  height 
)
virtual

Sets the dimensions of the Polygon.

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setLineWidth ( float  width)
virtual

Sets the width of the line in pixel space, not world.

Clears out any existing dimensional size

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setScribeWidth ( float  width)
virtual

Sets the width of the scribe line in pixel space.

This will set a flag such that when the line width is changed this width is not, so, once set, you will need to continue to set to keep pace with line width.

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setScribed ( bool  b)
virtual

Sets the Polygon to be scribed (default true)

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setScribeColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Sets the color of the scribe line.

Once set it will always be different than the color of the main polygon

Implements makVrv::DtExtrudedPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setTexturePath ( const std::string &  texturePath)
virtual

Set the path to the polygon's texture.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setNumTextureTiles ( double  numTiles)
virtual

Set the number of times to tile the polygon's texture.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setPolygonMode ( int  )
virtual

Sets the polygon mode.

Implements makVrv::DtExtrudedPolygonModel.

virtual const std::vector<DtVector>& makVrv::DtOsgExtrudedPolygonModel::points ( ) const
virtual

Returns the points that are part of this polygon model.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setUseDynamicOrigin ( bool  )
virtual

Set whether or not to use dynamic origin.

Will not cause redraw or recalulate, but will effect how point 0 is used when using setPosition. If true will not set the point 0 to be at the origin, but rather will respect the current value. Default is false

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::setModelDefinition ( const std::string &  str)
virtual

Sets the model definition on the model instance.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::update ( )
protectedvirtual

Called on tick when updated, calls updateGeometry() of model instance.

virtual void makVrv::DtOsgExtrudedPolygonModel::needsUpdate ( )
protectedvirtual

Sets needs update flag such that on next update pass the object is updated.

virtual void makVrv::DtOsgExtrudedPolygonModel::addToScene ( const DtUniqueID sceneObjectId,
int  modelSet,
int  visualizerType 
)
protectedvirtual

Attaches the model to the scene.

Implements makVrv::DtModel.

virtual void makVrv::DtOsgExtrudedPolygonModel::removeFromScene ( )
protectedvirtual

Detaches the model from the scene.

Implements makVrv::DtModel.

Member Data Documentation

DtOsgSceneConnector* makVrv::DtOsgExtrudedPolygonModel::mySceneConnector
protected
DtUniqueID makVrv::DtOsgExtrudedPolygonModel::myParentId
protected
DtVector makVrv::DtOsgExtrudedPolygonModel::myOrigin
protected
bool makVrv::DtOsgExtrudedPolygonModel::myUseDynamicOrigin
protected
bool makVrv::DtOsgExtrudedPolygonModel::myNeedsUpdate
protected

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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)