1 回答

TA貢獻1797條經(jīng)驗 獲得超6個贊
正如Prune所建議的那樣,該軟件包具有您所需的內(nèi)容。雖然可以將線循環(huán)視為圖形,但將它們視為嵌入在 2D 平面中的多邊形會更有用。shapely
通過從點和邊段創(chuàng)建對象,可以使用所有對象都必須測試一個對象是否位于另一個對象內(nèi)部的方法。Polygoncontainsshapely
您需要按順序?qū)吘壎芜M行排序。順時針或逆時針可能無關(guān)緊要,因為可能通過在無窮遠(yuǎn)處構(gòu)造一個點并確保它是“外部”來檢測內(nèi)部和外部。shapely
以下是您帖子中原始正方形對的完整示例:
from shapely.geometry import Polygon
p1 = Polygon([(0,0), (0,8), (8,8), (8,0)])
p2 = Polygon([(2,2), (2,4), (4,4), (4,2)])
print(p1.contains(p2))
該對象的文檔位于 https://shapely.readthedocs.io/en/latest/manual.html#PolygonPolygon
以及 https://shapely.readthedocs.io/en/latest/manual.html#object.contains 的方法contains
添加回答
舉報