Преобразование координат при вставке нового слоя Openlayers
Добавлено: 21 авг 2012, 20:34
Такая проблема:
Создаю слой, в опциях указываю:
my_url.kml содержит список точек координаты задаются так
После добавления все добавленные точки отображаются корректно, при этом их координаты были преобразованы geometry = POINT(4366626.055101 5603365.144033001).
ПРОБЛЕМА.
Если создать пустой слой аналогично предыдущему без загрузки KML, а затем отдельным запросом получит точки, распасить результат и добавить полученные точки в слой, то преобразования координат не происходит и точки отображаются неверно.
В результате точки отобразились, но все в одной куче так как преобразование координат не было.
Как сделать преобразование координат?
Создаю слой, в опциях указываю:
Код: Выделить всё
var option = {
...
protocol: new OpenLayers.Protocol.HTTP({
url: 'my_url.kml',
format: new OpenLayers.Format.KML()
}),
...
}
Код: Выделить всё
<Point><coordinates>39.22606925877791,44.884553969825845</coordinates></Point>
ПРОБЛЕМА.
Если создать пустой слой аналогично предыдущему без загрузки KML, а затем отдельным запросом получит точки, распасить результат и добавить полученные точки в слой, то преобразования координат не происходит и точки отображаются неверно.
Код: Выделить всё
var parser = new OpenLayers.Format.KML({
extractStyles:true,
extractAttributes:true});
var options = {
projection:'EPSG:4326',
styleMap: new OpenLayers.StyleMap({
"default": new OpenLayers.Style(defautMarkerStyleOptions)
}),
strategies: [new OpenLayers.Strategy.Fixed()],
format: new OpenLayers.Format.KML()
};
var vectors1 = new OpenLayers.Layer.Vector("Vector Layer 1",options);
var features = parser.read(data.responseText);
vectors1.addFeatures(features);
map.addLayer(vectors1);
Как сделать преобразование координат?