ユーザーが都市のストリートグリッドを表示および編集できるアプリケーションを開発しています。通りはベクターレイヤー上のフィーチャとして提示され、ユーザーは要素(属性と、(フィーチャのLineStringである)ジオメトリの両方)を変更できる必要があります。ジオメトリの編集は、少なくとも現時点では、ラインストリングの端点のドラッグに限定されています。
トリックは、新しいエンドポイントがフィーチャの現在のジオメトリと交差する必要があるため、ユーザーが道路をドラッグしてストリートグリッドの外側から開始できないようにすることです。また、ジオメトリを変更すると、隣接するジオメトリがあれば、それに影響するはずです。つまり、別の道路が一方の終点から始まる場合、両方の始点/終点を変更する必要があります。
OpenLayersがすぐにこれをサポートするとは思わないので、これをどのように実装し始めればよいですか?
openlayersでスナップを使用しようとしましたか?
—
アラゴン
「自分」ではなく、他の要素にのみスナップできると思います。ただし、フィーチャを一時的に別のベクターレイヤーにクローンし、スナップ機能を使用してクローンを元のフィーチャにスナップし、変更したフィーチャを元のレイヤーにクローンして戻すことができると思います。ただし、隣接するジオメトリの変更に関する問題は解決しません。
—
mrLite 2013年
その良い質問です。賛成票。
—
マグノC
私はこれを行うことができるカスタムのコード化されたプロプライエタリエディターを使用していましたが、残念ながら、それは私が知らないオープンソースライブラリを使用していました。GDTと呼ばれる会社が使用した非常に便利でした
—
ルイス