2011-03-20 145 views
4

考慮給予紅線爲點輪廓vectorshape算法

enter image description here

我正在尋找一種算法,以創建濃黑形狀的輪廓(也爲點的序列的序列),這樣他們就可以乾淨地訂購。輪廓還應尊重與自身的最小距離。

我可以用什麼算法來達到這個目的?

+0

外形的標準是什麼? – Apalala 2011-03-21 01:21:16

+0

它應該是一個乾淨的線條(輪廓的點不應位於圖片中黑色區域的某處,但僅限於它的邊框) – Mat 2011-03-21 01:32:29

+0

@Mat - 我認爲@Apalala的問題是,紅線和黑色邊框?不知道它們是如何相關的,就不可能定義一個算法來從另一箇中生成一個算法。 – 2011-03-21 04:28:11

回答

2

您需要兩種類型的offsetting algorithms

  1. 偏移在兩個方向的曲線,產生軌道
  2. 偏移閉合曲線向內,以產生一個或多個較小的封閉多邊形。

設r爲到紅線的距離,b爲黑線/軌道之間牆壁的所需厚度。

  • 使用算法1將紅線偏移r。這可能產生重疊自身的軌跡,即具有「斑點狀」區域。
  • 使用算法2將紅線向內偏移。使用二進制搜索來查找形狀分裂爲兩條或消失的距離d。如果d> b,則向內偏移d-b以產生第二個區域。否則算法失敗。
  • 從第一個減去第二個區域。