Полилиния — это список точек, в котором между последовательными точками нарисованы отрезки линии. Полилиния имеет следующие свойства:
- Очки
- Вершины линии. Сегменты линий рисуются между последовательными точками. По умолчанию полилиния не замкнута; Чтобы сформировать замкнутую полилинию, начальная и конечная точки должны совпадать.
- Ширина
- Ширина сегмента линии в пикселях экрана. Ширина постоянна и не зависит от уровня масштабирования камеры. Значение по умолчанию — 10.
- Цвет
- Цвет сегмента линии в формате ARGB, тот же формат, который используется
Color
. Значение по умолчанию — черный (0xff000000
). - Начало/конец ограничения
- Определяет форму, которая будет использоваться в начале или конце полилинии. Поддерживаемые типы колпачков:
ButtCap
,SquareCap
,RoundCap
(применимо для сплошных штрихов) иCustomCap
(применимо для любого рисунка штрихов). По умолчанию для начала и конца:ButtCap
. - Тип соединения
- Тип соединения определяет форму, которая будет использоваться при соединении смежных сегментов линии во всех вершинах полилинии, кроме начальной и конечной вершин. См.
JointType
для получения информации о поддерживаемых типах соединений. Значение по умолчанию —DEFAULT
. - Узор обводки
- Solid (по умолчанию, представлено
null
) или последовательность объектовPatternItem
, которые будут повторяться вдоль линии. Доступные типыPatternItem
:Gap
(определяется длиной промежутка в пикселях),Dash
(определяется шириной линии и длиной штриха в пикселях) иDot
(круг, центрируется на линии, диаметр определяется шириной линии в пикселях). - Z-индекс
- Порядок, в котором это наложение плитки отрисовывается относительно других наложений (включая
GroundOverlay
,TileOverlay
,Circle
иPolygon
, но неMarker
). Наложение с большим z-индексом рисуется поверх наложений с меньшими z-индексами. Порядок наложений с одинаковым z-индексом произвольный. По умолчанию zIndex равен 0. - Видимость
- Указывает, является ли полилиния видимой или невидимой, т. е. отображается ли она на карте. Невидимая полилиния не рисуется, но сохраняет все остальные свои свойства. По умолчанию установлено
true
, т. е. видимый. - Геодезический статус
- Указывает, следует ли отображать сегменты полилинии как геодезические, а не как прямые линии в проекции Меркатора. Геодезическая – это кратчайший путь между двумя точками на поверхности Земли. Геодезическая кривая строится в предположении, что Земля представляет собой сферу.
- Кликабельность
- Если вы хотите обрабатывать события, возникающие, когда пользователь щелкает ломаную линию, установите для этого свойства значение
true
. Вы можете изменить это значение в любое время. По умолчанию установлено значениеfalse
. Если для этого свойства установлено значениеtrue
, ваше приложение будет получать уведомления вGoogleMap.OnPolylineClickListener
зарегистрированный черезsetOnPolylineClickListener(GoogleMap.OnPolylineClickListener)
. - Ярлык
-
Object
, связанный с полилинией. Например,Object
может содержать данные о том, что представляет собой ломаная линия. Это проще, чем хранить отдельныйMap<Polyline, Object>
. В качестве другого примера вы можете связать идентификаторString
, соответствующий идентификатору из набора данных. Google Maps SDK для Android не читает и не записывает это свойство. - Пролеты
- Определяет промежутки с различными стилями, используемые для визуализации этой полилинии. Это свойство можно использовать для создания полилинии с разными
StrokeStyle
на разных сегментах полилинии.
Методы этого класса должны вызываться в потоке пользовательского интерфейса Android. В противном случае во время выполнения будет создано IllegalStateException
.
Пример
GoogleMap map;
// ... get a map.
// Add a thin red line from London to New York.
Polyline line = map.addPolyline(new PolylineOptions()
.add(new LatLng(51.5, -0.1), new LatLng(40.7, -74.0))
.width(5)
.color(Color.RED));
Руководство разработчика
Дополнительные сведения см. в руководстве разработчика Shapes .
Краткое описание общедоступного метода
логическое значение | |
интервал | получить цвет () Получает цвет этой полилинии. |
Кепка | getEndCap () Получает границу в конечной вершине этой полилинии. |
Нить | получитьИд () Получает идентификатор этой полилинии. |
интервал | getJointType () Получает тип соединения, используемый во всех вершинах полилинии, кроме начальной и конечной вершин. |
Список <PatternItem> | getPattern () Получает образец обводки этой полилинии. |
Список< LatLng > | получить очки () Возвращает снимок вершин этой полилинии в данный момент. |
Кепка | получитьСтартКап () Получает границу начальной вершины этой полилинии. |
Объект | получитьТег () Получает тег полилинии. |
плавать | получить ширину () Получает ширину этой полилинии. |
плавать | получитьZИндекс () Получает zIndex этой полилинии. |
интервал | хэш-код () |
логическое значение | isClickable () Получает кликабельность полилинии. |
логическое значение | isGeodesic () Определяет, отображается ли каждый сегмент линии как геодезическая или нет. |
логическое значение | isVisible () Получает видимость этой полилинии. |
пустота | удалять () Удаляет эту полилинию с карты. |
пустота | setClickable (логическое значение, кликабельное) Устанавливает кликабельность полилинии. |
пустота | setColor (целый цвет) Устанавливает цвет этой полилинии. |
пустота | |
пустота | setGeodesic (логическая геодезическая) Определяет, следует ли рисовать каждый сегмент линии как геодезическую или нет. |
пустота | setJointType (int JointType) Устанавливает тип соединения для всех вершин полилинии, кроме начальной и конечной. |
пустота | |
пустота | |
пустота | |
пустота | |
пустота | setTag (тег объекта) Устанавливает тег полилинии. |
пустота | setVisible (видимое логическое значение) Устанавливает видимость этой полилинии. |
пустота | setWidth (плавающая ширина) Устанавливает ширину этой полилинии. |
пустота | setZIndex (zIndex с плавающей запятой) Устанавливает zIndex этой полилинии. |
Сводка унаследованных методов
Публичные методы
общедоступное логическое значение равно (другой объект)
public int getColor ()
Получает цвет этой полилинии.
Возврат
- цвет в формате ARGB.
общедоступная шапка getEndCap ()
Получает границу в конечной вершине этой полилинии.
Возврат
- тип торцевой крышки.
общедоступная строка getId ()
Получает идентификатор этой полилинии. Идентификатор будет уникальным среди всех полилиний на карте.
Возврат
- идентификатор этой полилинии.
public int getJointType ()
Получает тип соединения, используемый во всех вершинах полилинии, кроме начальной и конечной вершин. См. возможные значения в JointType
.
Возврат
- тип сустава.
общедоступный список < PatternItem > getPattern ()
Получает образец обводки этой полилинии.
Возврат
- рисунок штриха.
общедоступный список < LatLng > getPoints ()
Возвращает снимок вершин этой полилинии в данный момент. Возвращаемый список является копией списка вершин, поэтому изменения вершин полилинии не будут отражены в этом списке, а изменения в этом списке не будут отражены полилинией. Чтобы изменить вершины полилинии, вызовите setPoints(List)
.
общедоступная шапка getStartCap ()
Получает границу начальной вершины этой полилинии.
Возврат
- стартовый колпачок.
общедоступный объект getTag ()
Получает тег полилинии.
Возврат
- тег, если тег был установлен с помощью
setTag
;null
, если тег не установлен.
общедоступный float getWidth ()
Получает ширину этой полилинии.
Возврат
- ширина в пикселях экрана.
общедоступное число с плавающей запятой getZIndex ()
Получает zIndex этой полилинии.
Возврат
- zIndex полилинии.
public int hashCode ()
публичное логическое значение isClickable ()
Получает кликабельность полилинии. Если ломаная линия доступна для щелчка, ваше приложение будет получать уведомления в GoogleMap.OnPolylineClickListener
, когда пользователь щелкает ломаную линию. Прослушиватель событий регистрируется через setOnPolylineClickListener(GoogleMap.OnPolylineClickListener)
.
Возврат
-
true
, если полилиния кликабельна; в противном случае возвращаетfalse
.
общедоступное логическое значение isGeodesic ()
Определяет, отображается ли каждый сегмент линии как геодезическая или нет.
Возврат
-
true
, если каждый сегмент нарисован как геодезическая;false
, если каждый сегмент нарисован в виде прямой линии в проекции Меркатора.
общедоступное логическое значение isVisible ()
Получает видимость этой полилинии.
Возврат
- видимость этой полилинии.
public void удалить ()
Удаляет эту полилинию с карты. После удаления ломаной линии поведение всех ее методов не определено.
public void setClickable (логическое значение, кликабельно)
Устанавливает кликабельность полилинии. Если ломаная линия доступна для щелчка, ваше приложение будет получать уведомления в GoogleMap.OnPolylineClickListener
, когда пользователь щелкает ломаную линию. Прослушиватель событий регистрируется через setOnPolylineClickListener(GoogleMap.OnPolylineClickListener)
.
Параметры
кликабельный | Новая настройка кликабельности полилинии. |
---|
public void setColor (int color)
Устанавливает цвет этой полилинии.
Параметры
цвет | цвет в формате ARGB |
---|
public void setEndCap ( Cap endCap)
Устанавливает границу в конечной вершине этой полилинии. Конечная заглушка по умолчанию — ButtCap
.
Параметры
КонецКап | торцевая крышка. Не должно быть null . |
---|
public void setGeodesic (логическая геодезическая)
Определяет, следует ли рисовать каждый сегмент линии как геодезическую или нет.
Параметры
геодезический | если true , то каждый сегмент рисуется как геодезическая; если false , каждый сегмент рисуется как прямая линия в проекции Меркатора. |
---|
общественный недействительный setJointType (int JointType)
public void setPattern (шаблон List< PatternItem >)
Устанавливает образец обводки полилинии. Шаблон обводки по умолчанию — сплошной, представленный null
.
Параметры
шаблон | рисунок штриха. |
---|
public void setPoints (List< LatLng > точек)
Устанавливает точки этой полилинии. Этот метод возьмет копию точек, поэтому дальнейшие изменения points
не окажут влияния на эту ломаную линию.
Параметры
очки | список LatLng , которые являются вершинами ломаной линии. |
---|
public void setStartCap ( Cap startCap)
Устанавливает границу в начальной вершине этой полилинии. Начальное ограничение по умолчанию — ButtCap
.
Параметры
старткап | стартовый колпачок. Не должно быть null . |
---|
public void setTag (тег объекта)
Устанавливает тег полилинии.
Вы можете использовать это свойство, чтобы связать произвольный Object
с этой полилинией. Например, Object
может содержать данные о том, что представляет собой ломаная линия. Это проще, чем хранить отдельный Map<Polyline, Object>
. В качестве другого примера вы можете связать идентификатор String
, соответствующий идентификатору из набора данных. Google Maps SDK для Android не читает и не записывает это свойство. Вы обязаны вызвать setTag(null)
для очистки тега, когда он вам больше не нужен, чтобы предотвратить утечки памяти в вашем приложении.
Параметры
ярлык | если значение равно нулю, тег очищается. |
---|
public void setVisible (видимое логическое значение)
Устанавливает видимость этой полилинии. Если полилиния не видна, она не рисуется, но сохраняет все остальные свойства.
Параметры
видимый | если true , то полилиния видна; если false , то это не так. |
---|
public void setWidth (ширина с плавающей запятой)
Устанавливает ширину этой полилинии.
Параметры
ширина | ширина в пикселях экрана |
---|
public void setZIndex (zIndex с плавающей запятой)
Устанавливает zIndex этой полилинии. Полилинии с более высокими индексами zIndexs рисуются над линиями с более низкими индексами.
Параметры
zИндекс | zIndex этой полилинии. |
---|