🛰️航天仿真算法库 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 AST_OBJECT(RotationalData)
44 RotationalData() = default;
45 ~RotationalData() = default;
46 errc_t load(StringView filepath);
47
48
52 void getICRFToFixedTransform(const TimePoint& tp, Rotation &rot) const override;
53
54
58 void getICRFToFixedTransform(const TimePoint& tp, KinematicRotation &rotation) const override;
59
60
64 void getICRFToInertialTransform(const TimePoint& tp, Rotation &rot) const override;
65
66
67 Axes* getMODParent() const override;
68 void getMODTransform(const TimePoint& tp, Rotation &rot) const override;
69 Axes* getTODParent() const override;
70 void getTODTransform(const TimePoint& tp, Rotation &rot) const override;
71
75 void getInertialToFixedTransform(const TimePoint& tp, Rotation &rot) const;
76
80 void getICRFToMODTransform(const TimePoint& tp, Rotation &rot) const;
81
85 void getICRFToTODTransform(const TimePoint& tp, Rotation &rot) const;
86
87
91 void getICRFToFixedMatrix(const TimePoint& tp, Matrix3d &matrix) const;
92
93
97 void getICRFToInertialMatrix(const TimePoint& tp, Matrix3d &matrix) const;
98
99
103 void getICRFToMODMatrix(const TimePoint& tp, Matrix3d &matrix) const;
104
105
109 void getICRFToTODMatrix(const TimePoint& tp, Matrix3d &matrix) const;
110
111
112
113protected:
115 RotationElement rightAscension_;
116 RotationElement declination_;
117 RotationElement rotation_;
118};
119
122AST_NAMESPACE_END
轴系类
定义 Axes.hpp:70
天体姿态/指向
定义 BodyOrientation.hpp:39
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:114
绝对时间点
定义 TimePoint.hpp:107