16 #include <btBulletCollisionCommon.h>
17 #include <btBulletDynamicsCommon.h>
20 #include <vlutil/vlSmartPointers.h>
21 #include <vlutil/vlFilename.h>
26 #include <osg/NodeVisitor>
34 #include <vlutil/vlSmartPointers.h>
39 #include <boost/shared_ptr.hpp>
60 :
public boost::enable_shared_from_this<DtCollisionObjectInterface>
63 typedef std::vector< boost::shared_ptr<makVrv::DtDynamicTerrainFeature> >
DynamicFeatures;
69 virtual boost::shared_ptr<btCollisionShape> bulletCollisionShape()
const = 0;
72 virtual const btTransform& worldTransform()
const = 0;
76 virtual bool buildBvh() = 0;
79 virtual bool enabled()
const = 0;
82 virtual unsigned int numberOfTriangles()
const = 0;
85 virtual double radius()
const = 0;
88 virtual DtSurface triangleSurface(
unsigned int triangleIndex)
const = 0;
99 static std::auto_ptr<DtVrfSimTerrainProcessor> Create();
106 virtual unsigned int numberOfTriangles()
const = 0;
108 virtual void setDefaultSurface(
const DtSurface&) = 0;
109 virtual void setMatrix(
const osg::Matrix&) = 0;
110 virtual void setTraversalMode(osg::NodeVisitor::TraversalMode) = 0;
111 virtual void setVisitorType(osg::NodeVisitor::VisitorType) = 0;
112 virtual void setSurfaceCharacteristicsFile(
const DtFilename&) = 0;
113 virtual void setSurfacesToIgnore(
const std::vector<std::string>&) = 0;
115 virtual void setTreatPagedLODAsLOD(
bool) = 0;
116 virtual void setCheckGeodesForSurfaces(
bool) = 0;
117 virtual void setUseQuantization(
bool) = 0;
118 virtual void setBuildBvhNow(
bool) = 0;
119 virtual void setFilterTransparentPolygons(
bool) = 0;