GMSGeoUtils

GMSGeometryUtils

Classes

structGMSMapPoint
 Um ponto no mapa. Mais...

Typedefs

typedef struct GMSMapPointGMSMapPoint
 Um ponto no mapa.

Funções

GMSMapPointGMSProject (coordenada CLLocationCoordinate2D)
 Projetos coordinate para o mapa.
CLLocationCoordinate2DGMSUnproject (ponto GMSMapPoint)
 Remove a projeção de point do mapa.
GMSMapPointGMSMapPointInterpolate (GMSMapPoint a, GMSMapPoint b, t duplo)
 Retorna um ponto linearmente interpolado no segmento [a, b], na fração t de a.
duploGMSMapPointDistance (GMSMapPoint a, GMSMapPoint b)
 Retorna o comprimento do segmento [a, b] no espaço projetado.
BOOLGMSGeometryContainsLocation (ponto CLLocationCoordinate2D, *caminho GMSPath, BOOL geodésica)
 Retorna se point está dentro do caminho.
BOOLGMSGeometryIsLocationOnPathTolerance (ponto CLLocationCoordinate2D, GMSPath *caminho, BOOL geodésica, tolerância de CLLocationDistance)
 Retorna se point está em ou perto de path, dentro do tolerance especificado em metros.
BOOLGMSGeometryIsLocationOnPath (ponto CLLocationCoordinate2D, *caminho GMSPath, BOOL geodésica)
 O mesmo que GMSGeometryIsLocationOnPath(ponto, caminho, geodésica, tolerância), com tolerância padrão de 0,1 metro.
CLLocationDistanceGMSGeometryDistance (CLLocationCoordinate2D de CLLocationCoordinate2D a)
 Retorna a grande distância do círculo entre duas coordenadas, em metros, no planeta.
CLLocationDistanceGMSGeometryLength (GMSPath *path)
 Retorna o grande comprimento do círculo de path, em metros, no planeta.
duploGMSGeometryArea (*caminho GMSPath)
 Retorna a área de um polígono geodésico definido por path no Earth.
duploGMSGeometrySignedArea (*caminho GMSPath)
 Retorna a área sinalizada de um polígono geodésico definido por path no Earth.
CLLocationDirectionGMSGeometryHeading (CLLocationCoordinate2D de, CLLocationCoordinate2D a)
 Retorna a direção inicial (graus no sentido horário do norte) em from do caminho mais curto para to.
CLLocationCoordinate2DGMSGeometryOffset (CLLocationCoordinate2D de, distância CLLocationDistance, direção CLLocationDirection)
 Retorna a coordenada de destino quando começa em from com heading inicial e percorre distance metros ao longo de um grande arco circular na Terra.
CLLocationCoordinate2DGMSGeometryInterpolate (CLLocationCoordinate2D de, CLLocationCoordinate2D a, fração dupla)
 Retorna a coordenada que está no fraction especificado do caminho entre as coordenadas from e to no caminho mais curto entre os dois.
NSArray< GMSStyleSpan * > * GMSStyleSpans (caminho GMSPath *path, NSArray< GMSStrokeStyle * > *estilos, NSArray< NSNumber * > *lengths, GMSLengthKind lengthKind)
 Retorna uma NSArray de GMSStyleSpan construída pela aplicação repetida de informações de estilo e comprimento de styles e lengths ao longo de path.
NSArray< GMSStyleSpan * > * GMSStyleSpansOffset (GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths, GMSLengthKind lengthKind, double lengthOffset)
 Semelhante a GMSStyleSpans(path, styles, lengths, lengthKind), mas também possui um deslocamento de comprimento inicial que será ignorado em relação à matriz lengths.

Documentação de Typedef

typedef struct GMSMapPoint GMSMapPoint

Um ponto no mapa.

Pode representar uma coordenada projetada.

x está em [-1, 1]. A direção do eixo é normal: y cresce em direção ao norte, e x cresce em direção a leste. (0, 0) é o centro do mapa.

Veja GMSProject() e GMSUnproject().


Documentação de funções

GMSMapPoint GMSProject ( CLLocationCoordinate2D coordenada)

Projetos coordinate para o mapa.

coordinate precisa ser válido.

CLLocationCoordinate2D GMSUnproject ( GMSMapPoint ponto)

Remove a projeção de point do mapa.

point.x precisa estar em [-1, 1].

Retorna um ponto linearmente interpolado no segmento [a, b], na fração t de a.

t==0 corresponde a a, t==1 corresponde a b.

A interpolação ocorre ao longo do caminho curto entre os pontos que podem cruzar a linha de data. Por exemplo, a interpolação de São Francisco para Tóquio vai passar ao norte do Havaí e cruzar a linha de data.

Retorna o comprimento do segmento [a, b] no espaço projetado.

O comprimento é calculado ao longo do caminho curto entre os pontos que podem cruzar a linha da data. Por exemplo, a distância entre os pontos correspondentes a São Francisco e Tóquio mede o segmento que passa ao norte do Havaí cruzando a linha de data.

BOOL GMSGeometryContainsLocation ( CLLocationCoordinate2D point,
GMSPath path,
BOOL geodesic
)

Retorna se point está dentro do caminho.

O caminho é sempre considerado fechado, independente de o último ponto ser igual ao primeiro ou não.

O interior é definido como não contendo o Polo Sul. Ele está sempre do lado de fora.

path descreve grandes segmentos de círculo se geodesic for SIM, e segmentos de rhumbo (loxdrômicos) se não for.

Se point for exatamente igual a um dos vértices, o resultado será YES. Um ponto diferente de um vértice fica em um lado ou no outro de qualquer segmento de caminho. Ele nunca pode estar "exatamente na borda".

