BWillに同意します。主な問題は、各ポリラインの原点を定義することです。「川」とは何ですか?は、支流が支流の長さ0->から始まるスタンドアロンの「ルート」であると仮定します。次に、主要な河川についても同じようにしますが、この場合は、構成するすべてのポリラインからマージされたポリラインを作成します。私はあなたが持っているとあなたはそこに「ほとんど」いると思います。次に:支流を含むすべてのマージされたポリラインを測定されたポリライン(PolylineM)に変換します。その後、「ルートネットワーク」ができます。それからは、各駅のルートに沿った距離を見つけることです。ステーションの場所はXYで定義されていると思いますか?また、別の推測では、川の真上に落ちることはありません。彼らは?いずれの場合も、各川または支流の始点からの駅の距離を見つける方法が必要になります。理論的には、駅が川と支流の交差点にある場合、2つの場所(それぞれに1つ)がある場合があります。
この場所を見つけるには、ArcMapツールを使用できますが、しばらく使用していないため、頭のてっぺんを思い出せません。一方、シェープファイル(?)をPostGISにインポートする場合は、ST_Line_Locate_Pointを使用できます。この機能:
指定されたポイントにLineStringの最も近いポイントの位置を表す0と1の間の浮動小数点数を、2Dラインの長さの合計の割合として返します。
つまり、川沿いの場所を見つけて、(マージされた)川の長さに掛け合わせることができます。最後の注意-PostGISを使用する場合、PolylineMを作成する手順を実行する必要はありません。ArcGISのみが線形参照にこれを必要とします。
これが理にかなっているといいのですが!