Openlayers. Вычислить значение масштаба из Extent
-
- Интересующийся
- Сообщения: 24
- Зарегистрирован: 22 июл 2011, 09:50
- Репутация: 2
- Контактная информация:
Openlayers. Вычислить значение масштаба из Extent
Есть значение Extent из которого нужно вычислить значение масштаба (Scale). Понимаю,что одного Extent мало, нужно учитывать ед.измерения и DPI. Из формул нашел только вот http://trac.osgeo.org/openlayers/wiki/r ... ng_started
-
- Интересующийся
- Сообщения: 24
- Зарегистрирован: 22 июл 2011, 09:50
- Репутация: 2
- Контактная информация:
Re: Openlayers. Вычислить значение масштаба из Extent
Вроде сделал сам
//нужный Extent
var positionExtent = new OpenLayers.Bounds(lon1, lat1, lon2, lat2).transform(fromProjection, toProjection);
positiondX = positionExtent.right - positionExtent.left;
positiondY = positionExtent.top - positionExtent.bottom;
//текущий
currentExtent = OpenLayersMap.getExtent();
currentdX = currentExtent.right - currentExtent.left;
currentdY = currentExtent.top - currentExtent.bottom;
currentScale = OpenLayersMap.getScale();
//positionScale = ( positiondX * currentScale ) / currentdX;
positionScale = ( positiondY * currentScale ) / currentdY; //правильно вычисляется черезY
//нужный Extent
var positionExtent = new OpenLayers.Bounds(lon1, lat1, lon2, lat2).transform(fromProjection, toProjection);
positiondX = positionExtent.right - positionExtent.left;
positiondY = positionExtent.top - positionExtent.bottom;
//текущий
currentExtent = OpenLayersMap.getExtent();
currentdX = currentExtent.right - currentExtent.left;
currentdY = currentExtent.top - currentExtent.bottom;
currentScale = OpenLayersMap.getScale();
//positionScale = ( positiondX * currentScale ) / currentdX;
positionScale = ( positiondY * currentScale ) / currentdY; //правильно вычисляется черезY
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость