You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
4.3 KiB
79 lines
4.3 KiB
4 years ago
|
import { Type } from 'class-transformer';
|
||
|
import { ConfigManager } from 'src/assets/babylon/controller/config-manager';
|
||
|
import { DataManager } from 'src/assets/babylon/controller/data-manager';
|
||
|
|
||
|
import { FacilityPosType, FacilityType, ModelData_facility } from '../../model-data/model-data-facility';
|
||
|
import { TransformData } from '../../transform-data';
|
||
|
|
||
|
//所有设备数据
|
||
|
export class AllFacilityData {
|
||
|
@Type(() => ModelData_facility)
|
||
|
indoor: ModelData_facility[] = []; //室内
|
||
|
@Type(() => ModelData_facility)
|
||
|
outdoor: ModelData_facility[] = []; //室外
|
||
|
|
||
|
/**捏造所有消防设施的源数据 */
|
||
|
static CreateAllFacilityData(): AllFacilityData {
|
||
|
let result = new AllFacilityData();
|
||
|
|
||
|
AllFacilityData.newFacilityData(FacilityType.AQCK, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.DSXHS, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.DXXHS, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.SZDSXHS, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.SZDXXHS, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.DSSBJHQ, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.DXSBJHQ, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.QBSBJHQ, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.DGNSBJHQ, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.GD, FacilityPosType.Outdoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.PL, FacilityPosType.Outdoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.JTQ, FacilityPosType.Outdoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.JJQ, FacilityPosType.Outdoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.TPBZ, FacilityPosType.Outdoor, result, true);
|
||
|
|
||
|
AllFacilityData.newFacilityData(FacilityType.XKS, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.BF, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.SX, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.LSXFB, FacilityPosType.Indoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.WSXFB, FacilityPosType.Indoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.CYXFB, FacilityPosType.Indoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.FHFQ, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.SNXHS, FacilityPosType.Indoor, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.FHM, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.FHJL, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.SSLT, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.XFDT, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.PTDT, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.HT, FacilityPosType.Indoor, result, false);
|
||
|
AllFacilityData.newFacilityData(FacilityType.WXY, FacilityPosType.Public, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.ZDQY, FacilityPosType.Public, result);
|
||
|
AllFacilityData.newFacilityData(FacilityType.DWBZ, FacilityPosType.Public, result);
|
||
|
return result;
|
||
|
|
||
|
}
|
||
|
|
||
|
//新建设备信息
|
||
|
static newFacilityData(type: FacilityType, posType: FacilityPosType, allFacilityData: AllFacilityData, isModel: boolean = true): ModelData_facility {
|
||
|
let name = ConfigManager.getFacilityTypeName(type);
|
||
|
let result = new ModelData_facility(type.toString(), type, name, DataManager.getResName_facility(type) + ".gltf", new TransformData(), posType, isModel);
|
||
|
switch (posType) {
|
||
|
case FacilityPosType.Outdoor:
|
||
|
allFacilityData.outdoor.push(result);
|
||
|
break;
|
||
|
case FacilityPosType.Indoor:
|
||
|
allFacilityData.indoor.push(result);
|
||
|
break;
|
||
|
case FacilityPosType.Public:
|
||
|
allFacilityData.outdoor.push(result);
|
||
|
allFacilityData.indoor.push(result);
|
||
|
break;
|
||
|
}
|
||
|
return result;
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|