Вопрос

Я пытаюсь выяснить, насколько хорошо играют карты Extjs и Google. Я играю с этим примером: http://dev.sencha.com/deploy/ext-4.0.0/examples/window/gmap.html

Я теряюсь, когда пытаюсь обратиться к карте. Я хочу иметь возможность программатически вносить изменения в уровень масштабирования, нарисовать многоугольники и поставить точки на карту.

Я играл, поэтому мой код не такой, как в примере.

Я определил панель формы и вложил в нее карту. У меня есть слушатель, который ожидает отображения карты:

listeners:{
            afterrender: {
                fn: setupWindow,
                scope: this
            }
        }

Затем, внутри SetupWindow у меня есть:

gmap.setzoom(25);
mapBounds = new gmap.LatLngBounds(
                new gmap.LatLng(responseJson.minY, responseJson.minX),
                new gmap.LatLng(responseJson.maxY, responseJson.maxX)
                );

Но там терпит неудачу. Что я делаю не так?

Это было полезно?

Решение

Поскольку вы звоните gmap.setZoom(25) в линии перед проблемой - я предположил, что gmap это случай GMap2 вот так:

var gmap = new GMap2(...);

Если это действительно так, тогда new gmap.LatLngBounds или же new gmap.LatLng должен потерпеть неудачу, потому что ни одна из них не является функцией map (Если вы не добавите его в свой код).

Вместо этого вы должны сделать:

mapBounds = new GLatLngBounds(
                    new GLatLng(responseJson.minY, responseJson.minX),
                    new GLatLng(responseJson.maxY, responseJson.maxX)
                );

РЕДАКТИРОВАТЬ: Чтобы уточнить мое предположение - из примера ExtJS, который вы пытаетесь использовать, кажется, что вы пытаетесь пойти с API V2.

Другие советы

Ну ... вы пытаетесь использовать Google Maps V3, в то время как пример EXTJS построен с GMAP V2.

Кроме того, как указывает Zenmaster, у вас есть какой -то беспорядок в вашей попытке использовать GMAP API. Откуда, откуда взятая переменная GMAP? Либо использовать new google.maps.LatLng в V3, или new GLatLng в V2.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top