🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
RotationalData.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "RotationElement.hpp"
25#include "AstCore/TimePoint.hpp"
26#include "AstMath/Transform.hpp"
27#include "AstMath/Rotation.hpp"
28#include "BodyOrientation.hpp"
29
30AST_NAMESPACE_BEGIN
31
40class AST_CORE_API RotationalData final: public BodyOrientation
41{
42public:
43 RotationalData() = default;
44 ~RotationalData() = default;
45 errc_t load(StringView filepath);
46
47
51 void getICRFToFixedTransform(const TimePoint& tp, Rotation &rot) const override;
52
53
57 void getICRFToFixedTransform(const TimePoint& tp, KinematicRotation &rotation) const override;
58
59
63 void getICRFToInertialTransform(const TimePoint& tp, Rotation &rot) const override;
64
65
66 Axes* getMODParent() const override;
67 void getMODTransform(const TimePoint& tp, Rotation &rot) const override;
68 Axes* getTODParent() const override;
69 void getTODTransform(const TimePoint& tp, Rotation &rot) const override;
70
74 void getICRFToMODTransform(const TimePoint& tp, Rotation &rot) const;
75
79 void getICRFToTODTransform(const TimePoint& tp, Rotation &rot) const;
80
81
85 void getICRFToFixedMatrix(const TimePoint& tp, Matrix3d &matrix) const;
86
87
91 void getICRFToInertialMatrix(const TimePoint& tp, Matrix3d &matrix) const;
92
93
97 void getICRFToMODMatrix(const TimePoint& tp, Matrix3d &matrix) const;
98
99
103 void getICRFToTODMatrix(const TimePoint& tp, Matrix3d &matrix) const;
104
105
106
107protected:
109 RotationElement rightAscension_;
110 RotationElement declination_;
111 RotationElement rotation_;
112};
113
116AST_NAMESPACE_END
轴系类
定义 Axes.hpp:69
天体姿态/指向
定义 BodyOrientation.hpp:38
virtual void getICRFToInertialTransform(const TimePoint &tp, Rotation &rotation) const =0
获取ICRF到天体惯性系的旋转变换
virtual Axes * getTODParent() const =0
获取TOD系的父系
virtual Axes * getMODParent() const =0
获取MOD系的父系
virtual void getICRFToFixedTransform(const TimePoint &tp, Rotation &rotation) const =0
获取ICRF到天体固连系的旋转变换
virtual void getMODTransform(const TimePoint &tp, Rotation &rot) const =0
获取MOD系的旋转变换
virtual void getTODTransform(const TimePoint &tp, Rotation &rot) const =0
获取TOD系的旋转变换
运动学坐标系旋转
定义 KinematicRotation.hpp:32
行星旋转根数
定义 RotationElement.hpp:38
坐标系旋转类
定义 Rotation.hpp:39
行星旋转数据
定义 RotationalData.hpp:41
TimePoint rotationEpoch_
旋转历元
定义 RotationalData.hpp:108
绝对时间点
定义 TimePoint.hpp:106