FGX.Map.TfgCustomMap

Материал из FGX Native Докуметации
Перейти к навигации Перейти к поиску

Delphi

TfgCustomMap = class (TfgControl, IFGXMapObjectFactory)

TComponent -> TfgControl -> TfgCustomMap

Прямые наследники: TfgMap

Описание

Контрол отображения нативной карты. Карта позволяет работать с графическими объектами на карте, маркерами, а так же обеспечивает базовые настройки работы с камерой и способов отображения карты.

Для того, чтобы начать использовать камеру на Android, необходимо получить API ключ от Google Maps. Это делается таким же способом, как и для FMX. Инструкция доступна здесь: http://docwiki.embarcadero.com/RADStudio/Rio/en/Configuring_Android_Applications_to_Use_Google_Maps

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

  • android.permission.ACCESS_COARSE_LOCATION
  • android.permission.ACCESS_FINE_LOCATION

Обратите внимание, что работа с маркерами доступна только после полной загрузки карты, а именно в событии OnMapReady или позже.

На каждой платформе используется свой провайдер карты. На Андроиде - Google Map.

Конструкторы

constructor
Create(AOwner: TComponent)

Описание отсутствует.

Методы

function
IsMapReadyToUse(): Boolean

Готова ли карта к работе. Карта инициализируется асинхронно, поэтому работа с картой доступна только после полной инициализации. Проверить готовность карты к работе можно через этот метод или в событии OnMapReady .

procedure
ClearObjects()

Очистка всех объектов карты (маркеры, кривые, полигоны).

function
CoordinateToPosition(const ACoordinate: TfgMapCoordinate): TPointF

Выполняет конвертацию указанных географических координат ACoodrinate в локальные координаты компонента.

Метод должен вызывать только, когда карта проинициализирована и готова к использованию OnMapReady , IsMapReadyToUse .
function
PositionToCoordinate(const APosition: TPointF): TfgMapCoordinate

Выполняет конвертацию точки APosition в локальной системе координаты компонента в географических координаты.

Метод должен вызывать только, когда карта проинициализирована и готова к использованию OnMapReady , IsMapReadyToUse .

Свойства

property
Markers: TfgMapMarkerList

Описание отсутствует.

property
Polylines: TfgMapPolylineList

Описание отсутствует.

property
Polygons: TfgMapPolygonList

Описание отсутствует.

property
Circles: TfgMapCircleList

Описание отсутствует.

property
CameraTarget: TfgMapCoordinate

Географические координаты относительно которой размещается камера.

property
CameraZoom: Single

Зум камеры [1..20]:

  • 1 - Весь мир. Самый мелкий масштаб.
  • 5 - Континенты.
  • 10 - Города.
  • 15 - Улицы.
  • 20 - Здания.
property
CameraTilt: Single

Наклон камеры относительно перпендикуляра опущеного на землю и направления обзора с камеры в точку CameraTarget .

property
CameraBearing: Single

Пеленг камеры в градусах по часовой стрелке относительно Севера.

property
ControlsSettings: TfgMapControlSettings

Настройки отображения элементов управления картой.

property
MapType: TfgMapType

Тип карты.

property
GoogleMapStyle: TfgGoogleMapStyleOptions

Настройки стиля Google карты.

Актуально только для Андроид платформы.
property
StandardLayerKinds: TfgMapStandardLayerKinds

Настройки отображения стандартных слоев.

property
UserGestureKinds: TfgMapUserGestureKinds

Какие жесты разрешается совершать пользователю с картой.

События

event
OnCameraChanging: TNotifyEvent

Срабатывает в процессе изменения параметров камеры.

event
OnCameraChanged: TNotifyEvent

Срабатывает в конце процесса изменения параметров камеры.

event
OnMapReady: TNotifyEvent

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

event
OnMarkerTap: TfgMapMarkerEvent

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

event
OnMarkerDragStart: TfgMapMarkerEvent

Вызывается, когда маркер начинает перетаскиваться.

event
OnMarkerDrag: TfgMapMarkerEvent

Вызывается повторно во время перетаскивания маркера.

event
OnMarkerDragEnd: TfgMapMarkerEvent

Вызывается после перетаскивания маркера.

event
OnPolygonTap: TfgMapPolygonEvent

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

event
OnPolylineTap: TfgMapPolylineEvent

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

event
OnCircleTap: TfgMapCircleEvent

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

event
OnInfoWindowTap: TfgMapMarkerEvent

Вызывается, когда пользователь нажимает на информационное окно, появляющееся рядом с маркером.

Константы

const
DefaultMapType: TfgMapType

Описание отсутствует.