Polygon

classe final pública Polygon estende Object

Um polígono na superfície da Terra. Um polígono pode ser convexo ou côncavo, pode abranger o meridiano de 180 e ter buracos não preenchidos. Ele tem as seguintes propriedades:

Contorno
O contorno é especificado por uma lista de vértices em sentido horário ou anti-horário. Não é necessário que os pontos inicial e final coincidam. Se isso não acontecer, o polígono será fechado automaticamente. Segmentos de linha são desenhados entre pontos consecutivos na menor das duas direções (leste ou oeste).
Buracos
Um buraco é uma região dentro do polígono que não é preenchida. Um buraco é especificado exatamente da mesma forma que o contorno. Um buraco precisa estar totalmente contido no contorno. É possível especificar vários buracos, mas não são aceitos buracos sobrepostos.
Largura do traço
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 do traço
Cor do segmento de linha em formato ARGB, o mesmo formato usado por Color. O valor padrão é preto (0xff000000).
Tipo de junta de traço
O tipo de junção define a forma usada ao unir segmentos de linha adjacentes em todos os vértices do contorno do polígono. Consulte JointType para saber quais são os tipos de junção compatíveis. O valor padrão é DEFAULT.
Padrão de traço
São sólidos (padrão, representados por null) ou uma sequência de objetos PatternItem a serem repetidos ao longo do contorno do polígono. Tipos de PatternItem disponíveis: Gap (definido pelo tamanho do intervalo em pixels), Dash (definido pela largura do traço e comprimento do traço em pixels) e Dot (circular, centralizado no contorno do polígono, diâmetro definido pela largura do traço em pixels).
Cor de preenchimento
Cor de preenchimento em formato ARGB, o mesmo formato usado por Color. O valor padrão é transparente (0x00000000). Se a geometria do polígono não for especificada corretamente (consulte "Contorno e buracos" acima), nenhum preenchimento será desenhado.
Z-index
É a ordem em que o polígono é desenhado em relação a outras sobreposições, incluindo Polylines, Circles, GroundOverlays e TileOverlays, 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 valor de Z-index é aleatória. O padrão é 0.
Visibilidade
Indica se o polígono é visível ou invisível, ou seja, se é desenhado no mapa. Um polígono invisível não é desenhado, mas mantém todas as outras propriedades. O padrão é true, ou seja, visível.
Status geodésico
Indica se os segmentos do polígono 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 no polígono, 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.OnPolygonClickListener registrado pelo setOnPolygonClickListener(GoogleMap.OnPolygonClickListener).
Tag
Um Object associado ao polígono. Por exemplo, Object pode conter dados sobre o que o polígono representa. Isso é mais fácil do que armazenar um Map<Polygon, 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.

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 triangle in the Gulf of Guinea
 Polygon polygon = map.addPolygon(new PolygonOptions()
     .add(new LatLng(0, 0), new LatLng(0, 5), new LatLng(3, 5), new LatLng(0, 0))
     .strokeColor(Color.RED)
     .fillColor(Color.BLUE));
 

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 Polygon é igual a outro.
int
getFillColor()
Recebe a cor de preenchimento deste polígono.
List<List<LatLng>>
getHoles()
Retorna um instantâneo dos buracos deste polígono no momento .
String
getId()
Recebe o ID desse polígono.
List<LatLng>
getPoints()
Retorna um instantâneo dos vértices deste polígono no momento .
int
getStrokeColor()
Recebe a cor do traço deste polígono.
int
getStrokeJointType()
Define o tipo de junção de traço usado em todos os vértices do contorno do polígono.
List<PatternItem>
getStrokePattern()
Recebe o padrão do traço do contorno do polígono.
float
getStrokeWidth()
Recebe a largura do traço deste polígono.
Objeto
getTag()
Recebe a tag do polígono.
float
getZIndex()
Recebe o zIndex deste polígono.
int
boolean
isClickable()
Recebe a capacidade de receber cliques do polígono.
boolean
isGeodesic()
Extrai se cada segmento da linha é desenhado como geodésica ou não.
boolean
isVisible()
Recebe a visibilidade deste polígono.
void
remove()
Remove o polígono do mapa.
void
setClickable(booleano clicável)
Define a capacidade de receber cliques do polígono.
void
setFillColor(int color)
Define a cor de preenchimento deste polígono.
void
setGeodesic(booleana geodésica)
Define se deve desenhar cada segmento da linha como geodésica ou não.
void
setHoles(List<? estende os buracos de List<LatLng>>)
Define os buracos deste polígono.
void
setPoints(List<LatLng> points)
Define os pontos desse polígono.
void
setStrokeColor(cor int)
Define a cor do traço deste polígono.
void
setStrokeJointType(intjoinType)
Define o tipo de junção para todos os vértices do contorno do polígono.
void
setStrokePattern(padrão List<PatternItem>)
Define o padrão do traço do contorno do polígono.
void
setStrokeWidth(largura flutuante)
Define a largura do traço desse polígono.
void
setTag(tag de objeto)
Define a tag do polígono.
void
setVisible(booleano visível)
Define a visibilidade deste polígono.
void
setZIndex(zIndex flutuante)
Define o zIndex deste polígono.

Resumo do método herdado

Métodos públicos

public booleano é igual a (Outro objeto)

Testa se esse Polygon é igual a outro.

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

public int getFillColor ()

Recebe a cor de preenchimento deste polígono.

Retorna
  • a cor no formato ARGB.

public List<List<LatLng>> getHoles ()

Retorna um instantâneo dos buracos deste polígono no momento . A lista retornada é uma cópia da lista de buracos. Portanto, as mudanças feitas nos buracos do polígono não são refletidas por essa lista e as mudanças feitas nessa lista não são refletidas pelo polígono.

public String getId ()

Recebe o ID desse polígono. O ID será exclusivo entre todos os polígonos em um mapa.

public List<LatLng> getPoints ()

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

public int getStrokeColor ()

Recebe a cor do traço deste polígono.

Retorna
  • a cor no formato ARGB.

public int getStrokeJointType ()

Define o tipo de junção de traço usado em todos os vértices do contorno do polígono. Consulte JointType para conferir os possíveis valores.

Retorna
  • o tipo de junção de traço.

public List<PatternItem> getStrokePattern ()

Recebe o padrão do traço do contorno do polígono.

Retorna
  • o padrão do traço.

public float getStrokeWidth ()

Recebe a largura do traço deste polígono.

Retorna
  • a largura em pixels da tela.

Objeto público getTag ()

Recebe a tag do polígono.

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

public float getZIndex ()

Recebe o zIndex deste polígono.

Retorna
  • o zIndex do polígono.

public int hashCode ()

public boolean isClickable ()

Recebe a capacidade de receber cliques do polígono. Se o polígono for clicável, seu app receberá notificações para GoogleMap.OnPolygonClickListener quando o usuário clicar nele. O listener de eventos é registrado usando setOnPolygonClickListener(GoogleMap.OnPolygonClickListener).

Retorna
  • true se o polígono 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 deste polígono.

Retorna
  • essa visibilidade de polígono.

public void remover ()

Remove o polígono do mapa. Depois que um polígono é removido, o comportamento de todos os métodos dele é indefinido.

public void setClickable (booleano clicável)

Define a capacidade de receber cliques do polígono. Se o polígono for clicável, seu app receberá notificações para GoogleMap.OnPolygonClickListener quando o usuário clicar nele. O listener de eventos é registrado usando setOnPolygonClickListener(GoogleMap.OnPolygonClickListener).

Parâmetros
clicável Nova configuração de clicabilidade para o polígono.

public void setFillColor (int color)

Define a cor de preenchimento deste polígono.

Parâmetros
cor a cor no formato ARGB

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 setHoles (List<? estende List<LatLng>> buracos)

Define os buracos deste polígono. Esse método usa uma cópia dos buracos. Portanto, outras mutações em holes não terão efeito nesse polígono.

Parâmetros
buracos Uma lista de buracos, em que um buraco é uma lista de LatLngs.

public void setPoints (List<LatLng> points)

Define os pontos desse polígono. Esse método usa uma cópia dos pontos. Portanto, outras mutações em points não terão efeito nesse polígono.

Parâmetros
points Uma lista de LatLngs que são os vértices do polígono.

public void setStrokeColor (int color)

Define a cor do traço deste polígono.

Parâmetros
cor a cor no formato ARGB

public void setStrokeJointType (intjoinType)

Define o tipo de junção para todos os vértices do contorno do polígono.

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 de traço.

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

Define o padrão do traço do contorno do polígono. O padrão do traço padrão é sólido, representado por null.

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

public void setStrokeWidth (largura do ponto flutuante)

Define a largura do traço desse polígono.

Parâmetros
largura a largura em pixels de exibição.

public void setTag (tag de objeto)

Define a tag do polígono.

Você pode usar essa propriedade para associar um Object arbitrário a esse polígono. Por exemplo, Object pode conter dados sobre o que o polígono representa. Isso é mais fácil do que armazenar um Map<Polygon, 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 deste polígono. Quando não está visível, um polígono não é desenhado, mas mantém todas as outras propriedades.

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

public void setZIndex (float zIndex)

Define o zIndex deste polígono. Polígonos com zIndices mais altos são desenhados acima daqueles com índices mais baixos.

Parâmetros
zIndex o zIndex deste polígono.