1.求一个向量是另一个向量的顺时针还是逆时针
使用Vector.dot()点积的值来判断。
注意传入时的值必须统一,例如判断一个原向量的左右向量的旋转方向,每次都需要传入原向量作为rhs;
2. 换算成数学题为:已知圆o上一点a,求旋转度数θ后,得到新的点P,求该点的位置,假设R为1
解题过程为:
设原来的点对应的为α,则x=1cosα,y=1sinα.
所求新坐标为(m,n),对应的角为α-θ,则m=cos(α-θ),n=sin(α-θ)
展开得m=cos(α-θ)=cosαcosθ+sinαsinθ=xcosθ+ysinθ
n=sin(α-θ)=sinαcosθ-cosαsinθ=ycosθ-xsinθ
所以所求的坐标为(xcosθ+ysinθ,ycosθ-xsinθ)
综上该需求的两个点为(xcosθ+ysinθ,ycosθ-xsinθ),(xcosθ-ysinθ,ycosθ+xsinθ)
当圆心不是在原点时,x = o.x+(a.x-o.x),y=o.y+(a.y-o.y);
unity 常见数学问题积累
最新推荐文章于 2022-04-08 20:11:41 发布