绘制可调整大小(不相交)的多边形

2024-04-11

我到处寻找但找不到答案。我 需要通过鼠标交互绘制可调整大小的多边形,但我 不希望出现不规则、重叠或相交的多边形 结尾。

这是绘制可调整大小的多边形的简单示例http://www.wolfpil.de/polygon.html http://www.wolfpil.de/polygon.html

您可以轻松创建多边形并调整其大小,这很棒。但我需要一个 额外的功能来检测交叉点并且不允许奇怪的 寻找形状/多边形。 您可以在此视频中看到问题:http://www.youtube.com/watch?v=zou2jcGM8zw http://www.youtube.com/watch?v=zou2jcGM8zw

我找到的该问题的唯一解决方案http://www.wikimapia.org http://www.wikimapia.org。他们添加了功能来解决这个问题。 你可以在这个视频中看到它:http://www.youtube.com/watch?v=K7-K0k2D-2A http://www.youtube.com/watch?v=K7-K0k2D-2A

我花了三天时间尝试实现这样的目标。我走了 通过 wikimapia 的 javascript 代码,但它对我来说太复杂了 去理解。

总而言之,它不必像 wikimapia 那样看起来很花哨。我只是 需要可调整大小的多边形,在调整大小时不相交或 为其添加新点。你能给我一些建议吗 达到那个目的?

预先感谢。


取决于你允许多少点,一个天真的,简单的O(N^2)线相交算法就足够了。从算法上来说,这不是最好的解决方案,但对于计算几何初学者来说,这是最容易理解的解决方案。

对于初学者,请参阅维基百科关于线段相交的文章 http://en.wikipedia.org/wiki/Line_segment_intersection. 它的链接之一 http://local.wasp.uwa.edu.au/~pbourke/geometry/lineline2d/关于如何计算两条线段的交点有一个易于理解的解释。

祝你好运!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

绘制可调整大小(不相交)的多边形 的相关文章

