![]() |
VR-Forces Developer's Guide
|
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)

Public Member Functions | |
| virtual | ~DtSimpleIntersector () |
| virtual double | heightAboveTerrain (const DtVector &loc, DtSimpleIntersectorResult &result, DtModelSetId modelSet=DtModelSetId::Models3D, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0) |
| virtual double | heightAboveTerrain (DtElementID element, DtSimpleIntersectorResult &result, DtModelSetId modelSet=DtModelSetId::Models3D, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0) |
| virtual double | heightOfTerrain (const DtVector &loc, DtSimpleIntersectorResult &result, DtModelSetId modelSet=DtModelSetId::Models3D, bool useHighLod=false) |
| virtual bool | hasLineOfSight (const DtVector &fromLoc, const DtVector &toLoc, DtSimpleIntersectorResult &result, DtModelSetId modelSet=DtModelSetId::Models3D, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0) |
| virtual bool | hasLineOfSight (DtElementID fromElem, DtElementID toElem, DtSimpleIntersectorResult &result, DtModelSetId modelSet=DtModelSetId::Models3D, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0) |
Public Member Functions inherited from makVrv::DtVirtualBaseClass | |
| DtVirtualBaseClass () | |
| virtual | ~DtVirtualBaseClass () |
Static Public Member Functions | |
| static DtSimpleIntersector & | instance (DtDe &de) |
| static void | registerInstance (DtDe &de, DtSimpleIntersector *anInstance) |
Protected Member Functions | |
| DtSimpleIntersector (DtDe &de) | |
| virtual DtUniqueID | sceneObjectIdFromElementId (DtElementID element, DtModelSetId modelSet) |
| virtual DtVector | positionFromSceneObjectId (DtUniqueID sceneObjectId) |
| virtual bool | getTerrainIntersection (const DtVector &loc, DtIntersectorResult &result, DtModelSetId modelSet=DtModelSetId::Models3D, bool useHighLod=false, bool includeEntities=false, std::vector< DtElementID > *ignoreList=0) |
| virtual void | fillInElementType (DtSimpleIntersectorResult &result) |
| virtual void | slot_coordinateSystemChanged () |
Protected Attributes | |
| DtDe & | myDe |
| DtIntersectorsContainer * | myIntersectors = nullptr |
| DtSignalConnectionManager | myConnections |
| DtCoordinateSystem * | myCoordinateSystem = nullptr |
|
virtual |
DTOR.
|
protected |
|
static |
Get the instance of the DtSimpleIntersector.
|
static |
Register the instance with the DtDe.
|
virtual |
Returns the height above the terrain at location loc. The position of the terrain is returned in terrainLoc.
|
virtual |
|
virtual |
Returns the height of the terrain at the given location using local coordinates. It will return the altutide in geodetic coordinates. Hit location defaults to the supplied location if no intersection occurred.
|
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 |
|
protectedvirtual |
Gets the scene object ID from the element ID.
|
protectedvirtual |
Gets the position of the scene object.
|
protectedvirtual |
Returns true if there is an intersection, putting the intersection result in result.
|
protectedvirtual |
|
protectedvirtual |
slot for when the coordinate system changes
|
protected |
|
protected |
|
protected |
|
protected |
local clone of the system wide coordinate system. for thread safety.