Q
多邊形繪圖
0
A
回答
2
這不是一個簡單的任務。例如,您應該分析並將點集分類爲凸或凹洞。您可以使用以下鏈接作爲資源:
http://ubicomp.algoritmi.uminho.pt/local/concavehull.html
http://marknelson.us/2007/08/22/convex/
Is there an efficient algorithm to generate a 2D concave hull?
http://courses.csail.mit.edu/6.854/06/scribe/s26-randomIC.pdf
http://softsurfer.com/Archive/algorithm_0109/algorithm_0109.htm
1
我問了一個非常類似的問題一段時間回來,你可能會發現answers there是一個很好的起點。
0
舊的線程,但直接的解決方案。如果充分利用Graphics和Drawing2D命名空間,這實際上很簡單。
GraphicsPath.AddLines(Point[])
Graphics.DrawPath(Drawing2D.GraphicsPath)
Graphics.FillPath(Drawing2D.GraphicsPath)
所以你只需創建一個新的路徑,然後調用傳遞貴點陣列AddLines,然後調用CloseFigure。
如果您想用筆描畫它,請使用DrawPath。如果您想用畫筆填充它,請使用FillPath。
多邊形內任何點的點擊測試也很簡單,您可以使用Drawing.Region(Drawing2D.GraphicsPath)以及任何允許指定位置和圖形對象的過載Region.IsVisible。
相關問題
- 1. 繪製多邊形
- 2. 繪製多邊形
- 3. 繪製多邊形
- 4. 在圖像上繪製多邊形
- 5. 來自sensordata的Matlab繪圖多邊形
- 6. Google Maps V3多邊形繪圖
- 7. osmdroid在地圖上繪製多邊形
- 8. GeoTools:在地圖上繪製多邊形
- 9. 排序多邊形座標繪圖
- 10. 繪圖點和多邊形matlab
- 11. glDrawElements繪製多邊形
- 12. 繪製多邊形PyQt的
- 13. d3 Javascript - 繪製多邊形
- 14. 無邊界形式的繪圖圖形
- 15. 繪製多邊形形狀的紋理
- 16. 用gg多邊形繪製矩形R
- 17. WPF描繪的多邊形形狀
- 18. SVG中路徑與多邊形繪製的多邊形示例
- 19. 在繪製幾個多邊形後Java繪圖程序變慢
- 20. 如何在三維圖形中繪製一個多邊形
- 21. 如何創建繪製多邊形的圖形對象?
- 22. 使用圖形庫繪製填充多邊形
- 23. r多邊形圖
- 24. 將KmlLayer數據繪製爲多邊形,而不是在Google地圖上繪製多邊形
- 25. 多個多邊形地圖
- 26. 在多邊形中繪製多個洞 - 谷歌地圖api
- 27. 在Google地圖中圍繞多段線繪製多邊形
- 28. 如何在R中繪製多個多邊形圖?
- 29. 在正多邊形的每個邊上繪製三角形
- 30. QGraphicsItem:繪製多邊形時重疊邊界矩形
聽起來很不錯。你試過什麼了? – 2011-04-07 04:35:50
你的問題看起來像你甚至沒有試圖自己做 - 我相信你有,但你應該給我們一些你已經嘗試過的細節,我們會盡力讓你走上正確的道路。 – 2011-04-07 04:49:21
我已經考慮過這個方法,但還沒有完全嘗試過,因爲我不確定可以使用哪些方法。那麼我想將這些點存儲在一個列表中。然後使用列表元素來定義一個多邊形。然後檢查某個特定點是否位於各個多邊形內。沒有任何內置的函數來檢查一個點是否在一個多邊形中,VC++有一個這樣的類型。凸和凹不是問題,因爲多邊形將由用戶定義它們的順序來定義。謝謝.. – olive 2011-04-07 05:04:45