векторная проекция в OpenLayers - PullRequest
2 голосов
/ 18 декабря 2011

Я создаю ГИС-приложение в geoDjango с OpenLayers и использую данные из PostGIS в проекции EPSG: 3908.Базовый уровень - OSM.Когда я добавляю векторные данные, я получаю их в Бразилии, а не в Боснии.Я перепробовал все, но просто не могу найти решение.

Пожалуйста, кто-нибудь может помочь?

var map, osm, google, kml;
function init(){

        map = new OpenLayers.Map('map');

        map.addControl(new OpenLayers.Control.LayerSwitcher());

        var osm = new OpenLayers.Layer.OSM(
            "OSM");

        kml = new OpenLayers.Layer.GML("KML", upit, 
           {format: OpenLayers.Format.KML,
            projection: new OpenLayers.Projection("EPSG:3908")});

        map.addLayers([osm, kml]);

        map.zoomToExtent(
           new OpenLayers.Bounds(15.774414, 42.6, 19.662109, 45.2).transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913")));

1 Ответ

1 голос
/ 20 декабря 2011

OpenLayers и Proj4js doc

При выполнении преобразований вы должны проверить параметр isReady перед вызовом transform. Это потому, что вы должны убедиться, что определения ваших прогнозов загружены.

Итак, определите ваши объекты преобразования (4326 и 900913) и проверьте, готовы ли они, а затем выполните преобразование. Если они не готовы, явно обратитесь к соответствующим файлам определений Proj4js в html-файле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...