WIKI WIKI
首页
  • 升级日志
  • 转换器部署
  • 使用须知
  • 基础功能
  • 材质替换
  • 模型批注
  • 常见问题
双碳
演示站点 (opens new window)
SuperAPI (opens new window)
  • CIM (opens new window)
  • TIM (opens new window)
  • WIM (opens new window)
首页
  • 升级日志
  • 转换器部署
  • 使用须知
  • 基础功能
  • 材质替换
  • 模型批注
  • 常见问题
双碳
演示站点 (opens new window)
SuperAPI (opens new window)
  • CIM (opens new window)
  • TIM (opens new window)
  • WIM (opens new window)
  • 升级日志
  • 转换器部署
  • 使用须知
  • 基础功能

    • 初始化
    • 模型获取
    • 模型操作
    • 模型构件
      • 构件树
        • 获取模型构件树
        • 获取分层构件树
        • 文件树JSON串
      • 构件操作
        • 获取BIM信息
        • 设置显隐
        • 强制显隐
        • 显示所有
        • 获取中心点
        • 隔离
        • 高亮
        • 聚焦
        • 构件点选
        • 点击回调
    • 模型移动
    • 模型旋转
    • 模型缩放
    • 模型剖切
    • 模型漫游
    • 功能开关
  • 材质替换
  • 构件取点
  • 建筑分层
  • 模型批注
  • 模型框选
  • 模型搜索
  • 进度模拟
  • 资产库
  • 瓦片服务
  • 特效库
  • 数据接口

  • 常见问题
目录

模型构件

警告

调用本页面的接口方法都需要激活对应模型

# 构件树

# 获取模型构件树

cloudRender.SuperAPI("BIM51API_GetModelTree")

# 回调监听

{
   "command": "event",
   "func_name": "GetModelTree",
   "args": {
      "Nodes": ["文件树JSON串"]
   }
}

注意

如果当前模型构件树过大需要使用获取分层构件树API

# 获取分层构件树

参数说明

  1. NodeID:
    • *: 从根节点开始查找
    • number: 从对应节点开始向下查找
  2. Level:向下查找层级
    • 0: 不查找子集
    • -1: 子集全查找
let jsonData = {
   "NodeID" : "*",
   "Level": "-1"
}

cloudRender.SuperAPI('BIM51API_GetSubModelTree', jsonData)

# 回调监听

{
   "command" : "event",
   "func_name": "GetSubModelTree",
   "args": {
      "Nodes": ["文件树JSON串"]
   }
}

注意

  1. 如果结构树过大,存在返回失败的可能,建议通过参数合理限定返回范围
  2. 当 Level 超过结构树最大层级,以最大层级返回

# 文件树JSON串

{
  "id": "-1",
  "title": "villa",
  "visibility": "1",
  "expansion": "1",
  "Nodes": ["文件树JSON串"]
}

# 构件操作

# 获取BIM信息

let jsonData = { NodeID: "NodeID" }

cloudRender.SuperAPI("BIM51API_GetNodeBIMInfo", jsonData)

注意

只有最底端的BIM构件拥有BIM信息

# 回调监听

{
    "command":"event",
    "func_name":"GetNodeBIMInfo",
    "args":{
        "GetNodeBIMInfo":[ "多个Node结构体" ]
    }
}

# Node结构体

{
    "PropertyType":"Integer",
    "Name":"Element_Volume",
    "Lable":"Element_Volume",
    "Value":"0.05 m³"
}

# 设置显隐

参数说明

IsVisible:字符串传输

  • true: 可见
  • false: 不可见
let jsonData = {
   NodeID: "NodeID",
   IsVisible: "true" 
}

cloudRender.SuperAPI("BIM51API_SetNodeVisibility", jsonData)

注意

该功能动态控制数个Node的显隐,不仅仅影响对应NodeID的节点。模型构件数量多或者构件顶点复杂,在项目中可能出现执行异常或者项目崩溃的问题,此时建议使用 BIM51API_SetNodeVisibilityOnly

# 强制显隐 V2.7+

参数说明

IsVisible:字符串传输

  • true: 可见
  • false: 不可见
let jsonData = {
   NodeID: "NodeID",
   IsVisible: "true" 
}

cloudRender.SuperAPI("BIM51API_SetNodeVisibilityOnly", jsonData)

注意

仅控制NodeID对应的构件,不干涉其他父级、子级、兄弟级节点。一定程度上能避免显隐崩溃问题

# 显示所有

cloudRender.SuperAPI("BIM51API_ShowAllNode")

# 获取中心点

let jsonData = { NodeID: "NodeID" }

cloudRender.SuperAPI("BIM51API_GetNodePosition", jsonData)

# 回调监听

{
    "command":"event",
    "func_name":"GetNodePosition",
    "args":{
        "GetNodePosition":"X,Y,Z"
    }
}

# 隔离

let jsonData = {
   "NodeID":"NodeID"
}

cloudRender.SuperAPI("BIM51API_IsolateSingleNode", jsonData)

# 高亮

参数说明

  1. bHightlight:
    • 0: 取消高亮
    • 1: 高亮
let jsonData = {
   "NodeID":"NodeID",
   "bHightlight":"0 or 1"
}

cloudRender.SuperAPI("BIM51API_SetNodeHighlight", jsonData)

# 聚焦

let jsonData = {
   "NodeID":"NodeID"
}

cloudRender.SuperAPI("BIM51API_SetNodeFocused", jsonData)

# 构件点选

# 开启

启用场景中的构件点击相关的操作

cloudRender.SuperAPI("BIM51API_OpenClickElement")

# 关闭

禁用场景中的构件点击相关的操作

cloudRender.SuperAPI("BIM51API_CloseClickElement")

# 点击回调

构件被点击的回调函数

{
   "command": "event",
   "func_name": "OnElementNodeChange",
   "args": {
      "OnElementNodeChange": "NodeID"
   }
}
上次更新: 2023/01/03, 10:12:41
模型操作
模型移动

← 模型操作 模型移动→

最近更新
更多文章>
Theme by Vdoing | Copyright © 2021-2024 51AES
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式