import { Column } from "../types/floor/Column"; import { SColumnItem } from "../items/floor/SColumnItem"; import { SWallItem } from "../items/floor/SWallItem"; import { Wall } from "../types/floor/Wall"; import { SVirtualWallItem } from "../items/floor/SVirtualWallItem"; import { VirtualWall } from "../types/floor/VirtualWall"; import { SSpaceItem } from "../items/floor/SSpaceItem"; import { Space } from "../types/floor/Space"; import { Door } from "../types/floor/Door"; import { SDoorItem } from "../items/floor/SDoorItem"; import { SWindowItem } from "../items/floor/SWindowItem"; import { Casement } from "../types/floor/Casement"; import { SZoneItem } from "../items/floor/ZoneItem"; import { Zone } from "../types/floor/Zone"; import { Legend } from "../types/topology/Legend"; import { Marker } from "../types/topology/Marker"; import { Relation } from "../types/topology/Relation"; /** * 拓扑图信息解析器 * */ export class SItemFactory { /** * 构造函数 * * */ constructor() {} // Constructor /** * 创建柱子item * * @param data 柱子数据 * @return 柱子item * */ createColumn(data: Column): SColumnItem { return new SColumnItem(null, data); } // Function createColumn() /** * 创建墙item * * @param data 墙数据 * @return 墙item * */ createWall(data: Wall): SWallItem { return new SWallItem(null, data); } // Function createWall() /** * 创建虚拟墙item * * @param data 虚拟墙数据 * @return 虚拟墙item * */ createVirtualWall(data: VirtualWall): SVirtualWallItem { return new SVirtualWallItem(null, data); } // Function createVirtualWall() /** * 创建空间item * * @param data 空间数据 * @return 空间item * */ createSpace(data: Space): SSpaceItem { return new SSpaceItem(null, data); } // Function createSpace() /** * 创建门item * * @param data 门数据 * @return 门item * */ createDoor(data: Door): SDoorItem { return new SDoorItem(null, data); } // Function createDoor() /** * 创建窗item * * @param data 窗户数据 * @return 窗户item * */ createWindow(data: Casement): SWindowItem { return new SWindowItem(null, data); } // Function createWindow() /** * 创建业务空间item * * @param data 业务空间数据 * @return 业务空间item * */ createZone(data: Zone): SZoneItem { return new SZoneItem(null, data); } // Function createZone() } // class SItemFactory