AR模型可视化(GLTF)

GLTF模型数据可视化效果,如下图:

图:景区沙盘模型
图:建筑模型

必备类库

进行GLTF模型数据AR可视化必需的类库为sceneform-sm_v1.19.7.aar、com.supermap.ar.jar、com.supermap.data.jar,必需的so库为libimb.so或libimb2d.so。开发环境要求AndroidStudio 3.6.0以上,gradle 5.6.4以上。开发前,请联系我们,获取相应类库。

关键代码

//创建AR元素
ARGltfElement arGltfElement = new ARGltfElement(arEffectView.getContext());
//设置父节点
arGltfElement.setParentNode(arEffectView);
//设置元素位置
arGltfElement.setPosition(new Point3D(0,0.5f,-0.5f));
//通过/res/raw/目录下加载
arGltfElement.loadModel(R.raw.floor_arrow);
//通过在线链接加载uri = "https://www.xxx.com/xxx/xxx.glb"
//arGltfElement.loadModel(uri);
//若gltf模型中带有动画,需要播放指定索引的动画,执行以下代码
//创建模型动画
ARAnimationModel animation = new ARAnimationModel(arGltfElement);
//创建指定索引的动画
animation.creatAnimation(/*动画的索引*/0,/*动画参数*/new ARAnimationParameter());
//获取动画管理器
ARAnimationManager manager = ARAnimationManager.getInstance();
//添加动画组
ARAnimationGroup animationGroup = manager.addAnimationGroup("AnimationGroup");
//添加动画
animationGroup.addAnimation(animation);
//播放动画
manager.playAll();