Shapely是什么
shapely 是python中开源的空间几何对象库,支持Point(点),LineString(线),Polygon(面)等几何对象及相关空间操作。Shapely操作的对象就是gis中的要素,例如具有以下常用功能:
- 几何对象可以和numpy.array互相转换
- 可以轻松求线的长度,面的面积,对象之间的距离,最小最大距离
- 可以轻松求几何对象之间的关系:相交,包含,求相交区域等
- 可以轻松对几何对象求几何中心,缓冲区,最小旋转外接矩形等
- 可以求线的插值点,可以求点投影到线的距离,可以求几何对象之间对应的最近点,可以轻松对几何对象进行旋转和缩放
创建点线面
- Shaply.gemometry 中定义了三类基础的矢量要素分别对应arcgis中的点,线,面
- 其中,面要素有valid 和 invalid的区别
- Invalid Polygon: 有效的多边形不能有任何重叠的外环或内环,内环不能跟外环有超过一个交点

多重要素的集合
- Multipolygon|MultiPoint|MultiLineString 中可以存储多个同类要素,和list 一样可以通过索引取出
- GeometryCollection 中存储多个不同类要素,通常由要素集取交,并,差集得到
- 有效的多重多边形不能包含任何重叠的多个点或边或面的多边形