使用JavaScript选择圆上的点

Tec*_*upe 4 html javascript

有没有办法使用JavaScript来选择轮子图像上的点,并保存点可能0-360?

Jus*_*ier 11

如果您知道圆的半径,则可以使用三角学来查找圆上的点:

var x = Math.cos(pointAngleInRadians) * radius;
var y = Math.sin(pointAngleInRadians) * radius;
Run Code Online (Sandbox Code Playgroud)

如果圆圈居中于某个点,则(10, 20)需要将这些值添加到xy获得准确的坐标.


更新

文章点击图片并获取JavaScript坐标解释了当用户点击图片时如何调用函数,并让该函数找出坐标.

以下是一些高级笔记,说明如何使用它来计算出他们点击的角度(0 - 360度):

  • 知道每个圆的中心坐标和用户点击的坐标,您可以使用点之间的距离计算半径,计算方法如下:

在此输入图像描述

  • 然后,您可以使用上面的trig方程计算每个圆上的点的角度.

  • 假设每个圆都有一个宽度,您可以计算每个轮胎外边缘和内边缘具有相同角度/半径的点的坐标.

  • 将内/外边缘值与用户单击的点进行比较,以查看用户是否在轮胎的边界内单击.对于x和y,圆圈的每一半都需要两个壳体 - 例如,以下仅对180度有效xInner <= x <= xOuter,然后对剩余的180度有效xInner >= x >= xOuter.

  • 在上一步之后,如果该点位于其中一个轮胎上,那么您将获得该角度.在存储之前,您可能需要将其从弧度转换为度数:

以度为单位的角度=以弧度表示的角度*180/Pi