3D Vector defined by 2 angles

2020-03-15 01:37发布

So basicly I'm looking for a way to calculate the x,y and z component of a vector using 2 angles as shown: enter image description here Where alpha is the 2D angle and beta is the y angle. What I've been using uptill now for 2D vectors was:

x = Math.sin(alpha);
z = Math.cos(alpha);

After searching on stackexchange math I've found this forumula doesn't really work correctly:

 x = Math.sin(alpha)*Math.cos(beta);
 z = Math.sin(alpha)*Math.sin(beta);
 y = Math.cos(beta);

Note: when approaching 90 degrees with the beta angle the x and z components should approach zero. All help would be appreciated.

标签: math vector 3d
1条回答
该账号已被封号
2楼-- · 2020-03-15 01:59

The proper formulas would be

x = Math.cos(alpha) * Math.cos(beta);
z = Math.sin(alpha) * Math.cos(beta);
y = Math.sin(beta);
查看更多
登录 后发表回答