Iphone 如何计算具有给定中心、角度和半径的点?
。我需要做相反的事情 我想画一个时钟,我有微小的滴答声图像。一位艺术大师制作了60个,每个都有一个独立而精确的阴影。因此,有60个不同的图像,大小为10x10点,已经在该正方形的中心正确旋转 因此,每6度必须放置一个刻度图像。我只需要根据中心点、半径和角度计算x/y坐标 因此,我:Iphone 如何计算具有给定中心、角度和半径的点?,iphone,objective-c,cocoa-touch,Iphone,Objective C,Cocoa Touch,。我需要做相反的事情 我想画一个时钟,我有微小的滴答声图像。一位艺术大师制作了60个,每个都有一个独立而精确的阴影。因此,有60个不同的图像,大小为10x10点,已经在该正方形的中心正确旋转 因此,每6度必须放置一个刻度图像。我只需要根据中心点、半径和角度计算x/y坐标 因此,我: 中心点 半径 角度 有没有一种简单的方法来计算x/y坐标?也许cocoa touch已经有了一个有用的功能或方法?让a为角度,(x,y)为中心点,r为半径,那么您的点将位于 (x + r*cos(a), y +
- 中心点
- 半径
- 角度
有没有一种简单的方法来计算x/y坐标?也许cocoa touch已经有了一个有用的功能或方法?让a为角度,(x,y)为中心点,r为半径,那么您的点将位于
(x + r*cos(a), y + r*sin(a))
图像(中心)应放置在点(X,Y)上,其中(X,Y)是中心点的坐标,r是半径
X = x + (r/2)*cos(angle);
Y = y + (r/2)*sin(angle);
在数学中,从极坐标计算笛卡尔坐标:
x = r * cos(A) + x0;
y = r * sin(A) + y0;
其中(x0,y0)是圆的中心,r是半径,A是角度
但假设数学坐标约定,即x随着向右移动而增加,y随着向上移动而增加。这是Mac OS X Cocoa上的默认视图,但我不知道iPhone上的视图是否相同
此外,角度从3点钟开始,逆时针旋转,即3点钟为0度,12点钟为90度,9点钟为180度,6点钟为270度
此外,C正弦和余弦函数以弧度为单位。我刚刚意识到,unbeli的答案已经应用了修正,使角度从顶部开始,以时钟面预期的自然方式顺时针移动。+1。我无法使unbeli的解决方案工作,但您的解决方案工作了(使用JavaScript)。下面是一个片段,用于从HTML5画布的中心以指定角度绘制一条线。注意从3点钟开始四处走动的技巧:x0=ctx.canvas.width/2;y0=ctx.canvas.height/2;ctx.lineTo((x0+r*Math.cos(toRad(angle-90))),(y0+r*Math.sin(toRad(angle-90)));正弦和余弦在这里是相反的