VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
makVrv::DtInstancedLightPointUpdate Class Reference

Class for handling light point updates and checks also is the update callback for the instanced light point geometry. More...

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

Public Member Functions

 DtInstancedLightPointUpdate (osgSim::LightPoint lp, osg::ref_ptr< osgSim::LightPointNode > lpn, osg::Geometry *geom)
 Constructor: stores the lightpoint and lightpointnode associated with this object there is one of these updates for each light point on instanced geometry.
bool isShadowCamera (osg::RenderInfo renderInfo) const
 checks to see if this render info is for a shadow camera. This is used to not draw instanced light points when it is a shadow camera
virtual bool isSmallFeature (const osg::Matrixf &drawableMatrix, osg::ref_ptr< osg::Camera > camera)
 Check to see if this instance of the drawable is smaller than the small feature culling pixel size.
virtual bool processSector (const osg::Matrixd &drawableMatrix)
 Check to see if the camera location is such that this light point should be drawn based on the light point's sector.
virtual bool update (double frameTime, osg::Drawable *drw)
 Update callback for the geometry. Handles blinking lights and sets up the arrays for the geometry.
virtual void setDaylightControlled (bool b)
 Set whether the light point visibility is controlled by daylight level.
virtual bool daylightControlled ()
 Get whether light point visibility is controlled by daylight level.

Private Attributes

osg::ref_ptr
< osgSim::LightPointNode > 
myLightPointNode
osgSim::LightPoint myLightPoint
double myLastSimTime
bool myDaylightControlled
osg::ref_ptr
< osg::DrawElementsUInt > 
myGeomPrimitiveSet
osg::ref_ptr< osg::Vec3Array > myGeomVertexArray
osg::ref_ptr< osg::Vec4Array > myGeomColorArray
osg::ref_ptr< osg::BlendFunc > myGeomBlendFunc
osg::ref_ptr< osg::Uniform > myLightPointSizeUniform
osg::ref_ptr
< DtVirtualProgramDepthOnlyCallback
myDepthOnlyCallback
bool myIsVisible

Detailed Description

Class for handling light point updates and checks also is the update callback for the instanced light point geometry.

Constructor & Destructor Documentation

makVrv::DtInstancedLightPointUpdate::DtInstancedLightPointUpdate ( osgSim::LightPoint  lp,
osg::ref_ptr< osgSim::LightPointNode >  lpn,
osg::Geometry *  geom 
)

Constructor: stores the lightpoint and lightpointnode associated with this object there is one of these updates for each light point on instanced geometry.

Member Function Documentation

bool makVrv::DtInstancedLightPointUpdate::isShadowCamera ( osg::RenderInfo  renderInfo) const

checks to see if this render info is for a shadow camera. This is used to not draw instanced light points when it is a shadow camera

virtual bool makVrv::DtInstancedLightPointUpdate::isSmallFeature ( const osg::Matrixf &  drawableMatrix,
osg::ref_ptr< osg::Camera >  camera 
)
virtual

Check to see if this instance of the drawable is smaller than the small feature culling pixel size.

virtual bool makVrv::DtInstancedLightPointUpdate::processSector ( const osg::Matrixd &  drawableMatrix)
virtual

Check to see if the camera location is such that this light point should be drawn based on the light point's sector.

virtual bool makVrv::DtInstancedLightPointUpdate::update ( double  frameTime,
osg::Drawable *  drw 
)
virtual

Update callback for the geometry. Handles blinking lights and sets up the arrays for the geometry.

virtual void makVrv::DtInstancedLightPointUpdate::setDaylightControlled ( bool  b)
virtual

Set whether the light point visibility is controlled by daylight level.

virtual bool makVrv::DtInstancedLightPointUpdate::daylightControlled ( )
virtual

Get whether light point visibility is controlled by daylight level.

Member Data Documentation

osg::ref_ptr<osgSim::LightPointNode> makVrv::DtInstancedLightPointUpdate::myLightPointNode
private
osgSim::LightPoint makVrv::DtInstancedLightPointUpdate::myLightPoint
private
double makVrv::DtInstancedLightPointUpdate::myLastSimTime
private
bool makVrv::DtInstancedLightPointUpdate::myDaylightControlled
private
osg::ref_ptr<osg::DrawElementsUInt> makVrv::DtInstancedLightPointUpdate::myGeomPrimitiveSet
private
osg::ref_ptr<osg::Vec3Array> makVrv::DtInstancedLightPointUpdate::myGeomVertexArray
private
osg::ref_ptr<osg::Vec4Array> makVrv::DtInstancedLightPointUpdate::myGeomColorArray
private
osg::ref_ptr<osg::BlendFunc> makVrv::DtInstancedLightPointUpdate::myGeomBlendFunc
private
osg::ref_ptr<osg::Uniform> makVrv::DtInstancedLightPointUpdate::myLightPointSizeUniform
private
osg::ref_ptr<DtVirtualProgramDepthOnlyCallback> makVrv::DtInstancedLightPointUpdate::myDepthOnlyCallback
private
bool makVrv::DtInstancedLightPointUpdate::myIsVisible
private

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

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)