作者linked (13时)
看板java
标题[问题] 球体座标转换的问题
时间Tue Feb 12 01:00:56 2008
请问各位大大,
我写了一个程式如下,
将直角座标转成球体座标,
再将球体座标转回直角座标,和原来的直角座标相比,
正负号都变了,~.~
请各位大大帮我看看哪边有错误,谢谢~
double r , theta , fi ;
double x = -70;
double y =0.7;
double z = -16;
r = Math.sqrt(Math.pow(x,2)+Math.pow(y,2)+Math.pow(z, 2));
theta = Math.acos(z/r);
fi = Math.atan(y/x);
x = r*Math.sin(theta)*Math.cos(fi);
y = r*Math.sin(theta)*Math.sin(fi);
z = r*Math.cos(theta);
System.out.println(x+" "+y+" "+z);
=====================执行结果====================
69.99999999999999 -0.6999999999999998 -16.0
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.140.207.223