개방형BIM 기반의 건축설계 적법성 평가 자동화 기술 및 응용기술 개발
Development of OpenBIM based Architectural Design Code Checking and Evaluation Technology
  Welcome to BIM - 2nd Project Website - Yonsei University
PAGE MENU  
전체법규 - 법규데이터베이스
- 대한민국 전체 법규 목록
- 설계품질검토 대상 관련법규
- 관련법규 변동 현황
대상법규 - 문장 논리규칙체계화
- 조항단위 논리규칙체계
- 문장단위 논리규칙체계
주어부 - 객체.속성 데이터베이스
- 법규로부터의 객체.속성 분류
- 명칭DB: 객체 | 객체및속성
서술부 - 함수 데이터베이스
- 논리규칙화 함수 분류
- 논리규칙화 함수 DB
관계부 - 문장 내.외 관계논리
- 문장 내.외 관계유형분류
- 문장 내.외관계 논리체계화
문장단위 | 체크리스트 단위
KBimCode 데이터베이스
- KBimCode Lang. Definition
- KBimCode Editor:
전체 개발항목 단위
우선순위 개발항목 단위
- KBimCode DB 2단계:
문장단위 | 조항단위 |
분야/용도/단계 체크리스트 단위
- KBimLogic Applications
KBimAssess Code 데이터베이스
- Executable KBimAssess Code
- KBimCode-Assess 연동모듈
 
(2025-06-28 기준) 설계품질검토용 건축법 및 관련법규 - KBIMCode (문장단위)
    1      
1 / 1 page Total 2500 / 4000 records    신규입력
Select
ALL
None
#
ID
Law
Jo
JO Name
HANG
HO
MOK
Text
Search!
1
72691 건축물의 에너지절약설계기준 제 5조 5호

5. "고효율에너지기자재인증제품”(이하 "고효율인증제품”이라 한다)이라 함은 산업통상자원부 고시 「고효율에너지기자재 보급촉진에 관한규정」(이하 "고효율인증규정”이라 한다)에서 정한 기준을 만족하여 에너지관리공단에서 인증서를 교부받은 제품을 말한다.





//	옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 6항

Check(NFSC102_6_6){

	IF (CS1 THEN KS1) OR (CS2 THEN KS2) OR (CS3 THEN KS3) OR (CS4 THEN KS4)

}

Port myPort{
Port.typeForWater = "IndoorFireHydrantDischarge"
}

	Pipe myPipe{

		isObjectProperty(Pipe.isBranchLines) = TRUE

		isConnectedTo(Pipe, myPort) = TRUE

	}



	Pipe myPipe2{

		isObjectProperty(Pipe.isRiser) = TRUE

	}



CS1{

	getObjectProperty(myPipe.systemType) = "HoseReelHydrantSystem"

}



KS1{

	getObjectProperty(myPipe.diameter) >= 25mm

}



CS2{

	getObjectProperty(myPipe.systemType) != "HoseReelHydrantSystem"

}



KS2{

	getObjectProperty(myPipe.diameter) >= 40mm

}



CS3{

	getObjectProperty(myPipe2.systemType) = "HoseReelHydrantSystem"

}



KS3{

	getObjectProperty(myPipe2.diameter) >= 32mm

}



CS4{

	getObjectProperty(myPipe2.systemType) != "HoseReelHydrantSystem"

}



KS4{

	getObjectProperty(myPipe2.diameter) >= 50mm

} 




Python Code 변환 예정



Modify
2
72846 건축물의 에너지절약설계기준 제 11조 4호 가 목

가. 여러 대의 승강기가 설치되는 경우에는 군관리 운행방식을 채택한다.





//  간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 9항 1호

Check(NFSC103A_8_9_1){

	KS

}



KS{

	isObjectProperty(Pipe.isBranchLines) = TRUE

	isObjectProperty(Pipe.hasTournamentArragement) = FALSE

} 




Python Code 변환 예정



Modify
3
72847 건축물의 에너지절약설계기준 제 11조 4호 나 목

나. 팬코일유닛이 설치되는 경우에는 전원의 방위별, 실의 용도별 통합제어가 가능하도록 한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 9항 2호

Check(NFSC503A_8_9_2){
	IF !CS THEN KS
}
CS{
	getResult(NFSC503A_8_9_2_가) = TRUE
}
KS{
	Pipe myPipe{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	}
	Head myHead{
	isIntalled(SimpleSprinkler.Head, myPipe.One) = TRUE
	getObjectVerticalLocation(CeilingCovering, SimpleSprinkler.Head) < 0
	}
	getObjectCount(myHead) <= 8  
} 




Python Code 변환 예정



Modify
4
72848 건축물의 에너지절약설계기준 제 11조 4호 다 목

다. 수변전설비는 종합감시제어 및 기록이 가능한 자동제어설비를 채택한다.





9항 3호

Check(NFSC503A_8_9_3){
	IF CS THEN KS
}
	Pipe myPipe1{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isFlexibleTube) = TRUE
	}
