检测散点图圆之间的交点

问题描述

我当前正在使用fl_chart包来创建带有抖动的散点图。
我试图模仿维恩图的功能,仅针对两个圆圈。 有没有办法可以检测到这些圆的交点内的点击?
到目前为止,即使我点击了它们的交点,我也只能检测到其中任何一个圆圈的点击。

有没有办法在颤抖的情况下实现这一目标?如果您知道一个提供此功能的软件包,我就不希望受此限制。

解决方法

要检测2个圆的交点处的点击,您需要3条信息:

  1. 点击位置的X,Y坐标
  2. 每个圆心的X,Y坐标
  3. 每个圆的半径或直径

如果知道这些,则可以使用距离公式来计算单击的点与一个圆的中心之间的距离。如果距离小于或等于半径,则该距离在圆内。现在,您检查到另一个圆心的距离,如果它也小于或等于第二个圆的半径,则它在两个圆内,这意味着它在重叠区域中。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...