随机推荐

  • 如何获取Windows 7主题名称

    Windows 7 附带多个内置主题 可以通过右键单击桌面并选择个性化来访问它们 在个性化下 有一个名为 航空主题 的部分 其中包含 建筑 自然 等主题 我尝试使用 uxtheme dll 的 GetCurrentThemeName 但它实
  • Java UDP 服务器,并发客户端

    下面的代码足以接受并发 UDP 传输吗 更具体地说 如果 2 个客户端同时传输 当我调用 receive 时 DatagramSocket 会将传输排队并一一传送它们 还是只有一个能够通过 DatagramSocket socket new
  • MySQL 将布尔字段计为两个不同的列

    认为我有一个包含两个字段的表 ID and State 状态值 即布尔值 可以是 0 或 1 ID不是唯一的 因此该表如下所示 ID State 1 true 1 false 2 false 3 true 1 true 现在 我想对按 ID
  • Python3.3 HTML Client TypeError: 'str' 不支持缓冲区接口

    import socket Set up a TCP IP socket s socket socket socket AF INET socket SOCK STREAM Connect as client to a selected s
  • Gradle 同步任务,同步到文件夹但忽略目标中的指定目录

    我想将驱动器上的一个文件夹与另一个包含我想要保留的名为 logs 的文件夹的文件夹同步 使困惑 这是一个图表 C mydir sync this folder someotherfiles txt anotherDir into this
  • c, obj c 没有标签或标识符的枚举

    我正在学习 cocos2d iPhone 上目标 C 的 open gl 包装器 现在玩精灵在一个示例中发现了这一点 enum easySprite 0x0000000a mediumSprite 0x0000000b hardSprite
  • 如何确定 akka 中生成的 actor 数量?

    我最近开始研究 Akka 2 0 框架 并且能够运行一些代码 生成执行简单 Oracle 数据库调用 执行简单计算等的 Actor 但是在生产中什么也没有 我想知道的是 是否有一般的经验法则或最佳实践来确定为某些类型的任务生成多少个参与者
  • 无法在同一页面设置PHP cookie

    我在同一页面上设置 cookie 时遇到问题 我在我的网站上使用了 cookie 它工作正常 我倾向于将 php 设置为单独的文件 现在 我在同一页面上设置 cookie 但它似乎不起作用 expire time 5 setcookie r
  • 如何使用 JSP 页面中的参数运行 java 类?

    我之前编写了一个从 bash 文件执行的 java 类 现在我需要使用 Javascript HTML 按钮允许它从 JSP 页面执行 我想知道如何做到这一点 首先 我的课程是这样的 public class Sync public sta
  • WCF .svc 文件在 IIS7.5 .NET 4.0 中用作纯文本 - 不在默认网站下

    最终更新 事实证明 由于 DotNetNuke 模块的压缩问题 这是一个转移注意力的问题 我必须添加到 PageBlaster DNN 模块 所以这不再是问题 我正在将 WCF svc 文件部署到我的实时网站 http www pokerd
  • 无法打开输入文件:localhost:8080

    在 Windows 上 要从命令提示符运行 PHP Web 服务器 我键入 php s localhost 80800 t public 我收到此错误 无法打开输入文件 localhost 8080 And yet cmd php test
  • 在 SQL 中使用累积需求时在聚合级别上优化表概览

    我试图找到最好的方法来获得累积显示的总体概述的概述 即通过扣除不满足每个步骤中的累积要求的观察结果 这是表脚本和示例数据 CREATE TABLE Table A id INTEGER NOT NULL PRIMARY KEY totalA
  • Spark 中的迭代缓存与检查点

    我有一个在 Spark 上运行的迭代应用程序 我将其简化为以下代码 var anRDD org apache spark rdd RDD Int sc parallelize 0 to 1000 var c Long Int MaxValu
  • 在 Python App Engine API 中写入和读取 blobstore 文件以存储时间戳

    我正在使用 Google App Engine 的 python API 我想做的是从服务器加载文件列表 如果它已经过去了超过一个时间间隔 例如 1 小时 为此 我尝试将执行的最后一个操作小时存储到文件中 并在下次读取它以了解与下一个请求的
  • 自定义字体和 XML 布局 (Android)

    我正在尝试在 Android 中使用 XML 文件定义 GUI 布局 据我所知 没有办法指定您的小部件应该在 XML 文件中使用自定义字体 例如您放置在 asset font 中的字体 并且您只能使用系统安装的字体 我知道 在 Java 代
  • ggplot2 中的并排水平图例

    我想让我的 ggplot 图例并排出现在图下方 变量名称位于符号上方 就像它们在this https kohske wordpress com 2010 12 25 various position adjustments of legen
  • Html 锚文本格式

    这可能是一个基本问题 但我使用的是 HTML 锚点 锚点的文本作为多行段落 我有 br 锚文本部分中当前无法识别的标签 所有文本在输出中都在一行中 锚标签代码如下 li a href title View all Printed Docum
  • 为什么 arr 和 &arr 相同?

    我已经编程c c 很多年了 但是今天的偶然发现让我有些好奇 为什么下面的代码中两个输出产生相同的结果 arr当然是地址arr 0 即指向arr 0 我本来期望 arr是该指针的地址 但它具有相同的值arr int arr 3 cout lt
  • 如何使用 Visual Studio 命令行 + SCons 构建 Windows XP 应用程序?

    使用 Visual Studio 2015 IDE 构建 Windows XP 应用程序一点也不难 您只需要使用正确的平台工具集 v120 xp 或 v140 xp 并确保在目标计算机上安装正确的可再发行 Visual Studio 运行时
  • 绘制可调整大小(不相交)的多边形

    我到处寻找但找不到答案 我 需要通过鼠标交互绘制可调整大小的多边形 但我 不希望出现不规则 重叠或相交的多边形 结尾 这是绘制可调整大小的多边形的简单示例http www wolfpil de polygon html http www w