curvyRoute 0.2.1

curvyRoute 0.2.1

Arnaud Schloune 维护。



  • Metropolis:Lab

PRs Welcome Version iOS 8.0+

🗺curvyRoute

在地图上绘制两点之间曲线的简单方法。

🏆功能

  • 在地图上显示曲线
  • 在地图上显示直线
  • 自定义半径乘数

📝需求

  • iOS 8.0+
  • Swift 4.2+

🛠安装

安装 curvyRoute 有几种方法

CocoaPods

curvyRoute specs 添加到您的 Podfile

pod 'curvyRoute'

curvyRoute 添加为包含字符串文件的模块的依赖项

s.dependency 'curvyRoute'

注意:如果您应用程序没有模块化,请将 pod 'curvyRoute' 也添加到 Podfile 中。

👉🏼 示例

import MapKit
import UIKit
import curvyRoute

class ViewController: UIViewController, MKMapViewDelegate {
    @IBOutlet weak var mapView: MKMapView!

    override func viewDidAppear(_: Bool) {
        mapView.delegate = self
        addOverlays()
    }

    func mapView(_: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer {
        if let lineOverlay = overlay as? LineOverlay {
            return MapLineOverlayRenderer(lineOverlay)
        }
        return MKOverlayRenderer(overlay: overlay)
    }

    private func addOverlays() {
		let pointA = CLLocationCoordinate2DMake(41.375024, 2.149118) // Plaça d'Espanya, Barcelona
		let pointB = CLLocationCoordinate2DMake(41.380994, 2.185771) // Plaça Pau Vila, 1, Barcelona
        mapView.addOverlay(LineOverlay(origin: pointA, destination: pointB))
        let arc = ArcOverlay(origin: pointA, destination: pointB,
                             style: LineOverlayStyle(strokeColor: .systemTeal, lineWidth: 4, alpha: 1))
        arc.radiusMultiplier = 0.5
        mapView.addOverlay(arc)
    }
}

🤔radiusMultiplier 是什么?

这个属性将影响弧形的形状。默认值为 1。

👨‍💻待办事项

  • 动画折线路径
  • ...

📖许可证

curvyRoute 在 MIT 许可下发布。有关详细信息,请参阅 LICENSE