计算几何 用算法来处理一个2d平面上的十万个点

问题遇到的现象和发生背景
  1. 给定平面上的10^6个点,用以下算法报告在指定的正交矩形内的点。使用以下算法之一报告在指定的正交矩形内的点
    a. Regular grid
    b. Quadtree
    c. 2-d-tree
    (也就是先在一个2d平面上生成十万个点,然后用2d树来处理)
  2. 判断一个点是否在一个指定的简单多边形内。该测试必须
    运行106个随机生成的点。应使用鼠标交互式地指定多边形。
问题相关要求

1每项任务必须作为一个完整的、可操作的SW应用程序来执行,并使用二维图形工具展示计算结果。
2每项任务都必须作为一个完整的、可操作的应用程序来执行,该应用程序使用二维图形工具来展示计算结果。
3. 用户界面必须提供手动或通过图形交互方式输入算法参数。
3.用户界面必须提供手动输入算法参数或通过图形交互的方式(例如,可以用鼠标指定一个矩形窗口)。
4. 问题的维度(点或段的数量)必须足够大,以证明算法的效率。
大到足以证明算法的效率,10^5-10^6或更大。
图形基元应尽可能简单,以便不占用过多的绘图资源。
太多的资源来绘制:只用一个像素来绘制一个点,用默认的
绘制段的厚度。该应用程序应在Release配置中编译。输出流std::cout和std::cerr应
仅用于调试目的。

运行结果图片示例

img

我想要达到的结果

用python编写可以使用tkinter库来实现