名称

ST_GeomFromText — 从已知文本表示 (WKT) 返回指定的 ST_Geometry 值。

语法

geometry ST_GeomFromText(text WKT);

geometry ST_GeomFromText(text WKT, integer srid);

说明

根据 OGC 已知文本表示构造一个 PostGIS ST_Geometry 对象。

[Note]

ST_GeomFromText 函数有两个变体。第一个不采用 SRID,并返回一个没有定义的空间参考系统 (SRID=0) 的几何。第二个采用 SRID 作为第二个参数,并返回一个包含此 SRID 作为其元数据一部分的几何。

此方法实现了 SQL 1.1 的 OGC 简单要素实施规范。

s3.2.6.2 - 选项 SRID 来自一致性套件。

此方法实现了 SQL/MM 规范。

SQL-MM 3: 5.1.40

此方法支持圆形字符串和曲线。

[Note]

虽然不符合 OGC,但 ST_MakePoint 比 ST_GeomFromText 和 ST_PointFromText 更快。它对于数值坐标值也更容易使用。 ST_Point 是另一个与 ST_MakePoint 速度相似的选项,并且符合 OGC,但仅支持 2D 点。

[Warning]

已更改:2.0.0 在 PostGIS 的早期版本中,允许使用 ST_GeomFromText('GEOMETRYCOLLECTION(EMPTY)')。在 PostGIS 2.0.0 中,这现在是非法的,以便更好地符合 SQL/MM 标准。现在应将其写为 ST_GeomFromText('GEOMETRYCOLLECTION EMPTY')

示例

SELECT ST_GeomFromText('LINESTRING(-71.160281 42.258729,-71.160837 42.259113,-71.161144 42.25932)');
SELECT ST_GeomFromText('LINESTRING(-71.160281 42.258729,-71.160837 42.259113,-71.161144 42.25932)',4269);

SELECT ST_GeomFromText('MULTILINESTRING((-71.160281 42.258729,-71.160837 42.259113,-71.161144 42.25932))');

SELECT ST_GeomFromText('POINT(-71.064544 42.28787)');

SELECT ST_GeomFromText('POLYGON((-71.1776585052917 42.3902909739571,-71.1776820268866 42.3903701743239,
-71.1776063012595 42.3903825660754,-71.1775826583081 42.3903033653531,-71.1776585052917 42.3902909739571))');

SELECT ST_GeomFromText('MULTIPOLYGON(((-71.1031880899493 42.3152774590236,
-71.1031627617667 42.3152960829043,-71.102923838298 42.3149156848307,
-71.1023097974109 42.3151969047397,-71.1019285062273 42.3147384934248,
-71.102505233663 42.3144722937587,-71.10277487471 42.3141658254797,
-71.103113945163 42.3142739188902,-71.10324876416 42.31402489987,
-71.1033002961013 42.3140393340215,-71.1033488797549 42.3139495090772,
-71.103396240451 42.3138632439557,-71.1041521907712 42.3141153348029,
-71.1041411411543 42.3141545014533,-71.1041287795912 42.3142114839058,
-71.1041188134329 42.3142693656241,-71.1041112482575 42.3143272556118,
-71.1041072845732 42.3143851580048,-71.1041057218871 42.3144430686681,
-71.1041065602059 42.3145009876017,-71.1041097995362 42.3145589148055,
-71.1041166403905 42.3146168544148,-71.1041258822717 42.3146748022936,
-71.1041375307579 42.3147318674446,-71.1041492906949 42.3147711126569,
-71.1041598612795 42.314808571739,-71.1042515013869 42.3151287620809,
-71.1041173835118 42.3150739481917,-71.1040809891419 42.3151344119048,
-71.1040438678912 42.3151191367447,-71.1040194562988 42.3151832057859,
-71.1038734225584 42.3151140942995,-71.1038446938243 42.3151006300338,
-71.1038315271889 42.315094347535,-71.1037393329282 42.315054824985,
-71.1035447555574 42.3152608696313,-71.1033436658644 42.3151648370544,
-71.1032580383161 42.3152269126061,-71.103223066939 42.3152517403219,
-71.1031880899493 42.3152774590236)),
((-71.1043632495873 42.315113108546,-71.1043583974082 42.3151211109857,
-71.1043443253471 42.3150676015829,-71.1043850704575 42.3150793250568,-71.1043632495873 42.315113108546)))',4326);

SELECT ST_GeomFromText('CIRCULARSTRING(220268 150415,220227 150505,220227 150406)');
	

另请参阅

ST_GeomFromEWKTST_GeomFromWKBST_SRID