相关疑难解决方法(0)

如何在GMSMapView中获取动画折线路径,以便在移动地图时它与地图一起移动?

我已经通过以下代码创建了像CAShapeLayer的动画折线,我已经将CAShapeLayer添加为GMSMapiew的子图层,但是,如果我移动地图,图层将不会移动.在哪里添加图层,以便它与地图一起移动?

   func layer(from path: GMSPath) -> CAShapeLayer {
        let breizerPath = UIBezierPath()
        let firstCoordinate: CLLocationCoordinate2D = path.coordinate(at: 0)
        breizerPath.move(to: self.mapView.projection.point(for: firstCoordinate))
        for i in 1 ..< Int((path.count())){
            print(path.coordinate(at: UInt(i)))
            let coordinate: CLLocationCoordinate2D = path.coordinate(at: UInt(i))
            breizerPath.addLine(to: self.mapView.projection.point(for: coordinate))
        }

        let shapeLayer = CAShapeLayer()
        shapeLayer.path = breizerPath.reversing().cgPath
        shapeLayer.strokeColor = UIColor.green.cgColor
        shapeLayer.lineWidth = 4.0
        shapeLayer.fillColor = UIColor.clear.cgColor
        shapeLayer.lineJoin = kCALineJoinRound
        shapeLayer.lineCap = kCALineCapRound
        shapeLayer.cornerRadius = 5
        return shapeLayer
    }

    func animatePath(_ layer: CAShapeLayer) {
        let pathAnimation = CABasicAnimation(keyPath: "strokeEnd")
        pathAnimation.duration = 6 …
Run Code Online (Sandbox Code Playgroud)

ios google-maps-sdk-ios gmsmapview swift

19
推荐指数
2
解决办法
1万
查看次数

ios Google SDK Map无法创建虚线折线

我已经调用了下面的方法来绘制标记之间的虚线折线.在执行时,它表明只绘制实线.你能告诉我如何在Google Map上绘制虚线吗?

在此输入图像描述

- (void) createDashedLine:(CLLocationCoordinate2D )thisPoint:(CLLocationCoordinate2D )nextPoint:
(UIColor *)colour
{
    NSLog(@"next pt latitude %ff" , nextPoint.latitude);
    NSLog(@"next pt longitude %ff" , nextPoint.longitude);
    NSLog(@"this pt laatitude %ff" , thisPoint.latitude);
    NSLog(@"this pt longitude %ff" , thisPoint.longitude);

    double difLat = nextPoint.latitude - thisPoint.latitude;
    double difLng = nextPoint.longitude - thisPoint.longitude;
    double scale = camera.zoom * 2;
    double divLat = difLat / scale;
    double divLng = difLng / scale;
    CLLocationCoordinate2D tmpOrig= thisPoint;
    GMSMutablePath *singleLinePath = [GMSMutablePath path];

    for(int i = 0 ; i < scale …
Run Code Online (Sandbox Code Playgroud)

google-maps ios google-polyline google-maps-sdk-ios

7
推荐指数
4
解决办法
5740
查看次数

Google Maps for iOS,swift - 如何在标记之间显示整个折线?

我想在谷歌地图视图中拟合折线.折线是通过google地图方向api中的overview_polyline获得的.

想知道如何将编码的折线转换成可以使用的东西.我需要在地图视图中拟合折线.我发现要做的就是适合显示所有标记但不显示整个折线的边界.

func fitAllMarkers()
{

    var bounds = GMSCoordinateBounds()

    for marker in markers
    {
        bounds = bounds.includingCoordinate(marker.position)
    }

    googleMapView.animateWithCameraUpdate(GMSCameraUpdate.fitBounds(bounds))

}
Run Code Online (Sandbox Code Playgroud)

google-maps ios google-polyline swift

5
推荐指数
2
解决办法
8423
查看次数