如何保存BIMFACE的模型视点或恢复视点?

我们在浏览整个模型的过程中,有时候我们想把模型有些比较重要的视点保存下来,以便下次可以直接进入对应的视点,同时保存当前快照,BIMFACE是否有这样的api?

阅读 1.4k
评论 2017-09-24 提问
    1 个回答

    var camera1;
    var camera2;
    var pic1;
    var pic2;
    var i=0;

    //增加Ul标签中的li标签
    function addli(){

    var ul=document.getElementById("projecthome");
    var obj=document.createElement("li");
    i=i+1;
    if(i>2){
      alert("最多只能添加2次");
      return;
    }
    if(i==1){
        //获取当前视图
        camera1=viewer3D.getCameraStatus();
        //设置背景颜色
        var colorRed = new Glodon.Web.Graphics.Color(0, 0, 0, 1);
        //生成当前快照
        pic1=viewer3D.createSnapshotAsync(colorRed, function(data) {
        //调整快照
        pic1 = new Image();
        pic1.height=60;
        pic1.width=80;
        pic1.src = data;
        //ul增加图片标签
        ul.appendChild(pic1);
        });
    }
    else if(i==2){
        camera2=viewer3D.getCameraStatus();
        var colorRed = new Glodon.Web.Graphics.Color(0, 0, 0, 1);
        pic2=viewer3D.createSnapshotAsync(colorRed, function(data) {
        pic2 = new Image();
        pic2.src = data;
        pic2.height=60;
        pic2.width=80;
        ul.appendChild(pic2); 
        });
    }
    //弹出框提示
    var text = window.prompt("请输Label内容","视点"+i);
    //li标签增加a标签,同时赋点击事件
    obj.innerHTML="<a onclick=setcamera("+i+")>"+text+"</a>";
        //ul增加li标签
        ul.appendChild(obj);

    }

    //恢复视点
    function setcamera(i){

    if(i==1){
        viewer3D.setCameraStatus(camera1);
     }
    else if(i==2){
        viewer3D.setCameraStatus(camera2);
    }

    }

    可以参考 如何保存或恢复视点
    图片描述

    评论 赞赏 2017-09-24
      撰写回答

      登录后参与交流、获取后续更新提醒