Тип QML MapCircle
Тип MapCircle отображает географическую окружность на карте. Подробнее...
| Заявление об импорте: | import QtLocation 5.14 |
| С момента: | QtLocation 5.5 |
Свойства
- autoFadeIn : bool
-
border
- border.color : цвет
- border.width : int
- 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
}
} Документация по свойствам
autoFadeIn : bool
Это свойство указывает, автоматически ли элемент затухает при приближении к карте, начиная с очень низких уровней масштабирования. По умолчанию это true. Установка этого свойства в false заставляет элемент карты всегда иметь непрозрачность, указанную в свойстве QtQuick::Item::opacity, которое по умолчанию равно 1.0.
Это свойство было добавлено в Qt 5.14.
border.color : цвет
Это свойство является частью группового свойства border. Свойство border содержит ширину и цвет, используемые для рисования границы окружности. Ширина в пикселях и не зависит от уровня масштабирования карты.
Значения по умолчанию соответствуют черной границе шириной 1 пиксель. Для отсутствия линии используйте ширину 0 или прозрачный цвет.
center : координата
Это свойство содержит центральную точку, относительно которой определяется окружность.
См. также radius.
color : цвет
Это свойство содержит цвет заливки окружности при рисовании. Для отсутствия заливки используйте прозрачный цвет.
opacity : вещественное
Это свойство содержит непрозрачность элемента. Непрозрачность задается числом от 0 (полностью прозрачный) до 1 (полностью непрозрачный). По умолчанию 1.
Элемент с 0 непрозрачностью все еще будет получать события мыши. Чтобы остановить события мыши, установите свойство visible элемента в false.
radius : вещественное
Это свойство содержит радиус окружности в метрах на местности.
См. также center.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qml-qtlocation-mapcircle.html