🛰️航天仿真算法库 SpaceAST 0.3.1
载入中...
搜索中...
未找到
ast::SpheroidShape类 参考final

#include <SpheroidShape.hpp>

+ 类 ast::SpheroidShape 继承关系图:

Public 成员函数

 SpheroidShape (double majorAxis, double flatFactor)
 
double majorAxis () const override
 
void transform (const Vector3d &cartesian, GeodeticPoint &detic) const override
 
void transform (const GeodeticPoint &detic, Vector3d &cartesian) const override
 
errc_t transform (const Vector3d &pos, const Vector3d &vel, GeodeticPoint &detic, LatLonAlt &rate) const override
 
errc_t transform (const GeodeticPoint &detic, const LatLonAlt &rate, Vector3d &pos, Vector3d &vel) const override
 
double flatFactor () const
 
A_ALWAYS_INLINE GeodeticPoint transform (const Vector3d &cartesian) const
 
A_ALWAYS_INLINE Vector3d transform (const GeodeticPoint &point) const
 
- Public 成员函数 继承自 ast::BodyShape
A_ALWAYS_INLINE GeodeticPoint transform (const Vector3d &cartesian) const
 
A_ALWAYS_INLINE Vector3d transform (const GeodeticPoint &point) const
 
- Public 成员函数 继承自 ast::ObjectNamed
 ObjectNamed ()=default
 
 ObjectNamed (StringView name)
 
const std::string & getName () const override
 
void setName (StringView name) override
 
- Public 成员函数 继承自 ast::Object
 Object (Object *parentScope)
 
 Object (std::nullptr_t)
 
virtual Class * getType () const
 
virtual std::string getRepresentation () const
 
const std::string & name () const
 
std::string displayName () const
 
errc_t showEditDialog ()
 
Attribute attr (StringView path)
 
errc_t getAttrBool (StringView path, bool &value) const
 
errc_t getAttrInt (StringView path, int &value) const
 
errc_t getAttrDouble (StringView path, double &value) const
 
errc_t getAttrString (StringView path, std::string &value) const
 
errc_t getAttrObject (StringView path, Object *&value) const
 
double getAttrDouble (StringView path) const
 
int getAttrInt (StringView path) const
 
bool getAttrBool (StringView path) const
 
std::string getAttrString (StringView path) const
 
Object * getAttrObject (StringView path) const
 
errc_t setAttrBool (StringView path, bool value)
 
errc_t setAttrInt (StringView path, int value)
 
errc_t setAttrDouble (StringView path, double value)
 
errc_t setAttrString (StringView path, StringView value)
 
errc_t setAttrObject (StringView path, Object *value)
 
Class * type () const
 
const std::string & typeName () const
 
Property * getProperty (StringView fieldName) const
 
ObjectId getID () const
 
errc_t setParentScope (Object *parentScope)
 
Object * getParentScope () const
 
template<typename T >
T getParent () const
 
bool isOfType (const Class *type) const
 
bool isOfType (StringView typeName) const
 
template<typename T >
bool isOfType () const
 
template<typename Func >
void addDelayedLink (Func &&link)
 
template<typename Func >
void addDelayedLinkIfFailed (Func &&link)
 
void resolveLinks ()
 
bool readOnly () const
 
void setReadOnly (bool readOnly)
 
bool active () const
 
void setActive (bool active)
 
bool isComponent () const
 
void setIsComponent (bool isComponent)
 
bool isEntity () const
 
void setIsEntity (bool isEntity)
 
const char * tr (const char *msg) const
 
 Referenced ()
 
 Referenced (initial_strong_ref_t)
 
- Public 成员函数 继承自 ast::Referenced
 Referenced (initial_strong_ref_t)
 
uint32_t refCount () const
 
uint32_t weakRefCount () const
 
bool isDestructed () const
 
void destruct ()
 
uint32_t incWeakRef ()
 
uint32_t decWeakRef ()
 
uint32_t incRef ()
 
uint32_t decRef ()
 
uint32_t decRefNoDelete ()
 

