Um círculo na superfície da Terra (limite esférico).
Um círculo tem as seguintes propriedades.
- Pivô
- O centro do círculo é especificado como
LatLng
. - Radius
- O raio do círculo, especificado em metros. Ele deve ser zero ou maior.
- Largura do traço
- A largura do contorno do círculo 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
- A cor do contorno do círculo no formato ARGB, o mesmo formato usado pelo
Color
. O valor padrão é preto (0xff000000
). - Padrão de traço
- São sólidos (padrão, representados por
null
) ou uma sequência de objetosPatternItem
a serem repetidos ao longo do contorno do círculo. Tipos dePatternItem
disponíveis:Gap
(definido pelo tamanho do intervalo em pixels),Dash
(definido pela largura do traço e comprimento do traço em pixels) eDot
(circular, centralizado no contorno do círculo, diâmetro definido pela largura do traço em pixels). - Cor de preenchimento
- A cor do preenchimento de círculo no formato ARGB, o mesmo formato usado por
Color
. O valor padrão é transparente (0x00000000
). - Z-index
- É a ordem em que a sobreposição de blocos é desenhada em relação a outras sobreposições (incluindo
GroundOverlay
s,TileOverlay
s,Polyline
s ePolygon
s, mas nãoMarker
s). 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 o círculo é visível ou invisível, ou seja, se está desenhado no mapa. Um círculo invisível não é desenhado, mas mantém todas as outras propriedades. O padrão é
true
, ou seja, visível. - Tag
- Um
Object
associado ao círculo. Por exemplo,Object
pode conter dados sobre o que o círculo representa. Isso é mais fácil do que armazenar umMap<Circle, Object>
separado. Também é possível associar um IDString
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 circle in Sydney
Circle circle = map.addCircle(new CircleOptions()
.center(new LatLng(-33.87365, 151.20689))
.radius(10000)
.strokeColor(Color.RED)
.fillColor(Color.BLUE));
O renderizador de mapa atual não poderá desenhar o preenchimento do círculo se ele abranger o polo norte ou o polo sul. No entanto, o contorno ainda será desenhado corretamente.
Guia do desenvolvedor
Para mais informações, leia o guia do desenvolvedor sobre Formas.
Resumo do método público
LatLng | |
int |
getFillColor()
Retorna a cor de preenchimento desse círculo.
|
String |
getId()
Extrai o ID deste círculo.
|
dupla |
getRadius()
Retorna o raio do círculo, em metros.
|
int |
getStrokeColor()
Retorna a cor do traço.
|
List<PatternItem> |
getStrokePattern()
Retorna o padrão do traço do contorno desse círculo.
|
float |
getStrokeWidth()
Retorna a largura do traço.
|
Objeto |
getTag()
Recebe a tag do círculo.
|
float |
getZIndex()
Retorna o zIndex.
|
boolean |
isClickable()
Recebe a capacidade de receber cliques do círculo.
|
boolean |
isVisible()
Verifica se o círculo está visível.
|
void |
remove()
Remove este círculo do mapa.
|
void | |
void |
setClickable(booleano clicável)
Define a capacidade de receber cliques do círculo.
|
void |
setFillColor(int color)
Define a cor de preenchimento.
|
void |
setRadius(raio duplo)
Define o raio em metros.
|
void |
setStrokeColor(cor int)
Define a cor do traço.
|
void | |
void |
setStrokeWidth(largura flutuante)
Define a largura do traço.
|
void |
setTag(tag de objeto)
Define a tag do círculo.
|
void |
setVisible(booleano visível)
Define a visibilidade do círculo.
|
void |
setZIndex(zIndex flutuante)
Define o zIndex.
|
Resumo do método herdado
Métodos públicos
público LatLng getCenter ()
public int getFillColor ()
Retorna a cor de preenchimento desse círculo.
Retorna
- A cor de preenchimento do círculo no formato ARGB.
public String getId ()
Extrai o ID deste círculo. O ID será exclusivo entre todos os círculos em um mapa.
public double getRadius ()
Retorna o raio do círculo, em metros.
Retorna
- O raio em metros.
public int getStrokeColor ()
Retorna a cor do traço.
Retorna
- A cor do círculo no formato ARGB.
public List<PatternItem> getStrokePattern ()
Retorna o padrão do traço do contorno desse círculo.
Retorna
- o padrão do traço.
public float getStrokeWidth ()
Retorna a largura do traço.
Retorna
- A largura em pixels da tela.
Objeto público getTag ()
Recebe a tag do círculo.
Retorna
- a tag se ela tiver sido definida com
setTag
, enull
se nenhuma tag tiver sido definida.
public float getZIndex ()
Retorna o zIndex.
Retorna
- O zIndex deste círculo.
public boolean isClickable ()
Recebe a capacidade de receber cliques do círculo. Se o círculo for clicável, seu app receberá notificações para GoogleMap.OnCircleClickListener
quando o usuário clicar no círculo.
O listener de eventos é registrado usando setOnCircleClickListener(GoogleMap.OnCircleClickListener)
.
Retorna
true
se o círculo for clicável;false
se não for.
public boolean isVisible ()
Verifica se o círculo está visível.
Retorna
true
se o círculo estiver visível;false
se estiver invisível.
public void remover ()
Remove este círculo do mapa. Depois que um círculo é removido, o comportamento de todos os métodos dele fica indefinido.
public void setCenter (LatLng center)
public void setClickable (booleano clicável)
Define a capacidade de receber cliques do círculo. Se o círculo for clicável, seu app receberá notificações para GoogleMap.OnCircleClickListener
quando o usuário clicar no círculo.
O listener de eventos é registrado usando setOnCircleClickListener(GoogleMap.OnCircleClickListener)
.
Parâmetros
clicável | Nova configuração de clicabilidade para o círculo. |
---|
public void setFillColor (int color)
public void setRadius (raio duplo)
Define o raio em metros.
O raio precisa ser zero ou maior.
Parâmetros
raio | O raio, em metros. |
---|
Gera
IllegalArgumentException | se o raio for negativo |
---|
public void setStrokeColor (int color)
public void setStrokePattern (padrão List<PatternItem>)
Define o padrão do traço do contorno do círculo. 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.
A largura do traço é a largura (em pixels da tela) do contorno do círculo. Precisa ser zero ou maior. Se for zero, nenhum contorno será desenhado. O valor padrão é 10.
Parâmetros
largura | Espessura do traço, em pixels da tela. |
---|
Gera
IllegalArgumentException | se a largura for negativa |
---|
public void setTag (tag de objeto)
Define a tag do círculo.
Você pode usar essa propriedade para associar um Object
arbitrário a esse círculo. Por exemplo, Object
pode conter dados sobre o que o círculo representa. Isso é mais fácil do que armazenar um Map<Circle, 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 do círculo.
Se esse círculo não estiver visível, ele não será desenhado. Todos os outros estados são preservados. Os círculos ficam visíveis por padrão.
Parâmetros
visível | true para tornar o círculo visível; false para torná-lo invisível.
|
---|
public void setZIndex (float zIndex)
Define o zIndex.
As sobreposições (como círculos) com zIndices mais altos são desenhadas acima daquelas com índices mais baixos.
Parâmetros
zIndex | O valor de zIndex. |
---|