CS{
	isInstalledInOrder(myPipe1, myPipe2, Head) = TRUE
}
KS{
	getResult(NFSC503_10_3) = TRUE
} 




Python Code 변환 예정



Modify
5
72849 건축물의 에너지절약설계기준 제 11조 4호 라 목

라. 실내 조명설비는 군별 또는 회로별로 자동제어가 가능하도록 한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 10항



Check(NFSC503A_8_10){

	IF CS THEN KS

}

	Pipe myPipe1{

	isObjectProperty(Pipe.isBranchLines) = TRUE

	}

	Head myHead{

	isObjectProperty(Head.installationDirectionType) = "TopDownType"

	}

CS{

	isInstalled(myHead, myPipe1) = TRUE

}

KS{

	Pipe mypipe2{

	isConnectedTo(myPipe1, Pipe) = TRUE

	isConnectedTo(myHead, Pipe) = TRUE

	}

	getObjectVerticalLocation(myPipe1, myPipe1) > 0 

} 




Python Code 변환 예정



Modify
6
72856 건축물의 에너지절약설계기준 제 15조 2 항

② 에너지성능지표의 각 항목에 대한 배점의 판단은 에너지절약계획서 제출자가 제시한 설계도면 및 자료에 의하여 판정하며, 판정 자료가 제시되지 않을 경우에는 적용되지 않은 것으로 간주한다.





// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 12항 1호



Check(NFSC503A_8_12_1){

	KS

}

KS{

	Pipe myPipe{

	isObjectProperty(Pipe.isBranchLines) = TRUE

	isFarthestDistance(WaterflowIndicator, Pipe) = TRUE

	}

	isInstalled(TestingDevice, myPipe.End) = TRUE

	isConnectedTo(TestingDevice, myPipe.End) = TRUE

} 




Python Code 변환 예정



Modify
7
72860 건축물의 에너지절약설계기준 제 17조 1 항 1호

「법 및 조례에서 정하는 기준 용적률」× [1 + 완화기준]





// 간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 1호



Check(NFSC103A_8_13_1){

	IF(CS1 THEN KS1) OR (CS2 THEN KS2)

}

Pipe myPipe{

	isObjectProperty(Pipe.isBranchLines) = TRUE

}

CS1{

	getObjectInterval(SimpleSprinkler.Head) <= 3.5m

}

KS1{

	getObjectCountInInterval(Hanger, SimpleSprinkler.Head) >= 1

	isInstalled(Hanger, myPipe) = TRUE

}



CS2{

	getObjectInterval(SimpleSprinkler.Head) > 3.5m

}

KS2{

	Head myHead{

	isObjectProperty(Head.installationDirectionType) = "BottomUpType"

	}

	isInstalled(Hanger, myPipe, b, 3.5) = TRUE

getObjectCountInInterval(Hanger, SimpleSprinkler.Head) >= 1

	getObjectDistance(myHead, Hanger) >= 8cm 



} 




Python Code 변환 예정



Modify
8
72861 건축물의 에너지절약설계기준 제 17조 1 항 2호

2. 조경면적 적용방법





//간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 2

Check(NFSC103A_8_13_2){
	IF(CS1 THEN KS1) OR (CS2 THEN KS2)
}
Pipe myPipe1{
	isObjectProperty(Pipe.isCrossMains) = TRUE
}
Pipe myPipe2{
	isObjectProperty(Pipe.isBranchLines) = TRUE
}
CS1{
	getObjectInterval(myPipe2) <= 4.5m
}
KS1{
	getObjectCountInInterval(Hanger, myPipe2) >= 1
	isInstalled(Hanger, myPipe1) = TRUE
}

