「GIS百科」什么是WKT格式
WKT格式是一种文本格式,用于描述二维和三维几何对象的空间特征。WKT是“Well-Known Text”的缩写,是一种开放的国际标准,由Open Geospatial Consortium(OGC)定义和维护。WKT格式通常用于在计算机系统之间交换空间数据,例如在GIS(地理信息系统)软件和数据库之间。WKT格式包括一些基本的几何对象,例如点、线、多边形和圆形,以及一些复合对象,例如多边形集合和几何对象集合。
常见WKT用途
目前在GIS相关应用中,WKT主要用于以下几个方面
- 描述空间实体
- 描述空间坐标系参数
WKT 描述空间实体
WKT格式的基本语法如下:
<geometry tag> <wkt data>
<geometry tag> ::= POINT | LINESTRING | POLYGON | MULTIPOINT | MULTILINESTRING | MULTIPOLYGON | GEOMETRYCOLLECTION
<wkt data> ::= <point> | <linestring> | <polygon> | <multipoint> | <multilinestring> | <multipolygon> | <geometrycollection>
其中,<geometry tag>
表示几何对象的类型,<wkt data>
表示几何对象的具体数据。
点
点的WKT格式如下:
POINT (<x> <y>)
其中,<x>
表示点的x坐标,<y>
表示点的y坐标。注意,指定点坐标时不使用分隔用逗号。
线
线的WKT格式如下:
LINESTRING (<x1> <y1>, <x2> <y2>, ...)
其中,<x1> <y1>
表示线的第一个点的坐标,<x2> <y2>
表示线的第二个点的坐标,以此类推。注意,点坐标对采用逗号隔开。
多边形
多边形的WKT格式如下:
POLYGON ((<x1> <y1>, <x2> <y2>, ..., <x1> <y1>))
其中,<x1> <y1>
表示多边形的第一个点的坐标,<x2> <y2>
表示多边形的第二个点的坐标,以此类推。
多点
多点的WKT格式如下:
MULTIPOINT ((<x1> <y1>, <x2> <y2>, ...))
其中,<x1> <y1>
表示多点的第一个点的坐标,<x2> <y2>
表示多点的第二个点的坐标,以此类推。
多线
多线的WKT格式如下:
MULTILINESTRING ((<x1> <y1>, <x2> <y2>, ...), (<x1> <y1>, <x2> <y2>, ...))
其中,<x1> <y1>
表示多线的第一个点的坐标,<x2> <y2>
表示多线的第二个点的坐标,以此类推。
多多边形
多多边形的WKT格式如下:
MULTIPOLYGON (((<x1> <y1>, <x2> <y2>, ..., <x1> <y1>)), ((<x1> <y1>, <x2> <y2>, ..., <x1> <y1>)))
其中,<x1> <y1>
表示多多边形的第一个点的坐标,<x2> <y2>
表示多多边形的第二个点的坐标,以此类推。
几何对象集合
几何对象集合的WKT格式如下:
GEOMETRYCOLLECTION (<geometry tag> <wkt data>, <geometry tag> <wkt data>, ...)
其中,<geometry tag> <wkt data>
表示几何对象集合中的第一个几何对象,<geometry tag> <wkt data>
表示几何对象集合中的第二个几何对象,以此类推。
WKT 描述空间坐标系参数
WKT格式的基本语法如下:
<coordinate system> = <horz cs> | <geocentric cs> | <vert cs> | <compd cs> | <fitted cs> | <local cs>
<horz cs> = <geographic cs> | <projected cs>
<projected cs> = PROJCS["<name>", <geographic cs>, <projection>, {<parameter>,}* <linear unit> {,<twin axes>}{,<authority>}]
<projection> = PROJECTION["<name>" {,<authority>}]
<geographic cs> = GEOGCS["<name>", <datum>, <prime meridian>, <angular unit> {,<twin axes>} {,<authority>}]
<datum> = DATUM["<name>", <spheroid> {,<to wgs84>} {,<authority>}]
<spheroid> = SPHEROID["<name>", <semi-major axis>, <inverse flattening> {,<authority>}]
<semi-major axis> = <number>
<inverse flattening> = <number>
<prime meridian> = PRIMEM["<name>", <longitude> {,<authority>}]
<longitude> = <number>
<angular unit> = <unit>
<linear unit> = <unit>
<unit> = UNIT["<name>", <conversion factor> {,<authority>}]
<conversion factor> = <number>
<geocentric cs> = GEOCCS["<name>", <datum>, <prime meridian>, <linear unit> {,<axis>, <axis>, <axis>} {,<authority>}]
<authority> = AUTHORITY["<name>", "<code>"]
<vert cs> = VERT_CS["<name>", <vert datum>, <linear unit>, {<axis>,} {,<authority>}]
<vert datum> = VERT_DATUM["<name>", <datum type> {,<authority>}]
<datum type> = <number>
<compd cs> = COMPD_CS["<name>", <head cs>, <tail cs> {,<authority>}]
<head cs> = <coordinate system>
<tail cs> = <coordinate system>
<twin axes> = <axis>, <axis>
<axis> = AXIS["<name>", NORTH | SOUTH | EAST | WEST | UP | DOWN | OTHER]
<to wgs84s> = TOWGS84[<seven param>]
<seven param> = <dx>, <dy>, <dz>, <ex>, <ey>, <ez>, <ppm>
<dx> = <number>
<dy> = <number>
<dz> = <number>
<ex> = <number>
<ey> = <number>
<ez> = <number>
<ppm> = <number>
<fitted cs> = FITTED_CS["<name>", <to base>, <base cs>]
<to base> = <math transform>
<base cs> = <coordinate system>
<local cs> = LOCAL_CS["<name>", <local datum>, <unit>, <axis>, {,<axis>}* {,<authority>}]
<local datum> = LOCAL_DATUM["<name>", <datum type> {,<authority>}]
WKT 坐标描述我们在QGIS中比较常见,比如我国常用的地图投影在QGIS并没有默认自带,就需要自己使用WKT的格式定义一个。
上图:国内常用的Albers投影定义
比如我们要定义一个WGS84地理坐标系。
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563,
AUTHORITY["EPSG","7030"]],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.01745329251994328,
AUTHORITY["EPSG","9122"]],
AUTHORITY["EPSG","4326"]]
如何打开WKT格式文件?
可以使用VSCode,具体方式可以通过看这篇文章:「GIS教程」使用VSCode预览GeoJSON文件 来了解。
参考
- https://www.mysqlzh.com/doc/175/141.html
- https://www.cnblogs.com/jianxia612/articles/1594025.html
- https://docs.geotools.org/stable/javadocs/org/opengis/referencing/doc-files/WKT.html
相关阅读
声明
1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。
2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。