做一個運輸署的project時需要實現一個線轉面(polyline to polygon)的函數,有點像buffer,有個buffer distance, 但是在頭尾兩邊不能是圓弧,而是直線.(確實夠搞得...)參考了一下網上的資料,將幾種類似的buffer做了一下,效果如下圖。

polyline轉polygon不同情況buffer的實現方法

(左上角為polyline,用它生成其他3種buffer.注意三個polygon紅色框框位置的差別 )

 

先說最簡單的,直接利用ITopologicalOperator.Buffer,設定一個buffer distance就

能得到左下角的polygon, 生成的polygon在結點位置都是圓弧.

End Function

 

如果希望首尾兩點位置上是squre buffer,則可以用下面的函數操作

End Function

 

如果希望節點位置不出現圓弧,可以用以下的方法

End Function

 

相关文章: