VR-Forces 4.0.4 Class Documentation
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtSimpleIntersector Class Reference

DtSimpleIntersector is a higher-level intersector class which adds functions for line of sight, height above terrain and height over terrain. More...

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

List of all members.

Public Member Functions

virtual ~DtSimpleIntersector ()
 DTOR.
virtual double heightAboveTerrain (const DtVector &loc, DtSimpleIntersectorResult &result, int modelSet=0, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0)
 Returns the height above the terrain at location loc.
virtual double heightAboveTerrain (DtElementID element, DtSimpleIntersectorResult &result, int modelSet=0, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0)
virtual double heightOfTerrain (const DtVector &loc, DtSimpleIntersectorResult &result, int modelSet=0, bool useHighLod=false)
 Returns the height of the terrain at the given location.
virtual bool hasLineOfSight (const DtVector &fromLoc, const DtVector &toLoc, DtSimpleIntersectorResult &result, int modelSet=0, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0)
 Returns true if there is nothing blocking line of sight between the two points.
virtual bool hasLineOfSight (DtElementID fromElem, DtElementID toElem, DtSimpleIntersectorResult &result, int modelSet=0, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0)

Static Public Member Functions

static DtSimpleIntersectorinstance (DtDe &de)
 Get the instance of the DtSimpleIntersector.
static void registerInstance (DtDe &de, DtSimpleIntersector *anInstance)
 Register the instance with the DtDe.

Protected Member Functions

 DtSimpleIntersector (DtDe &de)
virtual DtUniqueID sceneObjectIdFromElementId (DtElementID element, int modelSet)
 Gets the scene object ID from the element ID.
virtual DtVector positionFromSceneObjectId (DtUniqueID sceneObjectId)
 Gets the position of the scene object.
virtual bool getTerrainIntersection (const DtVector &loc, DtIntersectorResult &result, int modelSet=0, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0)
 Returns true if there is an intersection, putting the intersection result in result.
virtual void fillInElementType (DtSimpleIntersectorResult &result)

Protected Attributes

DtDemyDe

Detailed Description

DtSimpleIntersector is a higher-level intersector class which adds functions for line of sight, height above terrain and height over terrain.

This also enables the user to find out the type of element intersected with (terrain patch, entity, prop, etc)


Constructor & Destructor Documentation

DTOR.


Member Function Documentation

Get the instance of the DtSimpleIntersector.

static void makVrv::DtSimpleIntersector::registerInstance ( DtDe de,
DtSimpleIntersector anInstance 
) [static]

Register the instance with the DtDe.

virtual double makVrv::DtSimpleIntersector::heightAboveTerrain ( const DtVector loc,
DtSimpleIntersectorResult result,
int  modelSet = 0,
bool  useHighLod = false,
bool  includeEntities = false,
std::vector< DtElementID > *  ignoreList = 0 
) [virtual]

Returns the height above the terrain at location loc.

The position of the terrain is returned in terrainLoc.

virtual double makVrv::DtSimpleIntersector::heightAboveTerrain ( DtElementID  element,
DtSimpleIntersectorResult result,
int  modelSet = 0,
bool  useHighLod = false,
bool  includeEntities = false,
std::vector< DtElementID > *  ignoreList = 0 
) [virtual]
virtual double makVrv::DtSimpleIntersector::heightOfTerrain ( const DtVector loc,
DtSimpleIntersectorResult result,
int  modelSet = 0,
bool  useHighLod = false 
) [virtual]

Returns the height of the terrain at the given location.

virtual bool makVrv::DtSimpleIntersector::hasLineOfSight ( const DtVector fromLoc,
const DtVector toLoc,
DtSimpleIntersectorResult result,
int  modelSet = 0,
bool  useHighLod = false,
bool  includeEntities = false,
std::vector< DtElementID > *  ignoreList = 0 
) [virtual]

Returns true if there is nothing blocking line of sight between the two points.

If false is returned, the location of the intersection will be stored in hitLoc.

virtual bool makVrv::DtSimpleIntersector::hasLineOfSight ( DtElementID  fromElem,
DtElementID  toElem,
DtSimpleIntersectorResult result,
int  modelSet = 0,
bool  useHighLod = false,
bool  includeEntities = false,
std::vector< DtElementID > *  ignoreList = 0 
) [virtual]
virtual DtUniqueID makVrv::DtSimpleIntersector::sceneObjectIdFromElementId ( DtElementID  element,
int  modelSet 
) [protected, virtual]

Gets the scene object ID from the element ID.

virtual DtVector makVrv::DtSimpleIntersector::positionFromSceneObjectId ( DtUniqueID  sceneObjectId) [protected, virtual]

Gets the position of the scene object.

virtual bool makVrv::DtSimpleIntersector::getTerrainIntersection ( const DtVector loc,
DtIntersectorResult result,
int  modelSet = 0,
bool  useHighLod = false,
bool  includeEntities = false,
std::vector< DtElementID > *  ignoreList = 0 
) [protected, virtual]

Returns true if there is an intersection, putting the intersection result in result.

virtual void makVrv::DtSimpleIntersector::fillInElementType ( DtSimpleIntersectorResult result) [protected, virtual]

Member Data Documentation


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)