最近,我正在研究spatialite。我可以将2D数据(如:POINT(1 1))写入空间数据表,但我无法写入3D数据(如下所示:POINT(1 1 1))进入空间数据表。 谁能告诉我spatialite是否支持3D?如果支持,我该如何编写3D数据?
答案 0 :(得分:0)
是的,Spatialite supports 3D geometries(实际上是2.5D几何)。
为什么它对您不起作用,可能您的几何列未定义为XYZ
。您可以使用查询检查几何元数据:
SELECT * FROM geometry_columns;
答案 1 :(得分:0)
要添加具有三个3维的点,您必须使用正确的WKT表达式:POINTZ(x,y,z)
。
(另见:https://www.gaia-gis.it/gaia-sins/spatialite-cookbook/html/wkt-wkb.html)
您还必须确保几何体列已正确定义为XYZ列。 (参见函数:Dimension
CoordDimension
Is3D
)。因此,GeometryType
应返回POINTZ
(另见:http://www.gaia-gis.it/gaia-sins/spatialite-sql-4.2.0.html)