高德地图可以制作三维地图动画吗

高德地图可以制作三维地图动画吗,第1张

高德地图可以制作三维地图动画。方法如下:

1、按照高德地图提供的3D绘图方式来进行实现。

2、绘制地图底图。

3、设置光照。

4、设置平行光源。

5、添加Object3DLayer专门承载Object3D对象的图层。

6、搜索行政区域获取行政边界。

7、正式绘制3D图形。

如果是用removeAnimation会显得很突兀,不够平滑,所以可以利用设置动画速度和设置一个时间偏移量来暂停动画:[html]viewplaincopy//用来暂停layer上的动画-(void)pauseLayer:(CALayer*)layer{CFTimeIntervalpausedTime=[layerconvertTime:CACurrentMediaTime()fromLayer:nil]layer.speed=0.0layer.timeOffset=pausedTime}//恢复layer上的动画-(void)resumeLayer:(CALayer*)layer{CFTimeIntervalpausedTime=[layertimeOffset]layer.speed=1.0layer.timeOffset=0.0

用坐标信息判断 你没说想要的具体的效果 那我就给你说一种吧 假设你地图上面有n个大头针 实际上也就是n个pointAnnotation 你可以通过_mapView.annotations直接获取到 这是个数组

在点击大头针的方法里面

- (void)mapView:(BMKMapView *)mapView didSelectAnnotationView:(BMKAnnotationView *)view

{

NSArray * array = [NSArray arrayWithArray:_mapView.annotations]

for (int i=0i<array.counti++)

{

if (view.annotation.coordinate.latitude ==((BMKPointAnnotation*)array[i]).coordinate.latitude)

{

//获取到当前的大头针 你可以执行一些 *** 作

}

else

{

//对其余的大头针进行 *** 作 我是删除

//[_mapView removeAnnotation:array[i]]

}

}

}

这要再不采纳 我也就真的无语啦


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11560913.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存