Тип MapCircle QML
Тип MapCircle отображает географический круг на карте. Подробнее...
| Заявление об импорте: | import QtLocation 5.11 |
| С момента: | QtLocation 5.5 |
Свойства
-
border
- border.width : int
- border.color : цвет
- center : координата
- color : цвет
- opacity : вещественное
- radius : вещественное
Подробное описание
Тип MapCircle отображает географический круг на карте, который состоит из всех точек, находящихся на заданном расстоянии от одной центральной точки. В зависимости от проекции карты, географический круг не всегда может быть идеальным кругом на экране: например, в проекции Меркатора круги становятся овальной формы по мере приближения к полюсам. Чтобы отобразить идеальный круг на экране вокруг точки, используйте MapQuickItem, содержащий соответствующий тип Qt Quick.
По умолчанию круг отображается как черная граница толщиной 1 пиксель без заливки. Чтобы изменить его внешний вид, используйте свойства color, border.color и border.width.
Внутренне, MapCircle реализован как многоугольник. Для вычисления радиуса точек он использует сферическую модель Земли, аналогичную методу atDistanceAndAzimuth типа coordinate. Эти два фактора могут иногда влиять на точность формы круга, в зависимости от позиции и проекции карты.
Примечание: Перетаскивание MapCircle (с помощью MouseArea) приводит к генерации новых точек на том же расстоянии (в метрах) от центра. Это отличается от других элементов карты, которые хранят свои размеры в терминах разницы широты и долготы между вершинами.
Производительность
Производительность MapCircle практически эквивалентна производительности MapPolygon с тем же количеством вершин. Существует небольшая дополнительная нагрузка в связи с предварительным расчетом вершин.
Как и другие объекты карты, MapCircle обычно отображается без плавного внешнего вида. Установка свойства opacity заставит объект смешиваться, что значительно снижает производительность в зависимости от используемого графического оборудования.
Пример использования
Следующий фрагмент кода показывает карту, содержащую MapCircle, центрированный в координатах (-27, 153) с радиусом 5 км. Круг заполнен зеленым цветом с черной границей толщиной 3 пикселя.
Map {
MapCircle {
center {
latitude: -27.5
longitude: 153.0
}
radius: 5000.0
color: 'green'
border.width: 3
}
} Документация по свойствам
border.width : int
Это свойство является частью группового свойства border. Свойство border хранит ширину и цвет, используемые для отрисовки границы круга. Ширина измеряется в пикселях и не зависит от уровня масштабирования карты.
Значения по умолчанию соответствуют черной границе шириной 1 пиксель. Для отсутствия линии используйте ширину 0 или прозрачный цвет.
center : coordinate
Это свойство хранит центральную точку, относительно которой определен круг.
См. также radius.
color : color
Это свойство хранит цвет заливки круга при отрисовке. Для отсутствия заливки используйте прозрачный цвет.
opacity : real
Это свойство хранит непрозрачность элемента. Непрозрачность задается числом от 0 (полностью прозрачный) до 1 (полностью непрозрачный). По умолчанию значение равно 1.
Элемент с непрозрачностью 0 все равно будет получать события мыши. Чтобы остановить события мыши, установите свойство visible элемента в false.
radius : real
Это свойство хранит радиус круга в метрах на местности.
См. также center.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtlocation-mapcircle.html