GMSGeometryUtils

GMSGeometryUtils

클래스

구조체GMSMapPoint
 지도상의 한 지점 더보기...

형식 정의

typedef 구조체 GMSMapPointGMSMapPoint
 지도상의 한 지점

함수

GMSMapPointGMSProject (CLLocationCoordinate2D 좌표)
 coordinate를 지도에 투영합니다.
CLLocationCoordinate2DGMSUnproject (GMSMapPoint 지점)
 지도에서 point 프로젝트를 취소합니다.
GMSMapPointGMSMapPointInterpolate (GMSMapPoint a, GMSMapPoint b, double t)
 세그먼트 [a, b]에서 a의 분수 t에 있는 선형 보간된 지점을 반환합니다.
이중GMSMapPointDistance (GMSMapPoint a, GMSMapPoint b)
 투영된 공간에서 세그먼트 [a, b] 의 길이를 반환합니다.
부울GMSGeometryContainsLocation (CLLocationCoordinate2D 점, GMSPath *경로, BOOL 최단 거리)
 point이 경로 내에 있는지 여부를 반환합니다.
부울GMSGeometryIsLocationOnPathTolerance (CLLocationCoordinate2D 점, GMSPath *경로, BOOL 최단 거리, CLLocationDistance 허용 오차)
 point가 지정된 tolerance 내(미터 단위) 내 path 위 또는 근처에 있는지 여부를 반환합니다.
부울GMSGeometryIsLocationOnPath (CLLocationCoordinate2D 점, GMSPath *경로, BOOL 최단 거리)
 GMSGeometryIsLocationOnPath(지점, 경로, 측지, 허용 오차)와 동일하며 기본 공차는 0.1미터입니다.
CLLocationDistanceGMSGeometryDistance (CLLocationCoordinate2D, CLLocationCoordinate2D)
 지구에서 두 좌표 사이의 대원 거리를 미터 단위로 반환합니다.
CLLocationDistanceGMSGeometryLength (GMSPath *경로)
 지구상의 대원 길이(path)를 미터 단위로 반환합니다.
이중GMSGeometryArea (GMSPath *경로)
 지구에서 path로 정의된 최단 거리 다각형의 면적을 반환합니다.
이중GMSGeometrySignedArea (GMSPath *경로)
 지구에서 path로 정의된 최단 거리 다각형의 서명된 영역을 반환합니다.
CLLocationDirectionGMSGeometryHeading (CLLocationCoordinate2D, CLLocationCoordinate2D)
 to에 대한 최단 경로의 from에서 초기 방위 (북쪽을 시계 방향으로 도는 각도)를 반환합니다.
CLLocationCoordinate2DGMSGeometryOffset (CLLocationCoordinate2D from, CLLocationDistance 거리, CLLocationDirection 방향)
 첫 번째 heading에서 from에서 시작할 때 지구에서 대원호를 따라 distance미터 이동하는 대상 좌표를 반환합니다.
CLLocationCoordinate2DGMSGeometryInterpolate (CLLocationCoordinate2D, CLLocationCoordinate2D, 이중 분수)
 두 좌표 사이의 최단 경로에서 fromto 좌표 사이의 지정된 fraction에 위치하는 좌표를 반환합니다.
NSArray< GMSStyleSpan * > * GMSStyleSpans (GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths, GMSLengthKind lengthKind)
 path와 함께 styleslengths의 스타일 및 길이 정보를 반복적으로 적용하여 GMSStyleSpan의 NSArray를 반환합니다.
NSArray< GMSStyleSpan * > * GMSStyleSpansOffset (GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths, GMSLengthKindlengthKind, double longOffset)
 GMSStyleSpans(path, 스타일, 길이, 길이 종류)와 비슷하지만 lengths 배열을 기준으로 건너뛰는 초기 길이 오프셋을 추가로 사용합니다.

Typedef 문서

typedef 구조체 GMSMapPoint GMSMapPoint

지도상의 한 지점

투영된 좌표를 나타낼 수 있습니다.

