对于以WKT描述的点
POINT (32.117 118.32)
其WKB为
00001646414-7-3734-48-276493-108122-3171-8220
对于线LINESTRING (32.117 118.345, 32.117 118.32, 33.117 118.32),其WKB为
000020003646414-7-3734-48-276493-10620122-3171-82646414-7-3734-48-27
6493-108122-3171-82206464-114-7-3734-48-276493-108122-3171-8220
根据其中相同的部分,参考OGC Simple Feature Access标准,其中00001及00002分别表示Point和LineString。
根据文档,各种几何形状的表示如下
wkbPoint = 1,
wkbLineString = 2,
wkbPolygon = 3,
wkbTriangle = 17
wkbMultiPoint = 4,
wkbMultiLineString = 5,
wkbMultiPolygon = 6,
wkbGeometryCollection = 7,
wkbPolyhedralSurface = 15,
wkbTIN = 16
wkbPointZ = 1001,
wkbLineStringZ = 1002,
wkbPolygonZ = 1003,
wkbTrianglez = 1017
wkbMultiPointZ = 1004,
wkbMultiLineStringZ = 1005,
wkbMultiPolygonZ = 1006,
wkbGeometryCollectionZ = 1007,
wkbPolyhedralSurfaceZ = 1015,
wkbTINZ = 1016
wkbPointM = 2001,
wkbLineStringM = 2002,
wkbPolygonM = 2003,
wkbTriangleM = 2017
wkbMultiPointM = 2004,
wkbMultiLineStringM = 2005,
wkbMultiPolygonM = 2006,
wkbGeometryCollectionM = 2007,
wkbPolyhedralSurfaceM = 2015,
wkbTINM = 2016
wkbPointZM = 3001,
wkbLineStringZM = 3002,
wkbPolygonZM = 3003,
wkbTriangleZM = 3017
wkbMultiPointZM = 3004,
wkbMultiLineStringZM = 3005,
wkbMultiPolygonZM = 3006,
wkbGeometryCollectionZM = 3007,
wkbPolyhedralSurfaceZM = 3015,
wkbTinZM = 3016,
对于LineString,标识符之后的编码表示点的数量,之后是顺序存储的点的WKB表示。对于多边形来说,标识符后是环的数量,之后存储线的WKB表示。
说白了,WKB其实就是按照Shapefile的编码思路制定的。