Consulte GMSGeometryIsLocationOnPath() para ver um teste de borda com tolerância.

BOOL GMSGeometryIsLocationOnPathTolerance ( CLLocationCoordinate2D point,
GMSPath path,
BOOL geodesic,
CLLocationDistance tolerância
)

Retorna se point está em ou perto de path, dentro do tolerance especificado em metros.

path é composto por grandes segmentos de círculo se geodesic for YES e de segmentos rhumbo (loxofômicos) se geodesic for NO.

Consulte também GMSGeometryIsLocationOnPath(ponto, caminho, geodésica).

A tolerância, em metros, é relativa ao raio esférico da Terra. Se você precisar trabalhar em uma esfera de raio diferente, poderá calcular a tolerância equivalente da tolerância desejada na esfera do raio R: tolerância = tolerantR * (RadiusEarth / R), com RadiusEarth==6371009.

BOOL GMSGeometryIsLocationOnPath ( CLLocationCoordinate2D point,
GMSPath path,
BOOL geodesic
)

O mesmo que GMSGeometryIsLocationOnPath(ponto, caminho, geodésica, tolerância), com tolerância padrão de 0,1 metro.

CLLocationDistance GMSGeometryDistance ( CLLocationCoordinate2D from,
CLLocationCoordinate2D a
)

Retorna a grande distância do círculo entre duas coordenadas, em metros, no planeta.

Esta é a distância mais curta entre as duas coordenadas na esfera.

Ambas as coordenadas devem ser válidas.

CLLocationDistance GMSGeometryLength ( GMSPath path)

Retorna o grande comprimento do círculo de path, em metros, no planeta.

Esta é a soma de GMSGeometryDistance() nos segmentos do caminho.

Todas as coordenadas do caminho precisam ser válidas.

GMSGeometryArea duplo ( GMSPath path)

Retorna a área de um polígono geodésico definido por path no Earth.

A parte "dentro" do polígono é definida como não contendo o polo sul.

Se path não for fechado, ele será tratado implicitamente como um caminho fechado e o resultado será o mesmo.

Todas as coordenadas do caminho precisam ser válidas.

O polígono precisa ser simples (não sobreposto) e pode ser côncavo.

Se algum segmento do caminho for um par de pontos antipodais, o resultado será indefinido, porque dois pontos antipodais não formam um segmento de círculo grande exclusivo na esfera.

duplo GMSGeometrySignedArea ( GMSPath path)

Retorna a área sinalizada de um polígono geodésico definido por path no Earth.

O resultado tem o mesmo valor absoluto que GMSGeometryArea(); será positivo se os pontos do caminho estiverem em ordem anti-horário, e negativo se não estiverem.

As mesmas restrições de GMSGeometryArea() se aplicam.

CLLocationDirection GMSGeometryHeading ( CLLocationCoordinate2D from,
CLLocationCoordinate2D a
)

Retorna a direção inicial (graus no sentido horário do norte) em from do caminho mais curto para to.

O valor retornado está no intervalo [0, 360).

Retorna 0 se as duas coordenadas forem iguais.

Ambas as coordenadas devem ser válidas.

Para obter a orientação final em to, é possível usar (GMSGeometryDirection(to, from) + 180) módulo 360.

CLLocationCoordinate2D GMSGeometryOffset ( CLLocationCoordinate2D from,
CLLocationDistance distance,
CLLocationDirection heading
)

Retorna a coordenada de destino quando começa em from com heading inicial e percorre distance metros ao longo de um grande arco circular na Terra.

A longitude resultante está no intervalo [-180, 180).

Ambas as coordenadas devem ser válidas.

CLLocationCoordinate2D GMSGeometryInterpolate ( CLLocationCoordinate2D from,
CLLocationCoordinate2D to,
duplo fração
)

Retorna a coordenada que está no fraction especificado do caminho entre as coordenadas from e to no caminho mais curto entre os dois.

A longitude resultante está no intervalo [-180, 180).

NSArray<GMSStyleSpan *>* GMSStyleSpans ( GMSPath path,
NSArray< GMSStrokeStyle * > *  estilos,
NSArray< NSNumber * > *  lengths,
GMSLengthKind lengthKind
)

Retorna uma NSArray de GMSStyleSpan construída pela aplicação repetida de informações de estilo e comprimento de styles e lengths ao longo de path.

path é o caminho pelo qual os períodos de saída são calculados. styles uma NSArray de GMSStrokeStyle. Quebra se consumido. Este campo é obrigatório. lengths: uma NSArray de NSNumber; cada entrada fornece o comprimento do estilo correspondente de styles. Quebra se consumido. Este campo é obrigatório. lengthKind: a interpretação dos valores de lengths (geodésica, estufa ou projetada).

Exemplo: uma polilinha com vão alternadas em preto e branco:

 GMSMutablePath *path;
 NSArray *styles = @[[GMSStrokeStyle solidColor:[UIColor whiteColor]],
                     [GMSStrokeStyle solidColor:[UIColor blackColor]]];
 NSArray *lengths = @[@100000, @50000];
 polyline.path = path;
 polyline.spans = GMSStyleSpans(path, styles, lengths, kGMSLengthRhumb);
 
NSArray<GMSStyleSpan *>* GMSStyleSpansOffset ( GMSPath path,
NSArray< GMSStrokeStyle * > *  estilos,
NSArray< NSNumber * > *  lengths,
GMSLengthKind lengthKind,
duplo lengthOffset
)

Semelhante a GMSStyleSpans(path, styles, lengths, lengthKind), mas também possui um deslocamento de comprimento inicial que será ignorado em relação à matriz lengths.

lengthOffset é o comprimento (por exemplo, em metros) que precisa ser ignorado inicialmente em lengths.