主要内容

randrot

均匀分布随机旋转

描述

R= randrot返回从随机旋转的均匀分布中提取的单位四元数。

例子

R= randrot (返回A.——- - - - - -由均匀分布的随机旋转得到的单位四元数矩阵。

例子

R= randrot (m1、…、锰返回A.m1——-…——-随机单位四元数数组,其中m1,......,表示每个维度的大小。例如,randrot(3、4)返回一个由随机单位四元数组成的3 × 4矩阵。

R= randrot ((m1、…、锰)返回A.m1——-…——-随机单位四元数数组,其中m1,......,表示每个维度的大小。例如,randrot ([3, 4])返回一个由随机单位四元数组成的3 × 4矩阵。

例子

全部折叠

生成一个均匀分布随机旋转的3 × 3矩阵。

r = randrot (3)
r =3×3四元数的数组0.17446 + 0.59506 - 0.73295 j + 0.27976 k我0.69704 - 0.060589 + 0.68679 j - 0.19695 k我0.35191 + 0.74478 + 0.52322 j k - 0.21842 0.21908 - 0.23548 0.89875 - 0.298 j + j k我-0.049744 + 0.59691 + 0.56459 + 0.56786 k我0.17527 - 0.46955 + 0.52986 j - 0.68414 k 0.6375 + 0.49338 - 0.24049 j + 0.54068 j k我0.2979 - 0.53568 + 0.31819 + 0.72323 k i - -0.30189 - 0.228640.83159 j + 0.40626 k

创建500个随机四元数的向量。采用rotatepoint可视化应用于点(1,0,0)的随机旋转的分布。

q = randrot (500 1);Pt = rotatepoint(q, [1 0 0]);图scatter3(pt(:,1), pt(:,2), pt(:,3))轴平等的

图包含轴。轴包含类型散射的对象。

输入参数

全部折叠

平方四元数矩阵的大小,指定为整数值。如果0或消极,那么R作为空矩阵返回。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

每个维度的大小,指定为两个或多个整数值。如果任何尺寸是0或消极,那么R作为空数组返回。

例子:randrot(2、3)返回一个由随机四元数组成的2 × 3矩阵。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

每个维度大小的向量,指定为由两个或多个整数值组成的行向量。如果任何尺寸是0或消极,那么R作为空数组返回。

例子:randrot([2、3])返回一个由随机四元数组成的2 × 3矩阵。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部折叠

随机四元数,作为四元数或四元数数组返回。

数据类型:四元数

参考

[1] Shoemake, K。“统一随机旋转。”图形宝石三世(k . David ed)。纽约:学术出版社,1992。

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

介绍了R2020a