等级 | |
结构体 | GMSMapPoint |
地图上的点。更多... | |
类型定义符 | |
typedef 结构 GMSMapPoint | GMSMapPoint |
地图上的点。 | |
函数 | |
GMSMapPoint | GMSProject(CLLocationCoordinate2D 坐标) |
将 coordinate 投影到地图。 | |
CLLocationCoordinate2D | GMSUnproject(GMSMapPoint 点)GMSMapPoint |
从地图中取消投影 point 。 | |
GMSMapPoint | GMSMapPointInterpolate(GMSMapPoint a、GMSMapPoint b、double t) |
返回线段 [a, b] 上与 a 的分数 t 处的线性插值点。 | |
双精度 | 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 from、CLLocationCoordinate2D to) |
返回地球上两个坐标之间的大圆距离(以米为单位)。 | |
CLLocationDistance | GMSGeometryLength(GMSPath *路径)GMSPath |
返回地球上 path 的大圆长度(以米为单位)。 | |
双精度 | GMSGeometryArea(GMSPath *路径) |
返回由地球上的 path 定义的测地多边形的面积。 | |
双精度 | GMSGeometrySignedArea(GMSPath *路径) |
返回由地球上的 path 定义的测地多边形的带符号面积。 | |
CLLocationDirection | GMSGeometryHeading(CLLocationCoordinate2D from、CLLocationCoordinate2D to) |
返回到 to 最短路径 from 处的初始方向(北顺时针角度)。 | |
CLLocationCoordinate2D | GMSGeometryOffset(CLLocationCoordinate2D from、CLLocationDistance 距离、CLLocationDirection 方向角) |
返回目的地坐标(当起点为 from 且初始值为 heading 时,沿着地球上的大圆弧行进 distance 米)。 | |
CLLocationCoordinate2D | GMSGeometryInterpolate(CLLocationCoordinate2D from、CLLocationCoordinate2D to、双精度) |
返回位于 from 和 to 坐标之间的最短路径上的指定 fraction 之间的坐标。 | |
NSArray<GMSStyleSpan * >* | GMSStyleSpans (GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths, GMSLengthKind lengthKind) |
返回 GMSStyleSpan 的 NSArray,通过沿 path 重复应用来自 styles 和 lengths 的样式和长度信息构造而成。 | |
NSArray<GMSStyleSpan * >* | GMSStyleSpansOffset (GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths, GMSLengthKind lengthKind, double lengthOffset) |
与 GMSStyleSpans(path, styles, lengths, lengthKind) 类似,但额外采用了将相对于 lengths 数组跳过的初始长度偏移量。 |
Typedef 文档
typedef struct 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、 | ||
双精度 | t | ||
) |
返回线段 [a, b] 上与 a
的分数 t
处的线性插值点。
t
==0 对应于 a
,t
==1 对应于 b
。
插值沿着可能跨越日期线的点之间的较短路径进行。例如:从旧金山到东京的插值将经过夏威夷北部并跨越日期线。
双GMSMapPointDistance | ( | GMSMapPoint | a, |
GMSMapPoint | b | ||
) |
返回片段 [a, b] 在投影空间内的长度。
长度是沿着可能跨越日期线的点之间的较短路径计算的。例如:旧金山和东京对应的点之间的距离用于测量穿过夏威夷北部跨越日期线的线段。
BOOL GMSGeometryContainsLocation | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | 测地 | ||
) |
返回 point
是否位于路径内部。
无论该路径的最后一点是否等于第一个点,该路径始终会被视为闭合路径。
“内部”定义为不包含南极,南极始终位于外部。
如果 geodesic
为 YES,path
描述大圆段,否则描述朗姆(黄体素)段。
如果 point
与其中一个顶点完全相同,则结果为 YES。不等于顶点的点位于任何路径段的一侧或另一侧 - 它永远不能“恰好位于
边框”。
有关具有公差的边界测试,请参阅GMSGeometryIsLocationOnPath()。
BOOL GMSGeometryIsLocationOnPathTolerance | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | geodesic、 | ||
CLLocationDistance | 容忍度 | ||
) |
返回 point
是否位于 path
上或附近(以米为单位的 tolerance
内)。
如果 geodesic
为“是”,则“path
”由大圆圈段组成;如果 geodesic
为否,则由长形(黄体性)段组成。
另请参阅 GMSGeometryIsLocationOnPath(点、路径、测地线)。
公差(以米为单位)相对于地球的球面半径。如果您需要处理不同半径的球面,可以使用半径 R 的球面上的所需公差来计算等效公差:公差 = toleranceR * (RadiusEarth / R),RadiusEarth==6371009。
BOOL GMSGeometryIsLocationOnPath | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | 测地 | ||
) |
与 GMSGeometryIsLocationOnPath(point, path, geodesic, tolerance) 相同,默认公差为 0.1 米。
CLLocationDistance GMSGeometryDistance | ( | CLLocationCoordinate2D | 发件人: |
CLLocationCoordinate2D | 到 | ||
) |
返回地球上两个坐标之间的大圆距离(以米为单位)。
这是球面上两个坐标之间的最短距离。
两个坐标都必须有效。
CLLocationDistance GMSGeometryLength | ( | GMSPath * | path | ) |
双 GMSGeometryArea | ( | GMSPath * | path | ) |
返回由地球上的 path
定义的测地多边形的面积。
“内部”多边形定义为不包含南极。
如果 path
未闭合,则系统会将其隐式视为闭合路径,并且结果相同。
路径的所有坐标都必须有效。
多边形必须简单(不能自重叠),并且可以是凹陷的。
如果路径的任何段是一对对脚点,结果就不确定,因为两个对脚点不会在球体上形成唯一的大圆段。
双 GMSGeometrySignedArea | ( | GMSPath * | path | ) |
返回由地球上的 path
定义的测地多边形的带符号面积。
结果的绝对值与GMSGeometryArea()相同;如果路径点按逆时针顺序排列,则该值为正,否则为负。
适用与GMSGeometryArea()相同的限制。
CLLocationDirection GMSGeometryHeading | ( | CLLocationCoordinate2D | 发件人: |
CLLocationCoordinate2D | 到 | ||
) |
返回到 to
最短路径 from
处的初始方向(北顺时针角度)。
返回的值在 [0, 360) 范围内。
如果两个坐标相同,则返回 0。
两个坐标都必须有效。
要获取 to
处的最终方向,可使用 (GMSGeometryHeading(to, from
) + 180) 模 360。
CLLocationCoordinate2D GMSGeometryOffset | ( | CLLocationCoordinate2D | 发件人: |
CLLocationDistance | distance, | ||
CLLocationDirection | 标题 | ||
) |
返回目的地坐标(当起点为 from
且初始值为 heading
时,沿着地球上的大圆弧行进 distance
米)。
得到的经度范围为 [-180, 180)。
两个坐标都必须有效。
CLLocationCoordinate2D GMSGeometryInterpolate | ( | CLLocationCoordinate2D | 发件人: |
CLLocationCoordinate2D | to、 | ||
双精度 | 比例 | ||
) |
返回位于 from
和 to
坐标之间的最短路径上的指定 fraction
之间的坐标。
得到的经度范围为 [-180, 180)。
NSArray<GMSStyleSpan *>* GMSStyleSpanGMSStyleSpanGMSStyleSpans | ( | GMSPath * | path、 |
NSArray<GMSStrokeStyle * >* | styles、 | ||
NSArray<NSNumber * >* | lengths、 | ||
GMSLengthKind | lengthKind | ||
) |
返回 GMSStyleSpan 的 NSArray,通过沿 path
重复应用来自 styles
和 lengths
的样式和长度信息构造而成。
path
是计算输出 span 所经过的路径。styles
:一个由 GMSStrokeStyle 组成的 NSArray。使用时换行。不得为空。lengths
,一个由 NSNumber 组成的 NSArray;每个条目都会给出 styles
中相应样式的长度。使用时换行。不得为空。lengthKind
:对 lengths
中的值(测地、朗姆或投影)的解释。
例如:具有交替黑白跨度的多段线:
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 *>* GMSStyleSpansOffsetGMSStyleSpansOffsetGMSStyleSpan | ( | GMSPath * | path、 |
NSArray<GMSStrokeStyle * >* | styles、 | ||
NSArray<NSNumber * >* | lengths、 | ||
GMSLengthKind | lengthKind, | ||
双精度 | lengthOffset | ||
) |
与 GMSStyleSpans(path, styles, lengths, lengthKind) 类似,但额外采用了将相对于 lengths
数组跳过的初始长度偏移量。
lengthOffset
表示最初应从 lengths
跳过的长度(例如以米为单位)。