U3d 通过旋转Quaternion.Euler来获得圆的半径点坐标

Quaternion q=Quaternion.Euler(Vector3 euler)该函数填入要旋转的角度欧拉角(即transform面板中Rotation),返回一个四元数的值q,物体的transform.rotation的类型是四元数类型,所以在赋值时先要将欧拉角转换为四元数。

Quaternion q=Quaternion.AngleAxis(float angles, Vector3 axis)该函数填入要旋转的轴axis,以及按轴旋转的角度angles。返回一个四元数的值q。

 Quaternion q=Quaternion.Euler(new Vector3(0,90,0));返回一个绕Y轴旋转90度的操作的四元数

Vector3  p = new Vector3(0,0,2);

p= q*p;四元数左乘一个位置向量

得到一个按照q旋转方向的 新的p (2,0,0);再做3次这样的乘法运算:得到p点的位置分别为(0,0,-2),(-2,0,0)以及(0,0,2);

这样我们发现,如果我们要得到一个点(上例中的原点(0,0,0)),相隔一段距离(上例中2),以一定角度划分(90度)的所有点的集合,即可通过这种方法获得,这也就是以某一点为坐标,来画圆的所有点的集合,当坐标点不在原点时,先已原点为例来求解,最后在得到点的坐标上加上已知圆的原点坐标,即为所求!



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值