VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfObjectGeometry.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2007 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 #pragma once
6 
7 
8 
10 #include "vrfutil/rwBoolean.h"
11 #include "vrfutil/readerWriter.h"
12 
15 
16 class Coordinate_System;
17 class DtRwVectorIterator;
18 class DtLocalVertexIterator;
20 
27 {
28 private:
31 
32 public:
33 
36  const DtString& rwName = DtString::nullString(),
37  DtReaderWriterRegistry* parentRegistry = 0);
38 
41  const DtString& rwName = DtString::nullString(),
42  DtReaderWriterRegistry* parentRegistry = 0);
43 
46 
48  virtual ~DtVrfObjectGeometry();
49 
51  virtual DtVrfObjectGeometry* clone(
52  const DtString& rwName = DtString::nullString(),
53  DtReaderWriterRegistry* parentRegistry = 0) const;
54 
56  virtual const DtSimBoundingGeometry& boundingGeometry() const;
57  virtual DtSimBoundingGeometry& boundingGeometry();
58  virtual void setBoundingGeometry(const DtSimBoundingGeometry& bounds);
59 
62  virtual bool closedFigure() const;
63  virtual void setClosedFigure(bool closed);
64 
66  virtual bool isEllipsoid() const;
67  virtual void setIsEllipsoid(bool closed);
68 
71  virtual bool projection() const;
72  virtual void setProjection(bool projection);
73 
75  virtual void removeAllObjectVertices();
76 
81  virtual void setObjectVertices(const DtLocalVertexList& vertices);
82  virtual void setObjectVertices(const DtList& vertices);
83  virtual const DtLocalVertexList& objectVertices() const;
84  virtual DtLocalVertexList& objectVertices();
85  virtual const std::vector<DtVector>& objectVerticesAsVector() const;
87 
88  virtual const DtLocalVectorIterator& objectVertexIterator() const;
89 
90 
91  //******
92  const DtVertexList& oldWorld() const;
93 
96  virtual bool worldPointInsideBoundingGeometry(
97  const DtVector& worldPoint, const DtVector& objectWorldLocation,
98  const DtTaitBryan& objectWorldOrientation) const;
99 
103  virtual double worldDistSquaredTo(const DtVector& point) const;
104 
107  virtual bool worldGetClosestVertex(const DtVector& point,
108  DtVector& vertex) const;
109 
112  virtual bool localGetClosestVertex(const DtVector& point, DtVector& vertex) const;
113 
118  virtual bool worldGetClosestLine(const DtVector& point,
119  DtVector& linePt1, DtVector& linePt2) const;
120 
125  virtual bool localGetClosestLine(const DtVector& point,
126  DtVector& linePt1, DtVector& linePt2) const;
127 
132  virtual const DtSimBoundingGeometry& worldBoundingGeometry() const;
133  virtual DtSimBoundingGeometry& worldBoundingGeometry();
134  virtual void setWorldBoundingGeometry(const DtSimBoundingGeometry& bounds);
136 
137  virtual void removeVertex(int iIndex);
138 
152  virtual bool calculateBoundingVolume(const DtVertexList& vertices,
153  DtSimBoundingGeometry& boundingGeometry);
154 
165 
166  virtual const DtSimBoundingGeometry& localBoundingGeometry() const;
167  virtual DtSimBoundingGeometry& localBoundingGeometry();
168  virtual void setLocalBoundingGeometry(const DtSimBoundingGeometry& bounds);
169 
170  virtual double distSquaredTo(const DtVector& testPoint) const;
171 
172 protected:
173 
175  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
176  const DtVariableBindingsList& variableBindings);
177 
179  void removeAllOldWorldVertices();
180 
181 protected:
182 
185 
189 
193 
195 
196  std::vector<DtVector> myObjectVerticesAsVector;
197 };
198 
200 {
201  return myOldWorld;
202 }
203 

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)