[OSGeoJapan-discuss] [spatialite]LineString と

sgw00412 @ nifty.com sgw00412 @ nifty.com
2012年 12月 12日 (水) 00:23:22 PST


spatialite を使い始めました初心者です。

ライン群とポリゴンでinterectionを試みていますが
LineStringとMultiLineStringが混在すると,recover geometryに
失敗してしまいます。

初歩的な内容かも知れませんが,どなたかご教授頂ければ幸いです。

<やった内容>
create table intesetc_01 as 
select
intersecton(line.geom, polygon.geom) as geom
from
line, polygon
where
intersects(line.geom, polygon.geom);

得られたinsect_01のgeomを選択し,recovery geometry

Srid→line polygon と同じ値
xyからlinestringでOKを押すと

<エラーメッセージが出ます>
Geometry column doesn't satisfies required concstains
a ROLLBACK was automatically performed.

というメッセージが出て進みません。

check geometryをすると
Linestring と multilinestring が それぞれカウントされるので
linestringとmultilinestringが混在しているからrecover geometryできないと
思うのです。。。

それではline群をみてみると:
蛇のとぐろみたく自ら交差してしまうラインがmultilinestringと判断されているよう
です。

これを解決する方法はないのでしょうか?
たとえばmultilinestrinを強引にlinestringにconvertできれば解決するのでしょうか
・・・。

島田@気象協会(shimada @ jwa.or.jp


More information about the OSGeoJapan-discuss mailing list