🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
BuiltinPoint.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstCore/PointSSBarycenter.hpp"
25#include "AstCore/PointRoot.hpp"
26#include "AstCore/PointMacro.hpp"
27
28AST_NAMESPACE_BEGIN
29
35/*
36- 这些函数并不是工厂函数,他们所返回的对象示例都是不变的单个实例,
37 不会因为DataContext的更改而返回不同实例。
38 但是重新加载或者修改线程DataContext的数据后,会影响这些坐标点的计算结果
39 也就是说他们依赖于当前线程DataContext的相关数据
40
41- 虽然天体本身就是坐标点,天体本身与这里的函数所返回的坐标点的区别在于:
42 天体是可以独立创建的,而且可以通过修改天体配置使其与DataContext解耦
43
44- 如果这里的函数返回的坐标点就是天体本身,考虑到DataContext是可以切换的
45 那么无法保持每个函数返回的坐标点都是不变的实例,而这与`aAxesXXX`系列函数的行为不同
46 这进一步会导致依赖这些函数所返回的坐标点实例的`aFrameXXX`系列函数的计算结果无法保持一致
47*/
48
49_AST_DECL_POINT(Mercury)
50_AST_DECL_POINT(Venus)
51_AST_DECL_POINT(Earth)
52_AST_DECL_POINT(Mars)
53_AST_DECL_POINT(Jupiter)
54_AST_DECL_POINT(Saturn)
55_AST_DECL_POINT(Uranus)
56_AST_DECL_POINT(Neptune)
57_AST_DECL_POINT(Pluto)
58_AST_DECL_POINT(Moon)
59_AST_DECL_POINT(Sun)
60_AST_DECL_POINT(EMBarycenter)
61
62
64AST_NAMESPACE_END