MonoTouch之根据经度纬度绘制线条

本文详细介绍了如何在iOS应用中使用MKMapView组件绘制路线,并通过代码实例展示了坐标转换为地图点的过程。

关键代码部分

double[] lats = new double[] {34.236995919519,34.237350707418 ,34.237989321866};
            double[] lons = new double[] {108.881978988647,108.872194290161,108.842668533325};

            MKMapPoint[] pointArr=new MKMapPoint[lats.Length];

            for (int i = 0; i < lats.Length; i++) {
                CLLocationCoordinate2D coordinate =new CLLocationCoordinate2D(lats[i],lons[i]);
                MKMapPoint mPoint = MKMapPoint.FromCoordinate (coordinate);
                pointArr [i] = mPoint;
            }
            
            RoteLine = MKPolyline.FromPoints (pointArr); 
            mymapview.AddOverlay (RoteLine);
            mymapview.Delegate = new MyOverlayViewDelegate (this); 

 

     public MKPolyline RoteLine;
        public MKPolylineView RouteLineView;

        class MyOverlayViewDelegate:MKMapViewDelegate{
            MKOverlayView overlayView = null;
            MapViewController controller;
            public MyOverlayViewDelegate(MapViewController c){
                controller=c;
            }
            public override MKOverlayView GetViewForOverlay (MKMapView mapView, NSObject overlay)
            {
                if (overlay ==controller.RoteLine) {
                    if (controller.RouteLineView == null) {
                        controller.RouteLineView = new MKPolylineView (controller.RoteLine);
                        controller.RouteLineView.FillColor = UIColor.Red;
                        controller.RouteLineView.StrokeColor = UIColor.Red;
                        controller.RouteLineView.LineWidth = 3;
                    }
                    overlayView = controller.RouteLineView;
                }
                return overlayView; 
            }
            
        }

转载于:https://www.cnblogs.com/zjwan/p/3396200.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值