VR-Forces Developer's Guide
 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 
14 #include <vrfutil/vrfutilDefines.h>
16 #include <readerWriter/rwBoolean.h>
17 #include <readerWriter/rwReal.h>
18 #include <readerWriter/rwVector.h>
19 #include <readerWriter/rwString.h>
20 #include <set>
21 
23 
27 {
28 public:
29 
30  enum MergeRule
31  {
34  AllSpecifiedValuesExceptRates
36  };
38 
41 
44  parentRegistry = NULL);
45 
47  DtRwArtPartState(const DtSymbolString& partName,
48  DtReaderWriterRegistry* parentRegistry = NULL);
49 
52  const DtString& partName,
53  DtReaderWriterRegistry* parentRegistry = NULL);
54 
57  const DtSymbolString& partName,
58  DtReaderWriterRegistry * parentRegistry = NULL);
59 
61  const DtRwArtPartState& operator=(const DtRwArtPartState & orig);
62 
63  virtual ~DtRwArtPartState() override;
64 
65  virtual DtRwArtPartState* clone(const DtString& partName,
66  DtReaderWriterRegistry* parentRegistry = NULL) const;
67 
68  virtual DtRwArtPartState* clone(const DtSymbolString& partName,
69  DtReaderWriterRegistry* parentRegistry = NULL) const;
70 
73  virtual bool mergeSpecifiedParameters(const DtRwArtPartState& other,
74  MergeRule rule = AllSpecifiedValues);
75 
77  virtual void markMatchingFieldsUnspecified(const DtRwArtPartState& other);
78 
81  virtual void setAttachPoint(const DtVector& attachPoint, bool isSpecified = true);
82  virtual DtVector attachPoint() const;
83  virtual bool attachPointSpecified() const;
85 
88  virtual DtVector endPoint() const;
89  virtual void setEndPoint(const DtVector& loc, bool isSpecified = true);
90  virtual bool endPointSpecified() const;
92 
95  virtual double position() const;
96  virtual void setPosition(double val, bool isSpecified = true);
97  virtual bool positionSpecified() const;
99 
102  virtual double positionRate() const;
103  virtual void setPositionRate(double val, bool isSpecified = true);
104  virtual bool positionRateSpecified() const;
106 
109  virtual double maxPositionRate() const;
110  virtual void setMaxPositionRate(double val, bool isSpecified = true);
111  virtual bool maxPositionRateSpecified() const;
113 
116  virtual double extension() const;
117  virtual void setExtension(double val, bool isSpecified = true);
118  virtual bool extensionSpecified() const;
120 
123  virtual double maxExtension() const;
124  virtual void setMaxExtension(double val, bool isSpecified = true);
125  virtual bool maxExtensionSpecified() const;
127 
130  virtual double extensionRate() const;
131  virtual void setExtensionRate(double val, bool isSpecified = true);
132  virtual bool extensionRateSpecified() const;
134 
137  virtual double maxExtensionRate() const;
138  virtual void setMaxExtensionRate(double val, bool isSpecified = true);
139  virtual bool maxExtensionRateSpecified() const;
141 
144  virtual DtVector translation() const;
145  virtual void setTranslation(const DtVector& val, bool isSpecified = true);
146  virtual bool translationSpecified() const;
148 
151  virtual DtVector minTranslation() const;
152  virtual void setMinTranslation(const DtVector& val, bool isSpecified = true);
153  virtual bool minTranslationSpecified() const;
155 
158  virtual DtVector maxTranslation() const;
159  virtual void setMaxTranslation(const DtVector& val, bool isSpecified = true);
160  virtual bool maxTranslationSpecified() const;
162 
165  virtual DtVector translationRate() const;
166  virtual void setTranslationRate(const DtVector& val, bool isSpecified = true);
167  virtual bool translationRateSpecified() const;
169 
172  virtual DtVector maxTranslationRate() const;
173  virtual void setMaxTranslationRate(const DtVector& val, bool isSpecified = true);
174  virtual bool maxTranslationRateSpecified() const;
176 
178 
179  virtual double azimuth() const;
180  virtual void setAzimuth(double angle, bool isSpecified = true);
181  virtual bool azimuthSpecified() const;
183 
185 
186  virtual double minAzimuth() const;
187  virtual void setMinAzimuth(double angle, bool isSpecified = true);
188  virtual bool minAzimuthSpecified() const;
190 
192 
193  virtual double maxAzimuth() const;
194  virtual void setMaxAzimuth(double angle, bool isSpecified = true);
195  virtual bool maxAzimuthSpecified() const;
197 
199 
200  virtual double azimuthRate() const;
201  virtual void setAzimuthRate(double rate, bool isSpecified = true);
202  virtual bool azimuthRateSpecified() const;
204 
206 
207  virtual double maxAzimuthRate() const;
208  virtual void setMaxAzimuthRate(double rate, bool isSpecified = true);
209  virtual bool maxAzimuthRateSpecified() const;
211 
213  virtual bool fullAzimuthRotation() const;
214 
216 
217  virtual double elevation() const;
218  virtual void setElevation(double angle, bool isSpecified = true);
219  virtual bool elevationSpecified() const;
221 
223 
224  virtual double minElevation() const;
225  virtual void setMinElevation(double angle, bool isSpecified = true);
226  virtual bool minElevationSpecified() const;
228 
230 
231  virtual double maxElevation() const;
232  virtual void setMaxElevation(double angle, bool isSpecified = true);
233  virtual bool maxElevationSpecified() const;
235 
237 
238  virtual double elevationRate() const;
239  virtual void setElevationRate(double rate, bool isSpecified = true);
240  virtual bool elevationRateSpecified() const;
242 
244 
245  virtual double maxElevationRate() const;
246  virtual void setMaxElevationRate(double rate, bool isSpecified = true);
247  virtual bool maxElevationRateSpecified() const;
249 
251 
252  virtual double rotation() const;
253  virtual void setRotation(double angle, bool isSpecified = true);
254  virtual bool rotationSpecified() const;
256 
258 
259  virtual double minRotation() const;
260  virtual void setMinRotation(double angle, bool isSpecified = true);
261  virtual bool minRotationSpecified() const;
263 
265 
266  virtual double maxRotation() const;
267  virtual void setMaxRotation(double angle, bool isSpecified = true);
268  virtual bool maxRotationSpecified() const;
270 
272 
273  virtual double rotationRate() const;
274  virtual void setRotationRate(double rate, bool isSpecified = true);
275  virtual bool rotationRateSpecified() const;
277 
279 
280  virtual double maxRotationRate() const;
281  virtual void setMaxRotationRate(double rate, bool isSpecified = true);
282  virtual bool maxRotationRateSpecified() const;
284 
286 
287  virtual const DtString& associatedComponent() const;
288  virtual void setAssociatedComponent(const DtString& component, bool isSpecified = true);
289  virtual bool associatedComponentSpecified() const;
291 
293 
294  virtual const DtString& comment() const;
295  virtual void setComment(const DtString& component, bool isSpecified = true);
296  virtual bool commentSpecified() const;
298 
300 
301  virtual const std::set<DtString>& configSources() const;
302  virtual void setConfigSources(const std::set<DtString>& srcs);
303  virtual void addConfigSource(const DtString& src);
305 
306  bool operator==(const DtRwArtPartState& rhs) const;
307  bool operator!=(const DtRwArtPartState& rhs) const { return !(*this == rhs); };
308 
310 
311  static double defaultRotationRate();
312  static void setDefaultRotationRate(double rate);
314 
316 
317  static double defaultTranslationRate();
318  static void setDefaultTranslationRate(double rate);
320 
321 protected:
322 
326 
341 
349 
355 
361 
367 
373 
379 
386 
393 
400 
406 
412 
419 
426 
432 
438 
444 
450 
456 
462 
468 
474 
480 
486 
492 
498 
504 
510 
516 
523 
530 
531  std::set<DtString> myConfigSources;
532 
533  static double theDefaultRotationRate;
535 };
536 
537 
538 
539 
bool operator==(const DtReaderWriter &) const
Equivalence operator.
DtRwVector myTranslation
Parameter Name: translation Parameter Description: The current part translation value. Parameter Default Value: (0. 0. 0.) Parameter Units: meters.
Definition: rwArtPartState.h:354
DtRwString myComment
Parameter Name: comment Parameter Description: A comment a user can optionally save with the articula...
Definition: rwArtPartState.h:528
DtRwReal myElevationRate
Parameter Name: elevation-rate Parameter Description: The current elevation rate of change...
Definition: rwArtPartState.h:479
Takes all specified values in other state.
Definition: rwArtPartState.h:33
DtRwReal myMaxAzimuth
Parameter Name: max-azimuth Parameter Description: The maximum azimuth value. Parameter Default Value...
Definition: rwArtPartState.h:443
DtRwOffsetVector myAttachPoint
Parameter Name: attach-point Parameter Description: The point at which at the articulated or attached...
Definition: rwArtPartState.h:340
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
std::set< DtString > myConfigSources
Definition: rwArtPartState.h:531
DtRwVector myMaxTranslation
Parameter Name: max-translation Parameter Description: The maximum part translation value...
Definition: rwArtPartState.h:366
DtRwVector myTranslationRate
Parameter Name: translation-rate Parameter Description: The current translation rate. Parameter Default Value: (0. 0. 0.) Parameter Units: meters/sec.
Definition: rwArtPartState.h:372
DtRwOffsetVector myEndPoint
Parameter Name: end-point Parameter Description: The point at which at the articulated or attached pa...
Definition: rwArtPartState.h:348
DtRwReal myMinAzimuth
Parameter Name: min-azimuth Parameter Description: The minimum azimuth value. Parameter Default Value...
Definition: rwArtPartState.h:437
DtRwReal myMaxRotation
Parameter Name: max-rotation Parameter Description: The maximum rotation value. Parameter Default Val...
Definition: rwArtPartState.h:503
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:360
DtRwReal myMaxElevation
Parameter Name: max-elevation Parameter Description: The maximum elevation value. Parameter Default V...
Definition: rwArtPartState.h:473
static double theDefaultRotationRate
Definition: rwArtPartState.h:533
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:418
DtRwReal myMaxPositionRate
Parameter Name: position-rate Parameter Description: The maximum rate of change of the position of th...
Definition: rwArtPartState.h:399
DtRwString myAssociatedComponent
Parameter Name: associated-component Parameter Description: The name of the associated component...
Definition: rwArtPartState.h:522
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. Parameter Default Value: 0.0 Parameter Units: radians/sec.
Definition: rwArtPartState.h:449
DtRwReal myMaxElevationRate
Parameter Name: max-elevation-rate Parameter Description: The maximum elevation rate of change...
Definition: rwArtPartState.h:485
DtRwReal myMaxExtensionRate
Parameter Name: max-extension-rate Parameter Description: The maximum rate of change of the linear ex...
Definition: rwArtPartState.h:425
DtRwReal myMinRotation
Parameter Name: min-rotation Parameter Description: The minimum rotation value. Parameter Default Val...
Definition: rwArtPartState.h:497
DtRwReal myRotationRate
Parameter Name: rotation-rate Parameter Description: The maximum rotation rate of change...
Definition: rwArtPartState.h:509
bool operator!=(const DtRwArtPartState &rhs) const
Definition: rwArtPartState.h:307
DtRwReal myExtension
Parameter Name: extension Parameter Description: The linear extension of the part in a single directi...
Definition: rwArtPartState.h:405
DtRwReal myPosition
Parameter Name: position Parameter Description: The current position of the part along a set path whe...
Definition: rwArtPartState.h:385
DtRwVector myMaxTranslationRate
Parameter Name: translation-rate Parameter Description: The maximum translation rate. Parameter Default Value: (max dbl max dbl max dbl) Parameter Units: meters/sec.
Definition: rwArtPartState.h:378
DtRwReal myAzimuth
Parameter Name: azimuth Parameter Description: The current or default azimuth. Parameter Default Valu...
Definition: rwArtPartState.h:431
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
static double theDefaultTranslationRate
Definition: rwArtPartState.h:534
Specialized vector that can be used for the knowledge of an &quot;offset&quot; rather than location vector...
Definition: rwVector.h:112
DtRwReal myMinElevation
Parameter Name: min-elevation Parameter Description: The minimum elevation value. Parameter Default V...
Definition: rwArtPartState.h:467
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
DtRwReal myRotation
Parameter Name: rotation Parameter Description: The current or default rotation. Parameter Default Va...
Definition: rwArtPartState.h:491
DtRwReal myMaxAzimuthRate
Parameter Name: max-azimuth-rate Parameter Description: The maximum azimuth rate of change...
Definition: rwArtPartState.h:455
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:392
A readable, writable type that holds an articulated part state.
Definition: rwArtPartState.h:26
MergeRule
Definition: rwArtPartState.h:30
Definition: rwArtPartState.h:32
DtRwReal myElevation
Parameter Name: elevation Parameter Description: The current or default elevation. Parameter Default Value: 0.0 Parameter Units: radians.
Definition: rwArtPartState.h:461
DtRwReal myMaxRotationRate
Parameter Name: max-rotation-rate Parameter Description: The maximum rotation rate of change...
Definition: rwArtPartState.h:515
File: rwVector.h.
DtRwReal myMaxExtension
Parameter Name: max-extension Parameter Description: The maximum linear extension of the part in a si...
Definition: rwArtPartState.h:411

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)