ポイント オブジェクト WKT があります。このように: POINT (25.04568 48.221548)
. また、プロジェクトフォルダーにアイコンがあります。
私の目標は、地物を表すアイコンを地図上に表示することです。それは単なる通常の OpenLayers 機能にすることはできますか (はいの場合、それを表すアイコンを定義するにはどうすればよいですか)、または OpenLayers マーカーを作成する必要がありますか (何らかの方法で WKT から LonLat を作成します)?
ポイント オブジェクト WKT があります。このように: POINT (25.04568 48.221548)
. また、プロジェクトフォルダーにアイコンがあります。
私の目標は、地物を表すアイコンを地図上に表示することです。それは単なる通常の OpenLayers 機能にすることはできますか (はいの場合、それを表すアイコンを定義するにはどうすればよいですか)、または OpenLayers マーカーを作成する必要がありますか (何らかの方法で WKT から LonLat を作成します)?
ポイントがあれば、アイコンを追加するのはかなり簡単です。
このページの JavaScript ソースを表示するだけです: OpenLayers サンプル マーカー ページ
覚えておくべき重要な部分は、アイコンを使用する場合、複数回表示する必要がある場合は、.clone() を使用する必要があるということです。上記の例のコード スニペット:
"...
var markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers);
var size = new OpenLayers.Size(21,25);
var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
var icon = new OpenLayers.Icon('http://www.openlayers.org/dev/img/marker.png',size,offset);
markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(0,0),icon));
var halfIcon = icon.clone();
markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(0,45),halfIcon));
marker = new OpenLayers.Marker(new OpenLayers.LonLat(90,10),icon.clone());
..."
ポイントオブジェクトで次のようなもの:
point.transform(
new OpenLayers.Projection("EPSG:900913"), //from
map.getProjectionObject() //to
);
もちろん、ポイント投影が何であるかを知る必要があります。そこにはたくさんの例があります。