中台预生产全量接口
  1. 点云实模对比
中台预生产全量接口
  • 规范
  • 项目管理
    • 项目
      • 项目枚举数据
      • 新建项目
      • 项目列表
      • 项目详情
      • 更新项目
      • 删除项目
      • 项目锁定
      • 解锁项目
      • 项目级扩展属性挂接
      • 项目级扩展属性列表
      • 项目级扩展属性删除
      • 项目级扩展属性更新
      • 项目组织树
    • 文件
      • 文件重命名
      • 文件版本列表
      • 模型文件详情
      • 文件挂载到文件夹
      • 添加文件扩展属性
      • 移动文件
      • 删除文件
      • 获取文件标签
      • 更新文件标签
      • 查询所有或指定文件列表
      • 查询文件所属专业
    • 文件夹
      • 融合递归树(文件、文件夹)
      • 新建文件夹
      • 文件夹列表
      • 文件夹重命名
      • 移动文件夹
      • 获取文件夹扩展属性
      • 更新文件夹扩展属性
      • 获取文件夹标签
      • 更新文件夹标签
      • 删除文件夹
      • 文件列表
    • 单体
      • 根据单体ID查询项目ID
  • 存储管理
    • 分片上传
      • 检查分片是否存在
      • 合并分片
      • 检查分片是否存在v2
      • 文件分片上传
      • 获取分片上传凭证
    • 下载
      • 下载
      • 批量下载
    • 检查文件是否已存在
    • 秒传
    • 上传
    • 存储上传信息
  • 轻量化引擎
    • 转换格式查询
    • 轻量化结果文件查询
  • 能力服务
    • 轻量化展示
      • 轻量化展示
      • 轻量化
      • 获取obv-token
    • 点云模型查看
      • 点云模型查看
      • 轻量化
      • 获取obv-token
    • 点云实模对比
      • 点云实模对比
      • 获取obv-token
        GET
    • 模型对比-IFC
      • 模型对比-IFC
      • 开启IFC模型对比任务
      • 获取同源对比结果
      • 获取非同源对比结果
    • 二维码生成
      • 二维码生成
      • 生成base64二维码
    • 图模匹配
      • 图模匹配
      • 开启图模匹配任务
      • 获取任务结果
    • 图模一致性检查
      • 图模一致性检查
      • 开启图模一致任务
      • 获取任务结果
    • AI图纸识别
      • AI图纸识别
      • 识图识别任务开启
      • 获取任务结果
    • SZ-IFC标识分类树
      • SZ-IFC标识分类树
      • 空间关系树
      • 查询构件树
      • 查询机电系统树
      • 根据构件查属性
      • 根据空间查构件
      • 查询空间树
    • 扩展属性挂接
      • 扩展属性挂接
      • 构件级扩展属性挂接
      • 构件级扩展属性列表
      • 构件级扩展属性更新
      • 构件级扩展属性删除
    • 设备模型添加
      • 设备模型添加
      • 设备挂接到文件
      • 已挂接设备列表
      • 已挂接设备更新
      • 已挂接设备删除
    • 模型维度统计查询
      • 模型维度统计查询
      • 获取入库文件数(按文件类型返回)
      • 全量文件种类统计
      • 按天、周、月统计新增/更新模型(按文件类型返回)
      • 按天、周、月统计各数据源新增/更新模型(按文件类型分组返回)
      • 按天、周、月统计项目新增情况,返回项目数据更新情况
      • 单项目按文件类型统计文件数量
      • 查询项目下所有或指定类型文件列表
      • 全量文件数量统计
      • 按区域统计文件种类
      • 按区域统计模型数量
      • 按数据源返回入库文件分类
    • 项目维度统计查询
      • 项目维度统计查询
      • 全量项目统计
      • 按区域项目统计
      • 项目聚合列表
    • 获取特定 SZ-IFC标识下的类型子集
      • 获取特定 SZ-IFC标识下的类型子集
      • 获取特定 SZ-IFC标识下的类型子集
    • 模型对比-RVT
      • 模型对比-RVT
      • 开启Revit模型对比任务
      • 查询Revit模型对比任务信息
      • 查询Revit模型对比结果
    • 数据入库
      • 数据入库
      • 根据空间名称,查询空间属性-详情-v3
      • 根据构件名称,查询构件属性-详情-v3
      • 根据空间名称,查询空间属性-统计-v3
      • 根据构件名称,查询构件属性-统计-v3
      • 数据入库
      • 查询项目数据入库记录
      • 数据入库单体查询
      • 数据入库项目查询
      • 数据入库构件分类树
      • 数据入库空间关系树
      • 数据入库空间分类树
      • 数据入库系统树
      • 查询数据入库文件列表
      • 根据楼层查空间和构件
      • 根据空间名称,查询空间属性
      • 根据构件名称,查询构件属性
      • 根据空间查构件树
      • 获取空间数据标准树
      • 获取构件数据标准树
    • 基点一致性检查
      • 基点一致性检查
      • 获取任务结果
    • 合标性检查
      • 合标性检查
      • 合标性检查任务开启
      • 获取任务结果
    • BIM模型数字化认证
      • 模型文件Hash存储
      • 模型文件Hash查询
    • 任务管理
      • 任务状态
      • 任务列表
      • 获取任务结果
      • 设置任务优先级,10 ~ 99,数字越小,优先级越高
    • 一致性检查任务开启
      POST
    • 能力列表
      POST
  1. 点云实模对比

