在 Mapbox 中获取 geogson 要素的坐标
Get coordinates of geogson feature in Mapbox
GeoJson 功能如下所示:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
43.59375,
59.17592824927136
]
}
}
在 Mapbox
中使用 Java/JVM 我们可以像这样构建特征:
val testFeature = Feature.fromGeometry(Point.fromLngLat(2.0,3.0))
但我似乎没有找到从该功能恢复 coordinates/point 的方法。
有一个 Feature#getGeometry()
但我无法从中获取坐标,因为它只是 GeoJson 界面本身的一个糖。
每个功能都有一个 .coordinates()
方法,该方法 return 是一个 List<Point>
或 List<List<Point>
对象(除非您在 Point
功能上调用它,在这种情况下,它将 return 一个 List<Double>
。
我刚刚发现每个要素都公开了方法 .geometry()
,我们可以将其转换为任何类型 (点、线、多边形、多点等)。从那里我们可以得到 either Point
or List<Point>
。
示例:
val position1 = feature1.geometry() as Point
val longitude = position1.longitude()
val area1 = feature2.geometry() as MultiPoint
val firstPointLatitude = area1.coordinates()!![0].latitude()
GeoJson 功能如下所示:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
43.59375,
59.17592824927136
]
}
}
在 Mapbox
中使用 Java/JVM 我们可以像这样构建特征:
val testFeature = Feature.fromGeometry(Point.fromLngLat(2.0,3.0))
但我似乎没有找到从该功能恢复 coordinates/point 的方法。
有一个 Feature#getGeometry()
但我无法从中获取坐标,因为它只是 GeoJson 界面本身的一个糖。
每个功能都有一个 .coordinates()
方法,该方法 return 是一个 List<Point>
或 List<List<Point>
对象(除非您在 Point
功能上调用它,在这种情况下,它将 return 一个 List<Double>
。
我刚刚发现每个要素都公开了方法 .geometry()
,我们可以将其转换为任何类型 (点、线、多边形、多点等)。从那里我们可以得到 either Point
or List<Point>
。
示例:
val position1 = feature1.geometry() as Point
val longitude = position1.longitude()
val area1 = feature2.geometry() as MultiPoint
val firstPointLatitude = area1.coordinates()!![0].latitude()