簡體   English   中英

拖動頂點不繪制相交的多邊形

[英]Drawing no intersected polygon with dragging vertexes

我正在嘗試繪制一個不相交的多邊形。

下面是我想要的很好的例子。

在此處輸入圖像描述

我想防止的壞例子。

在此處輸入圖像描述

如果我選擇紅點之一,那么我可以應用什么算法來防止多邊形的相交邊?

技術回答:

移動點必須屬於它的兩個鄰居的可見區域(忽略兩個相鄰的邊)。

在此處輸入圖像描述

您可以一次構造這兩個區域及其交點,然后將 cursor 約束在交點中。 經過一些預處理后,這可以在每個查詢的時間 O(Log(N)) 內高效地完成。 但這是相當復雜的,不值得付出努力。

在此處輸入圖像描述

實用答案:

只需檢查移動點的兩條邊不與其余邊相交。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM