Merge pull request #76 from space-ast/feat/ui-quantity 重构:UiQuantity 使用 setDimension 替代 setValueInUnit/setQuantity
Merge pull request #76 from space-ast/feat/ui-quantity
重构:UiQuantity 使用 setDimension 替代 setValueInUnit/setQuantity
space-ast (/æst/) 是一个用C++编写的航天仿真算法库,为航天任务分析和设计提供计算基础。
像星辰般精准,为航天仿真而生
space-ast (/æst/) 是一个专注于航天仿真领域的算法库,提供了轨道力学、姿态控制、轨迹规划等核心算法的现代C++实现。
如果你想要了解更多,请参考:使用指南, API文档, Github以及 Gitee 和 GitCode。
git clone https://github.com/space-ast/ast.git --recursive cd ast xmake
ast/ ├── data/ # 数据 ├── docs/ # 文档 ├── examples/ # 示例代码片段 ├── include/ # 头文件 ├── projects/ # 示例工程 ├── repo/ # 第三方库配置文件 ├── scripts/ # 工具脚本 ├── src/ # 源文件 ├── test/ # 测试工程 └── thirdparty/ # 第三方库
项目采用以下命名约定:
// 命名空间 ast namespace ast { // ... } // 全局函数 - 单个'a'前缀 aPropagateOrbit(); aSolveLambert(); aRotateQuaternion(); // 类型别名 - 'A'前缀 typedef ast::OrbitPropagator AOrbitPropagator; typedef ast::AttitudeController AAttitudeController; // 枚举 - 'E'和'e'前缀 enum EFrame { eECI, eECEF }; // 常量 - 'k' 前缀 const kEps15 = 1e-15;
可以发现:在以上命名规范里,所有以小写字母开头的都有值或者地址
遵循Doxygen注释规范,函数、文件、类的注释采用///格式,其他多行注释也可采用/*! ... */格式。
///
/*! ... */
函数注释:每个函数都需要包含详细的注释,包括参数说明、返回值、异常情况等。
类注释:每个类都需要包含详细的注释,包括功能描述、成员变量、成员函数等。
文件注释:每个源文件都需要包含文件头注释,包括文件名、作者、日期、版权信息等。
我们欢迎各种形式的贡献!无论是代码改进、文档完善、bug报告还是新功能建议,都是对项目的宝贵支持。
git checkout -b feature/AmazingFeature
git commit -m 'Add some AmazingFeature'
git push origin feature/AmazingFeature
请确保代码遵循项目的编码规范,并添加相应的测试用例。
本项目采用 Apache2.0 许可证 - 详见 LICENSE 文件。
当前状态: 🟢 积极开发中
项目目前处于早期开发阶段,API可能会有较大变化。我们正在积极完善核心功能,欢迎早期使用者的反馈和建议。
核心模块将认真设计与开发,并进行完善的测试与验证,确保算法的准确性和稳定性。
下面的模块将通过AI辅助进行开发,但会通过人工审查和自动测试确保质量。
ast项目的开发参考和使用了很多资料与工具,感谢所有开源社区贡献者的辛勤工作,以及航天仿真领域研究人员的理论贡献,这些宝贵的资源为ast项目的开发提供了坚实的基础。
ast 这个名字蕴含着多重深意,每一层都呼应着航天仿真的本质:
aster
“在代码的宇宙中,我们绘制航天的星辰轨迹”
🛰️航天仿真算法库,提供了轨道力学、姿态控制、轨迹规划等核心算法的现代C++实现。
🛰️ 航天仿真算法库 SpaceAST
space-ast (/æst/) 是一个用C++编写的航天仿真算法库,为航天任务分析和设计提供计算基础。
像星辰般精准,为航天仿真而生
🌟 项目简介
space-ast (/æst/) 是一个专注于航天仿真领域的算法库,提供了轨道力学、姿态控制、轨迹规划等核心算法的现代C++实现。
如果你想要了解更多,请参考:使用指南, API文档, Github以及 Gitee 和 GitCode。
🚀 核心特性
🛰️ 算法领域
📦 快速开始
📋 环境要求
🏗️ 构建项目
🏗️ 项目架构
🎯 API 设计理念
📏代码规范
📝 命名规范
项目采用以下命名约定:
可以发现:在以上命名规范里,所有以小写字母开头的都有值或者地址
👁️🗨️ 注释规范
遵循Doxygen注释规范,函数、文件、类的注释采用
///格式,其他多行注释也可采用/*! ... */格式。函数注释:每个函数都需要包含详细的注释,包括参数说明、返回值、异常情况等。
类注释:每个类都需要包含详细的注释,包括功能描述、成员变量、成员函数等。
文件注释:每个源文件都需要包含文件头注释,包括文件名、作者、日期、版权信息等。
🤝 参与贡献
我们欢迎各种形式的贡献!无论是代码改进、文档完善、bug报告还是新功能建议,都是对项目的宝贵支持。
🔄 贡献流程
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)请确保代码遵循项目的编码规范,并添加相应的测试用例。
📄 许可证
本项目采用 Apache2.0 许可证 - 详见 LICENSE 文件。
🛠️ 开发状态
当前状态: 🟢 积极开发中
项目目前处于早期开发阶段,API可能会有较大变化。我们正在积极完善核心功能,欢迎早期使用者的反馈和建议。
🗂️ 模块规划
核心模块将认真设计与开发,并进行完善的测试与验证,确保算法的准确性和稳定性。
下面的模块将通过AI辅助进行开发,但会通过人工审查和自动测试确保质量。
📞 联系我们
📚 参考资料
ast项目的开发参考和使用了很多资料与工具,感谢所有开源社区贡献者的辛勤工作,以及航天仿真领域研究人员的理论贡献,这些宝贵的资源为ast项目的开发提供了坚实的基础。
💻 开源代码
🔗 项目依赖
🔧 工具链
📦 第三方库
🌌 项目名称灵感
ast 这个名字蕴含着多重深意,每一层都呼应着航天仿真的本质:
🪐 词源深意
aster(ἀστήρ),意为”星辰”🚀 专业内涵
“在代码的宇宙中,我们绘制航天的星辰轨迹”