Skip to content

建筑操作 ​

目录 ​

1. 拆解建筑楼层 ​

引入版本:3.0 起支持

功能描述 ​

拆解三维场景中建筑楼层

调用方法 ​

JavaScript
let jsonData = {
  id: 'buildingId',
  floor: 1,
  animation: 1,
};

appInstance.uniCall('showBuildingFloor', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明
idNumber模型 ID
floorNumber要拆解的楼层(1 楼为 1,地下一楼为-1)
animationNumber动画类型 (1:伸缩杆动画)

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

拆解建筑楼层流渲染效果 ​

拆解建筑楼层端渲染效果 ​

返回本章目录

返回本章目录

2. 展开建筑楼层 ​

引入版本:3.3.3 起支持

功能描述 ​

展开三维场景中的建筑楼层

调用方法 ​

JavaScript
let jsonData = {
    id: "buildingId",
    floorPadding: 10,
    duration: 1
};
appInstance.uniCall('expandBuildingFloor', jsonData, function (result) {
  console.log(result);
});

参数描述 ​

属性类型说明
idNumber模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
floorPaddingNumber每个楼层的间距(单位:米)
durationNumber展开动画的时间长度(单位:秒)

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

3. 恢复建筑外观 ​

引入版本:3.0 起支持

功能描述 ​

恢复三维场景中拆解掉的建筑楼层

调用方法 ​

JavaScript
let jsonData = {
  id: 'buildingId',
  animation: 1,
};
appInstance.uniCall('resetBuildingFloor', jsonData, function (result) {
  console.log(result);
});

参数描述 ​

属性类型说明
idNumber模型 ID
animationNumber动画类型 (1:伸缩杆动画)

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

4. 高亮建筑 ​

引入版本:3.1 起支持

功能描述 ​

高亮建筑

调用方法 ​

JavaScript
let jsonData = {
  id: 'buildingId',
  type: 'style1',
};

appInstance.uniCall('highlightBuilding', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明
idString模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
typeString高亮风格,style1:默认风格 none:取消高亮

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

高亮建筑流渲染效果图 ​

系统架构图

高亮建筑端渲染效果图 ​

系统架构图

返回本章目录

返回本章目录

5. 高亮楼层 ​

引入版本:3.1 起支持

功能描述 ​

高亮楼层

调用方法 ​

JavaScript
let jsonData = {
  id: 'buildingId',
  floor: 1,
  type: 'style1',
};

appInstance.uniCall('highlightFloor', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明
idString模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
floorNumber要拆解的楼层号,1 楼为 1,地下一楼为 -1,依此类推
typeString高亮风格,style1:默认风格 none:取消高亮

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

高亮楼层流渲染效果图 ​

系统架构图

高亮楼层端渲染效果图 ​

系统架构图

返回本章目录

返回本章目录

6. 高亮房间 ​

引入版本:3.1 起支持

功能描述 ​

高亮房间

调用方法 ​

JavaScript
let jsonData = {   
    id: "buildingId",
    floor: 1,
    room: "roomName",
    type: "style1"
}


appInstance.uniCall('highlightRoom', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明
idString模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
floorNumber要拆解的楼层号,1 楼为 1,地下一楼为 -1,依此类推
roomString要高亮亮的房间名称
typeString高亮风格,style1:默认风格 none:取消高亮

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

7. 获取建筑信息 ​

引入版本:3.1 起支持

功能描述 ​

返回当前场景内全部建筑信息,包括每座建筑的内部楼层和房间 Id

调用方法 ​

JavaScript
appInstance.uniCall('getBuildings', {}, (result) => {
  console.log(result);
});

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。",
  "buildings": [
    {
      "id": "buildingId01",
      "floors": [
        {
          "num": 1,
          "rooms": [
            {
              "name": "roomName01"
            }
          ]
        },
        {
          "num": 2,
          "rooms": [
            {
              "name": "roomName02"
            },
            {
              "name": "roomName03"
            }
          ]
        }
      ]
    },
    {
      "id": "buildingId01",
      "floors": [
        {
          "num": 1,
          "rooms": [
            {
              "name": "roomName04"
            }
          ]
        }
      ]
    },
    {
      "id": "buildingId03",
      "floors": []
    }
  ]
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因
buildingsArray建筑信息
buildings[0].idString建筑 id
buildings[0].floorsArray建筑楼层信息
buildings[0].floors[0].numNumber楼层数
buildings[0].floors[0].roomsArray建筑楼层房间信息
buildings[0].floors[0].rooms[0].nameArray房间名称 / 房间 Id

返回本章目录

8. 根据建筑获取内部模型 ​

引入版本:3.4 起支持

功能描述 ​

根据传入的建筑 Id,返回建筑对象内全部的模型信息,包括每层楼的模型,和每个房间的模型

调用方法 ​

JavaScript
appInstance.uniCall('getModelsByBuilding', { id: "buildingId"}, (result) => {
  console.log(result);
});

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。",
  "buildings": [
    {
      "id": "buildingId01",
      "coord": [
        114.560257,
        37.09079
      ],
      "coordZ": 10,
      "size": [
        100,
        100,
        100
      ],
      "models": [
        "modelId01",
        "modelId02",
        "modelId03"
      ],
      "floors": [
        {
          "num": 1,
          "coord": [
            114.560257,
            37.09079
          ],
          "coordZ": 10,
          "size": [
            100,
            100,
            100
          ],
          "models": [
            "floorModelId01",
            "floorModelId02",
            "floorModelId03"
          ],
          "rooms": [
            {
              "name": "roomName01",
              "coord": [
                114.560257,
                37.09079
              ],
              "coordZ": 10,
              "size": [
                100,
                100,
                100
              ],
              "models": [
                "roomModelId01",
                "roomModelId02",
                "roomModelId03"
              ]
            }
          ]
        },
        {
          "num": 2,
          "coord": [
            114.560257,
            37.09079
          ],
          "coordZ": 10,
          "size": [
            100,
            100,
            100
          ],
          "models": [
            "floorModelId01",
            "floorModelId02",
            "floorModelId03"
          ],
          "rooms": [
            {
              "name": "roomName02",
              "coord": [
                114.560257,
                37.09079
              ],
              "coordZ": 10,
              "size": [
                100,
                100,
                100
              ],
              "models": [
                "roomModelId01",
                "roomModelId02",
                "roomModelId03"
              ]
            },
            {
              "name": "roomName03",
              "coord": [
                114.560257,
                37.09079
              ],
              "coordZ": 10,
              "size": [
                100,
                100,
                100
              ],
              "models": [
                "roomModelId01",
                "roomModelId02",
                "roomModelId03"
              ]
            }
          ]
        }
      ]
    }
  ]
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因
buildingsArray建筑信息
buildings[0].idString建筑 id
buildings[0].coordArray建筑中心点的,XY 轴坐标,X:经度;Y:纬度
buildings[0].coordZNumber建筑底面的海拔高度(单位:米)
buildings[0].sizeArray建筑的包围盒大小,长宽高,(单位:米)
buildings[0].modelsArray建筑内模型,例如外立面
buildings[0].floorsArray建筑楼层信息
buildings[0].floors[0].numNumber楼层数
buildings[0].floors[0].coordArray楼层中心点的,XY 轴坐标,X:经度;Y:纬度
buildings[0].floors[0].coordZNumber楼层底面的海拔高度(单位:米)
buildings[0].floors[0].sizeArray楼层的包围盒大小,长宽高,(单位:米)
buildings[0].floors[0].modelsArray楼层内模型,例如用于高亮的模型组件
buildings[0].floors[0].roomsArray建筑楼层房间信息
buildings[0].floors[0].rooms[0].nameArray房间名称 / 房间 Id
buildings[0].floors[0].rooms[0].coordArray房间中心点的,XY 轴坐标,X:经度;Y:纬度
buildings[0].floors[0].rooms[0].coordZNumber房间底面的海拔高度(单位:米)
buildings[0].floors[0].rooms[0].sizeArray房间的包围盒大小,长宽高,(单位:米)
buildings[0].floors[0].rooms[0].modelsArray房间内模型

返回本章目录