![]() |
VR-Forces 4.6.1 Class Documentation
|
Classes | |
| class | TileSpatialIndex |
Public Member Functions | |
| DtOsgEarthTerrainSourceTracker (DtVantageTerrainEngine *, DtPagerCommandQueue *commandQueue, osgEarth::MapNode *mapNode) | |
| virtual | ~DtOsgEarthTerrainSourceTracker () |
| virtual bool | useRawElevation () const |
| True if using elevation data (i.e. if using osgEarth REX engine). | |
| virtual unsigned | tileCount () const |
| Number of currently paged in tiles. | |
| virtual unsigned | cellCount () const |
| Number of cells in index. | |
| virtual void | addPagedInTile (const osgEarth::TileKey &tilekey, const boost::shared_ptr< DtTileData > &tileData) |
| Adds a tileId and the corresponding tileData to #myPagedInTiles. | |
| virtual void | removePagedInTile (const osgEarth::TileKey tileKey) |
| Removes a tileId and the corresponding tileData from #myPagedInTiles. | |
| virtual bool | dataAvailable (DtPagingMetaDataPtr metaData, DtTerrainPagingGeometryPtr geometry) |
| Finds all tiles within geometry, and tests to see whether they have all been paged in already. | |
| virtual bool | findHeightFieldIntersections (const DtChord &chord, DtVrfChordIntersectRecordList &intList, bool *dataAvailable=0) const |
| virtual void | processTriangles (DtTriangleOutputInterface &output, const DtTerrainProcessPolygonsBox &box) const |
| virtual void | pageInData (DtPagingMetaDataPtr metaData, DtTerrainPagingGeometryPtr geometry) |
| Page in data within geometry. | |
| virtual DtTerrainIntersectIDType | findOldestPagedData (unsigned int &numTrianglesOut) |
| Finds the least-recently-used tile and set myOldestPagedObject to it. | |
| virtual void | pageOutOldestData (const int priority) |
| Adds a page out command for the least-recently-used tileID to myCommandQueue. | |
| virtual void | drawDebugInfo (btIDebugDraw *debugDrawer) |
| Draws the tile boundaries if we are drawing tile boundaries. | |
| virtual void | drawElevation () |
| Updates the shared memory drawer with current data. | |
| virtual bool | canPageOutData (DtTerrainIntersectIDType intersectId) |
| Returns true if there is data that can be paged out. | |
| virtual osgEarth::TileKey | getBestTileKey (const osgEarth::TileKey &) const |
| Returns a lower LOD tilekey if the one supplied is greater than the max data level. | |
| virtual void | findMissingTiles (const DtTerrainPagingGeometryPtr &geometry, DtTileKeyList &tiles) const |
| Find all the tiles that intersect the geometry which are not paged in. | |
| virtual unsigned | getMaxLOD () const |
| Max lod that the tracker will generate. | |
| virtual void | setMaxLOD (unsigned) |
| virtual double | triangleOutputMergeTolerance () const |
| If the max difference between true elevation and elevation defined by the two triangles that make up this cell is less than this value then the system will use those two triangles instead of breaking them up further. | |
| virtual void | setTriangleOutputMergeTolerance (double tol) |
| virtual double | intersetionTriangleMergeTolerance () const |
| virtual void | setIntersectionTriangleMergeTolerance (double tol) |
Public Member Functions inherited from DtTerrainSourceTracker | |
| DtTerrainSourceTracker (DtVantageTerrainEngine *, DtPagerCommandQueue *commandQueue) | |
| virtual | ~DtTerrainSourceTracker () |
| virtual DtTerrainInterfaceConfig & | configOptions () |
| virtual void | addNodesToCollisionMapping (DtNodeId node, DtCollisionObjectList *collObjList) |
| virtual void | removeNodeToCollisionMappings (DtNodeId node) |
| virtual DtCollisionObjectList | collisionObjectsForNode (DtNodeId node) |
| virtual const Coordinate_System * | localCS () const |
| virtual void | setLabel (const DtString &) |
| virtual void | printInfo () const |
Protected Types | |
| typedef boost::ptr_vector < TileSpatialIndex > | TileRoots |
| typedef tbb::spin_mutex | DrawerMutex |
Protected Member Functions | |
| virtual DtPageInTilesCommand * | createPageInTilesCommand (DtPagingMetaDataPtr metaData) |
| virtual DtPageOutTilesCommand * | createPageOutTilesCommand (DtPagingMetaDataPtr metaData) |
| virtual bool | setDrawMode (DtDrawMode) |
| virtual void | convertGeometry (const DtTerrainPagingGeometryPtr &geometry, std::vector< DtTerrainPagingGeometryPtr > &output) const |
| Convert geometry to internal coordinate system. | |
| virtual bool | convertGeometry (const DtTerrainPagingChord &geometry, std::vector< DtTerrainPagingGeometryPtr > &output) const |
| virtual bool | convertGeometry (const DtTerrainPagingSphere &geometry, std::vector< DtTerrainPagingGeometryPtr > &output) const |
| virtual bool | convertGeometry (const DtTerrainPagingShape &geometry, std::vector< DtTerrainPagingGeometryPtr > &output) const |
| virtual bool | nearCenterOfEarth (const DtChord &chord) const |
| virtual bool | findData (const DtTerrainPagingGeometry *geometry, std::vector< boost::shared_ptr< DtTileData > > &data, const DtPagingMetaDataPtr &metaData=DtPagingMetaDataPtr()) const |
| virtual void | findMissing (const DtTerrainPagingGeometry &geometry, DtTileKeyList &missing) const |
| virtual boost::shared_ptr < DtTileData > | findOldest () const |
| virtual boost::shared_ptr < DtTileData > | findOldestUnlocked () const |
Protected Attributes | |
| const osg::ref_ptr < osgEarth::MapNode > | myMapNode |
| std::vector< osg::ref_ptr < osgEarth::ElevationLayer > > | myElevationLayers |
| bool | myUseRawElevation |
| unsigned int | myMaxLOD |
| double | myTriangleOutputMergeTolerance |
| double | myIntersetionTriangleMergeTolerance |
| TileRoots | myTileSpatialIndexRoots |
| double | myWorldWidth |
| boost::weak_ptr< DtTileData > | myOldestData |
| DrawerMutex | myDrawerMutex |
| std::auto_ptr < DtSharedMemoryBulletDebugDrawer > | myExtentDrawer |
| std::auto_ptr < DtSharedMemoryBulletDebugDrawer > | myElevationDrawer |
Protected Attributes inherited from DtTerrainSourceTracker | |
| DtString | myLabel |
| DtTerrainInterfaceConfig | myConfig |
| DtPagerCommandQueue * | myCommandQueue |
| DtNodeToCollObjMMap | myNodeToCollObjMMap |
| tbb::spin_rw_mutex | myMutex |
| DtVantageTerrainEngine * | myVantageTerrainEngine |
|
protected |
|
protected |
| DtOsgEarthTerrainSourceTracker::DtOsgEarthTerrainSourceTracker | ( | DtVantageTerrainEngine * | , |
| DtPagerCommandQueue * | commandQueue, | ||
| osgEarth::MapNode * | mapNode | ||
| ) |
|
virtual |
|
virtual |
True if using elevation data (i.e. if using osgEarth REX engine).
|
virtual |
Max lod that the tracker will generate.
|
virtual |
|
virtual |
If the max difference between true elevation and elevation defined by the two triangles that make up this cell is less than this value then the system will use those two triangles instead of breaking them up further.
Intersection is for terrain intersections. Triangle output is for triangle generation.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Number of currently paged in tiles.
|
virtual |
Number of cells in index.
|
virtual |
Adds a tileId and the corresponding tileData to #myPagedInTiles.
| tileId | Key for the tileData passed in. |
| tileData | tileData to create the tileId -> tileData mapping with. |
|
virtual |
Removes a tileId and the corresponding tileData from #myPagedInTiles.
|
virtual |
Finds all tiles within geometry, and tests to see whether they have all been paged in already.
Tiles within the geometry that have been paged in have their "lastUsed" data set to the intersectId parameter for removal priority.
| geometry | The geometry to test for data available. |
| intersectId | Optional parameter to mark already-paged-in tiles with. |
Implements DtTerrainSourceTracker.
|
virtual |
|
virtual |
|
virtual |
Page in data within geometry.
Determines which tiles are within the geometry and adds a page in command to myCommandQueue to page in any tiles within the geometry that have not yet been paged in.
| geometry | The geometry to page in data within. |
| intersectId | Id to assign to the page in command to seed tileData for newly paged-in tiles. |
| priority | Priority to use for commands generated by this call. |
Implements DtTerrainSourceTracker.
|
virtual |
Finds the least-recently-used tile and set myOldestPagedObject to it.
| numTrianglesOut | The number of triangles the least-recently-used tileId represents in the collision world. |
Implements DtTerrainSourceTracker.
|
virtual |
Adds a page out command for the least-recently-used tileID to myCommandQueue.
| priority | Priority to use for commands generated by this call. |
Implements DtTerrainSourceTracker.
|
virtual |
Draws the tile boundaries if we are drawing tile boundaries.
Implements DtTerrainSourceTracker.
|
virtual |
Updates the shared memory drawer with current data.
|
virtual |
Returns true if there is data that can be paged out.
Implements DtTerrainSourceTracker.
|
virtual |
Returns a lower LOD tilekey if the one supplied is greater than the max data level.
Otherwise returns to input tilekey.
|
virtual |
Find all the tiles that intersect the geometry which are not paged in.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Reimplemented from DtTerrainSourceTracker.
|
protectedvirtual |
Convert geometry to internal coordinate system.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |