Polyline

classe final pública Polyline estende Object

Uma polilinha é uma lista de pontos, em que segmentos de linha são desenhados entre pontos consecutivos. Uma polilinha tem as seguintes propriedades:

Pontos
Os vértices da linha. Segmentos de linha são desenhados entre pontos consecutivos. Uma polilinha não é fechada por padrão. Para formar uma polilinha fechada, os pontos de início e término precisam ser os mesmos.
Largura
Largura do segmento de linha em pixels da tela. A largura é constante e independente do nível de zoom da câmera. O valor padrão é 10.
Cor
Cor do segmento de linha em formato ARGB, o mesmo formato usado por Color. O valor padrão é preto (0xff000000).
Limite inicial/final
Define a forma a ser usada no início ou no final de uma polilinha. Tipos de limite aceitos: ButtCap, SquareCap, RoundCap (aplicável a padrão de traço sólido) e CustomCap (aplicável a qualquer padrão de traço). Padrão para início e fim: ButtCap.
Tipo de junção
O tipo de junção define a forma a ser usada ao unir segmentos de linha adjacentes em todos os vértices da polilinha, exceto nos vértices inicial e final. Consulte JointType para os tipos de junção compatíveis. O valor padrão é DEFAULT.
Padrão de traço
Solida (padrão, representada por null) ou uma sequência de objetos PatternItem a serem repetidos ao longo da linha. Tipos de PatternItem disponíveis: Gap (definido pelo tamanho do intervalo em pixels), Dash (definido pela largura da linha e comprimento do traço em pixels) e Dot (circular, centralizado na linha, diâmetro definido pela largura da linha em pixels).
Z-index
É a ordem em que a sobreposição de blocos é desenhada em relação a outras sobreposições (incluindo GroundOverlays, TileOverlays, Circles e Polygons, mas não Markers). Uma sobreposição com um Z-index maior é desenhada sobre aquelas com Z-index menores. A ordem das sobreposições que têm o mesmo índice z é aleatória. O zIndex padrão é 0.
Visibilidade
Indica se a polilinha é visível ou invisível, ou seja, se é desenhada no mapa. Uma polilinha invisível não é desenhada, mas mantém todas as outras propriedades. O padrão é true, ou seja, visível.
Status geodésico
Indica se os segmentos da polilinha precisam ser desenhados como geodésicos, em vez de linhas retas na projeção de Mercator. Uma geodésica é o caminho mais curto entre dois pontos na superfície da Terra. A curva geodésica é construída supondo que a Terra seja uma esfera
Facilidade de clique
Se você quiser processar eventos disparados quando o usuário clicar na polilinha, defina essa propriedade como true. É possível alterar esse valor a qualquer momento. O padrão é false. Se ela for definida como true, seu app vai receber notificações para o GoogleMap.OnPolylineClickListener registrado pelo setOnPolylineClickListener(GoogleMap.OnPolylineClickListener).
Tag
Um Object associado à polilinha. Por exemplo, Object pode conter dados sobre o que a polilinha representa. Isso é mais fácil do que armazenar um Map<Polyline, Object> separado. Também é possível associar um ID String correspondente ao ID de um conjunto de dados. O SDK do Google Maps para Android não lê nem grava essa propriedade.
Períodos
Define os períodos com estilos diferentes usados para renderizar essa polilinha. Você pode usar essa propriedade para criar uma polilinha com diferentes StrokeStyle em diferentes segmentos da polilinha.

Os métodos nessa classe precisam ser chamados na linha de execução de interface do Android. Caso contrário, uma IllegalStateException vai ser gerada no momento da execução.

Exemplo

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));
 

Guia do desenvolvedor

Para mais informações, leia o guia do desenvolvedor sobre Formas.

Resumo do método público

boolean
igual a(objeto "outro")
Testa se esse Polyline é igual a outro.
int
getColor()
Recebe a cor desta polilinha.
Cap
getEndCap()
Recebe o limite no vértice final desta polilinha.
String
getId()
Recebe o ID dessa polilinha.
int
getJointType()
Extrai o tipo de junção usado em todos os vértices da polilinha, exceto os vértices inicial e final.
List<PatternItem>
getPattern()
Recebe o padrão do traço desta polilinha.
List<LatLng>
getPoints()
Retorna um instantâneo dos vértices desta polilinha neste momento .
Cap
getStartCap()
Recebe o limite no vértice inicial desta polilinha.
Objeto
getTag()
Recebe a tag da polilinha.
float
getWidth()
Recebe a largura desta polilinha.
float
getZIndex()
Recebe o zIndex desta polilinha.
int
boolean
isClickable()
Recebe a capacidade de receber cliques da polilinha.
boolean
isGeodesic()
Extrai se cada segmento da linha é desenhado como geodésica ou não.
boolean
isVisible()
Recebe a visibilidade desta polilinha.
void
remove()
Remove essa polilinha do mapa.
void
setClickable(booleano clicável)
Define a capacidade de receber cliques da polilinha.
void
setColor(int color)
Define a cor desta polilinha.
void
setEndCap(Cap endCap)
Define o limite no vértice final desta polilinha.
void
setGeodesic(booleana geodésica)
Define se deve desenhar cada segmento da linha como geodésica ou não.
void
setJointType(intjoinType)
Define o tipo de junção para todos os vértices da polilinha, exceto os vértices inicial e final.
void
setPattern(padrão List<PatternItem>)
Define o padrão do traço da polilinha.
void
setPoints(List<LatLng> points)
Define os pontos dessa polilinha.
void
setSpans(spans de List<StyleSpan>)
Define os períodos da polilinha.
void
setStartCap(Cap startCap)
Define o limite no vértice inicial desta polilinha.
void
setTag(tag de objeto)
Define a tag para a polilinha.
void
setVisible(booleano visível)
Define a visibilidade desta polilinha.
void
setWidth(largura flutuante)
Define a largura desta polilinha.
void
setZIndex(zIndex flutuante)
Define o zIndex dessa polilinha.

Resumo do método herdado

Métodos públicos

public booleano é igual a (Outro objeto)

Testa se esse Polyline é igual a outro.

Parâmetros
Outras um Object.
Retorna
  • true se os dois objetos forem o mesmo, ou seja, == other.

public int getColor ()

Recebe a cor desta polilinha.

Retorna
  • a cor no formato ARGB.

público Cap getEndCap ()

Recebe o limite no vértice final desta polilinha.

Retorna
  • o tipo de imagem final.

public String getId ()

Recebe o ID dessa polilinha. O ID será exclusivo entre todas as polilinhas em um mapa.

Retorna
  • o ID desta polilinha.

public int getJointType ()

Extrai o tipo de junção usado em todos os vértices da polilinha, exceto os vértices inicial e final. Consulte JointType para conferir os possíveis valores.

Retorna
  • o tipo de junção.

public List<PatternItem> getPattern ()

Recebe o padrão do traço desta polilinha.

Retorna
  • o padrão do traço.

public List<LatLng> getPoints ()

Retorna um instantâneo dos vértices desta polilinha neste momento . A lista retornada é uma cópia da lista de vértices. Portanto, as mudanças nos vértices da polilinha não serão refletidas por essa lista, nem as alterações nessa lista serão refletidas pela polilinha. Para mudar os vértices da polilinha, chame setPoints(List).

público Cap getStartCap ()

Recebe o limite no vértice inicial desta polilinha.

Retorna
  • o limite inicial.

Objeto público getTag ()

Recebe a tag da polilinha.

Retorna
  • a tag se ela tiver sido definida com setTag, e null se nenhuma tag tiver sido definida.

public float getWidth ()

Recebe a largura desta polilinha.

Retorna
  • a largura em pixels da tela.

public float getZIndex ()

Recebe o zIndex desta polilinha.

Retorna
  • o zIndex da polilinha.

public int hashCode ()

public boolean isClickable ()

Recebe a capacidade de receber cliques da polilinha. Se a polilinha for clicável, seu app receberá notificações para GoogleMap.OnPolylineClickListener quando o usuário clicar nela. O listener de eventos é registrado usando setOnPolylineClickListener(GoogleMap.OnPolylineClickListener).

Retorna
  • true se a polilinha for clicável. Caso contrário, retorna false.

public boolean isGeodesic ()

Extrai se cada segmento da linha é desenhado como geodésica ou não.

Retorna
  • true se cada segmento for desenhado como geodésicos. false se cada segmento for desenhado como uma linha reta na projeção de Mercator.

public boolean isVisible ()

Recebe a visibilidade desta polilinha.

Retorna
  • a visibilidade desta polilinha.

public void remover ()

Remove essa polilinha do mapa. Depois que uma polilinha é removida, o comportamento de todos os métodos dela fica indefinido.

public void setClickable (booleano clicável)

Define a capacidade de receber cliques da polilinha. Se a polilinha for clicável, seu app receberá notificações para GoogleMap.OnPolylineClickListener quando o usuário clicar nela. O listener de eventos é registrado usando setOnPolylineClickListener(GoogleMap.OnPolylineClickListener).

Parâmetros
clicável Nova configuração de clicabilidade para a polilinha.

public void setColor (int color)

Define a cor desta polilinha.

Parâmetros
cor a cor no formato ARGB

public void setEndCap (Cap endCap)

Define o limite no vértice final desta polilinha. O limite final padrão é ButtCap.

Parâmetros
endCap a imagem final. Não pode ser null.

public void setGeodesic (boolean geodesic)

Define se deve desenhar cada segmento da linha como geodésica ou não.

Parâmetros
geodesic se definido como true, cada segmento será desenhado como uma geodésica. Se for false, cada segmento será desenhado como uma linha reta na projeção de Mercator.

public void setJointType (intjoinType)

Define o tipo de junção para todos os vértices da polilinha, exceto os vértices inicial e final.

Consulte os valores permitidos em JointType. O valor padrão DEFAULT será usado se o tipo de junção for indefinido ou não for um dos valores permitidos.

Parâmetros
jointType o tipo de junção.

public void setPattern (padrão List<PatternItem>)

Define o padrão do traço da polilinha. O padrão do traço é sólido, representado por null.

Parâmetros
padrão o padrão do traço.

public void setPoints (List<LatLng> points)

Define os pontos dessa polilinha. Esse método usa uma cópia dos pontos. Portanto, outras mutações em points não terão efeito nessa polilinha.

Parâmetros
points Uma lista de LatLngs que são os vértices da polilinha.

public void setSpans (List<StyleSpan> spans)

Define os períodos da polilinha.

Parâmetros
períodos

public void setStartCap (Cap startCap)

Define o limite no vértice inicial desta polilinha. O limite inicial padrão é ButtCap.

Parâmetros
startCap o limite inicial. Não pode ser null.

public void setTag (tag de objeto)

Define a tag para a polilinha.

Você pode usar essa propriedade para associar um Object arbitrário a essa polilinha. Por exemplo, Object pode conter dados sobre o que a polilinha representa. Isso é mais fácil do que armazenar um Map<Polyline, Object> separado. Como outro exemplo, você pode associar um ID String correspondente ao ID de um conjunto de dados. O SDK do Google Maps para Android não lê nem grava essa propriedade. É sua responsabilidade chamar setTag(null) para limpar a tag quando você não precisar mais dela e evitar vazamentos de memória no app.

Parâmetros
tag se nulo, a tag é apagada.

public void setVisible (boolean visible)

Define a visibilidade desta polilinha. Quando não está visível, uma polilinha não é desenhada, mas mantém todas as outras propriedades.

Parâmetros
visível se for true, a polilinha será visível; se false, não será.

public void setWidth (largura do ponto flutuante)

Define a largura desta polilinha.

Parâmetros
largura a largura em pixels da tela

public void setZIndex (float zIndex)

Define o zIndex dessa polilinha. As polilinhas com zIndices maiores são desenhadas acima daquelas com índices mais baixos.

Parâmetros
zIndex o zIndex desta polilinha.