如何显示仅连接 2 个点的多段线?
How do I show a polyline that only connects 2 points?
我正在使用 iOS Google 地图 API 来显示地图。我想在特定经度处添加一条线,以便用户可以知道该经度在哪里。
这是我试过的:
let path = GMSMutablePath()
path.add(CLLocationCoordinate2D(latitude: -90, longitude: -122))
path.add(CLLocationCoordinate2D(latitude: 90, longitude: -122))
polyline = GMSPolyline(path: path)
polyline.geodesic = true
polyline.strokeColor = .red
polyline.strokeWidth = 20 // I have set this to a big number to guarantee that my poor eyesight can see the line
polyline.map = mapView
我在任何地方都看不到这条线!
作为对照实验,我复制了从 tutorial 中绘制矩形的代码并将其粘贴在上面的代码之后:
let rect = GMSMutablePath()
rect.add(CLLocationCoordinate2D(latitude: 37.36, longitude: -122.0))
rect.add(CLLocationCoordinate2D(latitude: 37.45, longitude: -122.0))
rect.add(CLLocationCoordinate2D(latitude: 37.45, longitude: -122.2))
rect.add(CLLocationCoordinate2D(latitude: 37.36, longitude: -122.2))
// Create the polygon, and assign it to the map.
let polygon = GMSPolygon(path: rect)
polygon.fillColor = UIColor(red: 0.25, green: 0, blue: 0, alpha: 0.2);
polygon.strokeColor = .black
polygon.strokeWidth = 2
polygon.map = mapView
它显示矩形:
由于我绘制线条的代码紧接在绘制矩形的代码上方,因此我的代码也应该被执行。它应该画一条与矩形相接的线,从北极延伸到南极。但是为什么没有这条线呢?
问题是你的两个点不只是任意两个点,它们之间不只有一条最短线。
点(90,X)和(-90,X)无论X的值如何都是北极和南极,并且有无穷无尽的线连接它们。我建议在其他两点之间添加赤道上的点 (0, X)。
I added a point on the equator between the north pole and south pole and now it only drew a line to the equator.
我无法解释。似乎是一个错误。尝试接近极点的值,例如 89
和 -89
或 89.999
和 -89.999
。
我正在使用 iOS Google 地图 API 来显示地图。我想在特定经度处添加一条线,以便用户可以知道该经度在哪里。
这是我试过的:
let path = GMSMutablePath()
path.add(CLLocationCoordinate2D(latitude: -90, longitude: -122))
path.add(CLLocationCoordinate2D(latitude: 90, longitude: -122))
polyline = GMSPolyline(path: path)
polyline.geodesic = true
polyline.strokeColor = .red
polyline.strokeWidth = 20 // I have set this to a big number to guarantee that my poor eyesight can see the line
polyline.map = mapView
我在任何地方都看不到这条线!
作为对照实验,我复制了从 tutorial 中绘制矩形的代码并将其粘贴在上面的代码之后:
let rect = GMSMutablePath()
rect.add(CLLocationCoordinate2D(latitude: 37.36, longitude: -122.0))
rect.add(CLLocationCoordinate2D(latitude: 37.45, longitude: -122.0))
rect.add(CLLocationCoordinate2D(latitude: 37.45, longitude: -122.2))
rect.add(CLLocationCoordinate2D(latitude: 37.36, longitude: -122.2))
// Create the polygon, and assign it to the map.
let polygon = GMSPolygon(path: rect)
polygon.fillColor = UIColor(red: 0.25, green: 0, blue: 0, alpha: 0.2);
polygon.strokeColor = .black
polygon.strokeWidth = 2
polygon.map = mapView
它显示矩形:
由于我绘制线条的代码紧接在绘制矩形的代码上方,因此我的代码也应该被执行。它应该画一条与矩形相接的线,从北极延伸到南极。但是为什么没有这条线呢?
问题是你的两个点不只是任意两个点,它们之间不只有一条最短线。
点(90,X)和(-90,X)无论X的值如何都是北极和南极,并且有无穷无尽的线连接它们。我建议在其他两点之间添加赤道上的点 (0, X)。
I added a point on the equator between the north pole and south pole and now it only drew a line to the equator.
我无法解释。似乎是一个错误。尝试接近极点的值,例如 89
和 -89
或 89.999
和 -89.999
。