类 | |
结构体 | GMSMapPoint |
地图上的点。更多... | |
类型定义符 | |
typedef 结构体 GMSMapPoint | GMSMapPoint |
地图上的点。 | |
函数 | |
GMSMapPoint | GMSProject(CLLocationCoordinate2D 坐标) |
将 coordinate 投影到地图。 | |
CLLocationCoordinate2D | GMSUnproject(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 *路径,BOOL 测地线) |
返回 point 是否位于路径内。 | |
BOOL | GMSGeometryIsLocationOnPathTolerance(CLLocationCoordinate2D 点、GMSPath *路径、BOOL 测地线、CLLocationDistance 公差) |
返回 point 是位于还是位于 path 上或附近(以米为单位的指定 tolerance 内)。 | |
BOOL | GMSGeometryIsLocationOnPath(CLLocationCoordinate2D 点,GMSPath *路径,BOOL 测地线) |
与 GMSGeometryIsLocationOnPath(点, 路径, 测地线, 公差) 相同,默认公差为 0.1 米。 | |
CLLocationDistance | GMSGeometryDistance(CLLocationCoordinate2D 从,CLLocationCoordinate2D 更改为) |
用于返回地球上两个坐标之间的大圆距离(以米为单位)。 | |
CLLocationDistance | GMSGeometryLength(GMSPath *路径) |
返回地球上 path 的大圆长度(以米为单位)。 | |
双精度 | GMSGeometryArea(GMSPath *路径) |
返回在地球上由 path 定义的测地多边形的面积。 | |
双精度 | GMSGeometrySignedArea(GMSPath *路径) |
返回在地球上由 path 定义的测地多边形的签名面积。 | |
CLLocationDirection | GMSGeometryHeading(CLLocationCoordinate2D 从,CLLocationCoordinate2D 更改为) |
返回到 to 的最短路径 from 处的初始方向(北方顺时针的度数)。 | |
CLLocationCoordinate2D | GMSGeometryOffset(CLLocationCoordinate2D 来源、CLLocationDistance 距离、CLLocationDirection 方向) |
返回目的地坐标(起点为 from ,初始位置为 heading ,沿地球上的大圆弧移动 distance 米)。 | |
CLLocationCoordinate2D | GMSGeometryInterpolate(CLLocationCoordinate2D from,CLLocationCoordinate2D to,双分数) |
返回位于 from 和 to 坐标之间(二者之间的最短路径上)中路径的指定 fraction 的坐标。 | |
NSArray< GMSStyleSpan * > * | GMSStyleSpans(GMSPath *路径、NSArray< GMSStrokeStyle * > *styles、NSArray< NSNumber * > *lengths、GMSLengthKind lengthKind) |
返回通过重复应用 styles 和 lengths 以及 path 中的样式和长度信息而构造的 GMSStyleSpan 的 NSArray。 | |
NSArray< GMSStyleSpan * > * | GMSStyleSpansOffset (GMSPath *path, NSArray< GMSStrokeStyle * > *styles, NSArray< NSNumber * > *lengths, GMSLengthKind lengthKind, double lengthOffset) |
与 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、 | ||
双精度 | 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 | 测地线、 | ||
CLLocationDistance | tolerance | ||
) |
返回 point
是位于还是位于 path
上或附近(以米为单位的指定 tolerance
内)。
如果geodesic
为“是”,path
则由大圆细分组成;如果geodesic
为“否”,则由随机(顺时)细分组成。
另请参阅 GMSGeometryIsLocationOnPath(点, 路径, 测地线)。
公差是以地球的球形半径为参照物的(以米为单位)。如果您需要处理半径不同的球面,则可以根据半径 R 的球面所需公差计算等效公差:公差 = toleranceR * (RadiusEarth / R),RadiusEarth = 6371009。
BOOL GMSGeometryIsLocationOnPath | ( | CLLocationCoordinate2D | point、 |
GMSPath * | path、 | ||
BOOL | 测地 | ||
) |
与 GMSGeometryIsLocationOnPath(点, 路径, 测地线, 公差) 相同,默认公差为 0.1 米。
CLLocationDistance GMSGeometryDistance | ( | CLLocationCoordinate2D | from、 |
CLLocationCoordinate2D | 到 | ||
) |
用于返回地球上两个坐标之间的大圆距离(以米为单位)。
这是球面上两个坐标之间的最短距离。
两个坐标都必须有效。
CLLocationDistance GMSGeometryLength | ( | GMSPath * | path | ) |
双 GMSGeometryArea | ( | GMSPath * | path | ) |
返回在地球上由 path
定义的测地多边形的面积。
多边形的“内部”定义为不包含南极。
如果 path
未闭合,则会被隐式视为闭合路径,结果是相同的。
路径的所有坐标都必须有效。
多边形必须简单(不自重叠)且可以凹陷。
如果路径的任何一段是一对对立点,则结果是未定义的,因为两个对立点在球面上不会形成唯一的大圆段。
双 GMSGeometrySignedArea | ( | GMSPath * | path | ) |
返回在地球上由 path
定义的测地多边形的签名面积。
结果的绝对值与GMSGeometryArea()相同;如果路径点按逆时针顺序,那么它为正,否则为负。
适用与 GMSGeometryArea() 相同的限制。
CLLocationDirection GMSGeometryHeading | ( | CLLocationCoordinate2D | from、 |
CLLocationCoordinate2D | 到 | ||
) |
返回到 to
的最短路径 from
处的初始方向(北方顺时针的度数)。
返回的值在 [0, 360) 范围内。
如果两个坐标相同,则返回 0。
两个坐标都必须有效。
要获取 to
处的最终方向,可以使用 (GMSGeometryHeading(to, from
) + 180) 模 360。
CLLocationCoordinate2D GMSGeometryOffset | ( | CLLocationCoordinate2D | from、 |
CLLocationDistance | distance, | ||
CLLocationDirection | 标题 | ||
) |
返回目的地坐标(起点为 from
,初始位置为 heading
,沿地球上的大圆弧移动 distance
米)。
所得经度范围为 [-180, 180)。
两个坐标都必须有效。
CLLocationCoordinate2D GMSGeometryInterpolate | ( | CLLocationCoordinate2D | from、 |
CLLocationCoordinate2D | to、 | ||
双精度 | 分数 | ||
) |
返回位于 from
和 to
坐标之间(二者之间的最短路径上)中路径的指定 fraction
的坐标。
所得经度范围为 [-180, 180)。
NSArray<GMSStyleSpan *>* GMSStyleSpans | ( | GMSPath * | path、 |
NSArray< GMSStrokeStyle * > * | styles、 | ||
NSArray< NSNumber * > * | 长度、 | ||
GMSLengthKind | lengthKind | ||
) |
返回通过重复应用 styles
和 lengths
以及 path
中的样式和长度信息而构造的 GMSStyleSpan 的 NSArray。
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 *>* GMSStyleSpansOffset | ( | GMSPath * | path、 |
NSArray< GMSStrokeStyle * > * | styles、 | ||
NSArray< NSNumber * > * | 长度、 | ||
GMSLengthKind | lengthKind | ||
双精度 | lengthOffset | ||
) |
与 GMSStyleSpans(path, styles, lengths, lengthKind) 类似,但还采用了一个相对于 lengths
数组会被跳过的初始长度偏移量。
lengthOffset
是指最初应从 lengths
跳过的长度(例如以米为单位)。