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

#include <VectorCross.hpp>

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

Public 成员函数

AxesgetAxes () const override
 
errc_t getVector (const TimePoint &tp, Vector3d &vec) const override
 
errc_t getVector (const TimePoint &tp, Vector3d &vec, Vector3d &vel) const override
 
VectorgetVector1 () const
 
void setVector2 (Vector *vec)
 
VectorgetVector2 () const
 
- Public 成员函数 继承自 ast::Vector
errc_t getVectorIn (Axes *targetAxes, const TimePoint &tp, Vector3d &vec) const
 
errc_t getVectorIn (Axes *targetAxes, const TimePoint &tp, Vector3d &vec, Vector3d &vel) const
 
errc_t getVectorIn (Frame *targetFrame, const TimePoint &tp, Vector3d &vec) const
 
errc_t getVectorIn (Frame *targetFrame, const TimePoint &tp, Vector3d &vec, Vector3d &vel) 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 ClassgetType () 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
 
ObjectgetAttrObject (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)
 
Classtype () const
 
const std::string & typeName () const
 
PropertygetProperty (StringView fieldName) const
 
ObjectId getID () const
 
errc_t setParentScope (Object *parentScope)
 
ObjectgetParentScope () 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 属性

AST_PROPERTIES : void setVector1(Vector* vec)
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 ast::Object
static ObjectResolve (StringView value)
 
static void ClassInit (Class *cls)
 
static ClassStaticType ()
 
- 静态 Public 属性 继承自 ast::Object
static Class staticType
 
- Protected 成员函数 继承自 ast::Object
 Object (const Object &)
 
Objectoperator= (const Object &)
 
- Protected 成员函数 继承自 ast::Referenced
void setDestructed ()
 

详细描述

叉乘向量类 (Cross Product)

计算两个输入向量的叉积 C = A × B。 叉积结果的方向遵循右手定则,大小等于 |A| * |B| * sin(θ),其中 θ 为两向量之间的夹角。 当需要速度时,使用乘积法则计算: dC/dt = (dA/dt × B) + (A × dB/dt)

成员函数说明

◆ getAxes()

Axes * ast::VectorCross::getAxes ( ) const
overridevirtual

获取叉积向量的参考坐标系(使用向量1的坐标系)

叉积运算要求两个输入向量在同一坐标系中。 返回向量1所在的参考轴系,计算时会通过 getVectorIn() 自动将向量2转换到向量1的坐标系下。 若向量1为空指针则返回 nullptr。

返回
参考轴系指针

实现了 ast::Vector.

◆ getVector() [1/2]

errc_t ast::VectorCross::getVector ( const TimePoint & tp,
Vector3d & vec ) const
overridevirtual

获取叉积向量在指定时间点的值 C = A × B

参数
tp时间点
vec输出参数,叉积向量的值
返回
错误码

实现了 ast::Vector.

◆ getVector() [2/2]

errc_t ast::VectorCross::getVector ( const TimePoint & tp,
Vector3d & vec,
Vector3d & vel ) const
overridevirtual

获取叉积向量在指定时间点的值和速度

参数
tp时间点
vec输出参数,叉积向量的值 C = A × B
vel输出参数,叉积向量的速度 dC/dt = (dA/dt × B) + (A × dB/dt)
返回
错误码

实现了 ast::Vector.

◆ getVector1()

Vector * ast::VectorCross::getVector1 ( ) const

获取第一个输入向量 A

返回
输入向量指针

◆ getVector2()

Vector * ast::VectorCross::getVector2 ( ) const

获取第二个输入向量 B

返回
输入向量指针

◆ setVector2()

void ast::VectorCross::setVector2 ( Vector * vec)

设置第二个输入向量 B

参数
vec输入向量指针

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