{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671508809920,"data":{"id":71713217,"title":"2.5.8 动画","slug":"aazrzg","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"

本章节主要介绍HMI如何添加自定义的地图动画。AutoSDK建议只有在地图姿态不满足需求时,如需要同时组合多个地图姿态属性时,才使用自定义地图动画。

场景图


移图动画.mp4

更多详细地图姿态动画,可以参考产品文档地图姿态变化章节。


时序图

核心接口


/**\n * @brief        组合动画\n * @param[in]    mapGroupParam    地图视图参数\n * @param[in]    duration         动画持续时间\n * @param[in]    bClear           执行前清除所有动画,true为清除所有动画,false为不清除所有动画,加到动画队列\n * @param[in]    animationId      动画id\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.addGroupAnimation(AnimationGroupParam mapGroupParam, long duration, boolean bClear, long animationId)\n\n/**\n * @brief        移图到地图某坐标点\n * @param[in]    moveParam        移图参数\n * @param[in]    duration         动画持续时间\n * @param[in]    bClear           执行前清除所有动画,true为清除所有动画,false为不清除所有动画,加到动画队列\n * @param[in]    animationId      动画id\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.addMoveAnimation(AnimationMoveParam moveParam, int duration, boolean bClear, long animationId)\n\n/**\n * @brief        以地图某坐标点进行缩放\n * @param[in]    pivotZoomParam   移图参数\n * @param[in]    duration         动画持续时间\n * @param[in]    bClear           执行前清除所有动画,true为清除所有动画,false为不清除所有动画,加到动画队列\n * @param[in]    animationId      动画id\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.addPivotZoomAnimation(AnimationPivotZoomParam pivotZoomParam, int duration, boolean bClear, long animationId)\n\n\n/**\n * @brief        以地图某坐标点进行缩放旋转\n * @param[in]    zoomRotateParam  移图参数\n * @param[in]    duration         动画持续时间\n * @param[in]    bClear           执行前清除所有动画,true为清除所有动画,false为不清除所有动画,加到动画队列\n * @param[in]    animationId      动画id\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.addZoomRotateAnimation(AnimationZoomRotateParam zoomRotateParam, int duration, boolean bClear, long animationId)\n\n\n/**\n * @brief        以屏幕某坐标点为地图中心,并把地图某坐标点移动至地图中心\n * @param[in]    geoAndScreenParam  移图参数\n * @param[in]    duration         动画持续时间\n * @param[in]    bClear           执行前清除所有动画,true为清除所有动画,false为不清除所有动画,加到动画队列\n * @param[in]    animationId      动画id\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.addGeoAndScreenCenterAnimation(AnimationGeoAndScreenParam geoAndScreenParam, int duration, boolean bClear, long animationId)\n\n/**\n* @brief        以投影中心为坐标原点,将指定的屏幕像素点移到投影中心\n* @param[in]    sreenMoveParam   屏幕像素点相对投影中心的坐标参数\n* @param[in]    duration         动画持续时间(单位:ms)\n* @param[in]    bClear           执行前清除所有动画,true为清除所有动画,false为不清除所有动画,加到动画队列\n* @note         multi\n*/\nvoid com.autonavi.gbl.map.OperatorAnimation.addScreenMoveAnimation(AnimationScreenMoveParam sreenMoveParam, int duration, boolean bClear)\n/**\n * @brief        移除动画\n * @param[in]    eType            动画类型,BL组装的组合动画,MapAnimationGroupType\n * @note         该接口会把动画动作直接置为终态,然后再结束\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.removeAnimation(@MapAnimationGroupType.MapAnimationGroupType1 int eType)\n\n\n/**\n * @brief        移除动画\n * @param[in]    nTypes           动画类型,可由MapAnimationUserType用户自由组合\n * @param[in]    pUserData        触发监听时,会将该参数传递给观察者\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.removeAnimationByTypes(long nTypes, long pUserData)\n\n/**\n * @brief        移除所有动画\n * @param[in]    pUserData        触发监听时,会将该参数传递给观察者\n * @param[in]    bForceRemove     是否强制移除\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.removeAllAnimation(long pUserData, boolean bForceRemove)\n\n/**\n * @brief        主动结束所有动画操作\n * @param[in]    pUserData        触发监听时,会将该参数传递给观察者\n * @note         该接口会把动画动作直接置为终态,然后再结束\n * @note         multi\n */\nvoid com.autonavi.gbl.map.OperatorAnimation.finishAllAnimation(boolean bSync, long pUserData)

说明:函数详情,请复制函数名称到在线API搜索

调用示例

//创建mapview实例\n...\n\n//创建组合动画参数\nAnimationGroupParam groupParam = new AnimationGroupParam();\ngroupParam.lon = 116.474718,;\ngroupParam.lat = 39.994126;\ngroupParam.maplevel = 16;\ngroupParam.mapRollAngle = 0;\ngroupParam.pitchAngle = 65;\n//添加组合动画,该自定义动画animationId默认0即可。若需要监听动画开始和结束时机外部可指定唯一id,供回调区分。\nmapView.getOperatorAnimation().addGroupAnimation(groupParam, 500, false, 0);


","body_lake":null,"pub_level":null,"status":"0","updated_at":"2022-04-06 07:01:50","deleted_at":null,"nameSpace":"mnlcaa/v610","browseCount":109,"collectCount":0,"estimateDate":9,"docStatus":0,"permissions":true,"overView":false}}