Tonatiuh 中 Rotation 的用法
1. 参数格式
Rotation = (x, y, z, θ)
-
x, y, z:旋转轴的方向向量
- 不要求单位化(Tonatiuh 内部会归一化)
- 例如 (1,0,0) = X 轴;(0,1,0) = Y 轴;(0,0,1) = Z 轴
-
θ:旋转角度,弧度制 (radian)
- 不是度数,输入时要换算
2. 角度 ↔ 弧度换算
θrad=θdeg×180π 常用值对照表:
| 角度 (°) | 弧度 (rad) |
|---|---|
| 30° | 0.524 |
| 45° | 0.785 |
| 60° | 1.047 |
| 90° | 1.571 |
| 180° | 3.142 |
| 270° | 4.712 |
| 360° | 6.283 |
3. 常见旋转操作示例
(1) 不旋转
Rotation = (0,0,1,0)
(2) 绕 X 轴
- 90°:
(1,0,0,1.571) - 180°:
(1,0,0,3.142)
(3) 绕 Y 轴
- 90°:
(0,1,0,1.571) - 180°:
(0,1,0,3.142)
(4) 绕 Z 轴
- 45°:
(0,0,1,0.785) - 180°:
(0,0,1,3.142)
(5) 任意方向
例如绕向量 (1,1,0) 方向旋转 30°:
Rotation = (1,1,0,0.524)
4. 使用技巧
-
镜子布置:线性菲涅尔镜常需要绕 Y 轴旋转;初始
Rotation=(0,1,0,0)。 -
接收器布置:如果要水平/竖直放置,用 X 或 Y 轴 90°旋转。
-
二次反射器:常见组合旋转,可通过改变 Z 轴角度控制朝向。
-
多重旋转:Tonatiuh 每个物体只能设一个 Rotation;若要组合旋转,可以:
- 手动计算合成的“轴–角”参数;
- 在模型树里嵌套几何体,父节点旋转一次,子节点再旋转一次。
5. 小结
- Rotation = (轴向量, 弧度角)
- θ 必须用 弧度,不是度数
- 常用操作就是绕 X/Y/Z 轴旋转 90°/180°,直接查表即可