FGX.Map.TfgCustomMap: различия между версиями
Admin (обсуждение | вклад) (summary) |
Admin (обсуждение | вклад) (summary) |
||
Строка 32: | Строка 32: | ||
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ClearObjects()</code> | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ClearObjects()</code> | ||
<p>Очистка всех объектов карты (маркеры, кривые, полигоны).</p> | <p>Очистка всех объектов карты (маркеры, кривые, полигоны).</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">CoordinateToPosition(const ACoordinate: [[TfgMapCoordinate|TfgMapCoordinate]]): [[TPointF]]</code> | ||
+ | |||
+ | <p>Выполняет конвертацию указанных географических координат <i>ACoodrinate</i> в локальные координаты компонента.</p><div class="info">Метод должен вызывать только, когда карта проинициализирована и готова к использованию <i>OnMapReady</i> , <i>IsMapReadyToUse</i> .</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">PositionToCoordinate(const APosition: [[TPointF]]): [[TfgMapCoordinate|TfgMapCoordinate]]</code> | ||
+ | |||
+ | <p>Выполняет конвертацию точки <i>APosition</i> в локальной системе координаты компонента в географических координаты.</p><div class="info">Метод должен вызывать только, когда карта проинициализирована и готова к использованию <i>OnMapReady</i> , <i>IsMapReadyToUse</i> .</div> | ||
|} | |} | ||
Строка 79: | Строка 87: | ||
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnCameraChanging: [[TNotifyEvent]]</code> | | <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnCameraChanging: [[TNotifyEvent]]</code> | ||
<p>Срабатывает в процессе изменения параметров камеры.</p> | <p>Срабатывает в процессе изменения параметров камеры.</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnCameraChanged: [[TNotifyEvent]]</code> | ||
+ | <p>Срабатывает в конце процесса изменения параметров камеры.</p> | ||
|- | |- | ||
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnMapReady: [[TNotifyEvent]]</code> | | <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnMapReady: [[TNotifyEvent]]</code> |
Версия 17:07, 28 июля 2020
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 или позже.
Конструкторы
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]:
|
property
|
CameraTilt: Single
Наклон камеры относительно перпендикуляра опущеного на землю и направления обзора с камеры в точку CameraTarget . |
property
|
CameraBearing: Single
Пеленг камеры в градусах по часовой стрелке относительно Севера. |
property
|
ControlsSettings: TfgMapControlSettings
Настройки отображения элементов управления картой. |
property
|
MapType: TfgMapType
Тип карты. |
property
|
GoogleMapStyle: TfgGoogleMapStyleOptions
Настройки стиля Google карты. Актуально только для Андроид платформы.
|
События
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
Вызывается, когда пользователь нажимает на круг. |
Константы
const
|
DefaultMapType: TfgMapType
Описание отсутствует. |