三维空间中的旋转方向(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 的方法坐标系:

相关推荐
2zcode44 分钟前
基于MATLAB图像处理的饮料瓶灌装液位检测系统设计与实现
开发语言·图像处理·matlab
万亿少女的梦1681 小时前
基于Python的高考志愿填报辅助系统设计与实现
java·spring boot·python·mysql·vue
必须得开心呀2 小时前
QT解决中文乱码问题
开发语言·qt
闲猫2 小时前
Python FastAPI + SQLAlchemy 入门教程:从零搭建你的第一个 Web 应用
前端·python·fastapi
这不小天嘛3 小时前
JAVA八股——redis篇
java·开发语言·redis
逝水无殇4 小时前
C# 字符串(String)详解
开发语言·后端·c#
精明的身影4 小时前
C++自学之路1:Hello world
开发语言·c++
leo__5205 小时前
基于导航数据的扩展卡尔曼滤波(EKF)MATLAB 实现
开发语言·matlab
gugucoding5 小时前
25. 【C语言】二进制文件与随机读写
c语言·开发语言
北极星日淘5 小时前
中古货品品相评级算法实战|Java权重计分实现标准化五级品相体系
开发语言·python