点云实模对比

简介#

支持LAS格式点云与BIM模型进行对比,可以实现点云模型与BIM模型的同屏和分屏显示对比。

对接流程#

对接方式一:通过插件
查看 示例,下载示例代码查看引入插件地址并引入;
初始化插件,可传入多个点云模型和一个实模文件信息
支持传入初始的X、Y、Z轴与旋转偏移数值供初始对位显示
对接方式二:自己实现对位与对比功能
载入点云与BIM实模,参考以下代码
// 创建实例需要传入的参数,部署环境serviceConfig 和 用户有效期getAccessToken
  const applicationOptions = {
    getAccessToken: this.getAccessToken,
    refreshAccessToken: this.getAccessToken,
    serviceConfig: { // 引擎内部的请求路径通过origin + apiContextPath拼接,同样会被代理到远程引擎服务的地址
      origin: `${window.location.protocol}//${window.location.host}`, // host
      apiContextPath: '/zt/obv/bimserver/viewing/v3' // path
    }
  }
  // 返回token
  getAccessToken(callBack) {
    callBack(this.obvToken, 36000)
  }
  // 点云模型文件标识,文件轻量化完成后生成
  let urn1 = 'urn:bimbox.file:1CdIsX5fxM0/1Dl798ReiB1?version=1';
  let urn2 = 'urn:bimbox.file:1CdIsX5fxM0/1Dl798ReiB2?version=1';

  let urnList = [];
  urnList.push(urn1);
  urnList.push(urn2);

  // 实例化 Builder,用于模型加载
  builder = new OBV.Api.ObvBuilder();
  // 创建 Application 对象
  const application = await builder.buildApplication(applicationOptions);
    // 创建 viewer 容器, 创建API
  obvApi = await builder.buildViewer3d(application, document.getElementById('viewer-one-div'));
  window.obvApi = obvApi;	
  //分别创建每个模型的document 管理视图
  urnMap = new Map();
  for(let i = 0; i < urnList.length; i++) {
    // 创建 document 管理视图,加载完成后可以调用接口
    const document = await builder.loadDocument(application, urnList[i], 'las-lod');
    urnMap.set(urnList[i], document);
  }

  options = {
    applicationId: application.id
  }
  //加载指定的点云模型
  await obvApi.createPntsTileset(urnMap.get(urn1), options);
  await obvApi.createPntsTileset(urnMap.get(urn2), options);

  // 加载BIM模型,实现合模
  let urn = 'urn:bimbox.file:1CdIsX5fxM0/1DweTTm30Tu?version=1';
  const bimDocument = await builder.loadDocument(applicationOptions, urn, 'rvt-lod');
  const viewer3dItems = bimDocument.get3dGeometryItems();
  builder.load3dModels(obvApi, {
    obvDocument: bimDocument,
    viewer3dItem: viewer3dItems[0],
  });
对位操作主要API:obvApi.setTransformInfo(1, matrix),matrix为模型变换矩阵,可通过Three.js API获取,引擎底层基于Three.js;
视角联动:通过监听V3dCameraChangeEvent事件捕获模型摄像机变化,获取一个模型的状态同步给另外一个模型
 const data = firstObvApi.getViewer3dState();
 secondObvApi.viewer.setViewPointInfo(data.camera)
在点云模型视图中绘制出构件轮廓:
选中实模构件后,在V3dSelectionChangedEvent事件中能捕获到选中的构件nodeItem;
通过getMesh()方法获取构件轮廓信息,const meshes = this.obvApi.getMesh(nodeItem);
使用Three.js API绘制轮廓外部对象externalObjects;
将外部对象挂载到点云模型场景中this.obvApi.addExternalObjects(this.sceneName, externalObjects);

接口列表#

获取obv-token
修改于 2024-04-02 09:17:31
上一页
获取obv-token
下一页
获取obv-token
Built with