我想在MKMapView上繪製一個半球體,知道中心座標,起始角度和結束角度以及海里數的半徑。Swift:在MKMapView中繪製半球體
使用此線程(How to draw UIBezierPath overlay on MKMapView?),我已經子類MKOverlayPathRenderer劃出一道弧線:
import UIKit
import MapKit
class IGAAcarsDrawArc: MKOverlayPathRenderer
{
let PI = 3.14159265
let radius : CGFloat = 10.0
var startAngle: CGFloat = 0
var endAngle: CGFloat = 3.14159
var latitude = 25.96728611
var longitude = -80.453019440000006
override func createPath()
{
let line = MKPolyline()
let arcWidth: CGFloat = 5
let path = UIBezierPath(arcCenter: CGPointMake(CGFloat(latitude), CGFloat(longitude)),
radius: self.radius,
startAngle: startAngle,
endAngle: endAngle,
clockwise: true)
path.lineWidth = arcWidth
path.stroke()
}
}
現在,還不清楚怎麼用它來創建MKPolyline並在圖形頁面執行(MapView類:的MKMapView, rendererForOverlay覆蓋:MKOverlay)。
此主題(How to draw arc/curve line with MKOverlayView on MKMapView)也沒有說明太多的問題。
有人可以幫助在MKMapView繪製弧線嗎?
編輯:
這不是工作:
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer
{
if overlay is IGAAcarsDrawArc
{
let arcLine = IGAAcarsDrawArc(overlay: overlay)
arcLine.lineWidth = 8
arcLine.strokeColor = UIColor.magentaColor()
}
return MKPolylineRenderer()
}
非常感謝!
我發現http://stackoverflow.com/questions/12062902/how-to-add-a-uibezierpath-to-a-mkmapview-using-overlays也許它會給你一些提示 – wenqi
我發現這個職位:http ://stackoverflow.com/questions/12062902/how-to-add-a-uibezierpath-to-a-mkmapview-using-overlays也許它會給你一些提示 – wenqi