Fusion Table Pan и Zoom - PullRequest
       39

Fusion Table Pan и Zoom

1 голос
/ 23 января 2012

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

Мои вопросы сейчас:

Есть ли способ?я могу вызвать информационное окно по умолчанию из таблиц Fusion, нажав на внешнюю ссылку JavaScript?

Могу ли я центрировать и масштабировать карту на основе выбора пользователем области, запрашивая таблицы слияния?

Буду признателен, если кто-нибудь знает решение или предоставит мне несколько советов относительно того, как мне добиться этой функциональности в моем приложении.

Спасибо, Бикаш

1 Ответ

0 голосов
/ 19 февраля 2012

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

Ответ на мой первый вопрос - нет, для вашего приложения не существует встроенного метода по умолчанию или встроенного метода для открытия информационного окна в слое Google Maps из внешней ссылки, но если вам это нужно, это простой трюк в вашей базе данных. или, по крайней мере, для таблиц слияния вы должны иметь содержимое информационного окна, и в зависимости от того, где пользователь щелкает слой, вы можете создать прослушиватель, который получает идентификатор строки слоя и получает содержимое информационного окна и отображает его на экране, если вы хотел

listener=google.maps.event.addListener(layer, 'click', function(e){
var rowId= e.row['id'].value ;
//use rowId to query fusion tables or your database and display results to the user
//simple ajax should be able to handle this 
});

Ответ на мой второй вопрос снова - нет, но есть и несколько обходных путей, одна из техник, которой я следовал:

Разрешить siteadmin сохранять в базе данных центр и уровень масштабирования для каждой области, в которой пользователь может что-либо выполнить, а затем, когда пользователь выполняет любой запрос, для которого требуется центрирование карты, просто используйте center latlng и zoom Уровень устанавливается администратором и отображает карты.

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

Спасибо Бикаш

...