🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
BodyObstructionConstraint.hpp
浏览该文件的文档.
1
20
21
22
23#pragma once
24
25#include "AccessConstraint.hpp"
26#include "AstCore/CelestialBody.hpp"
27
28AST_NAMESPACE_BEGIN
29
34{
35public:
37
38 BodyObstructionConstraint() = default;
39 A_DISABLE_COPY(BodyObstructionConstraint);
40
45 BodyObstructionConstraint(Point* fromObject, Point* toObject, CelestialBody* centralBody);
46
47 double evaluate(const TimePoint& time) const override;
48
49 void setFromObject(Point* obj) { fromObject_ = obj; }
50 Point* fromObject() const { return fromObject_; }
51
52 void setToObject(Point* obj) { toObject_ = obj; }
53 Point* toObject() const { return toObject_; }
54
55 void setCentralBody(CelestialBody* body) { centralBody_ = body; }
56 CelestialBody* centralBody() const { return centralBody_; }
57
58private:
59 Point* fromObject_{};
60 Point* toObject_{};
61 CelestialBody* centralBody_{};
62};
63
64AST_NAMESPACE_END
访问约束抽象基类
访问约束抽象基类
定义 AccessConstraint.hpp:41
virtual double evaluate(const TimePoint &time) const =0
评估约束的特征值
天体遮挡约束
定义 BodyObstructionConstraint.hpp:34
天体
定义 CelestialBody.hpp:72
点抽象基类
定义 Point.hpp:41
绝对时间点
定义 TimePoint.hpp:108