クラス | |
構造体 | GMSMapPoint |
地図上の地点。その他... | |
Typedef | |
typedef 構造体 GMSMapPoint | GMSMapPoint |
地図上の地点。 | |
関数 | |
GMSMapPoint | GMSProject(CLLocationCoordinate2D 座標) |
地図へのプロジェクト coordinate 。 | |
CLLocationCoordinate2D | GMSUnproject(GMSMapPoint ポイント) |
地図から point のプロジェクトを解除します。 | |
GMSMapPoint | GMSMapPointInterpolate(GMSMapPoint a、GMSMapPoint b、double t) |
a から分数 t までの線分 [a, b] 上の線形補間された点を返します。 | |
double | GMSMapPointDistance(GMSMapPoint a、GMSMapPoint b) |
投影空間での線分 [a, b] の長さを返します。 | |
BOOL | GMSGeometryContainsLocation(CLLocationCoordinate2D ポイント、GMSPath *path, BOOL 測地線) |
point がパス内にあるかどうかを返します。 | |
BOOL | GMSGeometryIsLocationOnPathTolerance(CLLocationCoordinate2D ポイント、GMSPath *path、BOOL 測地線、CLLocationDistance の許容範囲) |
point が path またはその近くで、メートル単位で指定された tolerance 内にあるかどうかを返します。 | |
BOOL | GMSGeometryIsLocationOnPath(CLLocationCoordinate2D ポイント、GMSPath *path, BOOL 測地線) |
GMSGeometryIsLocationOnPath(point, path, geodesic, tolerance) と同じで、デフォルトの許容値は 0.1 メートルです。 | |
CLLocationDistance | GMSGeometryDistance(CLLocationCoordinate2D から、CLLocationCoordinate2D まで) |
地球上の 2 つの座標間の大円距離をメートル単位で返します。 | |
CLLocationDistance | GMSGeometryLength(GMSPath *path) |
地球上の path の大円の長さをメートル単位で返します。 | |
double | GMSGeometryArea(GMSPath *path) |
地球上の path によって定義される測地線ポリゴンの面積を返します。 | |
double | GMSGeometrySignedArea(GMSPath *path) |
地球上の path によって定義された測地線ポリゴンの符号付き領域を返します。 | |
CLLocationDirection | GMSGeometryHeading(CLLocationCoordinate2D から CLLocationCoordinate2D まで) |
to への最短経路の from における最初の方角(北の時計回りの度数)を返します。 | |
CLLocationCoordinate2D | GMSGeometryOffset(CLLocationCoordinate2D from、CLLocationDistance 距離、CLLocationDirection 方角) |
最初の heading で from を始点とし、大円弧に沿って distance メートル移動した場合の目的地の座標を返します。 | |
CLLocationCoordinate2D | GMSGeometryInterpolate(CLLocationCoordinate2D from、CLLocationCoordinate2D to、2 倍分数) |
from 座標と to 座標の間の経路の指定された fraction にある座標を、2 つの座標間の最短経路で返します。 | |
NSArray< GMSStyleSpan * > * | GMSStyleSpans(GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths、GMSLengthKindlengthKind) |
styles と lengths のスタイルと長さの情報を path に沿って繰り返し適用することで構築された GMSStyleSpan の NSArray を返します。 | |
NSArray< GMSStyleSpan * > * | GMSStyleSpansOffset(GMSPath *path, NSArray< GMSStrokeStyle * > *styles、NSArray< NSNumber * > *lengths、GMSLengthKindlengthKind、doublelengthOffset) |
GMSStyleSpans(path, styles, lengths, lengthKind) と似ていますが、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] に配置する必要があります。
GMSMapPoint GMSMapPointInterpolate | ( | GMSMapPoint | a、 |
GMSMapPoint | b、 | ||
double | t | ||
) |
a
から分数 t
までの線分 [a, b] 上の線形補間された点を返します。
t
==0 は a
に対応し、t
==1 は b
に対応します。
補間は、日付ラインと交差する可能性のあるポイント間の短いパスに沿って行われます。たとえば、サンフランシスコから東京までを補間すると、ハワイの北を通過して日付のラインを横切ることになります。
倍精度の GMSMapPointDistance | ( | GMSMapPoint | a、 |
GMSMapPoint | b | ||
) |
投影空間での線分 [a, b] の長さを返します。
距離は、日付ラインと交差する可能性のあるポイント間の短いパスに沿って計算されます。たとえば、サンフランシスコと東京に対応する点間の距離は、日付ラインと交差しながらハワイの北部を通るセグメントを測定します。
BOOL GMSGeometryContainsLocation | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | 測地線 | ||
) |
point
がパス内にあるかどうかを返します。
終点が始点と等しいかどうかにかかわらず、この経路は常に閉じていると見なされます。
内側は、南極を含まないように定義されており、南極は常に外側にあります。
path
は、geodesic
が YES の場合は大円セグメントを示し、それ以外の場合は rhumb(loxodromic)セグメントを表します。
point
がいずれかの頂点と完全に等しい場合、結果は YES になります。頂点に等しくないポイントは、パスセグメントの一方の側またはもう一方の側にあります。「正確に境界上にある」ことはできません。
許容値を使用した境界テストについては、GMSGeometryIsLocationOnPath() をご覧ください。
BOOL GMSGeometryIsLocationOnPathTolerance | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | 測地線、 | ||
CLLocationDistance | tolerance | ||
) |
point
が path
またはその近くで、メートル単位で指定された tolerance
内にあるかどうかを返します。
path
は、geodesic
が YES の場合は大円セグメントで構成され、geodesic
が NO の場合は rhumb(二色性)セグメントで構成されます。
「GMSGeometryIsLocationOnPath(ポイント, パス, 測地線)」もご覧ください。
許容差(メートル単位)は、地球の球面半径に対する相対値です。異なる半径の球面に取り組む必要がある場合は、半径 R の球面に対する許容差から等価許容差を計算できます。許容差 = toleranceR * (RadiusEarth / R)(RadiusEarth==6371009)として計算できます。
BOOL GMSGeometryIsLocationOnPath | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | 測地線 | ||
) |
GMSGeometryIsLocationOnPath(point, path, geodesic, tolerance) と同じで、デフォルトの許容値は 0.1 メートルです。
CLLocationDistance GMSGeometryDistance | ( | CLLocationCoordinate2D | from、 |
CLLocationCoordinate2D | から | ||
) |
地球上の 2 つの座標間の大円距離をメートル単位で返します。
球面上の 2 つの座標間の最短距離です。
どちらの座標も有効である必要があります。
CLLocationDistance GMSGeometryLength | ( | GMSPath * | path | ) |
ダブル GMSGeometryArea を | ( | GMSPath * | path | ) |
地球上の path
によって定義される測地線ポリゴンの面積を返します。
ポリゴンの「内側」は、南極を含まない位置に定義されます。
path
が閉じられていなくても、閉じられたパスとして暗黙的に扱われ、同じ結果になります。
パスの座標はすべて有効でなければなりません。
ポリゴンはシンプル(自己重なり合わない)でなければならず、凹面であってもかまいません。
経路のいずれかのセグメントが対立点のペアである場合、結果は未定義になります。2 つの対立点は、球面上で独自の大きな円弧を形成しないためです。
ダブル GMSGeometrySignedArea | ( | GMSPath * | path | ) |
地球上の path
によって定義された測地線ポリゴンの符号付き領域を返します。
結果の絶対値は GMSGeometryArea() と同じです。パスの各地点が反時計回りの順にある場合は正の値、それ以外の場合は負の値になります。
GMSGeometryArea() と同じ制限が適用されます。
CLLocationDirection GMSGeometryHeading | ( | CLLocationCoordinate2D | from、 |
CLLocationCoordinate2D | から | ||
) |
to
への最短経路の from
における最初の方角(北の時計回りの度数)を返します。
戻り値は [0, 360] の範囲です。
2 つの座標が同じ場合は 0 を返します。
どちらの座標も有効である必要があります。
to
の最終方角を取得するには、(GMSGeometryHeading(to, from
) + 180) 360 法を使用します。
CLLocationCoordinate2D GMSGeometryOffset | ( | CLLocationCoordinate2D | from、 |
CLLocationDistance | distance、 | ||
CLLocationDirection | heading | ||
) |
最初の heading
で from
を始点とし、大円弧に沿って distance
メートル移動した場合の目的地の座標を返します。
結果として得られる経度は [-180, 180] の範囲になります。
どちらの座標も有効である必要があります。
CLLocationCoordinate2D GMSGeometryInterpolate | ( | CLLocationCoordinate2D | from、 |
CLLocationCoordinate2D | to、 | ||
double | 分数 | ||
) |
from
座標と to
座標の間の経路の指定された fraction
にある座標を、2 つの座標間の最短経路で返します。
結果として得られる経度は [-180, 180] の範囲になります。
NSArray<GMSStyleSpan *>* GMSStyleSpans | ( | GMSPath * | path、 |
NSArray< GMSStrokeStyle * > * | styles、 | ||
NSArray< NSNumber * > * | length、 | ||
GMSLengthKind | lengthKind | ||
) |
styles
と lengths
のスタイルと長さの情報を path
に沿って繰り返し適用することで構築された GMSStyleSpan の NSArray を返します。
path
は、出力スパンを計算するパスです。styles
: GMSStrokeStyle の 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 * > * | styles、 | ||
NSArray< NSNumber * > * | length、 | ||
GMSLengthKind | lengthKind、 | ||
double | lengthOffset | ||
) |
GMSStyleSpans(path, styles, lengths, lengthKind) と似ていますが、lengths
配列に対してスキップされる初期の長さオフセットを受け取ります。
lengthOffset
: lengths
から最初にスキップする長さ(メートル単位など)。