🛰️航天仿真算法库 SpaceAST
0.0.1
载入中...
搜索中...
未找到
MotionGreatArc.hpp
浏览该文件的文档.
1
20
21
#pragma once
22
23
#include "AstGlobal.h"
24
#include "
MotionProfile.hpp
"
25
#include "AstCore/GeodeticPoint.hpp"
26
#include <vector>
27
28
AST_NAMESPACE_BEGIN
29
36
class
WayPoint
37
{
38
public
:
39
double
time()
const
{
return
time_;}
40
public
:
41
double
time_
;
42
GeodeticPoint
position_
;
43
double
speed_
;
44
double
acceleration_
;
45
double
turnRadius_
;
46
};
47
48
49
class
MotionGreatArc
;
50
using
PMotionGreatArc
=
MotionGreatArc
*;
51
using
HMotionGreatArc
=
SharedPtr<MotionGreatArc>
;
52
53
class
AST_SIM_API
MotionGreatArc
:
public
MotionProfile
54
{
55
public
:
56
static
PMotionGreatArc
New();
57
MotionGreatArc
();
58
~MotionGreatArc
();
59
public
:
60
errc_t
makeEphemerisSpec
(
ScopedPtr<Ephemeris>
& eph)
const override
;
61
errc_t
makeEphemerisSimple
(
ScopedPtr<Ephemeris>
& eph)
const override
;
62
void
accept
(
MotionProfileVisitor
& visitor)
override
;
63
public
:
64
using
WayPointVector = std::vector<WayPoint>;
65
void
setStartTime(
const
TimePoint
& tp);
66
errc_t getStartTime(
TimePoint
& tp)
const
;
67
errc_t getStopTime(
TimePoint
& tp)
const
;
68
errc_t getInterval(
TimeInterval
& interval)
const
;
69
const
WayPointVector& getWayPoints()
const
{
return
wayPoints_;}
70
void
setWayPoints(
const
WayPointVector& wayPoints){wayPoints_ = wayPoints;}
71
private
:
72
SharedPtr<EventTime>
startTime_;
73
WayPointVector wayPoints_;
74
};
75
78
AST_NAMESPACE_END
MotionProfile.hpp
ast::GeodeticPoint
大地坐标
定义
GeodeticPoint.hpp:33
ast::MotionGreatArc
定义
MotionGreatArc.hpp:54
ast::MotionProfileVisitor
定义
MotionProfileVisitor.hpp:44
ast::MotionProfile
运动定义接口
定义
MotionProfile.hpp:51
ast::MotionProfile::makeEphemerisSpec
virtual errc_t makeEphemerisSpec(ScopedPtr< Ephemeris > &eph) const =0
生成特定星历
ast::MotionProfile::makeEphemerisSimple
virtual errc_t makeEphemerisSimple(ScopedPtr< Ephemeris > &eph) const =0
生成简单星历
ast::MotionProfile::accept
virtual void accept(MotionProfileVisitor &visitor)=0
接受访问者
ast::ScopedPtr
作用域指针类
定义
ScopedPtr.hpp:65
ast::SharedPtr
共享指针
定义
SharedPtr.hpp:33
ast::TimeInterval
时间区间
定义
TimeInterval.hpp:60
ast::TimePoint
绝对时间点
定义
TimePoint.hpp:106
ast::WayPoint
定义
MotionGreatArc.hpp:37
ast::WayPoint::position_
GeodeticPoint position_
位置
定义
MotionGreatArc.hpp:42
ast::WayPoint::turnRadius_
double turnRadius_
转弯半径
定义
MotionGreatArc.hpp:45
ast::WayPoint::time_
double time_
时间
定义
MotionGreatArc.hpp:41
ast::WayPoint::speed_
double speed_
速度
定义
MotionGreatArc.hpp:43
ast::WayPoint::acceleration_
double acceleration_
加速度
定义
MotionGreatArc.hpp:44
src
AstSim
Motion
MotionGreatArc.hpp
制作者
1.12.0