CS2{
	getObjectInterval(myPipe2) > 4.5m
}
KS2{
	isInstalled(Hanger, myPipe1, b, 4.5) = TRUE
getObjectCountInInterval(Hanger, myPipe2) >= 1
} 




Python Code 변환 예정



Modify
9
72879 건축물의 에너지절약설계기준 제 23조 4 항

④ 기숙사, 오피스텔은 별표1 및 별표3의 공동주택 외의 단열기준을 준수할 수 있으며, 별지 제1호서식의 에너지성능지표 작성 시, 기본배점에서 비주거를 적용한다.





//	간이스프링클러설비의 화재안전기준(NFSC 103A) 별표1 (간이헤드 수별 급수관의 구경) 1항

Check(NFSC103A_*_1){

	getResult(NFSC103A_*_1_1) = TRUE

	getResult(NFSC103A_*_1_2) = TRUE

	getResult(NFSC103A_*_1_3) = TRUE

	getResult(NFSC103A_*_1_4) = TRUE

}

	

	Pipe myPipe{

	getObjectProperty(Pipe.usage) = "WaterSupplyPipe"

	}

	Pipe myPipe2{

	isObjectProperty(Pipe.isBranchLines) = TRUE

	}

	PD = getObjectProperty(Pipe.diameter)

	SSHN = getObjectCount(SimpleSprinkler.Head.)



Check(NFSC103A_*_1_2){

	IF CS THEN KS

}

CS{

	Head myHead{

	getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"

	}

	isInstalled(myHead) = TRUE

}

KS{

	IF PD = 25 THEN SSHN = 2

	OR IF PD = 32 THEN SSHN = 3

	OR IF PD = 40 THEN SSHN = 5

	OR IF PD = 50 THEN SSHN = 10

	OR IF PD = 65 THEN SSHN = 30

	OR IF PD = 80 THEN SSHN = 60

	OR IF PD = 100 THEN SSHN = 100

	OR IF PD = 125 THEN SSHN = 160

	OR IF PD = 150 THEN SSHN >= 161

}

Check(NFSC103A_*_1_3){

	IF CS THEN KS

}

CS{

	Head myHead1{

	getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"

	}

	isInstalled(myHead1) = TRUE

	Head myHead2{

	getObjectVerticalLocation(Head, CeilingCovering, )  <  0
	}

	Head myHead3{

	isInstalled(Head, CeilingCovering.Inside) = TRUE

	}

	isInstalled(myHead2, myPipe2) = TRUE

	isInstalled(myHead3, myPipe2) = TRUE

}

KS{

	IF PD = 25 THEN SSHN = 2

	OR IF PD = 32 THEN SSHN = 4

	OR IF PD = 40 THEN SSHN = 7

	OR IF PD = 50 THEN SSHN = 15

	OR IF PD = 65 THEN SSHN = 30

	OR IF PD = 80 THEN SSHN = 60

	OR IF PD = 100 THEN SSHN = 100

	OR IF PD = 125 THEN SSHN = 160

	OR IF PD = 150 THEN SSHN >= 161

} 




Python Code 변환 예정



Modify
10
19929 연결살수설비의 화재안전기준(NFSC 503) 제 5조 4 항 1호

1. 송수구의 가장 먼 가지배관의 끝으로부터 연결하여 설치할 것





//  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항

Check(NFSC503_5_4_1){
	KS
}
KS{
	Pipe myPipe1{
	isObjectProperty(Pipe.isForTest) = TRUE
	}
	Port myPort{
	getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	isFarthestDistance(myPort, Pipe) = TRUE
	}

	isConnectedTo(myPipe1, myPipe2) = TRUE
} 




Python Code 변환 예정



Modify
11
19930 연결살수설비의 화재안전기준(NFSC 503) 제 5조 4 항 2호

2. 시험장치 배관의 구경은 가장 먼 가지배관의 구경과 동일한 구경으로 하고, 그 끝에는 물받이 통 및 배수관을 설치하여 시험 중 방사된 물이 바닥으로 흘러내리지 아니하도록 할 것. 다만, 목욕실·화장실 또는 그 밖의 배수처리가 쉬운 장소의 경우에는 물받이 통 또는 배수관을 설치하지 아니할 수 있다.





//  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항 2호

