杭州弈儒软件技术有限公司
飞书用户9314
核心概念
分享
WKT/WKB (Well-Known Text)
输入“/”快速插入内容
WKT/WKB (Well-Known Text)
飞书用户9314
2024年11月11日修改
WKT (Well-Known Text)
是一种用于表示几何对象的文本格式,广泛应用于地理信息系统(GIS)和空间数据库中。WKT 提供了一种简单而人类可读的方式来表达几何形状和空间信息。
1.
WKT 概述
•
定义
:WKT 是由开放地理空间联盟(OGC)定义的标准格式,用于描述几何对象及其在空间中的位置和形状。
•
应用场景
:用于数据库中的几何数据存储(如 PostGIS)、数据交换、Web 应用中的空间查询等。
•
优势
:
◦
易读性
:纯文本表示,便于理解和调试。
◦
兼容性
:被许多 GIS 软件和数据库系统广泛支持,如 PostGIS、GeoServer 和 QGIS。
2.
WKT 基本几何类型
WKT 支持以下常见的几何类型:
•
Point
:
◦
描述
:表示单个坐标点。
◦
示例
:
text POINT (30 10)
•
LineString
:
◦
描述
:表示一系列连续的线段,连接多个点。
◦
示例
:
text LINESTRING (30 10, 10 30, 40 40)
•
Polygon
:
◦
描述
:表示闭合的多边形,外边界和可选的内环(洞)。
◦
示例
:
text POLYGON ((30 10, 40 40, 20 40, 10 20, 30 10))
•
MultiPoint
:
◦
描述
:表示多个独立的点。
◦
示例
:
text MULTIPOINT ((10 40), (40 30), (20 20), (30 10))
•
MultiLineString
:
◦
描述
:由多个
LineString
组成。
◦
示例
:
text MULTILINESTRING ((10 10, 20 20, 10 40), (40 40, 30 30, 40 20, 30 10))
•
MultiPolygon
:
◦
描述
:由多个
Polygon
组成,每个
Polygon
可以有外边界和内环。
◦
示例
:
text MULTIPOLYGON (((30 20, 45 40, 10 40, 30 20)), ((15 5, 40 10, 10 20, 5 10, 15 5)))
•
GeometryCollection
:
◦
描述
:可以包含任意组合的几何对象,如
Point
、
LineString
和
Polygon
。
◦
示例
:
text GEOMETRYCOLLECTION (POINT (40 10), LINESTRING (10 10, 20 20, 10 40), POLYGON ((40 40, 20 45, 45 30, 40 40)))
3.
坐标系支持
WKT 可以扩展来指定坐标系,以处理不同的地理空间参考系统(如 WGS84 或 UTM)。扩展版本被称为 **WKT for Coordinate Reference Systems**,用于定义空间参考,如:
代码块
Python
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563]],
PRIMEM["Greenwich",0],
UNIT["degree",0.0174532925199433]]