Можно ли перебирать маркеры после применения запроса в FusionTablesLayer? - PullRequest
2 голосов
/ 19 марта 2012

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

Я полагаю, что мне нужно подождать, пока запрос будет применен, и затем пройтись по маркерам, чтобы найти минимальное / максимальное значения x & y, и выполнить панорамирование к этому прямоугольнику, но я не вижу пути в API Карт для доступа маркеры слоя.

У кого-нибудь есть идеи, как это сделать?

Ответы [ 2 ]

1 голос
/ 21 сентября 2013

Если ваши данные находятся в таблице слияния, то используйте sql api таблицы слияния, чтобы найти значения Max / Min для Lat и Lng соответственно:

https://www.googleapis.com/fusiontables/v1/query?sql=SELECT  
MINIMUM(Lat) AS MinLat, MAXIMUM(Lat) AS MaxLat,
MINIMUM(Long) AS MinLong, MAXIMUM(Long) AS MaxLong
FROM <table_id>

Подробную информацию об API см. Здесь: https://developers.google.com/fusiontables/docs/v1/sql-reference. (Следует помнить, что ecodeURI использует этот SQL-оператор)

Возвращает значения для массива json.И, как я уверен, вы знаете, используйте эти значения, чтобы установить параметры вашей карты "center" и "zoom".

1 голос
/ 20 марта 2012

Короткий ответ - нет. Для меня это один из недостатков работы с Fusion Tables через API Карт. Например. желая отобразить счетчик результатов моего последнего запроса. Но есть обходной путь с помощью «недокументированного» JSONP API для Fusion Tables. Я пользовался большим успехом, используя его, но я должен сказать Робину Крафт, что сообщил мне об этом API. http://www.reddmetrics.com/2011/08/10/fusion-tables-javascript-query-maps.html.

Вот некоторый код, который позволяет вам повторно выполнить ваш самый последний запрос с помощью запроса AJAX JSONP и делать то, что вы хотите, с результатами, такими как вычисление ограничивающего прямоугольника. Примечание. В этом примере для вызовов ASON JJP используется Jquery. В этом примере создается отображение

...