現在、Mathworks、Sph2Cart の Matlab の式を使用して、2 つの角度を x、y、z に変換しようとしています。
http://www.mathworks.com/help/techdoc/ref/sph2cart.html
アルゴリズム:
x = r .* cos(elevation) .* cos(azimuth)
y = r .* cos(elevation) .* sin(azimuth)
z = r .* sin(elevation)
C++ の場合
clax = 1 * cos((Altitude/360)*(2*XM_PI)) * cos((Azimuth/360)*(2*XM_PI));
clay = 1 * sin((Altitude/360)*(2*XM_PI));
claz = 1 * cos((Altitude/360)*(2*XM_PI)) * sin((Azimuth/360)*(2*XM_PI));
ただし、Altitude と Azimuth が何であっても、clax、clay、claz は 0 または 1 です。
私は間違いを犯したと確信しており、この後、私がどれほど愚かだったかを笑います。しかし、実際には、なぜこれが機能しないのか、なぜ値がそれぞれに 1 または 0 しか与えられないのかわかりません...