x는 [-1, 1]에 있습니다. 축 방향은 정상입니다. y는 북쪽을 향하고 x는 동쪽을 향합니다. (0, 0)은 지도의 중심입니다.

GMSProject()GMSUnproject()를 참고하세요.


함수 문서

GMSMapPoint GMSProject ( CLLocationCoordinate2D 좌표)

coordinate를 지도에 투영합니다.

coordinate 값은 유효해야 합니다.

CLLocationCoordinate2D GMSUnproject ( GMSMapPoint 포인트)

지도에서 point 프로젝트를 취소합니다.

point.x는 [-1, 1]에 있어야 합니다.

세그먼트 [a, b]에서 a의 분수 t에 있는 선형 보간된 지점을 반환합니다.

t==0은 a에 상응하고 t==1은 b에 상응합니다.

보간은 잠재적으로 날짜선을 가로지르는 점 사이의 짧은 경로를 따라 진행됩니다. 예를 들어 샌프란시스코에서 도쿄로 보간하면 하와이 북쪽을 지나 날짜 선을 넘어갑니다.

투영된 공간에서 세그먼트 [a, b] 의 길이를 반환합니다.

길이는 날짜 선을 넘을 수 있는 점 사이의 짧은 경로를 따라 계산됩니다. 예를 들어 샌프란시스코와 도쿄에 해당하는 지점 간의 거리는 날짜선을 지나 하와이 북쪽을 통과하는 구간을 측정합니다.

BOOL GMSGeometryContainsLocation ( CLLocationCoordinate2D 포인트
GMSPath path,
부울 측지
)

point이 경로 내에 있는지 여부를 반환합니다.

경로는 마지막 지점이 첫 번째 지점과 일치하는지 여부에 관계없이 항상 닫힌 것으로 간주됩니다.

내부는 남극을 포함하지 않는 것으로 정의됩니다. 남극은 항상 외부에 있습니다.

pathgeodesic이 YES인 경우 큰 원 세그먼트를, 그렇지 않으면 엄지손가락 (loxodromic) 세그먼트를 설명합니다.

point이 꼭짓점 중 하나와 정확하게 같으면 결과는 YES입니다. 꼭짓점과 같지 않은 점은 경로 세그먼트의 한쪽 또는 다른 쪽에 있습니다. 꼭 '경계선에 정확히' 있을 수는 없습니다.

허용 오차를 적용한 테두리 테스트를 보려면 GMSGeometryIsLocationOnPath()를 참고하세요.

부울 GMSGeometryIsLocationOnPathTolerance ( CLLocationCoordinate2D 포인트
GMSPath path,
부울 측지선,
CLLocationDistance 관용
)

point가 지정된 tolerance 내(미터 단위) 내 path 위 또는 근처에 있는지 여부를 반환합니다.

pathgeodesic가 YES인 경우 대원 세그먼트로, geodesic가 NO인 경우 대강선 세그먼트로 구성됩니다.

GMSGeometryIsLocationOnPath(point, path, geodesic)도 참고하세요.

허용 오차(미터)는 지구의 구면 반지름을 기준으로 합니다. 반지름이 다른 구에서 작업해야 하는 경우 반경 R인 구의 원하는 공차로부터 동등한 공차를 계산할 수 있습니다. 공차 = 허용 오차 R * (반경 지구 / R), RadiusEarth==6371009.

부울: GMSGeometryIsLocationOnPath ( CLLocationCoordinate2D 포인트
GMSPath path,
부울 측지
)

GMSGeometryIsLocationOnPath(지점, 경로, 측지, 허용 오차)와 동일하며 기본 공차는 0.1미터입니다.

CLLocationDistance GMSGeometryDistance ( CLLocationCoordinate2D 보낸 사람,
CLLocationCoordinate2D 받는사람
)

지구에서 두 좌표 사이의 대원 거리를 미터 단위로 반환합니다.

구에서 두 좌표 간의 최단 거리입니다.

두 좌표가 모두 유효해야 합니다.

CLLocationDistance GMSGeometryLength ( GMSPath 경로)

지구상의 대원 길이(path)를 미터 단위로 반환합니다.

