Можно ли итерации через маркеры после применения запроса в FusionTablesLayer?
В настоящее время у меня есть фильтр, работающий над таблицей слияния, отображаемой как слой карты, и я хочу масштабировать, чтобы наилучшим образом соответствовать всем данным всякий раз, когда фильтр изменяется.
Я полагаю, что мне нужно подождать до тех пор, пока не будет применен запрос, а затем итерации по маркерам, чтобы найти местоположения min / max x & y и панорамирование этого прямоугольника, но я не вижу способ в Maps api получить доступ к маркерам слой.
У кого-нибудь есть идея, как это сделать?
Короткий ответ: нет. Для меня это один из недостатков работы с таблицами Fusion через API Карт. Например, хотите отобразить количество результатов моего последнего запроса. Но через «недокументированный» JSONP API для таблиц Fusion существует обход. У меня был большой успех, но я должен поблагодарить Робин Крафт, сообщив мне об этом API. http://www.reddmetrics.com/2011/08/10/fusion-tables-javascript-query-maps.html .
Вот код, который позволяет повторно выполнить ваш последний запрос с помощью запроса AJAX JSONP и делать то, что вы хотите с результатами, например, вычислять ограничивающий прямоугольник. Примечание. В этом примере используется JQuery для вызовов AJAX JSONP. В этом примере создается экран
// Example call getFTData(tableid, 'latitude,longitude', example_dataHandler);
Поскольку возврат количества последних строк таблицы Fusion Table часто встречается, я добавляю fragment того, как это сделать.
Если ваши данные находятся в таблице слияния, используйте таблицу sql api таблицы fusion, чтобы найти Max / Min val для 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
См. Здесь полную информацию о api: https://developers.google.com/fusiontables/docs/v1/sql-reference . (Одна вещь, которую следует помнить, – это ecodeURI this sql statement)
Это возвращает значения для значения в массив json. И, как я уверен, вы знаете, используйте эти значения, чтобы установить параметры «центра» и «масштабирования» вашей карты.