私はpostgisが初めてで、同じレイヤーの開始点と終了点の2つの初期点を与える線ストリングを測定しようとしています(ジオメトリタイプは線ストリングです)。このラインストリングは、道路、川、地下パイプなどを表しています。
「length3d」という名前のpostgis関数を使用すると、1行(テーブルの1レコード)を測定できますが、複数の連続した行を測定する必要があります。この例のようなもの (説明例の次の注釈を使用)
- |し| --> 線の始点
- |え| --> 線の終点
- @ --> ポイントインライン
- (s) --> ユーザー開始点
- (e) --> ユーザーエンドポイント
例:
|S|===@===@===(s)==|E-S|===@==@===@==|E-S|===@===@===(e)==@==|E|
ラインストリング形式:
LINESTRING(-6.366424 38.93301,-6.3625 38.938,-6.361 38.9572,-6.36158230284898 38.9397667955807,-6.36131118520776)
ユーザー ポイントは、ラインを構成する 2 つの既存のポイントの間にある可能性があります。
|し| |ES|へ DB |ES| 上の 1 つのレコードです。|ES|へ はその他のレコードで |ES| |E|へ その他の記録です。
(s) から (e) までの距離を測定するにはどうすればよいですか?
前もって感謝します!