14#ifndef OSGSIM_LINEOFSIGHT
15#define OSGSIM_LINEOFSIGHT 1
The osgSim library is a NodeKit that extends the core scene graph to support nodes and drawables that...
Definition BlinkSequence:27
Base class for all internal nodes in the scene graph.
Definition Node:72
unsigned int NodeMask
This is a set of bits (flags) that represent the Node.
Definition Node:363
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
General purpose double triple for use as vertices, vectors and normals.
Definition Vec3d:30
Definition LineOfSight:24
DatabaseCacheReadCallback()
unsigned int getMaximumNumOfFilesToCache() const
Definition LineOfSight:29
OpenThreads::Mutex _mutex
Definition LineOfSight:42
void clearDatabaseCache()
FileNameSceneMap _filenameSceneMap
Definition LineOfSight:43
void pruneUnusedDatabaseCache()
void setMaximumNumOfFilesToCache(unsigned int maxNumFilesToCache)
Definition LineOfSight:28
unsigned int _maxNumFilesToCache
Definition LineOfSight:41
virtual osg::ref_ptr< osg::Node > readNodeFile(const std::string &filename)
std::map< std::string, osg::ref_ptr< osg::Node > > FileNameSceneMap
Definition LineOfSight:39
osgUtil::IntersectionVisitor _intersectionVisitor
Definition LineOfSight:123
std::vector< osg::Vec3d > Intersections
Definition LineOfSight:81
void setDatabaseCacheReadCallback(DatabaseCacheReadCallback *dcrc)
Set the ReadCallback that does the reading of external PagedLOD models, and caching of loaded subgrap...
const Intersections & getIntersections(unsigned int i) const
Get the intersection points for a single line of sight test.
Definition LineOfSight:84
const osg::Vec3d & getStartPoint(unsigned int i) const
Get the start point of single line of sight test.
Definition LineOfSight:73
DatabaseCacheReadCallback * getDatabaseCacheReadCallback()
Get the ReadCallback that does the reading of external PagedLOD models, and caching of loaded subgrap...
Definition LineOfSight:103
unsigned int addLOS(const osg::Vec3d &start, const osg::Vec3d &end)
Add a line of sight test, consisting of start and end point.
osg::ref_ptr< DatabaseCacheReadCallback > _dcrc
Definition LineOfSight:122
void setStartPoint(unsigned int i, const osg::Vec3d &start)
Set the start point of single line of sight test.
Definition LineOfSight:70
static Intersections computeIntersections(osg::Node *scene, const osg::Vec3d &start, const osg::Vec3d &end, osg::Node::NodeMask traversalMask=0xffffffff)
Compute the intersection between the specified scene graph and a single LOS start,...
std::vector< LOS > LOSList
Definition LineOfSight:119
LOSList _LOSList
Definition LineOfSight:120
const osg::Vec3d & getEndPoint(unsigned int i) const
Get the end point of single line of sight test.
Definition LineOfSight:79
void computeIntersections(osg::Node *scene, osg::Node::NodeMask traversalMask=0xffffffff)
Compute the LOS intersections with the specified scene graph.
void setEndPoint(unsigned int i, const osg::Vec3d &end)
Set the end point of single line of sight test.
Definition LineOfSight:76
void clear()
Clear the internal LOS List so it contains no line of sight tests.
void clearDatabaseCache()
Clear the database cache.
Definition LineOfSight:95
unsigned int getNumLOS() const
Get the number of line of sight tests.
Definition LineOfSight:67
LOS(const osg::Vec3d &start, const osg::Vec3d &end)
Definition LineOfSight:109
osg::Vec3d _end
Definition LineOfSight:115
osg::Vec3d _start
Definition LineOfSight:114
Intersections _intersections
Definition LineOfSight:116
IntersectionVisitor is used to testing for intersections with the scene, traversing the scene using g...
Definition IntersectionVisitor:152
Callback used to implement the reading of external files, allowing support for paged databases to be ...
Definition IntersectionVisitor:161
#define OSGSIM_EXPORT
Definition Export:38