静态 Public 成员函数

static SpheroidShape * NewFromMajorAxisFlatFactor (double majorAxis, double flatFactor)
 
static SpheroidShape * NewFromMajorMinorAxis (double majorAxis, double minorAxis)
 
- 静态 Public 成员函数 继承自 ast::Object
static Object * Resolve (StringView value)
 
static void ClassInit (Class *cls)
 
static Class * StaticType ()
 

Public 属性

AST_PROPERTIES : length_d majorAxis_{}
 
double flatFactor_ {}
 

额外继承的成员函数

- 静态 Public 属性 继承自 ast::Object
static Class staticType
 
- Protected 成员函数 继承自 ast::Object
 Object (const Object &)
 
Object & operator= (const Object &)
 
- Protected 成员函数 继承自 ast::Referenced
void setDestructed ()
 

详细描述

旋转椭球体/扁球体

有两个轴长度相同,且与旋转轴垂直。

成员函数说明

◆ majorAxis()

double ast::SpheroidShape::majorAxis ( ) const
inlineoverridevirtual

实现了 ast::BodyShape.

◆ transform() [1/6]

errc_t ast::SpheroidShape::transform ( const GeodeticPoint & detic,
const LatLonAlt & rate,
Vector3d & pos,
Vector3d & vel ) const
overridevirtual

将大地坐标及其变化率转换为天体固连系下的位置与速度

参数
detic大地坐标
rate大地坐标变化率, 依次为经度率[rad/s]、纬度率[rad/s]、高度率[m/s]
pos输出的天体固连系位置
vel输出的天体固连系速度
返回
错误码,成功返回eNoError
注解
与上一重载互为逆变换; 形状不支持该转换时返回 eErrorNotImplemented。

重载 ast::BodyShape .

◆ transform() [2/6]

void ast::SpheroidShape::transform ( const GeodeticPoint & detic,
Vector3d & cartesian ) const
overridevirtual

将大地坐标转换为笛卡尔坐标(天体固连系)

参数
detic大地坐标
cartesian笛卡尔坐标(天体固连系)

实现了 ast::BodyShape.

◆ transform() [3/6]

A_ALWAYS_INLINE Vector3d ast::BodyShape::transform ( const GeodeticPoint & point) const
inline

将大地坐标转换为笛卡尔坐标(天体固连系)

参数
detic大地坐标
返回
笛卡尔坐标(天体固连系)

◆ transform() [4/6]

A_ALWAYS_INLINE GeodeticPoint ast::BodyShape::transform ( const Vector3d & cartesian) const
inline

将笛卡尔坐标(天体固连系)转换为大地坐标

参数
cartesian笛卡尔坐标(天体固连系)
返回
大地坐标

◆ transform() [5/6]

void ast::SpheroidShape::transform ( const Vector3d & cartesian,
GeodeticPoint & detic ) const
overridevirtual

将笛卡尔坐标(天体固连系)转换为大地坐标

参数
cartesian笛卡尔坐标(天体固连系)
detic大地坐标

实现了 ast::BodyShape.

◆ transform() [6/6]

errc_t ast::SpheroidShape::transform ( const Vector3d & pos,
const Vector3d & vel,
GeodeticPoint & detic,
LatLonAlt & rate ) const
overridevirtual

将天体固连系下的位置与速度转换为大地坐标及其变化率

参数
pos天体固连系位置
vel天体固连系速度
detic输出的大地坐标
rate输出的大地坐标变化率, 依次为经度率[rad/s]、纬度率[rad/s]、高度率[m/s]
返回
错误码,成功返回eNoError
注解
rate 复用 LatLonAlt , 但其纬度、经度、高度三个字段依次为纬度率、经度率、高度率; 变化率描述的是天体固连系下的速度, 不含任何牵连速度; 速度分解所依赖的度量因子随形状而异, 由各形状自行实现 (见 SpheroidShape 、 SphereShape ); 形状不支持该转换时返回 eErrorNotImplemented。

重载 ast::BodyShape .


该类的文档由以下文件生成: