三维空间中的旋转方向(blender坐标系、python中两种旋转方式、VTK坐标系)

在三维空间中,旋转的方向

通常遵循右手定则(右手螺旋法则):

右手握住旋转轴,拇指指向轴的正方向。

其余手指弯曲的方向就是正旋转方向(被视为逆时针旋转)。

当旋转角度为正值(如90度)时,旋转方向是逆时针的。

当旋转角度为负值(如-90度)时,旋转方向是顺时针的。

VTK中的坐标系(与blender软件中的坐标系不一致)

VTK中的坐标系使用的是一个右手坐标系,在这个坐标系中,X轴指向右,Y轴指向上,而Z轴指向观察者的前方(出屏幕方向)。

两种旋转方式

方法一

复制代码
from scipy.spatial.transform import Rotation as R

方法二

复制代码
transform = trimesh.transformations.rotation_matrix

对于复杂的旋转序列或频繁的格式转换,SciPy 的 Rotation 类可能更高效;

对于简单的旋转操作,Trimesh 的方法可能更轻量级。

方式一SciPy Rotation 类的坐标系与blender中坐标系的对应关系一一对应:

blender:

SciPy Rotation 类的坐标系:

方式二Trimesh的坐标系与blender中坐标系的对应关系如下:

blender:

Trimesh 的方法坐标系:

相关推荐
lixin556556几秒前
基于迁移学习的图像分类增强器
java·人工智能·pytorch·python·深度学习·语言模型
fengfuyao9853 分钟前
基于MATLAB的量子图像加密实现
开发语言·matlab·量子计算
翱翔的苍鹰1 小时前
多Agent智能体架构设计思路
人工智能·pytorch·python
小毅&Nora1 小时前
【后端】【Python】① Windows系统下Python环境变量设置指南
python·pip
Rabbit_QL8 小时前
【水印添加工具】从零设计一个工程级 Python 图片水印工具:WaterMask 架构与实现
开发语言·python
天“码”行空8 小时前
简化Lambda——方法引用
java·开发语言
z20348315209 小时前
C++对象布局
开发语言·c++
Beginner x_u9 小时前
如何解释JavaScript 中 this 的值?
开发语言·前端·javascript·this 指针
java1234_小锋9 小时前
Java线程之间是如何通信的?
java·开发语言
张张努力变强9 小时前
C++ Date日期类的设计与实现全解析
java·开发语言·c++·算法