|
@@ -0,0 +1,170 @@
|
|
|
+# Json 文件格式
|
|
|
+
|
|
|
+::: details 目录
|
|
|
+[[toc]]
|
|
|
+:::
|
|
|
+
|
|
|
+## 整体数据格式
|
|
|
+
|
|
|
+``` json5
|
|
|
+{
|
|
|
+ data:[
|
|
|
+ {
|
|
|
+ available: false //
|
|
|
+ elements:{ // 平面图展示所需数据
|
|
|
+ nodes:[], // 图例节点,所有与对象实例相关的图例(图标类型与区域)
|
|
|
+ markers:[], // 与对象实例的标识对象(增加文本注释,图上的图片说明)
|
|
|
+ relations:[], // 管线对象
|
|
|
+ },
|
|
|
+ id: '', // 图编号
|
|
|
+ graphId:'', // 图 id
|
|
|
+ name: '', // 名称
|
|
|
+ folderId: '', // 文件夹 id
|
|
|
+ projectId: '', // 项目 id
|
|
|
+ buildingId: '', // 建筑 id
|
|
|
+ floorId: '', // 楼层 id
|
|
|
+ note: '', // 图说明
|
|
|
+ label: [''], // 图标签
|
|
|
+ pic: '', // 图快照
|
|
|
+ version: '', // 版本信息
|
|
|
+ createTime: '', // 创建时间
|
|
|
+ lastUpdate: '', // 最后更新时间
|
|
|
+ state: 0, // 标记(1草稿箱,2待审核,3审核完成,4回收站 ,0发布)
|
|
|
+ mapShow: true, // 底图显隐
|
|
|
+ rule: { // 实例数据获取规则
|
|
|
+ equip: [], // 设备规则列表
|
|
|
+ equipGroup: [], // 设备组规则列表
|
|
|
+ room: [], // 空间规则列表
|
|
|
+ },
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ message: '',
|
|
|
+ result: ''
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+## 图例节点
|
|
|
+
|
|
|
+``` json5
|
|
|
+ nodes:[
|
|
|
+ {
|
|
|
+ id: '', // 图编号
|
|
|
+ graphId: '', // 图 id
|
|
|
+ nodeId: '', // node 节点本身 id
|
|
|
+ name: '', // 名称
|
|
|
+ attachObjectIds:[], // 返回物理世界对象 id 列表
|
|
|
+ graphElementId: '', // 对应的图元 id
|
|
|
+ type: '', // 节点类型(image / zone)
|
|
|
+ pos: {x: 0, y: 0}, // 位置
|
|
|
+ scale: {x: 1, y: 1, Z: 1}, // 缩放
|
|
|
+ rotate: {x: 0, y: 0, Z: 0}, // 旋转
|
|
|
+ size: {width:0, height: 0}, // 大小
|
|
|
+ anchorList:[
|
|
|
+ {
|
|
|
+ id: '', // 锚点 id
|
|
|
+ pos: {x: 0, y: 0}, // 锚点的坐标
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ],
|
|
|
+ outline: [
|
|
|
+ [{x:0,y:0,z:0},...], // 外轮廓
|
|
|
+ ... // 内轮廓
|
|
|
+ ], // 轮廓线
|
|
|
+ properties: {}, // 由应用自己定义
|
|
|
+ style: { // 绘图样式
|
|
|
+ default: {} // 默认状态样式
|
|
|
+ }
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ]
|
|
|
+```
|
|
|
+
|
|
|
+## 标识对象
|
|
|
+
|
|
|
+``` json5
|
|
|
+ markers:[
|
|
|
+ {
|
|
|
+ id: '', // 图编号
|
|
|
+ graphId: '', // 图 id
|
|
|
+ markerId: '', // marker 本身 id
|
|
|
+ name: '', // 名称
|
|
|
+ type: '', // 图标(Image),线类型(Line),文本(Text)
|
|
|
+ pos: {x: 0, y: 0}, // 位置
|
|
|
+ scale: {x: 1, y: 1, z: 1}, // 缩放
|
|
|
+ rotate: {x: 0, y: 0, z: 0}, // 旋转
|
|
|
+ size: {width: 0, height: 0}, // 大小
|
|
|
+ properties: {}, // 由应用自己定义
|
|
|
+ style: { // 绘图样式
|
|
|
+ default: {} // 默认状态样式
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ]
|
|
|
+```
|
|
|
+
|
|
|
+## 对象关系
|
|
|
+
|
|
|
+``` json5
|
|
|
+ relations: [
|
|
|
+ {
|
|
|
+ id: '', // 图编号
|
|
|
+ graphId: '', // 图 id
|
|
|
+ relationId: '', // relation 本身 id
|
|
|
+ name: '', // 名称
|
|
|
+ graphElementId: '', // 对应的图元ID
|
|
|
+ node1Id: '', // 关联节点1_id
|
|
|
+ node2Id: '', // 关联节点2_id
|
|
|
+ anchor1Id: '', // 关联锚点1_id
|
|
|
+ anchor2Id: '', // 关联锚点2_id
|
|
|
+ dir: 0, // 方向(0:无向,1:节点1到节点2,2:节点2到节点1)
|
|
|
+ lineType: '', // 直线(Line),水平垂直
|
|
|
+ properties: {}, // 由应用自己定义
|
|
|
+ style: { // 绘图样式
|
|
|
+ outline: [{x:0,y:0,z:0},...], // 折线数据
|
|
|
+ default: {} // 默认状态样式
|
|
|
+ }
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ]
|
|
|
+```
|
|
|
+
|
|
|
+## 设备规则
|
|
|
+
|
|
|
+``` json5
|
|
|
+ equip: [
|
|
|
+ {
|
|
|
+ equipTypeIds: [''], // 设备类型列表
|
|
|
+ roomTypeIds: [''], // 分区类型列表
|
|
|
+ roomFuncType: [''], // 空间功能区类型列表
|
|
|
+ roomIds: [''], // 空间实例ID列表
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ]
|
|
|
+```
|
|
|
+
|
|
|
+## 设备组规则
|
|
|
+
|
|
|
+``` json5
|
|
|
+ equipGroup: [
|
|
|
+ {
|
|
|
+ equipTypeIds: [''], // 设备类型列表
|
|
|
+ roomTypeIds: [''], // 分区类型列表
|
|
|
+ roomFuncType: [''], // 空间功能区类型列表
|
|
|
+ roomIds: [''], // 空间实例ID列表
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ]
|
|
|
+```
|
|
|
+
|
|
|
+## 空间规则
|
|
|
+
|
|
|
+``` json5
|
|
|
+ room: [
|
|
|
+ {
|
|
|
+ roomTypeIds: [''], // 分区类型列表
|
|
|
+ roomFuncType: [''], // 空间功能区类型列表
|
|
|
+ roomIds: [''], // 空间实例ID列表
|
|
|
+ },
|
|
|
+ ...
|
|
|
+ ]
|
|
|
+```
|