# Json 文件格式 ::: details 目录 [[toc]] ::: ## 整体数据格式 ``` json { data: [ { elements:{ // 平面图展示所需数据 objExtInfo: [], // 对象扩展信息,所有与对象实例相关的图例(图标类型与区域) markers: [], // 与对象实例的标识对象(增加文本注释,图上的图片说明) relations: [], // 管线对象 }, id: '', // 图编号 graphId: '', // 图 id name: '', // 名称 folderId: '', // 文件夹 id projectId: '', // 项目 id buildingId: '', // 建筑 id floorId: '', // 楼层 id note: '', // 图说明 label: [''], // 图标签 pic: '', // 图快照 version: '', // 版本信息 createTime: '', // 创建时间 lastUpdate: '', // 最后更新时间 state: 'Draft', // 标记(Draft: 未发布, WaitCheck: 待审核, Checked: 审核完成, Recyle: 回收站, Publish: 发布) ruleList: [ // 实例数据获取规则 { returnType: '', // 返回类型(equip: 设备, equipGroup: 设备组, zone: 空间) commond: '', // 命令类型(query: 查询, delete: 删除) params: {}, // 查询参数 note: '', // 命令说明 } ], hideList: [''], // 隐藏的实例ID(设备,空间 在物理世界的ID) outline: [], // 轮廓(区域显示使用到的轮廓点坐标) style: [], // 风格 } ], message: '', // 接口返回提示 result: '' // 接口返回类型(success: 成功, error: 失败) } ``` ## 对象扩展信息 ``` json objExtInfo:[ { id: '', // 图编号 graphId: '', // 图 id nodeId: '', // node 节点本身 id name: '', // 名称 attachObjectIds: [], // 返回物理世界对象 id 列表 type: '', // 节点类型(image / zone) pos: {x: 0, y: 0}, // 位置 properties: {}, // 由应用自己定义 }, ... ] ``` ## 轮廓 > 区域显示使用,存放矩形显示区域的的坐标点 ```json outline: [ { x: 0, y: 0 }, { x: 100, y: 100 }, ... ] ``` ## 风格定义 > 可以指定引用文件(只能引用一个), 或者使用自己的风格 ``` json style: [ { }, ... ] ``` ## 标识对象 ``` json 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: {} // 默认状态样式 }, }, ... ] ``` ## 对象关系 > 设备删除/新增, 需要手动处理管线 ``` json 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: {} // 默认状态样式 } }, ... ] ```