Check(NFSC503_5_4_2){
	KS
}
KS{
	Pipe myPipe1{
	isObjectProperty(Pipe.isForTest) = TRUE
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	isFarthestDistance(myPipe1, Pipe) = TRUE
	}
	DP = getObjectDiameter(myPipe1)

	getObjectDiameter(myPipe2) = DP

}
 




Python Code 변환 예정



Modify
12
19932 연결살수설비의 화재안전기준(NFSC 503) 제 5조 6 항

⑥가지배관 또는 교차배관을 설치하는 경우에는 가지배관의 배열은 토너멘트방식이 아니어야 하며, 가지배관은 교차배관 또는 주배관에서 분기되는 지점을 기점으로 한 쪽 가지배관에 설치되는 헤드의 개수는 8개 이하로 하여야 한다.





//  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 6항

Check(NFSC503_5_6){
	IF CS THEN KS
}

	Pipe myPipe1{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isCrossMains) = TRUE
	}
	Pipe myPipe3{
	isObjectProperty(Pipe.isRiser) = TRUE
	}
CS{
	isInstalled(myPipe1) = TRUE 
	OR isInstalled(myPipe2) = TRUE
}
KS{
	Head myHead{
	isInstalled(Head, myPipe1.DivergedSide.One) = TRUE
	}
	isObjectProperty(myPipe1.tournamentArrangement) = FALSE
	getObjectCount(myHead) <= 8
} 




Python Code 변환 예정



Modify
13
19934 연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항

⑨연결살수설비 교차배관의 위치·청소구 및 가지배관의 헤드설치는 다음 각 호의 기준에 따른다. <개정 2012.8.20>





 //  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항

Check(NFSC503_5_9){
	IF CS THEN KS
}
CS{
	Pipe myPipe1{
	isObjectProperty(Pipe.isCrossMains) = TRUE
	isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem")
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem")
	}
	CleanOut myCleanOut{
	isObjectProperty(CleanOut.systemType) = "HookingUpSprinklerSystem")
	}
	isInstalled(myPipe1) = TRUE
	OR isInstalled(myPipe2.Head) = TRUE
	OR (isInstalled(myCleanOut) = TRUE 

}
KS{
	getResult(NFSC503_5_9_1) = TRUE
	getResult(NFSC503_5_9_2) = TRUE
	getResult(NFSC503_5_9_3) = TRUE
} 




Python Code 변환 예정



Modify
14
19935 연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 1호

1. 교차배관은 가지배관과 수평으로 설치하거나 또는 가지배관 밑에 설치하고, 그 구경은 제2항에 따르되, 최소구경이 40㎜ 이상이 되도록 할 것





 //  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 1호

Check(NFSC503_5_9_1){
	KS
}
KS{
	Pipe myPipe1{
	isObjectProperty(Pipe.isCrossMains) = TRUE
	isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem"
	}
	Pipe myPipe2{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	isObjectProperty(Pipe.systemType) = "HookingUpSprinklerSystem"
	}
	(isParallel(myPipe1, myPipe2) = TRUE
	OR getObjectVerticalLocation(myPipe1, myPipe2) < 0)
	getObjectDiameter(myPipe1) >= 40mm
	getResult(NFSC503_5_2) = TRUE
}
 




Python Code 변환 예정



Modify
15
19937 연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 3호

3. 폐쇄형헤드를 사용하는 연결살수설비에 하향식헤드를 설치하는 경우에는 가지배관으로부터 헤드에 이르는 헤드접속배관은 가지관상부에서 분기할 것. 다만, 소화설비용 수원의 수질이 「먹는물관리법」 제5조에 따라 먹는물의 수질기준에 적합하고 덮개가 있는 저수조로부터 물을 공급받는 경우에는 가지배관의 측면 또는 하부에서 분기할 수 있다.





//  연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 3호

Check(NFSC503_5_9_3){
	IF CS THEN KS
}
	Head myHead1{
	isObjectProperty(Head.openAndCloseType) = "EnclosedType"
	}
	Head myHead2{
	isObjectProperty(myHead.installationDirectionType) = "TopDownType"
	}
CS{
	isObjectProperty(myHead1.systemType) = "HookingUpSprinklerSystem"
	isInstalled(myHead2, HookingUpSprinklerSystem) = TRUE
}
KS{
	Pipe myPipe1{
	isObjectProperty(Pipe.isBranchLines) = TRUE
	}
	Pipe myPipe2{
	isConnectedTo(Pipe, myPipe1) = TRUE
	isConnectedTo(Pipe, myHead2) = TRUE
	}
	getObjectVerticalLocation(myPipe2, myPipe1) > 0
} 




