bimface的xyz坐标点的获取以及更换点位标记样式

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>自定义二维标签</title>
  <style media="screen">
    * {margin: 0;padding: 0;}
    html,body{height:100%}
      .main {display: flex;flex-direction: column;overflow: hidden;height: 100%; width: 100%;}
      .model {flex: 1; }
  </style>
  <!-- 引用BIMFACE的JavaScript显示组件库 -->
  <script src="https://static.bimface.com/api/BimfaceSDKLoader/BimfaceSDKLoader@latest-release.js" charset="utf-8"></script>
</head>
<body>
  <div  id="domId" style="width:100%;height:800px"></div>

<script type="text/javascript">
    var viewer3D;
    var marker;
        var viewToken = '224bc056e00e40e4841455df8edbd22b';
        var position0=new Object();
    position0={"x": 0, "y": 0, "z": 0};

    // 初始化显示组件
    var options = new BimfaceSDKLoaderConfig();
    options.viewToken = viewToken;
    BimfaceSDKLoader.load(options, successCallback, failureCallback);

    function successCallback(viewMetaData) {        
      if (viewMetaData.viewType == "3DView") {          
        // 获取DOM元素
        var WebAppConfig = new Glodon.Bimface.Application.WebApplication3DConfig();
        WebAppConfig.domElement = document.getElementById('domId');
        var app = new Glodon.Bimface.Application.WebApplication3D(WebAppConfig);
        viewer3D = app.getViewer();

        app.addView(viewMetaData.viewToken);

      //三维标签的配置类
      var markerConfig = new Glodon.Bimface.Plugins.Marker3D.Marker3DContainerConfig();
      markerConfig.viewer = viewer3D;

      marker = new Glodon.Bimface.Plugins.Marker3D.Marker3DContainer(markerConfig);

    viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded, function() {
      // tupian()

    });

    viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked,function(objectData) {
      if(objectData && objectData.objectId){
        tupian(objectData)
        // add3DMarker( objectData.worldPosition);
        // 
        // 
       
    }
            
        console.log("获得坐标的地方")
        console.log(objectData.worldPosition)
      //自适应屏幕大小
//  window.onresize=function(){
//   viewer3D.resize(document.documentElement.clientWidth,document.documentElement.clientHeight-40)
// } 
    });
      }}

    function failureCallback(error){
  };

    //增加三维标签的方法
   
        function tupian(objectData){
         // 首先创建DrawableContainer
        var drawaleContainerConfig = new Glodon.Bimface.Plugins.Drawable.DrawableContainerConfig();
        drawaleContainerConfig.viewer = viewer3D;
        var drawableContainer = new Glodon.Bimface.Plugins.Drawable.DrawableContainer(drawaleContainerConfig);
        var imageConfig = new Glodon.Bimface.Plugins.Drawable.ImageConfig();
        
        // 设置自己的imageUrl
        imageConfig.src = "logo.png";
        // 通过selection change可以得到构件ID和坐标
        imageConfig.worldPosition = objectData.worldPosition;
        var image = new Glodon.Bimface.Plugins.Drawable.Image(imageConfig);
        
        //图片的点击事件
        image.onClick(function() {
        var id=image.id;
        alert(id);
            });
            
        //添加image
        drawableContainer.addItem(image);
        
        }
    
</script>
</body>
</html>

因为viewtoken的时效较短,需要12小时换一次

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值