最好有代码,我觉得好像应该不难,可是我得数学不好!!
我想实现类似CD播放器的那个可调节音量大小的旋转按钮,大家帮忙啦,帮帮小D啦!!!!!
http://www.csdn.net/expert/topic/899/899696.xml?temp=.9010279 这里还有200分,快点来领把!!!
我想实现类似CD播放器的那个可调节音量大小的旋转按钮,大家帮忙啦,帮帮小D啦!!!!!
http://www.csdn.net/expert/topic/899/899696.xml?temp=.9010279 这里还有200分,快点来领把!!!
和圆心点(x0, y0)dx = x1 - x0;
dy = y1 - y0;angle = Math.atan(dy/dx);
angle = angle*180/Math.PI;
angle = angle % 360;
if (angle < 0) { angle += 360; }
if (dy < 0 && dx < 0) { angle += 180; }
if (dy > 0 && dx < 0) { angle -= 180; }
用它比上周长再 *2PI*r 就是弧度了
其余的代码应该是处理非第一象限的情况
很久没碰到过数学问题了:)
#include <math.h>
double atan2( double y, double x );
angle = Math.atan(dy/dx);
可算出角度。
如
angle = Math.atan2(dy,dx);
angle = angle*180/Math.PI;
if (angle < 0) angle += 360;
对不起,我没有仔细看。给你说错了。
请用:
#include <math.h>
double atan2( double y, double x );
其中y,x分别是圆中某点的纵坐标和横坐标
它返回的范围是–π to π
当然,这里的坐标是以圆心为(0,0)算的,所以实际运用时还得“坐标变换”一下