VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfGeometryStateComponent.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
12 #include <vrfutil/vertexList.h>
13 namespace makVrf
14 {
15  class DtLocationStateComponent;
16 
18  {
20  : myLocalVertices("local")
21  , myWorldVertices("world")
22  {
23  }
24 
26  : myObjectGeometry(orig.myObjectGeometry)
27  {
28  myLocalVertices = orig.myLocalVertices;
29  myWorldVertices = orig.myWorldVertices;
30  }
31 
33  {
34  myObjectGeometry = rhs.myObjectGeometry;
35  myLocalVertices = rhs.myLocalVertices;
36  myWorldVertices = rhs.myWorldVertices;
37 
38  return *this;
39  }
40 
41 
42  DEFINE_REF_ACCESSORS(DtVrfObjectGeometry, objectGeometry, ObjectGeometry)
43  DEFINE_REF_ACCESSORS(DtLocalVertexList, localVertices, LocalVertices)
44  DEFINE_REF_ACCESSORS(DtVertexList, worldVertices, WorldVertices)
45 
46  protected:
47  DtVrfObjectGeometry myObjectGeometry;
48  DtLocalVertexList myLocalVertices;
49  DtVertexList myWorldVertices;
50  };
51 
55  {
56  public:
58 
60  : DtFrameStateInterface(storage)
61  {
62  }
63 
69  UNDEFINED_RETURNVALUE_ACCESSOR_MUTATOR(bool, closedFigure, ClosedFigure)
70  UNDEFINED_RETURNVALUE_ACCESSOR_MUTATOR(bool, ellipsoid, Ellipsoid)
71  UNDEFINED_RETURNVALUE_ACCESSOR_MUTATOR(bool, projection, Projection)
72  UNDEFINED_RETURNREF_CONST_ACCESSOR(Dt3dBoundingVolume, boundingVolume)
73  UNDEFINED_MUTATOR_WITH_ARGS(BoundingVolume, const Dt3dBoundingVolume& b)
74  UNDEFINED_MUTATOR_WITH_ARGS(HalfLengthWidthHeight, double l, double w, double h)
75  UNDEFINED_MUTATOR_WITH_ARGS(BoundingGeometryType, DtSimBoundingGeometry::DtSimBoundingGeometryType type)
76  UNDEFINED_MUTATOR_WITH_ARGS(EngineeringArea, const DtVector&)
77  UNDEFINED_METHOD(void, updateVertices)
78  UNDEFINED_METHOD(void, removeVertex, int)
79  UNDEFINED_RETURNREF_ACCESSOR_MUTATOR(bool, objectVerticesChanged, ObjectVerticesChanged)
80  UNDEFINED_RETURNREF_ACCESSOR_MUTATOR(bool, worldVerticesChanged, WorldVerticesChanged)
81  UNDEFINED_METHOD(void, setObjectGeometry, const DtVrfObjectGeometry&)
82  virtual const DtSimBoundingGeometry& localBoundingGeometry() const { return boundingGeometry(); };
83  virtual const DtSimBoundingGeometry& worldBoundingGeometry() const { return boundingGeometry(); };
84  virtual void setToObjectGeometry(DtVrfObjectGeometry&) const { throw DtUnimplementedMethod("void setToObjectGeometry(DtVrfObjectGeometry&) const is unimplemented."); };
85 
89  virtual double distSquaredTo(const DtVector& testPoint) const { throw DtUnimplementedMethod("double distSquaredTo(const DtVector& testPoint) const is unimplemented."); };
90 
93  virtual bool localGetClosestVertex(const DtVector& point, DtVector& vertex) const { throw DtUnimplementedMethod("bool localGetClosestVertex(const DtVector& point, DtVector& vertex) const is unimplemented."); };
94 
99  virtual bool localGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const { throw DtUnimplementedMethod("bool localGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const is unimplemented."); };
100 
104  virtual double worldDistSquaredTo(const DtVector& testPoint) const { throw DtUnimplementedMethod("double distSquaredTo(const DtVector& testPoint) const is unimplemented."); };
105 
108  virtual bool worldGetClosestVertex(const DtVector& point, DtVector& vertex) const { throw DtUnimplementedMethod("bool localGetClosestVertex(const DtVector& point, DtVector& vertex) const is unimplemented."); };
109 
114  virtual bool worldGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const { throw DtUnimplementedMethod("bool localGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const is unimplemented."); };
115 
116  virtual void setLocalVertices(const DtList& vertices, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool setLocalVertices(const DtList& vertices, DtVector& newGeometricCenter) is unimplemented."); };
117  virtual void setLocalVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool setLocalVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) is unimplemented."); };
118  virtual void setLocalVertices(const DtLocalVertexList& vertices, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool setLocalVertices(const DtVertexList& vertices, DtVector& newGeometricCenter) is unimplemented."); };
119 
120  virtual void setWorldVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool setWorldVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) is unimplemented."); };
121  virtual void setWorldVertices(const DtVertexList& vertices, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool setWorldVertices(const DtVertexList& vertices, DtVector& newGeometricCenter) is unimplemented."); };
122  virtual void setWorldVertices(const DtList& vertices, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool setWorldVertices(const DtList& vertices, DtVector& newGeometricCenter) is unimplemented."); };
123 
124  virtual void setObjectVertices(const std::vector<DtVector>& vertices) { throw DtUnimplementedMethod("bool setObjectVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) is unimplemented."); };
125  virtual void setObjectVertices(const DtList& vertices) { throw DtUnimplementedMethod("bool setObjectVertices(const DtList& vertices, DtVector& newGeometricCenter) is unimplemented."); };
126 
127  virtual void addLocalVertex(const DtVector& vertex) { throw DtUnimplementedMethod("bool addLocalVertex(const DtVector& vertex) is unimplemented."); };
128  virtual void addLocalVertex(const DtVector& vertex, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool addLocalVertex(const DtVector& vertex, DtVector& newGeometricCenter) is unimplemented."); };
129  virtual void addWorldVertex(const DtVector& vertex, DtVector& newGeometricCenter) { throw DtUnimplementedMethod("bool addWorldVertex(const DtVector& vertex, DtVector& newGeometricCenter) is unimplemented."); };
130 
132  mutable boost::signals2::signal<void (const DtFrameStateInterface*)> signal_objectVerticesChanged{};
133  };
134 
137  {
138  public:
140 
142  const DtVrfGeometryStateComponentData& frameState() const { return myData; };
144 
145  virtual const DtLocalVertexList& localVertices() const override;
146  virtual DtLocalVertexList& localVertices() override;
147 
148  virtual const DtVertexList& worldVertices() const override;
149  virtual DtVertexList& worldVertices() override;
150 
151  virtual const DtLocalVertexList& objectVertices() const override;
152  virtual DtLocalVertexList& objectVertices() override;
153 
154  virtual const Dt3dBoundingVolume& boundingVolume() const override;
155  virtual const DtVrfObjectGeometry& objectGeometry() const override;
156  virtual const bool closedFigure() const override;
157  virtual const bool ellipsoid() const override;
158  virtual const bool projection() const override ;
159  virtual void setClosedFigure(const bool& b) override;
160  virtual void setEllipsoid(const bool& b) override;
161  virtual void setProjection(const bool& b) override;
162  virtual void setBoundingVolume(const Dt3dBoundingVolume& b) override;
163  virtual void setHalfLengthWidthHeight(double l, double w, double h) override;
164  virtual void setBoundingGeometryType(DtSimBoundingGeometry::DtSimBoundingGeometryType type) override;
165  virtual void updateVertices() override;
166  bool calculateBodyCoordinates(DtLocalVertexList& newList) const;
167  void calculateLocalVertices(DtLocalVertexList& newList) const;
168  bool calculateWorldVertices(DtVertexList& newList) const;
169  virtual void removeVertex(int) override;
170  virtual const bool& objectVerticesChanged() const override;
171  virtual void setObjectVerticesChanged(const bool&) override;
172  virtual const bool& worldVerticesChanged() const override;
173  virtual void setWorldVerticesChanged(const bool&) override;
174  virtual double distSquaredTo(const DtVector& testPoint) const override;
175  virtual bool localGetClosestVertex(const DtVector& point, DtVector& vertex) const override;
176  virtual bool localGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const override;
177  virtual double worldDistSquaredTo(const DtVector& testPoint) const override;
178  virtual bool worldGetClosestVertex(const DtVector& point, DtVector& vertex) const override;
179  virtual bool worldGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const override;
180  virtual const DtSimBoundingGeometry& boundingGeometry() const override;
181  virtual void setObjectGeometry(const DtVrfObjectGeometry&) override;
182  virtual void setToObjectGeometry(DtVrfObjectGeometry&) const override;
183  virtual void setEngineeringArea(const DtVector&) override;
184 
185  virtual void setLocalVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) override;
186  virtual void setLocalVertices(const DtList& vertices, DtVector& newGeometricCenter) override;
187  virtual void setLocalVertices(const DtLocalVertexList& vertices, DtVector& newGeometricCenter) override;
188 
189  virtual void setWorldVertices(const std::vector<DtVector>& vertices, DtVector& newGeometricCenter) override;
190  virtual void setWorldVertices(const DtVertexList& vertices, DtVector& newGeometricCenter) override;
191  virtual void setWorldVertices(const DtList& vertices, DtVector& newGeometricCenter) override;
192 
193  virtual void setObjectVertices(const std::vector<DtVector>& vertices) override;
194  virtual void setObjectVertices(const DtList& vertices) override;
195 
196  virtual void addLocalVertex(const DtVector& vertex) override;
197  virtual void addLocalVertex(const DtVector& vertex, DtVector& newGeometricCenter) override;
198  virtual void addWorldVertex(const DtVector& vertex, DtVector& newGeometricCenter) override;
199 
201  virtual void makeWritable() override {};
202 
204  virtual void makeReadOnly() override {};
205 
206  bool needsUpdateVertices() const
207  {
208  return myNeedsUpdateVertices;
209  }
210 
212  {
213  myNeedsUpdateVertices = b;
214  }
215 
216  protected:
218  virtual void setPointRecordsIntoEnvironmental();
219 
220  protected:
226  };
227 
230  {
231  public:
233  virtual ~DtVrfGeometryStateComponentCurrentFrame() override;
234 
236  const DtVrfGeometryStateComponentData& frameState() const { return myData; };
237 
238  virtual const Dt3dBoundingVolume& boundingVolume() const override;
239  virtual const DtLocalVertexList& localVertices() const override;
240  virtual const DtVertexList& worldVertices() const override;
241  virtual const DtLocalVertexList& objectVertices() const override;
242  virtual const bool closedFigure() const override;
243  virtual const bool ellipsoid() const override;
244  virtual const bool projection() const override;
245  virtual void updateVertices() override;
246  virtual double distSquaredTo(const DtVector& testPoint) const override;
247  virtual bool localGetClosestVertex(const DtVector& point, DtVector& vertex) const override;
248  virtual bool localGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const override;
249  virtual double worldDistSquaredTo(const DtVector& testPoint) const override;
250  virtual bool worldGetClosestVertex(const DtVector& point, DtVector& vertex) const override;
251  virtual bool worldGetClosestLine(const DtVector& point, DtVector& linePt1, DtVector& linePt2) const override;
252  virtual const DtSimBoundingGeometry& boundingGeometry() const override;
253  virtual const DtVrfObjectGeometry& objectGeometry() const override;
254  virtual void setToObjectGeometry(DtVrfObjectGeometry&) const override;
255 
256  virtual void setObjectVerticesChanged(const bool&) override;
257  virtual const bool& objectVerticesChanged() const override;
258 
259  virtual void setWorldVerticesChanged(const bool&) override;
260  virtual const bool& worldVerticesChanged() const override;
261 
262  protected:
263  virtual void handleDataUpdated();
264  bool calculateBodyCoordinates(DtLocalVertexList& newList) const;
265  void calculateLocalVertices(DtLocalVertexList& newList) const;
266  bool calculateWorldVertices(DtVertexList& newList) const;
267 
268  protected:
270  void watchEnvironmentalChanges();
272  {
273  myData = data;
274  }
275 
276  protected:
279  unsigned int myCallbackHandle;
281  boost::signals2::scoped_connection myCompleteSetupConnection;
282 
283  private:
285  };
286 
290  {
291  public:
293 
294  bool isDoubleBuffered() { return true; };
295  virtual const DtFrameStateInterface* currentFrameState() const override { return &myCurrentFrameState; }
296  virtual DtFrameStateInterface* nextFrameState() override { return &myNextFrameState; };
297  virtual const DtFrameStateInterface* nextFrameState() const override { return &myNextFrameState; };
298 
299  virtual void updateDataStorage() override;
300 
302  virtual bool forceAdvance() override;
303 
304  virtual void initializeFromParameters(const DtVrfObjectParameters* params) override;
305 
306  virtual void aboutToBeDeleted() override
307  {
309  myCurrentFrameState.aboutToBeDeleted();
310  myNextFrameState.aboutToBeDeleted();
311  }
312 
313  virtual void updateStateData(DtStateData* sd) override
314  {
315  myCurrentFrameState.updateStateData(sd);
316  myNextFrameState.updateStateData(sd);
317  }
318 
319  virtual void advanceFrame() override;
320 
321  protected:
326  bool myFirstAdvance = true;
327  };
328 
332 }
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:64
Definition: stateDataTypes.h:23
const DtVrfGeometryStateComponentData & frameState() const
Current frame state only can access current frame buffers. This ensures thread safety.
Definition: vrfGeometryStateComponent.h:236
virtual const DtSimBoundingGeometry & worldBoundingGeometry() const
Definition: vrfGeometryStateComponent.h:83
#define UNDEFINED_METHOD(Type, Method,...)
Definition: doubleBufferedDataStorage.h:68
virtual void setToObjectGeometry(DtVrfObjectGeometry &) const
Definition: vrfGeometryStateComponent.h:84
DtVrfGeometryStateComponentData(const DtVrfGeometryStateComponentData &orig)
Definition: vrfGeometryStateComponent.h:25
virtual void setObjectVertices(const std::vector< DtVector > &vertices)
Definition: vrfGeometryStateComponent.h:124
virtual bool localGetClosestVertex(const DtVector &point, DtVector &vertex) const
Determines the closest vertex in the object’s geometry to a given point, in local coordinates.
Definition: vrfGeometryStateComponent.h:93
DtLocalVertexList myLocalVertices
Definition: vrfGeometryStateComponent.h:48
The DtLocationStateComponent interface contains the interface that all DtLocationStateComponents can ...
Definition: locationStateComponent.h:25
Class Description: DtSimBoundingGeometry describes on objects bounding volume or bounding area (or no...
Definition: simBoundingGeometry.h:57
virtual void makeWritable() override
Override to make component writable.
Definition: vrfGeometryStateComponent.h:201
virtual void setLocalVertices(const DtLocalVertexList &vertices, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:118
virtual void setObjectVertices(const DtList &vertices)
Definition: vrfGeometryStateComponent.h:125
bool myWorldVerticesChanged
Definition: vrfGeometryStateComponent.h:222
Definition: stateComponent.h:269
virtual bool worldGetClosestLine(const DtVector &point, DtVector &linePt1, DtVector &linePt2) const
Determines the closest line segment in the object’s geometry to a given point, in world coordinates...
Definition: vrfGeometryStateComponent.h:114
virtual void addLocalVertex(const DtVector &vertex, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:128
3) Define the current frame class. This will be used for read access.
Definition: vrfGeometryStateComponent.h:229
DtVrfGeometryStateComponentData & frameState()
Definition: vrfGeometryStateComponent.h:143
DtVector myParentLocation
Definition: vrfGeometryStateComponent.h:325
virtual void setWorldVertices(const DtList &vertices, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:122
virtual DtFrameStateInterface * nextFrameState() override
Definition: vrfGeometryStateComponent.h:296
unsigned int myCallbackHandle
Definition: vrfGeometryStateComponent.h:279
bool isDoubleBuffered()
Definition: vrfGeometryStateComponent.h:294
#define UNDEFINED_MUTATOR_WITH_ARGS(Set,...)
Definition: doubleBufferedDataStorage.h:47
#define UNDEFINED_RETURNREF_ACCESSORS(ReturnType, Member)
Definition: doubleBufferedDataStorage.h:40
Definition: vrfGeometryStateComponent.h:17
bool myObjectVerticesChanged
Definition: vrfGeometryStateComponent.h:277
const DtVrfGeometryStateComponentData & frameState() const
Next frame access write access. Ensure this is only used in a single thread (i.e.a controller thread)...
Definition: vrfGeometryStateComponent.h:142
unsigned long long UInt64
Definition: stateDataTypes.h:17
#define UNDEFINED_RETURNREF_ACCESSOR(ReturnType, Member)
Definition: doubleBufferedDataStorage.h:34
virtual double worldDistSquaredTo(const DtVector &testPoint) const
Returns the squared distance from a given point in world coordinates, to the object. If the object has more than two vertices (that is, more than one line segment), it acts on the closest line segment.
Definition: vrfGeometryStateComponent.h:104
virtual bool localGetClosestLine(const DtVector &point, DtVector &linePt1, DtVector &linePt2) const
Determines the closest line segment in the object’s geometry to a given point, in local coordinates...
Definition: vrfGeometryStateComponent.h:99
bool myNeedsUpdateVertices
Definition: vrfGeometryStateComponent.h:223
1) Define the interface class that will be used to represent the next and curent frames. The UNDEFINED_ macros are convenience macros that will define methods that throw exceptions (until they are implemented)
Definition: vrfGeometryStateComponent.h:54
DtVrfGeometryStateComponentNextFrame myNextFrameState
Definition: vrfGeometryStateComponent.h:323
virtual void setLocalVertices(const std::vector< DtVector > &vertices, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:117
DtVrfGeometryStateComponentData & operator=(const DtVrfGeometryStateComponentData &rhs)
Definition: vrfGeometryStateComponent.h:32
bool needsUpdateVertices() const
Definition: vrfGeometryStateComponent.h:206
4) Define the state component that will contain the wrappers to the next and current frame states tha...
Definition: vrfGeometryStateComponent.h:289
const DtLocationStateComponent * myLocationStateComponent
Definition: vrfGeometryStateComponent.h:324
virtual void setWorldVertices(const DtVertexList &vertices, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:121
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:398
virtual const DtFrameStateInterface * nextFrameState() const override
Definition: vrfGeometryStateComponent.h:297
#define DEFINE_STATE_COMPONENT_TYPE(CreatedComponent)
Definition: stateComponent.h:231
DtVrfGeometryStateComponentCurrentFrame myCurrentFrameState
Definition: vrfGeometryStateComponent.h:322
void advanceFrame(const DtVrfGeometryStateComponentData &data)
Definition: vrfGeometryStateComponent.h:271
UInt64 myEnvironmentInstanceHandle
Definition: vrfGeometryStateComponent.h:280
class DtVertexList:
Definition: vertexList.h:22
Subclass from this to indicate that this will be a double buffered state component.
Definition: stateComponent.h:384
DtStateComponentCreator< DtVrfGeometryStateComponentImplementation > DtVrfGeometryStateComponentCreator
5) Define the creator. This will need to be registered with the REGISTER_STATE_COMPONENT macro in the...
Definition: vrfGeometryStateComponent.h:331
void setNeedsUpdateVertices(bool b)
Definition: vrfGeometryStateComponent.h:211
virtual void addLocalVertex(const DtVector &vertex)
Definition: vrfGeometryStateComponent.h:127
#define UNDEFINED_RETURNVALUE_ACCESSOR_MUTATOR(Type, Member, Set)
Definition: doubleBufferedDataStorage.h:53
#define UNDEFINED_RETURNREF_CONST_ACCESSOR(ReturnType, Member)
Definition: doubleBufferedDataStorage.h:37
virtual void aboutToBeDeleted()
bool myWorldVerticesChanged
Definition: vrfGeometryStateComponent.h:278
DtSimBoundingGeometryType
Definition: simBoundingGeometry.h:61
virtual const DtFrameStateInterface * currentFrameState() const override
Definition: vrfGeometryStateComponent.h:295
This class maintains a rectangular bounding volume and an ordered list of vertices describing the phy...
Definition: vrfObjectGeometry.h:39
virtual void makeReadOnly() override
Override to make component read-only.
Definition: vrfGeometryStateComponent.h:204
UInt64 myLastRecordAdd
Definition: vrfGeometryStateComponent.h:224
virtual void aboutToBeDeleted() override
Definition: vrfGeometryStateComponent.h:306
#define UNDEFINED_RETURNREF_ACCESSOR_MUTATOR(Type, Member, Set)
Definition: doubleBufferedDataStorage.h:57
#define DEFINE_REF_ACCESSORS(ReturnType, Method, Member)
Definition: doubleBufferedDataStorage.h:13
DtVrfObjectGeometry myObjectGeometry
Definition: vrfGeometryStateComponent.h:47
DtVertexList myWorldVertices
Definition: vrfGeometryStateComponent.h:49
virtual double distSquaredTo(const DtVector &testPoint) const
Returns the squared distance from a given point in local coordinates, to the object. If the object has more than two vertices (that is, more than one line segment), it acts on the closest line segment.
Definition: vrfGeometryStateComponent.h:89
boost::signals2::scoped_connection myCompleteSetupConnection
Definition: vrfGeometryStateComponent.h:281
virtual void setLocalVertices(const DtList &vertices, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:116
virtual void updateStateData(DtStateData *sd) override
Implement to update data storage to the new state data.
Definition: vrfGeometryStateComponent.h:313
DtVrfGeometryStateComponentData()
Definition: vrfGeometryStateComponent.h:19
#define DT_DLL_vrfStateData
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfStateDataDefines.h:26
DtVrfGeometryStateComponentData myData
Definition: vrfGeometryStateComponent.h:284
virtual bool worldGetClosestVertex(const DtVector &point, DtVector &vertex) const
Determines the closest vertex in the object’s geometry to a given point, in world coordinates.
Definition: vrfGeometryStateComponent.h:108
virtual void addWorldVertex(const DtVector &vertex, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:129
class DtLocalVertexList:
Definition: localVertexList.h:20
DtVrfGeometryStateComponentData myData
Definition: vrfGeometryStateComponent.h:225
Contains the DtStateComponent class declaration.
virtual void setWorldVertices(const std::vector< DtVector > &vertices, DtVector &newGeometricCenter)
Definition: vrfGeometryStateComponent.h:120
This is a simple base class that will be used to return a pointer to current or next frame state...
Definition: stateComponent.h:294
2) Define the next frame class. This will be used for write access.
Definition: vrfGeometryStateComponent.h:136
bool myObjectVerticesChanged
Definition: vrfGeometryStateComponent.h:221

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)