PostGIS 2.1、SpatiaLite 4.3.0aで確認。
M値を持つLINESTRING M
ジオメトリをST_Simplify
関数で簡略化した際、PostGISとSpatiaLiteで下記のように結果のM値に違いがあった。
- PostGISでは簡略化後の頂点は、簡略化前のM値を持つ。
- SpatiaLiteでは簡略化後の頂点のM値はゼロとなる。
SELECT
ST_AsText(
ST_Simplify(t.line, 0.5)
) AS simplified
FROM
(
SELECT
ST_GeomFromText(
'LINESTRING M(0 0 1, 0 0.5 2, 1 0.5 3, 1 1 4)',
0
) AS line
) AS t
;
-- PostGISでの実行結果
-- LINESTRING M (0 0 1,1 1 4)
-- SpatiaLiteでの実行結果
-- LINESTRING M(0 0 0, 1 1 0)