Fix 30+ broken cross-references in docs/api/math/: - viewport: viewport-getaspectratio/getrect -> getaspectratio/getrect - matrix4: ../color/operator-mul -> operator_mul, operator-index -> operator_index - matrix4/get-*: gettranslation/getscale/getrotation -> get-translation/-scale/-rotation - vector3 operator links: operator_*_assign -> operator-*-assign - vector3 operator links: operator_sub/add -> operator-sub/add - vector3 operator-eq/neq: swap mutual references to use hyphen naming - vector4: ../plane/constructor-default -> constructor_default - Linter fixes: aabb and rectint relative paths corrected
40 lines
806 B
Markdown
40 lines
806 B
Markdown
# Matrix4x4::GetTranslation
|
|
|
|
```cpp
|
|
Vector3 GetTranslation() const
|
|
```
|
|
|
|
从变换矩阵中提取平移分量。读取矩阵的最后一列前三个元素。
|
|
|
|
**参数:** (无)
|
|
|
|
**返回:** 平移向量
|
|
|
|
**线程安全:** ✅
|
|
|
|
**复杂度:** O(1)
|
|
|
|
**示例:**
|
|
|
|
```cpp
|
|
#include "XCEngine/Math/Matrix4.h"
|
|
#include "XCEngine/Math/Vector3.h"
|
|
|
|
using namespace XCEngine::Math;
|
|
|
|
Matrix4 transform = Matrix4::TRS(
|
|
Vector3(5.0f, 3.0f, 2.0f),
|
|
Quaternion::Identity(),
|
|
Vector3(1.0f, 1.0f, 1.0f)
|
|
);
|
|
|
|
Vector3 translation = transform.GetTranslation();
|
|
// translation = (5.0f, 3.0f, 2.0f)
|
|
```
|
|
|
|
## 相关文档
|
|
|
|
- [Matrix4](matrix4.md) - 返回类总览
|
|
- [GetRotation](get-rotation.md) - 获取旋转分量
|
|
- [GetScale](get-scale.md) - 获取缩放分量
|
|
- [Decompose](decompose.md) - 分解矩阵 |