VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtCartesianCoordinateConverter.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2022 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef DtCartesianCoordinateConverter_H_
10 #define DtCartesianCoordinateConverter_H_
11 
13 
14 #include <matrix/vlTaitBryan.h>
15 #include <matrix/coordTransform.h>
16 
17 namespace makVrv
18 {
19 
24 {
25 public:
26 
29 
32 
34  virtual DtCoordinateConverter* clone() const override;
35 
40  virtual void init(
41  double x = 0.0, double y = 0.0, double z = 0.0,
42  double h = 0.0, double p = 0.0, double r = 0.0);
43 
48  virtual void init(
49  const DtVector& translationOffset,
50  const DtTaitBryan& rotationOffset);
51 
55  virtual bool init(const std::string& originstring) override;
56 
58  virtual std::string stringRep() override;
59 
61  virtual const DtVector& translationOffset() const;
62 
64  virtual const DtTaitBryan& rotationOffset() const;
65 
66  /********************* Conversions *****************************/
68  virtual void geocToCig(const DtVector& geoc, DtVector& out) const override;
69 
71  virtual void cigToGeoc(const DtVector& in, DtVector& geoc) const override;
72 
73  virtual void setupTopoFrame(const DtVector& truePos) override;
74 
75  virtual void cigToEnu_coordTrans(const DtVector& cigPos, DtVector& enuPos) const override;
76  virtual void cigToEnu_vecTrans(const DtVector& cigVec, DtVector& enuVec) const override;
77  virtual void enuToCig_coordTrans(const DtVector& enuPos, DtVector& cigPos) const override;
78  virtual void enuToCig_vecTrans(const DtVector& enuVec, DtVector& cigVec) const override;
79 
80 public:
81 
82  static DtCoordinateConverter* create();
83 
84 private:
85 
88 
90  DtCartesianCoordinateConverter& operator=(const DtCartesianCoordinateConverter& orig) = delete;
91 
92 protected:
93 
95  DtTaitBryan myRotationOffset;
96 
97  DtCoordTransform myGeocToLocal;
98  DtCoordTransform myLocalToGeoc;
99 };
100 
101 }
102 
103 #endif
DT_DLL_EXAMPLESCENEROOTPLUGIN void init(DtDe &anIG)
#define DT_DLL_VRVUTIL
Definition: vrvUtil.h:34
DtCoordinateConverter is the base class for &#39;local (cig) to geocentric&#39; converters.
Definition: DtCoordinateConverter.h:25
DtTaitBryan myRotationOffset
Definition: DtCartesianCoordinateConverter.h:95
Instances of DtCartesianCoordinateConverter provide transformations and utilities for converting betw...
Definition: DtCartesianCoordinateConverter.h:23
DtCoordTransform myGeocToLocal
Definition: DtCartesianCoordinateConverter.h:97
DtVector myTranslationOffset
Definition: DtCartesianCoordinateConverter.h:94
DtCoordTransform myLocalToGeoc
Definition: DtCartesianCoordinateConverter.h:98

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)