Shapely是一个Python库,用于操作和分析笛卡尔坐标系中的几何对象。
引入包
from shapely.geometry import Point from shapely.geometry import LineString
共有的变量和方法
object.area
Returns the area (float) of the object.
object.bounds
返回对象的(minx,miny,maxx,maxy)元组(float类型)
object.length
返回对象的长度
object.geom_type
返回对象类型
object.distance(other)
返回本对象和另一个对象的距离
object.representative_point()
Returns a cheaply computed point that is guaranteed to be within the geometric object.
> from shapely.geometry import Point > print Point(0,0).distance(Point(0,1)) 1.0 > from shapely.geometry import LineString > line = LineString([(0,0), (1,1), (1,2)]) > line.area 0.0 > line.bounds (0.0, 0.0, 1.0, 2.0) > line.length 2.414213562373095 > line.geom_type 'LineString'
Point
class Point(coordinates)
三种赋值方式
> point = Point(0,0) > point_2 = Point((0,0)) > point_3 = Point(point)
一个点对象有area和长度都为0
> point.area 0.0 > point.length 0.0
坐标可以通过coords或x、y、z得到
> p = Point(2,3) > p.coords <shapely.coords.CoordinateSequence object at 0x7ffbc3d60dd0> > list(p.coords) [(2.0, 3.0)] > p.x 2.0 > p.y 3.0
coords可以被切片
> p.coords[:] [(2.0, 3.0)]
LineStrings
LineStrings构造函数传入参数是2个或多个点序列
一个LineStrings对象area为0,长度非0
> line = LineString([(0,0), (0,1), (1,2)]) > line.area 0.0 > line.length 2.414213562373095
获得坐标
> line.coords[:] [(0.0, 0.0), (0.0, 1.0), (1.0, 2.0)] > list(line.coords) [(0.0, 0.0), (0.0, 1.0), (1.0, 2.0)]
LineString依然可以接受一个同类型对象
> line2 = LineString(line) > line2.coords[:] [(0.0, 0.0), (0.0, 1.0), (1.0, 2.0)]
常见格式转换
> Point(1,1).wkt 'POINT (1 1)' > Point(1,1).wkb '\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0"htmlcode">> from shapely.wkt import dumps, loads > s = dumps(Point(1,2)) > s 'POINT (1.0000000000000000 2.0000000000000000)' > ss = loads(s) > ss <shapely.geometry.point.Point object at 0x7ffbc3d783d0> > ss.coords[:] [(1.0, 2.0)]对于wkb
> from shapely.wkb import dumps, loads > s = dumps(Point(1,2), hex=True) > s '0101000000000000000000F03F0000000000000040' > ss = loads(s, hex=True) > ss <shapely.geometry.point.Point object at 0x7ffbc3d78790> > ss.coords <shapely.coords.CoordinateSequence object at 0x7ffbc3d783d0> > ss.coords[:] [(1.0, 2.0)]更多关于python Shapely使用方法请查看下面的相关链接
最新资源
- 群星《新说唱2024 第12期 (下)》[FLAC/分轨][50
- 李常超 (Lao乾妈)《天生江湖》[320K/MP3][168.8
- 李常超 (Lao乾妈)《天生江湖》[FLAC/分轨][633.
- 群星《雨果发烧碟二十》UPMAGCD2024[WAV+CUE]
- 刘德丽《赤的疑惑》限量1:1黄金母盘直刻[低速原
- 柏菲·珞叔作品集《金色大厅2》限量开盘母带ORMC
- Gareth.T《sad songs(Explicit)》[320K/MP3][29
- Gareth.T《sad songs(Explicit)》[FLAC/分轨][1
- 证声音乐图书馆《海风摇曳·盛夏爵士曲》[320K/M
- 龚玥《金装龚玥HQCD》头版限量[WAV分轨]