planJson.md 6.4 KB

Json 文件格式

::: details 目录 [[toc]] :::

整体数据格式

{
    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: ''
}

图例节点

    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: {}                     // 默认状态样式
            }
        },
        ...
    ]

标识对象

    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: {}                     // 默认状态样式
            },
        },
        ...
    ]

对象关系

    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: {}                     // 默认状态样式
            }                           
        },
        ...
    ]

设备规则

    equip: [
        {
            equipTypeIds: [''],                 // 设备类型列表
            roomTypeIds: [''],                  // 分区类型列表
            roomFuncType: [''],                 // 空间功能区类型列表
            roomIds: [''],                      // 空间实例ID列表
        },
        ...
    ]

设备组规则

    equipGroup: [
        {
            equipTypeIds: [''],                 // 设备类型列表
            roomTypeIds: [''],                  // 分区类型列表
            roomFuncType: [''],                 // 空间功能区类型列表
            roomIds: [''],                      // 空间实例ID列表
        },
        ...
    ]

空间规则

    room: [
        {
            roomTypeIds: [''],                  // 分区类型列表
            roomFuncType: [''],                 // 空间功能区类型列表
            roomIds: [''],                      // 空间实例ID列表
        },
        ...
    ]