获取从圆到屏幕角的半径

时间:2018-10-26 11:09:39

标签: java android math trigonometry

我遵循了在线教程,但我不明白教授如何设法从屏幕的左上角获取一个圆的距离:

//calculate the distance from epicenter (of a circle) to the top left corner of the screen

double theta = atan(epicenter.dy/epicenter.dx);
double distanceToCorner = epicenter.dy / sin(theta);

我想知道如何获得与所有其他屏幕角点的距离(并可能对所做的事情有所解释)。

谢谢

2 个答案:

答案 0 :(得分:0)

假设,在android中您可以获得屏幕的宽度和高度,则可以简单地分别计算水平轴和垂直轴的距离。 获取这些轴上的距离,您可以使用毕达哥拉斯方程,例如

dist = sqrt( dx^2 * dy^2 )

要使其更易于操作,只需制作一个函数,以角位置为参数,并以 dx dy 作为角和震中位置的绝对差

回到您的问题和 atan(...),我不太理解在这里使用它的必要性,除非那是数学课程的项目:)

答案 1 :(得分:0)

我知道这不是答案,但是如果我理解您的意思,那么这张图片可能会有所帮助。

Image