TileOverlay

публичный финальный класс TileOverlay расширяет объект

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

Поставщик плиток
TileProvider предоставляет изображения, которые используются в наложении плитки. Вы должны указать поставщика листов перед его добавлением на карту. Поставщик плиток не может быть изменен после его добавления; однако вы можете изменить поведение поставщика фрагментов, чтобы он возвращал разные изображения для определенных координат. Если плитки, предоставленные поставщиком плиток, изменяются, вы должны впоследствии вызвать clearTileCache() , чтобы гарантировать, что предыдущие плитки больше не отображаются.
Z-индекс
Порядок, в котором это наложение плитки отображается относительно других наложений (включая GroundOverlay , Circle , Polyline и Polygon , но не Marker ). Наложение с большим z-индексом рисуется поверх наложений с меньшими z-индексами. Порядок наложений с одинаковым z-индексом произвольный. По умолчанию zIndex равен 0.
Прозрачность
Прозрачность наложения плитки в диапазоне [0..1] , где 0 означает, что наложение непрозрачное, а 1 означает, что наложение полностью прозрачное. Если указанное растровое изображение уже частично прозрачно, прозрачность каждого пикселя будет масштабироваться соответствующим образом (например, если пиксель в растровом изображении имеет значение альфа 200, а прозрачность наложения плитки указана как 0,25, тогда пиксель будет отображаться на экране со значением альфа 150). Указание этого свойства не является обязательным, а прозрачность по умолчанию равна 0 (непрозрачный).
Видимость
Указывает, является ли наложение плитки видимым или невидимым, т. е. отображается ли оно на карте. Невидимое наложение плитки не рисуется, но сохраняет все остальные свойства. По умолчанию установлено значение true , т. е. видимый.

Вы должны вызывать методы этого класса только в основном потоке. Невыполнение этого требования приведет к возникновению IllegalStateException .

Координаты плитки

Обратите внимание, что мир проецируется с использованием проекции Меркатора (см. Википедию ), где левая (западная) сторона карты соответствует -180 градусам долготы, а правая (восточная) сторона карты соответствует 180 градусам долготы. Чтобы сделать карту квадратной, верхняя (северная) сторона карты соответствует 85,0511 градусов широты, а нижняя (южная) сторона карты соответствует -85,0511 градусов широты. Области за пределами этого диапазона широт не отображаются.

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

  • При уровне масштабирования 0 одна плитка представляет весь мир. Координаты этой плитки: (x, y) = (0, 0).
  • На уровне масштабирования 1 мир разделен на 4 плитки, расположенные в сетке 2 x 2.
  • ...
  • На уровне масштабирования N мир разделен на 4 N плиток, расположенных в сетке 2 N x 2 N.
Обратите внимание, что минимальный уровень масштабирования, поддерживаемый камерой (который может зависеть от различных факторов), — это GoogleMap.getMinZoomLevel , а максимальный уровень масштабирования — GoogleMap.getMaxZoomLevel .

Координаты плиток отсчитываются от верхнего левого (северо-западного) угла карты. На уровне масштабирования N значения x координат тайла варьируются от 0 до 2 N - 1 и увеличиваются с запада на восток, а значения y находятся в диапазоне от 0 до 2 N - 1 и увеличиваются с севера на юг.

Пример

GoogleMap map; // ... get a map.
 TileProvider tileProvider; // ... create a tile provider.
 TileOverlay tileOverlay = map.addTileOverlay(
     new TileOverlayOptions().tileProvider(tileProvider));
 

Краткое описание общедоступного метода

пустота
ОчиститьТилеКэш ()
Очищает тайловый кеш, чтобы все тайлы снова запрашивались у TileProvider .
логическое значение
равно (Другой объект)
Проверяет, равен ли этот TileOverlay другому.
логическое значение
получитьFadeIn ()
Определяет, должны ли накладываемые плитки проявляться.
Нить
получитьИд ()
Получает идентификатор этого наложения плитки.
плавать
получитьПрозрачность ()
Получает прозрачность этого наложения плитки.
плавать
получитьZИндекс ()
Получает zIndex этого наложения плитки.
интервал
логическое значение
isVisible ()
Получает видимость этого наложения плитки.
пустота
удалять ()
Удаляет это наложение плитки с карты.
пустота
setFadeIn (логическое значение постепенного исчезновения)
Устанавливает, должны ли наложенные плитки проявляться.
пустота
setTransparency (плавающая прозрачность)
Устанавливает прозрачность этого наложения плитки.
пустота
setVisible (видимое логическое значение)
Устанавливает видимость этого наложения плитки.
пустота
setZIndex (zIndex с плавающей запятой)
Устанавливает zIndex этого наложения плитки.

Сводка унаследованных методов

Публичные методы

общественный недействительный ClearTileCache ()

Очищает тайловый кеш, чтобы все тайлы снова запрашивались у TileProvider . Текущие плитки из этого наложения плиток также будут удалены с карты после вызова этого метода. API поддерживает небольшой кеш листов в памяти. Если вы хотите кэшировать фрагменты дольше, вам следует реализовать кеш на диске.

общедоступное логическое значение равно (другой объект)

Проверяет, равен ли этот TileOverlay другому.

Параметры
другой Object .
Возврат
  • true, если оба объекта являются одним и тем же объектом, то есть this ==other.

общедоступное логическое значение getFadeIn ()

Определяет, должны ли накладываемые плитки проявляться.

Возврат
  • true , если плитки должны исчезать; false если это не так.

общедоступная строка getId ()

Получает идентификатор этого наложения плитки.

общедоступное число с плавающей запятой getTransparency ()

Получает прозрачность этого наложения плитки.

Возврат
  • прозрачность этого наложения плитки.

общедоступное число с плавающей запятой getZIndex ()

Получает zIndex этого наложения плитки.

Возврат
  • zIndex наложения плитки.

public int hashCode ()

общедоступное логическое значение isVisible ()

Получает видимость этого наложения плитки. Обратите внимание: это не возвращает информацию о том, находится ли наложение плитки в области просмотра экрана, а будет ли оно отрисовано, если оно содержится в области просмотра экрана.

Возврат
  • видимость этого наложения плитки.

public void удалить ()

Удаляет это наложение плиток с карты.

public void setFadeIn (логическое значение FadeIn)

Устанавливает, должны ли наложенные плитки проявляться.

Параметры
постепенное затухание true , чтобы плитки появлялись; false , чтобы отобразить их мгновенно.

public void setTransparency (плавающая прозрачность)

Устанавливает прозрачность этого наложения плитки. Дополнительную информацию см. в документации в начале этого класса.

Параметры
прозрачность число с плавающей запятой в диапазоне [0..1] , где 0 означает, что наложение плитки непрозрачно, а 1 означает, что наложение плитки прозрачно.

public void setVisible (видимое логическое значение)

Устанавливает видимость этого наложения плитки. Если наложение плитки не отображается, оно не рисуется, но сохраняет все остальные свойства. Наложения плиток видны по умолчанию.

Параметры
видимый true , чтобы сделать это наложение видимым; false , чтобы сделать его невидимым.

public void setZIndex (zIndex с плавающей запятой)

Устанавливает zIndex этого наложения плитки. Дополнительную информацию см. в документации в начале этого класса.

Параметры
zИндекс zIndex этого наложения плитки.