<< Click to Display Table of Contents >>

 

LineString

 

 

LineString是由一個或多個路徑定義的形狀,其中路徑是指一系列相連線段。

語法:

LineString (inputs, spatial_reference, has_z, has_m)

參數

說明

參數類型

inputs

用來建立LineString物件的點資料,可以是一個點或是由多個點組成的陣列

物件

spatial_reference

LineString所屬的坐標系統

spatial_reference

has_z

LineString是否有Z值,True表示有,False表示沒有

布林

has_m

LineString是否有M值,True表示有,False表示沒有

布林

LineString物件屬性

參數

說明

參數類型

WKB

(唯讀)

構成LineString的WKB資料

Bytearray

WKT

(唯讀)

構成LineString的WKT字串資料

字串

Centroid

(唯讀)

LineString的質心點, 如果質心點是落在LineString圖形中間或是邊界上,才會回傳質心點

Point

Extent

(可讀寫)

LineString的範圍

extent

firstPoint

(唯讀)

LineString的起始點位

Point

hullRectangle

(唯讀)

以空格分隔的凸包矩形坐標對的字符串。

字串

isMultipart

(唯讀)

LineString本身是否由兩個以上的部分組成,是的話為Ture,不是的話為False

布林

labelPoint

(唯讀)

LineString物件之標題所在點位,該點位必定落在LineString之上

Point

lastPoint

(唯讀)

LineString的結束點位

Point

length

(唯讀)

LineString物件的長度,點資料或是多重點資料,為0

雙精度浮點數

length3D

(唯讀)

LineString物件的3D長度,點資料或是多重點資料,為0

雙精度浮點數

partCount

(唯讀)

構成LineString物件的幾何部分有幾個

長整數

pointCount

(唯讀)

構成LineString物件的所有點數量

長整數

spatialReference

(唯讀)

LineString物件的坐標系統

spatialReference

trueCentroid

(唯讀)

LineString的重心點

Point

type

(唯讀)

LineString的幾何類型

字串

LineString 物件函數

類別函數

函數說明

Boundary()

回傳構成LineString的邊線

Buffer(distance)

依半徑, 建立並回傳Polygon的環域

Contains(sec_geometry)

判斷LineString是否有將sec_geometry完全包含,回傳結果為布林值 (True or False)

ConvexHull()

建立並回傳包圍LineString的最小面積多邊形

Crosses()

判斷LineString 是否和sec_geometry有相交,回傳結果為布林值 (True or False)

Difference(sec_geometry)

以sec_geometry為目標,將LineString和sec_geometry交集到的範圍扣除後再回傳,回傳成果為Polygon物件

Disjoint(sec_geometry)

判斷LineString是否和sec_geometry有共同點,回傳結果為布林值 (True or False)

DistanceTo(sec_geometry)

回傳LineString 到sec_geometry之間的最短距離,如果兩者相交,則距離為0

Equals(sec_geometry)

判斷LineString 是否和sec_geometry完全相同(所有點位完全相同,且geometry類型也相同),回傳結果為布林值 (True or False)

(僅做2D比較,不比較Z值和M值)

GetLength()

取得LineString的長度

GetPart()

取得構成LineString的幾何部分有幾個

Intersect(sec_geometry)

產生LineString 和sec_geometry的交集區域,並回回傳該區域

MeasureOnLine(in_point)

回傳in_point到LineString起始點的距離

Overlaps(sec_geometry)

判斷LineString是否和sec_geometry有重疊,回傳結果為布林值 (True or False)

(重疊定義: LineString 是和sec_geometry為相同幾何類型,且兩者之間有部分重疊)

PositionAlongLine(distance)

返回與起始點之間,間隔特定距離的點位

SymmetricDifference

(sec_geometry)

回傳LineString 和sec_geometry之間的聯集減去LineString和sec_geometry之間的交集的成果

Touches(second_geometry)

判斷LineString 和sec_geometry兩者的邊界是否相交,回傳結果為布林值 (True or False)

Union(second_geometry)

回傳LineString 和sec_geometry之間的聯集

Within(second_geometry)

判斷LineString 是否完全落在sec_geometry中,的邊界是否相交,回傳結果為布林值 (True or False)

LineString使用範例

import sgpy

#透過wkt字串,建立新的LineString物件

geo=sgpy.FromWKT("LINESTRING (30 10, 10 30, 40 40)")

#列印geomtery的WKT字串,和幾何類型

print str(geo.GetLength())

print str(geo.partCount)

 


©2015 Supergeo Technologies Inc. All rights reserved.