星狀多邊形(star-shaped polygon)是平面上屬於星形域多邊形區域,即這個多邊形內部存在「可以看到整個多邊形邊界與整個多邊形內部所有區域[1]」的[2]

Thumb
星狀多邊形(上方)。其星狀核在下方以紅色表示

形式上,若多邊形P中存在一z使得對於P中的每一點pz連成的線段完全位於P內,則稱P為星狀多邊形。[3]所有的z(能夠看到整個多邊形邊界的點)形成的集合稱為星狀多邊形P(下稱「星狀核」)

如果星狀多邊形是凸多邊形,則任意兩個間的連結距離(能夠保持在內部連接內部兩點的任意折線的最小線段數)為1。 如果星狀多邊形不是凸多邊形,則這個星狀多邊形的核中的任兩點連結距離為1;如果星狀多邊形內兩點中有一點不在星狀核內,則這兩點的連結距離也為1,而如果星狀多邊形內兩點都在星狀核外,則這兩點的連結距離可能為1或2;因此對於任意星狀多邊形,最大的連結距離為2[4][5]

例子

凸多邊形都屬於星狀多邊形,且其星狀核為自己本身。[註 1]

星形正多邊形的簡單化多邊形[註 2]都是星狀多邊形,其幾何中心總是位於星狀核內。

反平行四邊形勒穆瓦訥六邊形英語Lemoine hexagon也屬於星狀多邊形,其星狀核為一個點。[註 3]

可見性多邊形英語Visibility_polygon也屬於星狀多邊形,因為根據其定義,其每個點都必須從中心可見。[7]

演算法

分辨一個多邊形是否為星狀多邊形並且找到星狀核中一點可以被制定為一個低維線性規劃問題,其可以在線性時間內完成星狀多邊形的判斷。[8]:16

多邊形的每條邊定義了一個有包含多邊形內部區域(對星狀多邊形而言可能是全部或局部)的半平面,該半平面的邊界位於包含該邊的直線上,且包含多邊形在該邊上任意鄰近點的點。 星狀多邊形的星狀核是其所有內部區域半平面的交集。而使用分治法可以在Θ(N log N)時間內找到任意一組N個半平面的交集。[3] 不過,如果僅只是要尋找星狀多邊形的星狀核的話,存在比上述更快的方法。 例如,李德財佛朗哥·P·普雷帕拉塔英語Franco P. Preparata在1979年提出了一種可以在線性時間內找到星狀多邊形的星狀核之演算法。[9]

相關概念

星狀多面體

星狀多面體(star-shaped polyhedron)是星狀多邊形在三維空間的推廣。 指一個多面體中至少包含一個點能從該點看到多面體所有區域和邊界以及多面體內部的其他所有點。[1][10]

能夠看到整個星狀多面體的區域同樣稱為該星狀多面體的,也就是其星狀核。[10]

參見

註釋

參考文獻

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.