14 #include <matrix/vlVector.h>
15 #include <matrix/vlTaitBryan.h>
19 #include <boost/unordered_map.hpp>
26 class DtSceneObjectUpdater;
69 return myKey == rec.
model;
79 ModelSet_Unspecified = -1,
81 ModelSet_3DColorized = 1,
93 void addModel(
DtModel* model,
int visualizerType );
96 void removeModel(
DtModel* model );
103 void setPosition(
int vtx,
const DtVector& position );
106 void addPosition(
int vtx,
const DtVector& position );
109 void getPosition(
int vtx,
DtVector& position )
const;
120 void setOrientation(
int vtx,
const DtTaitBryan& orientation );
124 void setTopographicOrientation(
int vtx,
125 const DtTaitBryan& topoOrientation );
128 void getOrientation(
int vtx, DtTaitBryan& orientation )
const;
132 void getTopographicOrientation(
int vtx, DtTaitBryan& orientation )
const;
135 void getOrientation(
int vtx,
DtQuat& orientation )
const;
138 void setColor(
float r,
float g,
float b,
float a);
142 void setModelSet(
int modelSet );
145 int modelSet()
const;
149 void setIsProp(
bool isProp );
155 void setIsSupportObject(
bool b );
158 bool isSupportObject();
161 void setSolid(
bool b );
164 bool isSolid()
const;
176 const ModelList& models()
const;
182 const TransformList& transforms()
const;
185 virtual void removePosition(
int);
189 void setBoundingBoxSize(
double minX,
double maxX,
190 double minY,
double maxY,
double minZ,
double maxZ);
193 const DtVector& boundingBoxExtents()
const;
196 void getBoundingBoxExtents(
double& x,
double& y,
double& z)
const;
199 const DtVector& boundingBoxCenter()
const;
202 void getBoundingBoxCenter(
double& x,
double& y,
double& z)
const;
205 double boundingRadius()
const;
210 void setVisible(
bool visible );
216 bool isVisible()
const;
245 void initializeModel(
DtModel* modelInstanceOwner );
248 void modelChanged(
DtModel* model );
253 bool modelVisibilityRequested(
DtModel* model,
bool visible);
256 void resetModelTransforms();
260 void updateBoundingBoxViaContents();
263 void calculateBoundingRadius();
266 virtual void addModelConnections(
DtModel* model );
269 virtual void removeModelConnections(
DtModel* model );