VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rwArtPartState.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
15 #include <readerWriter/rwBoolean.h>
16 #include <readerWriter/rwReal.h>
17 #include <readerWriter/rwVector.h>
18 #include <readerWriter/rwString.h>
19 #include <set>
20 
22 
26 {
27 public:
28 
29  enum MergeRule
30  {
33  AllSpecifiedValuesExceptRates
35  };
37 
40 
43  parentRegistry = NULL);
44 
46  DtRwArtPartState(const DtSymbolString& partName,
47  DtReaderWriterRegistry* parentRegistry = NULL);
48 
51  const DtString& partName,
52  DtReaderWriterRegistry* parentRegistry = NULL);
53 
56  const DtSymbolString& partName,
57  DtReaderWriterRegistry * parentRegistry = NULL);
58 
60  const DtRwArtPartState& operator=(const DtRwArtPartState & orig);
61 
62  virtual ~DtRwArtPartState();
63 
64  virtual DtRwArtPartState* clone(const DtString& partName,
65  DtReaderWriterRegistry* parentRegistry = NULL) const;
66 
67  virtual DtRwArtPartState* clone(const DtSymbolString& partName,
68  DtReaderWriterRegistry* parentRegistry = NULL) const;
69 
72  virtual bool mergeSpecifiedParameters(const DtRwArtPartState& other,
73  MergeRule rule = AllSpecifiedValues);
74 
76  virtual void markMatchingFieldsUnspecified(const DtRwArtPartState& other);
77 
80  virtual void setAttachPoint(const DtVector& attachPoint, bool isSpecified = true);
81  virtual DtVector attachPoint() const;
82  virtual bool attachPointSpecified() const;
84 
87  virtual DtVector endPoint() const;
88  virtual void setEndPoint(const DtVector& loc, bool isSpecified = true);
89  virtual bool endPointSpecified() const;
91 
94  virtual double position() const;
95  virtual void setPosition(double val, bool isSpecified = true);
96  virtual bool positionSpecified() const;
98 
101  virtual double positionRate() const;
102  virtual void setPositionRate(double val, bool isSpecified = true);
103  virtual bool positionRateSpecified() const;
105 
108  virtual double maxPositionRate() const;
109  virtual void setMaxPositionRate(double val, bool isSpecified = true);
110  virtual bool maxPositionRateSpecified() const;
112 
115  virtual double extension() const;
116  virtual void setExtension(double val, bool isSpecified = true);
117  virtual bool extensionSpecified() const;
119 
122  virtual double extensionRate() const;
123  virtual void setExtensionRate(double val, bool isSpecified = true);
124  virtual bool extensionRateSpecified() const;
126 
129  virtual double maxExtensionRate() const;
130  virtual void setMaxExtensionRate(double val, bool isSpecified = true);
131  virtual bool maxExtensionRateSpecified() const;
133 
136  virtual DtVector translation() const;
137  virtual void setTranslation(const DtVector& val, bool isSpecified = true);
138  virtual bool translationSpecified() const;
140 
143  virtual DtVector minTranslation() const;
144  virtual void setMinTranslation(const DtVector& val, bool isSpecified = true);
145  virtual bool minTranslationSpecified() const;
147 
150  virtual DtVector maxTranslation() const;
151  virtual void setMaxTranslation(const DtVector& val, bool isSpecified = true);
152  virtual bool maxTranslationSpecified() const;
154 
157  virtual DtVector translationRate() const;
158  virtual void setTranslationRate(const DtVector& val, bool isSpecified = true);
159  virtual bool translationRateSpecified() const;
161 
164  virtual DtVector maxTranslationRate() const;
165  virtual void setMaxTranslationRate(const DtVector& val, bool isSpecified = true);
166  virtual bool maxTranslationRateSpecified() const;
168 
170 
171  virtual double azimuth() const;
172  virtual void setAzimuth(double angle, bool isSpecified = true);
173  virtual bool azimuthSpecified() const;
175 
177 
178  virtual double minAzimuth() const;
179  virtual void setMinAzimuth(double angle, bool isSpecified = true);
180  virtual bool minAzimuthSpecified() const;
182 
184 
185  virtual double maxAzimuth() const;
186  virtual void setMaxAzimuth(double angle, bool isSpecified = true);
187  virtual bool maxAzimuthSpecified() const;
189 
191 
192  virtual double azimuthRate() const;
193  virtual void setAzimuthRate(double rate, bool isSpecified = true);
194  virtual bool azimuthRateSpecified() const;
196 
198 
199  virtual double maxAzimuthRate() const;
200  virtual void setMaxAzimuthRate(double rate, bool isSpecified = true);
201  virtual bool maxAzimuthRateSpecified() const;
203 
205  virtual bool fullAzimuthRotation() const;
206 
208 
209  virtual double elevation() const;
210  virtual void setElevation(double angle, bool isSpecified = true);
211  virtual bool elevationSpecified() const;
213 
215 
216  virtual double minElevation() const;
217  virtual void setMinElevation(double angle, bool isSpecified = true);
218  virtual bool minElevationSpecified() const;
220 
222 
223  virtual double maxElevation() const;
224  virtual void setMaxElevation(double angle, bool isSpecified = true);
225  virtual bool maxElevationSpecified() const;
227 
229 
230  virtual double elevationRate() const;
231  virtual void setElevationRate(double rate, bool isSpecified = true);
232  virtual bool elevationRateSpecified() const;
234 
236 
237  virtual double maxElevationRate() const;
238  virtual void setMaxElevationRate(double rate, bool isSpecified = true);
239  virtual bool maxElevationRateSpecified() const;
241 
243 
244  virtual double rotation() const;
245  virtual void setRotation(double angle, bool isSpecified = true);
246  virtual bool rotationSpecified() const;
248 
250 
251  virtual double minRotation() const;
252  virtual void setMinRotation(double angle, bool isSpecified = true);
253  virtual bool minRotationSpecified() const;
255 
257 
258  virtual double maxRotation() const;
259  virtual void setMaxRotation(double angle, bool isSpecified = true);
260  virtual bool maxRotationSpecified() const;
262 
264 
265  virtual double rotationRate() const;
266  virtual void setRotationRate(double rate, bool isSpecified = true);
267  virtual bool rotationRateSpecified() const;
269 
271 
272  virtual double maxRotationRate() const;
273  virtual void setMaxRotationRate(double rate, bool isSpecified = true);
274  virtual bool maxRotationRateSpecified() const;
276 
278 
279  virtual const DtString& associatedComponent() const;
280  virtual void setAssociatedComponent(const DtString& component, bool isSpecified = true);
281  virtual bool associatedComponentSpecified() const;
283 
285 
286  virtual const DtString& comment() const;
287  virtual void setComment(const DtString& component, bool isSpecified = true);
288  virtual bool commentSpecified() const;
290 
292 
293  virtual const std::set<DtString>& configSources() const;
294  virtual void setConfigSources(const std::set<DtString>& srcs);
295  virtual void addConfigSource(const DtString& src);
297 
298  bool operator==(const DtRwArtPartState& rhs) const;
299  bool operator!=(const DtRwArtPartState& rhs) const { return !(*this == rhs); };
300 
302 
303  static double defaultRotationRate();
304  static void setDefaultRotationRate(double rate);
306 
308 
309  static double defaultTranslationRate();
310  static void setDefaultTranslationRate(double rate);
312 
313 protected:
314 
318 
333 
341 
347 
353 
359 
365 
371 
378 
385 
392 
398 
405 
412 
418 
424 
430 
436 
442 
448 
454 
460 
466 
472 
478 
484 
490 
496 
502 
509 
516 
517  std::set<DtString> myConfigSources;
518 
519  static double theDefaultRotationRate;
521 };
522 
523 
524 
525 
bool operator==(const DtReaderWriter &) const
Equivalence operator.
DtRwVector myTranslation
Parameter Name: translation Parameter Description: The current part translation value.
Definition: rwArtPartState.h:346
DtRwString myComment
Parameter Name: comment Parameter Description: A comment a user can optionally save with the articula...
Definition: rwArtPartState.h:514
DtRwReal myElevationRate
Parameter Name: elevation-rate Parameter Description: The current elevation rate of change...
Definition: rwArtPartState.h:465
Takes all specified values in other state.
Definition: rwArtPartState.h:32
DtRwReal myMaxAzimuth
Parameter Name: max-azimuth Parameter Description: The maximum azimuth value.
Definition: rwArtPartState.h:429
DtRwOffsetVector myAttachPoint
Parameter Name: attach-point Parameter Description: The point at which at the articulated or attached...
Definition: rwArtPartState.h:332
Definition: symbolString.h:20
std::set< DtString > myConfigSources
Definition: rwArtPartState.h:517
#define DT_DLL_vrfobjparam
This file is used to determine how to build.
Definition: vrfobjparamDefines.h:28
DtRwVector myMaxTranslation
Parameter Name: max-translation Parameter Description: The maximum part translation value...
Definition: rwArtPartState.h:358
DtRwVector myTranslationRate
Parameter Name: translation-rate Parameter Description: The current translation rate.
Definition: rwArtPartState.h:364
DtRwOffsetVector myEndPoint
Parameter Name: end-point Parameter Description: The point at which at the articulated or attached pa...
Definition: rwArtPartState.h:340
DtRwReal myMinAzimuth
Parameter Name: min-azimuth Parameter Description: The minimum azimuth value.
Definition: rwArtPartState.h:423
DtRwReal myMaxRotation
Parameter Name: max-rotation Parameter Description: The maximum rotation value.
Definition: rwArtPartState.h:489
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
Definition: readerWriterRegistry.h:39
DtRwVector myMinTranslation
Parameter Name: min-translation Parameter Description: The minimum part translation value...
Definition: rwArtPartState.h:352
DtRwReal myMaxElevation
Parameter Name: max-elevation Parameter Description: The maximum elevation value. ...
Definition: rwArtPartState.h:459
static double theDefaultRotationRate
Definition: rwArtPartState.h:519
Definition: rwVector.h:23
DtRwReal myExtensionRate
Parameter Name: extension-rate Parameter Description: The rate of change of the linear extension of t...
Definition: rwArtPartState.h:404
DtRwReal myMaxPositionRate
Parameter Name: position-rate Parameter Description: The maximum rate of change of the position of th...
Definition: rwArtPartState.h:391
DtRwString myAssociatedComponent
Parameter Name: associated-component Parameter Description: The name of the associated component...
Definition: rwArtPartState.h:508
DT_DLL_vrfutil double angle(double vec1[3], double vec2[3])
DtRwReal myAzimuthRate
Parameter Name: azimuth-rate Parameter Description: The current azimuth rate of change.
Definition: rwArtPartState.h:435
DtRwReal myMaxElevationRate
Parameter Name: max-elevation-rate Parameter Description: The maximum elevation rate of change...
Definition: rwArtPartState.h:471
DtRwReal myMaxExtensionRate
Parameter Name: max-extension-rate Parameter Description: The maximum rate of change of the linear ex...
Definition: rwArtPartState.h:411
DtRwReal myMinRotation
Parameter Name: min-rotation Parameter Description: The minimum rotation value.
Definition: rwArtPartState.h:483
DtRwReal myRotationRate
Parameter Name: rotation-rate Parameter Description: The maximum rotation rate of change...
Definition: rwArtPartState.h:495
bool operator!=(const DtRwArtPartState &rhs) const
Definition: rwArtPartState.h:299
DtRwReal myExtension
Parameter Name: extension Parameter Description: The linear extension of the part in a single directi...
Definition: rwArtPartState.h:397
DtRwReal myPosition
Parameter Name: position Parameter Description: The current position of the part along a set path whe...
Definition: rwArtPartState.h:377
DtRwVector myMaxTranslationRate
Parameter Name: translation-rate Parameter Description: The maximum translation rate.
Definition: rwArtPartState.h:370
DtRwReal myAzimuth
Parameter Name: azimuth Parameter Description: The current or default azimuth.
Definition: rwArtPartState.h:417
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
static double theDefaultTranslationRate
Definition: rwArtPartState.h:520
Specialized vector that can be used for the knowledge of an &quot;offset&quot; rather than location vector...
Definition: rwVector.h:109
DtRwReal myMinElevation
Parameter Name: min-elevation Parameter Description: The minimum elevation value. ...
Definition: rwArtPartState.h:453
DtRwReal myRotation
Parameter Name: rotation Parameter Description: The current or default rotation.
Definition: rwArtPartState.h:477
DtRwReal myMaxAzimuthRate
Parameter Name: max-azimuth-rate Parameter Description: The maximum azimuth rate of change...
Definition: rwArtPartState.h:441
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
DtRwReal myPositionRate
Parameter Name: position-rate Parameter Description: The current rate of change of the position of th...
Definition: rwArtPartState.h:384
A readable, writable type that holds an articulated part state.
Definition: rwArtPartState.h:25
MergeRule
Definition: rwArtPartState.h:29
Definition: rwArtPartState.h:31
DtRwReal myElevation
Parameter Name: elevation Parameter Description: The current or default elevation.
Definition: rwArtPartState.h:447
DtRwReal myMaxRotationRate
Parameter Name: max-rotation-rate Parameter Description: The maximum rotation rate of change...
Definition: rwArtPartState.h:501
File: rwVector.h.

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)