VR-Forces 4.10 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 maxExtension() const;
123  virtual void setMaxExtension(double val, bool isSpecified = true);
124  virtual bool maxExtensionSpecified() const;
126 
129  virtual double extensionRate() const;
130  virtual void setExtensionRate(double val, bool isSpecified = true);
131  virtual bool extensionRateSpecified() const;
133 
136  virtual double maxExtensionRate() const;
137  virtual void setMaxExtensionRate(double val, bool isSpecified = true);
138  virtual bool maxExtensionRateSpecified() const;
140 
143  virtual DtVector translation() const;
144  virtual void setTranslation(const DtVector& val, bool isSpecified = true);
145  virtual bool translationSpecified() const;
147 
150  virtual DtVector minTranslation() const;
151  virtual void setMinTranslation(const DtVector& val, bool isSpecified = true);
152  virtual bool minTranslationSpecified() const;
154 
157  virtual DtVector maxTranslation() const;
158  virtual void setMaxTranslation(const DtVector& val, bool isSpecified = true);
159  virtual bool maxTranslationSpecified() const;
161 
164  virtual DtVector translationRate() const;
165  virtual void setTranslationRate(const DtVector& val, bool isSpecified = true);
166  virtual bool translationRateSpecified() const;
168 
171  virtual DtVector maxTranslationRate() const;
172  virtual void setMaxTranslationRate(const DtVector& val, bool isSpecified = true);
173  virtual bool maxTranslationRateSpecified() const;
175 
177 
178  virtual double azimuth() const;
179  virtual void setAzimuth(double angle, bool isSpecified = true);
180  virtual bool azimuthSpecified() const;
182 
184 
185  virtual double minAzimuth() const;
186  virtual void setMinAzimuth(double angle, bool isSpecified = true);
187  virtual bool minAzimuthSpecified() const;
189 
191 
192  virtual double maxAzimuth() const;
193  virtual void setMaxAzimuth(double angle, bool isSpecified = true);
194  virtual bool maxAzimuthSpecified() const;
196 
198 
199  virtual double azimuthRate() const;
200  virtual void setAzimuthRate(double rate, bool isSpecified = true);
201  virtual bool azimuthRateSpecified() const;
203 
205 
206  virtual double maxAzimuthRate() const;
207  virtual void setMaxAzimuthRate(double rate, bool isSpecified = true);
208  virtual bool maxAzimuthRateSpecified() const;
210 
212  virtual bool fullAzimuthRotation() const;
213 
215 
216  virtual double elevation() const;
217  virtual void setElevation(double angle, bool isSpecified = true);
218  virtual bool elevationSpecified() const;
220 
222 
223  virtual double minElevation() const;
224  virtual void setMinElevation(double angle, bool isSpecified = true);
225  virtual bool minElevationSpecified() const;
227 
229 
230  virtual double maxElevation() const;
231  virtual void setMaxElevation(double angle, bool isSpecified = true);
232  virtual bool maxElevationSpecified() const;
234 
236 
237  virtual double elevationRate() const;
238  virtual void setElevationRate(double rate, bool isSpecified = true);
239  virtual bool elevationRateSpecified() const;
241 
243 
244  virtual double maxElevationRate() const;
245  virtual void setMaxElevationRate(double rate, bool isSpecified = true);
246  virtual bool maxElevationRateSpecified() const;
248 
250 
251  virtual double rotation() const;
252  virtual void setRotation(double angle, bool isSpecified = true);
253  virtual bool rotationSpecified() const;
255 
257 
258  virtual double minRotation() const;
259  virtual void setMinRotation(double angle, bool isSpecified = true);
260  virtual bool minRotationSpecified() const;
262 
264 
265  virtual double maxRotation() const;
266  virtual void setMaxRotation(double angle, bool isSpecified = true);
267  virtual bool maxRotationSpecified() const;
269 
271 
272  virtual double rotationRate() const;
273  virtual void setRotationRate(double rate, bool isSpecified = true);
274  virtual bool rotationRateSpecified() const;
276 
278 
279  virtual double maxRotationRate() const;
280  virtual void setMaxRotationRate(double rate, bool isSpecified = true);
281  virtual bool maxRotationRateSpecified() const;
283 
285 
286  virtual const DtString& associatedComponent() const;
287  virtual void setAssociatedComponent(const DtString& component, bool isSpecified = true);
288  virtual bool associatedComponentSpecified() const;
290 
292 
293  virtual const DtString& comment() const;
294  virtual void setComment(const DtString& component, bool isSpecified = true);
295  virtual bool commentSpecified() const;
297 
299 
300  virtual const std::set<DtString>& configSources() const;
301  virtual void setConfigSources(const std::set<DtString>& srcs);
302  virtual void addConfigSource(const DtString& src);
304 
305  bool operator==(const DtRwArtPartState& rhs) const;
306  bool operator!=(const DtRwArtPartState& rhs) const { return !(*this == rhs); };
307 
309 
310  static double defaultRotationRate();
311  static void setDefaultRotationRate(double rate);
313 
315 
316  static double defaultTranslationRate();
317  static void setDefaultTranslationRate(double rate);
319 
320 protected:
321 
325 
340 
348 
354 
360 
366 
372 
378 
385 
392 
399 
405 
411 
418 
425 
431 
437 
443 
449 
455 
461 
467 
473 
479 
485 
491 
497 
503 
509 
515 
522 
529 
530  std::set<DtString> myConfigSources;
531 
532  static double theDefaultRotationRate;
534 };
535 
536 
537 
538 
bool operator==(const DtReaderWriter &) const
Equivalence operator.
DtRwVector myTranslation
Parameter Name: translation Parameter Description: The current part translation value.
Definition: rwArtPartState.h:353
DtRwString myComment
Parameter Name: comment Parameter Description: A comment a user can optionally save with the articula...
Definition: rwArtPartState.h:527
DtRwReal myElevationRate
Parameter Name: elevation-rate Parameter Description: The current elevation rate of change...
Definition: rwArtPartState.h:478
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:442
DtRwOffsetVector myAttachPoint
Parameter Name: attach-point Parameter Description: The point at which at the articulated or attached...
Definition: rwArtPartState.h:339
Definition: symbolString.h:20
std::set< DtString > myConfigSources
Definition: rwArtPartState.h:530
#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:365
DtRwVector myTranslationRate
Parameter Name: translation-rate Parameter Description: The current translation rate.
Definition: rwArtPartState.h:371
DtRwOffsetVector myEndPoint
Parameter Name: end-point Parameter Description: The point at which at the articulated or attached pa...
Definition: rwArtPartState.h:347
DtRwReal myMinAzimuth
Parameter Name: min-azimuth Parameter Description: The minimum azimuth value.
Definition: rwArtPartState.h:436
DtRwReal myMaxRotation
Parameter Name: max-rotation Parameter Description: The maximum rotation value.
Definition: rwArtPartState.h:502
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:359
DtRwReal myMaxElevation
Parameter Name: max-elevation Parameter Description: The maximum elevation value. ...
Definition: rwArtPartState.h:472
static double theDefaultRotationRate
Definition: rwArtPartState.h:532
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:417
DtRwReal myMaxPositionRate
Parameter Name: position-rate Parameter Description: The maximum rate of change of the position of th...
Definition: rwArtPartState.h:398
DtRwString myAssociatedComponent
Parameter Name: associated-component Parameter Description: The name of the associated component...
Definition: rwArtPartState.h:521
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:448
DtRwReal myMaxElevationRate
Parameter Name: max-elevation-rate Parameter Description: The maximum elevation rate of change...
Definition: rwArtPartState.h:484
DtRwReal myMaxExtensionRate
Parameter Name: max-extension-rate Parameter Description: The maximum rate of change of the linear ex...
Definition: rwArtPartState.h:424
DtRwReal myMinRotation
Parameter Name: min-rotation Parameter Description: The minimum rotation value.
Definition: rwArtPartState.h:496
DtRwReal myRotationRate
Parameter Name: rotation-rate Parameter Description: The maximum rotation rate of change...
Definition: rwArtPartState.h:508
bool operator!=(const DtRwArtPartState &rhs) const
Definition: rwArtPartState.h:306
DtRwReal myExtension
Parameter Name: extension Parameter Description: The linear extension of the part in a single directi...
Definition: rwArtPartState.h:404
DtRwReal myPosition
Parameter Name: position Parameter Description: The current position of the part along a set path whe...
Definition: rwArtPartState.h:384
DtRwVector myMaxTranslationRate
Parameter Name: translation-rate Parameter Description: The maximum translation rate.
Definition: rwArtPartState.h:377
DtRwReal myAzimuth
Parameter Name: azimuth Parameter Description: The current or default azimuth.
Definition: rwArtPartState.h:430
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
static double theDefaultTranslationRate
Definition: rwArtPartState.h:533
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:466
DtRwReal myRotation
Parameter Name: rotation Parameter Description: The current or default rotation.
Definition: rwArtPartState.h:490
DtRwReal myMaxAzimuthRate
Parameter Name: max-azimuth-rate Parameter Description: The maximum azimuth rate of change...
Definition: rwArtPartState.h:454
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:391
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:460
DtRwReal myMaxRotationRate
Parameter Name: max-rotation-rate Parameter Description: The maximum rotation rate of change...
Definition: rwArtPartState.h:514
File: rwVector.h.
DtRwReal myMaxExtension
Parameter Name: max-extension Parameter Description: The maximum linear extension of the part in a si...
Definition: rwArtPartState.h:410

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)