public class ModelGroupScene extends ArSceneLoader
常用于批量加载指定文件夹下的模型
使用示例:
ModelGroupScene pipeScene = new ModelGroupScene(arView);
//在指定的位置以指定的姿态加载管线场景
pipeScene.getSceneElement().setRotationAngle(new Quaternion(Vector3.down(),-90));
pipeScene.getSceneElement().setPosition(new Point3D(-1,4,0));
//启用点击交互,需在loadPipeFolder()之前调用
pipeScene.setOnClickEnabled(true);
//设置实际的点击交互内容,此处已Toast为例
pipeScene.setOnClickListener((element, touchResult) -> {
Toast.makeText(PipeActivityVertical.this, "点中了\"" + element.getElementName() +"\"", Toast.LENGTH_SHORT).show();
pipeScene.unSelectAll();
element.select();
});
//根据指定文件夹目录,批量加载管线模型(参数1:文件夹路径;参数2:模型文件后缀)
pipeScene.loadPipeFolder(PathConfig.VERTICAL_PIPE_DATA,"GLB", error -> {
if (error == null){
pipeScenes.add(pipeScene);
}
});
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
ModelGroupScene.OnClickListener
点击事件
|
| 构造器和说明 |
|---|
ModelGroupScene(AREffectElement element)
构造函数
|
ModelGroupScene(EffectView arEffectView)
构造函数
|
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
isOnClickEnabled()
判断模型点击事件的启用状态
|
void |
loadModelFolder(java.lang.String resourcePath,
java.lang.String format,
ErrorCallback callback)
批量加载指定文件夹的模型
|
void |
setOnClickEnabled(boolean onClickEnabled)
设置模型点击事件的启用状态
|
void |
setOnClickListener(ModelGroupScene.OnClickListener onClickListener)
设置点击监听事件
|
void |
setVisiblity(boolean visiblity)
控制场景显隐
|
void |
unSelectAll()
取消所有子元素选中
|
clear, getAbsolutePath, getAnchorNodeList, getContext, getSceneElement, setAbsolutePath, updateScenePosition, updateSceneRotation, updateSceneScalepublic ModelGroupScene(EffectView arEffectView)
arEffectView - public ModelGroupScene(AREffectElement element)
element - public void setOnClickListener(ModelGroupScene.OnClickListener onClickListener)
onClickListener - public boolean isOnClickEnabled()
public void setOnClickEnabled(boolean onClickEnabled)
onClickEnabled - public void loadModelFolder(java.lang.String resourcePath,
java.lang.String format,
ErrorCallback callback)
resourcePath - format - gltf2.0模型的后缀格式,"GLB"或者"GLTF"callback - public void unSelectAll()
public void setVisiblity(boolean visiblity)
visiblity -