Python Code 변환 예정



Modify
16
19939 연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 1호

1. 가지배관에는 헤드의 설치지점 사이마다 1개 이상의 행가를 설치하되, 헤드간의 거리가 3.5 m를 초과하는 경우에는 3.5m 이내마다 1개 이상 설치할 것. 이 경우 상향식헤드와 행가 사이에는 8 ㎝ 이상의 간격을 두어야 한다.





//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 1호

Check(NFSC503_5_10_1){
      KS
}

Pipe myPipe{
    isObjectProperty(Pipe.isBranchLines)=True
}
Head myHead{
   getObjectProperty(Head.installationDirectionType)="BottomUpType"
}

KS{
    isInstalled(Hanger, myPipe, "헤드의 설치지점 사이")=True
    IF getObjectDistance(Head)>3.5 m
    THEN isInstalled(Hanger, myPipe, 3.5 m)=True
         getObjectDistance(myHead, Hanger)>8 cm

    getResult(NFSC503_5_10_3)=True
} 




Python Code 변환 예정



Modify
17
19940 연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 2호

2. 교차배관에는 가지배관과 가지배관사이마다 1개 이상의 행가를 설치하되, 가지배관 사이의 거리가 4.5 m를 초과하는 경우에는 4.5 m 이내마다 1개 이상 설치할 것





//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 2호


Check(NFSC503_5_10_2){
      KS
}

Pipe myPipe{
    isObjectProperty(Pipe.isCrossMains)=True
}
Pipe myPipe2{
 isObjectProperty(Pipe.isBranchLines)=True
}

KS{
    isInstalled(Hanger, myPipe, "가지배관 사이")=True

    IF getObjectDistance(myPipe2)>4.5 m
    THEN isInstalled(Hanger, myPipe, 4.5 m)=True
    END IF     


    getResult(NFSC503_5_10_3)=True
} 




Python Code 변환 예정



Modify
18
19950 연결살수설비의 화재안전기준(NFSC 503) 제 6조 3 항 6호

6. 천장의 기울기가 10분의 1을 초과하는 경우에는 가지관을 천장의 마루와 평행하게 설치하고, 스프링클러헤드는 다음 각 목의 어느 하나의 기준에 적합하게 설치할 것





//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 6호

Check(NFSC503_6_3_6){

	IF CS THEN (KS1 AND KS2)

}



CS{

	getObjectProperty(Ceiling.gradient) > 0.1

}



KS1{
isObjectProperty(Pipe.isBranchLines) = TRUE
	isParallel(Pipe, Ceiling.Top.) = TRUE

}



KS2{

	getResult(NFSC503_6_3_6_1) = TRUE

	getResult(NFSC503_6_3_6_2) = TRUE

} 




Python Code 변환 예정



Modify
19
20106 연소방지설비의 화재안전기준(NFSC 506) 제 4조 6 항 3호

3. 하향식헤드를 설치하는 경우에 가지배관으로부터 헤드에 이르는 헤드접속배관은 가지관상부에서 분기할 것





//연소방지설비의 화재안전 기준(nfsc 506) 4조 (배관) 6항 3호
Check(NFSC506_4_6_3){
	IF CS THEN KS
}