이는 경로 구간에 대한 GMSGeometryDistance()의 합입니다.

경로의 모든 좌표가 유효해야 합니다.

이중 GMSGeometryArea ( GMSPath 경로)

지구에서 path로 정의된 최단 거리 다각형의 면적을 반환합니다.

다각형의 '내부'는 남극을 포함하지 않는 것으로 정의됩니다.

path가 닫히지 않은 경우 암시적으로 닫힌 경로로 취급되며 결과는 동일합니다.

경로의 모든 좌표가 유효해야 합니다.

다각형은 단순해야 하며 (자체적으로 겹치지 않아야 함) 오목할 수 있습니다.

경로의 한 세그먼트가 한 쌍의 대척점일 경우 결과는 정의되지 않습니다. 두 대척점은 구에서 고유한 대권분할을 형성하지 않기 때문입니다.

이중 GMSGeometrySignedArea ( GMSPath 경로)

지구에서 path로 정의된 최단 거리 다각형의 서명된 영역을 반환합니다.

결과는 GMSGeometryArea()와 동일한 절댓값을 갖습니다. 경로의 지점이 시계 반대 방향 순서이면 양수이고 그렇지 않으면 음수입니다.

GMSGeometryArea()와 동일한 제한사항이 적용됩니다.

CLLocationDirection GMSGeometryHeading ( CLLocationCoordinate2D 보낸 사람,
CLLocationCoordinate2D 받는사람
)

to에 대한 최단 경로의 from에서 초기 방위 (북쪽을 시계 방향으로 도는 각도)를 반환합니다.

반환된 값의 범위는 [0, 360).

두 좌표가 동일하면 0을 반환합니다.

두 좌표가 모두 유효해야 합니다.

to에서 최종 방향을 가져오려면 (GMSGeometryHeading(to, from) + 180) 모듈로 360을 사용하면 됩니다.

CLLocationCoordinate2D GMSGeometryOffset ( CLLocationCoordinate2D 보낸 사람,
CLLocationDistance 거리,
CLLocationDirection 제목
)

첫 번째 heading에서 from에서 시작할 때 지구에서 대원호를 따라 distance미터 이동하는 대상 좌표를 반환합니다.

결과 경도는 [-180, 180).

두 좌표가 모두 유효해야 합니다.

CLLocationCoordinate2D GMSGeometryInterpolate ( CLLocationCoordinate2D 보낸 사람,
CLLocationCoordinate2D to,
이중 분수
)

두 좌표 사이의 최단 경로에서 fromto 좌표 사이의 지정된 fraction에 위치하는 좌표를 반환합니다.

결과 경도는 [-180, 180).

NSArray<GMSStyleSpan *>* GMSStyleSpans ( GMSPath path,
NSArray< GMSStrokeStyle * > *  스타일,
NSArray< NSNumber * > *  길이,
GMSLengthKind 클래스의 lengthKind:
)

path와 함께 styleslengths의 스타일 및 길이 정보를 반복적으로 적용하여 GMSStyleSpan의 NSArray를 반환합니다.

path: 출력 스팬이 계산되는 경로입니다. stylesGMSStrokeStyle의 NSArray입니다. 소비되면 래핑됩니다. 비워 둘 수 없습니다. lengths - NSNumber의 NSArray. 각 항목은 styles에서 해당 스타일의 길이를 제공합니다. 소비되면 래핑됩니다. 비워 둘 수 없습니다. lengthKind: lengths의 값 해석 (측지, rhumb 또는 프로젝션)

예: 흑백 범위가 교대로 표시되는 다중선:

 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 * > *  스타일,
NSArray< NSNumber * > *  길이,
GMSLengthKind 클래스의 lengthKind,
이중 lengthOffset:
)

GMSStyleSpans(path, 스타일, 길이, 길이 종류)와 비슷하지만 lengths 배열을 기준으로 건너뛰는 초기 길이 오프셋을 추가로 사용합니다.

lengthOffset: lengths에서 처음에 건너뛰어야 하는 길이 (예: 미터)입니다.