🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
DataGroupOrbit.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstReport/DataGroupTimeVar.hpp"
25#include "AstCore/Point.hpp"
26#include "AstMath/Vector.hpp"
27#include "AstUtil/Span.hpp"
28
29AST_NAMESPACE_BEGIN
30
39{
40public:
41 struct Data
42 {
43 double gm_{};
44 Vector3d pos_{};
45 Vector3d vel_{};
46 };
47 static DataElements Elements();
48 DataGroupOrbit() = default;
49 ~DataGroupOrbit() = default;
50public:
51 errc_t calculate(const TimeList& timeList, VariantVector& result) const override;
52 const DataElements& getElements() const override;
53public:
54 errc_t calculate(const TimeList& timeList, std::vector<Data>& result) const;
55 errc_t calculate(const TimeList& timeList, Span<Data> result) const;
56public:
57 Point* getPoint() const;
58 Frame* getFrame() const;
59 Body* getBody() const;
60 double getGM() const;
61private:
62 WeakPtr<Point> point_;
63 WeakPtr<Frame> frame_;
64 WeakPtr<Body> body_;
65 bool useBodyInertial_{true};
66};
67
68
71AST_NAMESPACE_END
天体
定义 CelestialBody.hpp:72
数据元素容器
定义 DataElements.hpp:90
轨道数据组
定义 DataGroupOrbit.hpp:39
随时间变化的数据组
定义 DataGroupTimeVar.hpp:37
坐标系抽象基类
定义 Frame.hpp:62
点抽象基类
定义 Point.hpp:41
非拥有的连续对象序列视图
定义 Span.hpp:71
时间点列表
定义 TimeList.hpp:49
变类型向量容器
定义 VariantVector.hpp:59
弱引用指针
定义 WeakPtr.hpp:35
定义 DataGroupOrbit.hpp:42