Java swing中的交互式平面直线图

Java swing中的交互式平面直线图,java,swing,Java,Swing,我正在试着在一个JApplet上绘制一个交互式平面直线图(PSLG)。我使用鼠标单击来确定PSLG的顶点 以下是我为绘制PSLG边缘而遵循的算法 1.用户执行鼠标单击的点将添加为PSLG的顶点。 2.如果单击第二个点,则会在该点和先前单击的点之间直接创建边 以下是我在使用该算法时观察到的某些缺陷: 无法创建不相交的平面集,例如仅创建线段 仅当用户在起点的确切位置单击时,才会创建闭合多边形[本质上,如果用户在非常接近起点的位置单击,则无法确定该点实际上是起点,因为它显示在距该点一定的公差范围内]

我正在试着在一个JApplet上绘制一个交互式平面直线图(PSLG)。我使用鼠标单击来确定PSLG的顶点

以下是我为绘制PSLG边缘而遵循的算法 1.用户执行鼠标单击的点将添加为PSLG的顶点。 2.如果单击第二个点,则会在该点和先前单击的点之间直接创建边

以下是我在使用该算法时观察到的某些缺陷:

  • 无法创建不相交的平面集,例如仅创建线段
  • 仅当用户在起点的确切位置单击时,才会创建闭合多边形[本质上,如果用户在非常接近起点的位置单击,则无法确定该点实际上是起点,因为它显示在距该点一定的公差范围内]
  • 我在这里查看了一些类似的问题,人们建议使用JFreeChart库。但据我所知,这些问题的情况是,PSLG的观点已经为人所知。我不知道JFreeChart是否可以用于创建交互式PSLG

    我曾想过添加点,并有一个按钮,会说添加点之间的边,但如果是这样的情况下,选择2点仍然会涉及到在2遇到的接近问题

    我想知道是否有人能就如何处理这种情况向我建议一种更好的方法


    “提前感谢”

    可以适应此任务,尽管它可能会受益于更先进的更快速搜索。也可以考虑,

    可以适应这一任务,虽然它可能得益于更先进的更快的搜索。也可以考虑。

    我不确定我理解你的问题1,但是对于2,你可以弹出一个右键点击菜单,如果需要的话,用户可以关闭多边形。我不确定我理解你的问题1,但是对于2,你可以在右击弹出一个菜单,允许用户关闭多边形,如果需要的话。