// 스프링클러설비의 화재안전기준(NFSC 103) 10조 (음향장치 및 기동장치) 2항 Check(NFSC103_10_2){ IF (CS1 THEN KS1) OR (CS2 THEN KS2) } CS1{ Space.usage = "RackWarehouse" isObjectProperty(Space.hasSpecialCombustible) = TRUE } KS1{ getObjectHeight(Rack) / 4 = RH (RH-1) <= getObjectCount(SprinklerHead) < RH getObjectInterval(SprinklerHead) = 4m } CS2{ Space.usage = "RackWarehouse" isObjectProperty(Space.hasSpecialCombustible) != TRUE } KS2{ getObjectHeight(Rack) / 6 = RH (RH-1) <= getObjectCount(SprinklerHead) < RH getObjectInterval(SprinklerHead) = 6m }
Python Code 변환 예정
//스프링클러설비의 화재안전기준(NFSC 103) 10조 3항 1호 check(NFSC103_10_3_1){ IF CS THEN KS } Space mySpace1{ Space.usage="StagePart" OR isObjectProperty(Space.hasSpecialCombustible)=TRUE } CS{ isExist(PlenumSpace)=TRUE } KS{ getHorizontalDistance(Ceiling | CeilingCovering | mySpace2 | Duct | Shelf,SprinklerSystem.Head)<=1.7m }
//스프링클러설비의 화재안전기준(NFSC 103) 10조 3항 2호 check(NFSC103_10_3_2){ IF (CS1 THEN KS1) OR (CS2 THEN KS2) } Space mySpace1{ Space.usage="RackWarehouse" Space mySpace2{ Space.usage="RackWarehouse" isObjectProperty(Space.hasSpecialCombustible)=TRUE } CS1{ isExist(mySpace1)=TRUE } KS1{ getHorizontalDistance(Ceiling|CeilingCovering|PlenumSpace|Duct|Shelf,SprinklerHead)<=2.5m } CS2{ isExist(mySpace2)=TRUE } KS2{ getHorizontalDistance(Ceiling|CeilingCovering|PlenumSpace|Duct|Shelf,SprinklerHead)<=1.7m }