CS{
	Pipe myPipe{
		hasObject(CombustionProtectionSystem, Pipe) = TRUE
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

	Head myHead{
		getObjectProperty(Head.installationDirectionType) = "TopDownType"
	}

	isInstalled(myPipe, myHead) = TRUE
}

KS{
	Pipe myPipe{
		hasObject(CombustionProtectionSystem, Pipe) = TRUE
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

	Head myHead{
		getObjectProperty(Head.installationDirectionType) = "TopDownType"
	}

	Pipe myPipe2{
		isConnectedTo(myPipe, Pipe) = TRUE
		isConnectedTo(myHead, Pipe) = TRUE
	}

	isDiverged(가지관 상부, myPipe2) = TRUE
} 




Python Code 변환 예정



Modify
20
20108 연소방지설비의 화재안전기준(NFSC 506) 제 4조 7 항 1호

1. 가지배관에는 헤드의 설치지점 사이마다 1개 이상의 행가를 설치하되, 헤드간의 거리가 3.5m을 초과하는 경우에는 3.5m 이내마다 1개 이상 설치할 것. 이 경우 상향식헤드와 행가 사이에는 8㎝ 이상의 간격을 두어야 한다.





//  연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 7항 1호

Check(NFSC506_4_7_1){
	IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}

CS1{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

	Head myHead{
		isInstalled(Head, myPipe) = TRUE
	}

	getObjectInterval(myHead) <= 3.5m
}

KS1{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

	Head myHead{
		isInstalled(Head, myPipe) = TRUE
	}

	getobjectCountInInterval(Hanger, myHead) >= 1
}

CS2{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

	Head myHead{
		isInstalled(Head, myPipe) = TRUE
	}

	getObjectInterval(myHead) > 3.5m
}

KS2{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

	Head myHead{
		isInstalled(Head, myPipe) = TRUE
	}

	getObjectInterval(myHead) = OIH
	OIH/3.5 = OIHH
	(OIHH-1) <= getObjectCountInInterval(Hanger, myHead) < OIHH
	getObjectInterval(Hanger) = 3.5m

	Head myHead2{
		getObjectProperty(Head.installationDirectionType) = "BottomUpType"
	}

	getObjectInterval(myHead2, Hanger) >= 8cm
} 




Python Code 변환 예정



Modify
21
20109 연소방지설비의 화재안전기준(NFSC 506) 제 4조 7 항 2호

2. 교차배관에는 가지배관과 가지배관 사이마다 1개 이상의 행가를 설치하되, 가지배관 사이의 거리가 4.5m을 초과하는 경우에는 4.5m 이내마다 1개 이상 설치할 것





//  연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 7항 2호

Check(NFSC506_4_7_2){
	IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}

CS1{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
		getObjectInterval(Pipe) <= 4.5m
	}

	Pipe myPipe2{
		isObjectProperty(Pipe.isCrossMains) = TRUE
	}

	isConnectedTo(myPipe, myPipe2) = TRUE
}

KS1{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
		getObjectInterval(Pipe) <= 4.5m
	}

	Pipe myPipe2{
		isObjectProperty(Pipe.isCrossMains) = TRUE
	}

	Hanger myHanger{
		isInstalled(Hanger, myPipe2) = TRUE
	}

	getObjectCountInInterval(myHanger,myPipe) >=1
}

CS2{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
		getObjectInterval(Pipe) > 4.5m
	}

	Pipe myPipe2{
		isObjectProperty(Pipe.isCrossMains) = TRUE
	}

	isConnectedTo(myPipe, myPipe2) = TRUE
}

KS2{
	Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
		getObjectInterval(Pipe) > 4.5m
	}

	Pipe myPipe2{
		isObjectProperty(Pipe.isCrossMains) = TRUE
	}

	Hanger myHanger{
		isInstalled(Hanger, myPipe2) = TRUE
	}

	getObjectCountInInterval(myHanger,myPipe) >=1
	getObjectInterval(myPipe) = OIP
	OIP/4.5 = OIPP
	(OIPP-1) <= getObjectCountInInterval(Hanger, myHead) < OIPP
	getObjectInterval(Hanger) = 4.5m
}
 




Python Code 변환 예정



Modify
22
20110 연소방지설비의 화재안전기준(NFSC 506) 제 4조 7 항 3호

3. 제1호와 제2호의 수평주행배관에는 4.5m 이내마다 1개 이상 설치할 것<개정 2012.8.20>





//연소방지설비의 화재안전기준(nfsc 506) 4조 (배관) 7항 3호 

Check(NFSC506_4_7_3){
        IF CS THEN KS 
}

CS{
Pipe myPipe{
		isObjectProperty(Pipe.isBranchLines) = TRUE
	}

               isObjectProperty(myPipe.isFeedMains)=True

}

KS{
           isInstalled(Hanger, myPipe)=True
        getObjectInterval(Hanger)>4.5 m
}


 




Python Code 변환 예정



Modify
    1      
 

Related Sites

국토부 BIM과제-1st  |   Ministry of Land, Infrasrtucture and Transport   |   Korea Agency for Infrastructure Technology Advancement  |   Space and Design IT Lab   |   Yonsei University
This is Design IT Lab server's restricted area. Authorized users could access this website.