線の緯度と経度を次のように取得しています
LINESTRING(1491215.4689647 6893983.2031826,1494163.0718675 6894785.7919795)
この解決策を見た後。 OpenLayers.Control.DrawFeature からポイントを取得する方法
今私がやりたいことは、Webページに開始点と終了点を表示したいということです。では、ここから緯度と経度を抽出して、自分のページに表示するにはどうすればよいですか。
線の緯度と経度を次のように取得しています
LINESTRING(1491215.4689647 6893983.2031826,1494163.0718675 6894785.7919795)
この解決策を見た後。 OpenLayers.Control.DrawFeature からポイントを取得する方法
今私がやりたいことは、Webページに開始点と終了点を表示したいということです。では、ここから緯度と経度を抽出して、自分のページに表示するにはどうすればよいですか。
それがWKT形式です。同じ投影法にない場合は、これらの座標をターゲット投影法に再投影する必要がある可能性があります。その後、基本ジオメトリを機能的に使用して、任意のジオメトリのポイントをOpenLayersに要求できるようになります。linestringインスタンスからポイント配列を取得し、それを繰り返し処理します。投影/データモデルの正しい座標順序を知っていることを確認してください。
お役に立てば幸いです。
線ストリングが既に OpenLayers にある場合、それを WKT に変換する理由はありません。Linestring ジオメトリには、ポイントの配列が含まれています。ジオメトリのコンポーネントには、いくつかの方法でアクセスできます。次に例を示します。
drawControls[key].events.register('featureadded', drawControls[key], function(f) {
// First point
var firstPointGeom = f.feature.geometry.components[0].clone();
// Last point
var secondPointGeom = f.feature.geometry.components[f.feature.geometry.components.length - 1].clone();
// Now you got geometries, let's create features from them...
var firstPointFeat = new OpenLayers.Feature.Vector(firstPointGeom);
var secondPointGeom = new OpenLayers.Feature.Vector(secondPointGeom);
yourVectorLayer.addFeatures([firstPointFeat, secondPointGeom]);
});
注意してください - これは LineString で機能します。おそらく について詳しく説明する必要はありませんclone()
。それが必要かどうか、または単にvar firstPointGeom = f.feature.geometry.components[0];