VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtCylinderObject.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2006 MaK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 #pragma once
6 
11 
12 #include <vlutil/vlString.h>
13 #include <matrix/vlVector.h>
14 #include <matrix/vlTaitBryan.h>
15 
17 
21 
25 
26 namespace vrvControlToolkit
27 {
28 
29 
40  {
41  public:
65 
66 
67  DtCylinderObject(DtExerciseConn* exConn, unsigned id,
68  const DtVdc3DAttachPoint& attachment, double length,
69  const DtVdcVector2D& diameters, const DtVector& offset = DtVector::zero(),
70  const DtTaitBryan& rotation = zeros,
71  DtVdcColor color = DtVdcColor::DtVdcWhite, bool flashing = false);
72 
94  DtCylinderObject(DtExerciseConn* exConn, unsigned id,
95  const DtVdc3DAttachPoint& startAttachment,
96  const DtVdc3DAttachPoint& endAttachment,
97  const DtVdcVector2D& diameters,
98  const DtVector& offset = DtVector::zero(),
99  DtVdcColor color = DtVdcColor::DtVdcWhite, bool flashing = false );
100 
101  // \brief Virtual destructor
102  virtual ~DtCylinderObject();
103 
104  private:
110 
114  DtCylinderObject(const DtCylinderObject& orig);
115 
119  DtCylinderObject& operator=(const DtCylinderObject& rhs);
120 
121  public:
128  virtual const DtVdc3DAttachPoint& attachment() const;
129 
134  virtual void setAttachment(const DtVdc3DAttachPoint& attachment);
135 
142  virtual const DtVdc3DAttachPoint& startAttachment() const;
143 
148  virtual void setStartAttachment(const DtVdc3DAttachPoint& startAttachment);
149 
156  virtual const DtVdc3DAttachPoint& endAttachment() const;
157 
162  virtual void setEndAttachment(const DtVdc3DAttachPoint& endAttachment);
163 
170  virtual const DtVector32& offset() const;
171 
177  virtual void setOffset(const DtVector32& off);
178 
184  virtual double length() const;
185 
191  virtual void setLength(double length);
192 
199  virtual const DtVdcVector2D& diameters() const;
200 
206  virtual void setDiameters(const DtVdcVector2D& diameters);
207 
214  virtual const DtTaitBryan& rotation() const;
215 
222  virtual void setRotation(const DtTaitBryan& rotation);
223 
229  virtual const DtVdcColor& color() const;
230 
236  virtual void setColor (const DtVdcColor& color);
237 
243  virtual bool flashing() const;
244 
250  virtual void setFlashing(bool flashing);
251 
252  virtual void setRemoteGraphicSet(const std::string& setName);
253 
262  virtual void update();
263 
264  protected:
265  void initRecords();
266 
267  private:
268  // Initializer for DtTaitBryan
269  static DtTaitBryan zeros;
270 
271  protected:
272  DtVdc3DAttachPoint myStartAttachment; // also single attachment
274  double myLength;
276  DtVector32 myOffset;
278  DtTaitBryan myRotation;
280 
284  };
285 }
double myLength
Definition: DtCylinderObject.h:274
Dt3DGraphicalObjectStateRecord myStateRecord
Definition: DtCylinderObject.h:281
DtVdcVector2D myDiameters
Definition: DtCylinderObject.h:275
Contains the Dt3DGraphicalObjectStateRecord class declaration.
Definition: environmentalFixedCylinderRecord.h:23
static const DtVdcColor DtVdcWhite
Constant for the color White.
Definition: DtVdcColor.h:186
Definition: Dt3DTwoPositionedObject.h:15
Definition: environmentalArticulatingCylinderRecord.h:24
Definition: DtVdcVector2D.h:33
bool myFlashing
Definition: DtCylinderObject.h:279
static DtTaitBryan zeros
Definition: DtCylinderObject.h:269
DtVdcColor myColor
Definition: DtCylinderObject.h:277
DtVdc3DAttachPoint myEndAttachment
Definition: DtCylinderObject.h:273
DtEnvironmentalFixedCylinderRecord myFixedCylinderRecord
Definition: DtCylinderObject.h:282
DtVdcColor represents colors for Draw Control Objects.
Definition: DtVdcColor.h:21
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
Contains the DtEnvironmentalFixedCylinderRecord class declaration.
DtEnvironmentalArticulatingCylinderRecord myArticulatingCylinderRecord
Definition: DtCylinderObject.h:283
#define DT_DLL_VRVDRAWCONTROL
Definition: vrvDrawControl.h:15
Dt3DGraphicalObjectStateRecord implements the 3d graphical object state record for the remote graphic...
Definition: 3dGraphicalObjectStateRecord.h:42
A class for representing cylinders.
Definition: DtCylinderObject.h:39
DtVdc3DAttachPoint myStartAttachment
Definition: DtCylinderObject.h:272
DtVdc3DAttachPoint.h contains the class definition for DtVdc3DAttachPoint, which functions as a discr...
voidpf uLong offset
Definition: ioapi.h:42
DtVector32 myOffset
Definition: DtCylinderObject.h:276
DtVdc3DAttachPoint represents the 3 methods for attaching a 3D draw control object in 3-space...
Definition: DtVdc3DAttachPoint.h:33
Contains the DtEnvironmentalArticulatingCylinderRecord class declaration.
DtTaitBryan myRotation
Definition: DtCylinderObject.h:278

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)