📄 door.clp
字号:
(printout door_set "(Child) MiddleFrame_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness: + 2;" crlf)
(printout door_set " Width; DoorWidth: + 4;" crlf)
(printout door_set " Height; 10;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-2.0,-2.0,DoorHeight: + 32.0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {MiddleFrame_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) UpperWindow: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; DoorWidth:;" crlf)
(printout door_set " Height; UpperWindowHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(0,0,DoorHeight: + 2 * 2.0" crlf)
(printout door_set " + MiddleFrameHeight: - 20.0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) UpperWindow_frame: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; DoorWidth: - 2 * UpperWindowFrameWidth:;" crlf)
(printout door_set " Height; UpperWindowHeight: - 2 * UpperWindowFrameWidth:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(0,UpperWindowFrameWidth:," crlf)
(printout door_set " DoorHeight: + 2 * 2.0 + MiddleFrameHeight:);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {UpperWindow:};" crlf)
(printout door_set " };" crlf))
(defrule step8
(declare (salience 50))
(answer1 yes)
(answer2 single)
(upperwindows no)
(path ?path)
=>
(printout door_set "(Child) door_frame: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorFrameLength:;" crlf)
(printout door_set " Width; DoorWidth: + 4.0 + 2.0 * 35.0;" crlf)
(printout door_set " Height; DoorHeight: + 2.0 + 35.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness:-DoorFrameLength:,-2.0" crlf)
(printout door_set " -35.0,0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) door_frame_block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness: + 2;" crlf)
(printout door_set " Width; DoorWidth: + 4;" crlf)
(printout door_set " Height; DoorHeight: + 2.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-2,-2,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {door_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) door_frame_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 90 - (DoorThickness: + 2);" crlf)
(printout door_set " Width; DoorWidth: - 2 * 8;" crlf)
(printout door_set " Height; DoorHeight: + 2.0 + 35.0 - 45.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness:-DoorFrameLength:,8,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {door_frame:};" crlf)
(printout door_set " };" crlf))
(defrule step9
(declare (salience 40))
(answer1 yes)
(answer2 double)
(path ?path)
=>
(printout door_set "(Child) LeftDoor: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; DoorWidth:;" crlf)
(printout door_set " Height; DoorHeight:;" crlf)
(printout door_set " Origin; DoorOrigin:;" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) RightDoor: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; DoorWidth:;" crlf)
(printout door_set " Height; DoorHeight:;" crlf)
(printout door_set " Origin; DoorOrigin:+Vector(0,DoorWidth:-8.0,0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) LeftDoor_block: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " length; 5.0;" crlf)
(printout door_set " width; 10.0;" crlf)
(printout door_set " Height; DoorHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: +" crlf)
(printout door_set " vector(0,DoorWidth:-10.0,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {LeftDoor:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) RightDoor_block: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " length; DoorThickness:-5.0;" crlf)
(printout door_set " width; 10.0;" crlf)
(printout door_set " Height; DoorHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: +" crlf)
(printout door_set " vector(5.0,DoorWidth:-8.0,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {RightDoor:};" crlf)
(printout door_set " };" crlf))
(defrule step10
(declare (salience 30))
(answer1 yes)
(answer2 double)
(windows yes)
(path ?path)
=>
(printout door_set "(Child) LeftWindow: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " length; Doorthickness:;" crlf)
(printout door_set " width; WindowWidth:;" crlf)
(printout door_set " Height; WindowHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: +" crlf)
(printout door_set " vector(0," crlf)
(printout door_set " (DoorWidth:-WindowWidth:)/2," crlf)
(printout door_set " DoorHeight:-child:height:-100);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {LeftDoor:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) RightWindow: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " length; Doorthickness:;" crlf)
(printout door_set " width; WindowWidth:;" crlf)
(printout door_set " Height; WindowHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: +" crlf)
(printout door_set " vector(0," crlf)
(printout door_set " DoorWidth:-8+(DoorWidth:-WindowWidth:)/2," crlf)
(printout door_set " DoorHeight:-child:height:-100);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {RightDoor:};" crlf)
(printout door_set " };" crlf))
(defrule step11
(declare (salience 20))
(answer1 yes)
(answer2 double)
(upperwindows yes)
(path ?path)
=>
(printout door_set "(Child) door_frame: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorFrameLength:;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4.0 + 2.0 * 35.0;" crlf)
(printout door_set " Height;" crlf)
(printout door_set " DoorHeight: + 3 * 2.0 + MiddleFrameHeight: - 20.0" crlf)
(printout door_set " + UpperWindowHeight:+ 35.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness:-DoorFrameLength:,-2.0-35.0,0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) door_frame_block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness: + 2;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4;" crlf)
(printout door_set " Height;" crlf)
(printout door_set " DoorHeight: + 3 * 2.0 + MiddleFrameHeight: - 20.0" crlf)
(printout door_set " + UpperWindowHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-2,-2,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {door_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) door_frame_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 90 - (DoorThickness: + 2);" crlf)
(printout door_set " Width; 2*DoorWidth:-6 - 2 * 8;" crlf)
(printout door_set " Height;" crlf)
(printout door_set " DoorHeight: + 3 * 2.0 + MiddleFrameHeight: - 20.0" crlf)
(printout door_set " + UpperWindowHeight:+ 35.0 - 45.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness:-DoorFrameLength:,8,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {door_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) MiddleFrame_frame: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorFrameLength:;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4.0;" crlf)
(printout door_set " Height; MiddleFrameHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness: - DoorFrameLength:," crlf)
(printout door_set " -2.0,DoorHeight: - 8.0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) MiddleFrame_block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness: + 2;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4;" crlf)
(printout door_set " Height; 10;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-2.0,-2.0,DoorHeight: - 8.0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {MiddleFrame_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) MiddleFrame_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness: + 2;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4;" crlf)
(printout door_set " Height; 10;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-2.0,-2.0,DoorHeight: + 32.0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {MiddleFrame_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) UpperWindow: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; 2*DoorWidth:-6;" crlf)
(printout door_set " Height; UpperWindowHeight:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(0,0,DoorHeight: + 2 * 2.0" crlf)
(printout door_set " + MiddleFrameHeight: - 20.0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) UpperWindow_Block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; (2*DoorWidth:-6 - 3 * UpperWindowFrameWidth:)/2;" crlf)
(printout door_set " Height; UpperWindowHeight: - 2 * UpperWindowFrameWidth:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(0,UpperWindowFrameWidth:," crlf)
(printout door_set " DoorHeight: + 2 * 2.0 + MiddleFrameHeight:" crlf)
(printout door_set " - 20.0 + UpperWindowFrameWidth:);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {UpperWindow:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) UpperWindow_Block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness:;" crlf)
(printout door_set " Width; (2*DoorWidth:-6 - 3 * UpperWindowFrameWidth:)/2;" crlf)
(printout door_set " Height; UpperWindowHeight: - 2 * UpperWindowFrameWidth:;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(0,(2*DoorWidth:-6)/2+UpperWindowFrameWidth:/2," crlf)
(printout door_set " DoorHeight: + 2 * 2.0 + MiddleFrameHeight:" crlf)
(printout door_set " - 20.0 + UpperWindowFrameWidth:);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {UpperWindow:};" crlf)
(printout door_set " };" crlf))
(defrule step12
(declare (salience 10))
(answer1 yes)
(answer2 double)
(upperwindows no)
(path ?path)
=>
(printout door_set "(Child) door_frame: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorFrameLength:;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4.0 + 2.0 * 35.0;" crlf)
(printout door_set " Height; DoorHeight: + 2.0 + 35.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness:-DoorFrameLength:,-2.0-35.0,0);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) door_frame_block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; DoorThickness: + 2;" crlf)
(printout door_set " Width; 2*DoorWidth:-6 + 4;" crlf)
(printout door_set " Height; DoorHeight: + 2.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-2,-2,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {door_frame:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) door_frame_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 90 - (DoorThickness: + 2);" crlf)
(printout door_set " Width; 2*DoorWidth:-6 - 2 * 8;" crlf)
(printout door_set " Height; DoorHeight: + 2.0 + 35.0 - 45.0;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness:-DoorFrameLength:,8,0);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {door_frame:};" crlf)
(printout door_set " };" crlf))
(defrule step13
(declare (salience 0))
(answer1 yes)
(path ?path)
=>
(printout door_set "(Child) knob1_cylinder: {" crlf)
(printout door_set " class; ug_cylinder;" crlf)
(printout door_set " Origin; DoorOrigin: +" crlf)
(printout door_set " vector(DoorThickness:,DoorWidth:-50,KnobHeight:);" crlf)
(printout door_set " Direction; Vector(1,0,0);" crlf)
(printout door_set " Height; 20;" crlf)
(printout door_set " Diameter; 20;" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob1_sphere: {" crlf)
(printout door_set " class; ug_sphere;" crlf)
(printout door_set " Diameter; 40;" crlf)
(printout door_set " center; DoorOrigin: + vector(DoorThickness: + 30,DoorWidth:- 50,KnobHeight:);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob1_block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 10;" crlf)
(printout door_set " Width; 40;" crlf)
(printout door_set " Height; 40;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness: + 10,DoorWidth:-70,KnobHeight:-20);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {knob1_sphere:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob1_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 10;" crlf)
(printout door_set " Width; 40;" crlf)
(printout door_set " Height; 40;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(DoorThickness: + 40,DoorWidth:-70,KnobHeight:-20);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {knob1_sphere:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob2_cylinder: {" crlf)
(printout door_set " class; ug_cylinder;" crlf)
(printout door_set " Origin; DoorOrigin: +" crlf)
(printout door_set " vector(0,DoorWidth:-50,KnobHeight:);" crlf)
(printout door_set " Direction; Vector(-1,0,0);" crlf)
(printout door_set " Height; 20;" crlf)
(printout door_set " Diameter; 20;" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob2_sphere: {" crlf)
(printout door_set " class; ug_sphere;" crlf)
(printout door_set " Diameter; 40;" crlf)
(printout door_set " center; DoorOrigin: + vector(-30,DoorWidth:-50,KnobHeight:);" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob2_block1: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 10;" crlf)
(printout door_set " Width; 40;" crlf)
(printout door_set " Height; 40;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-20,DoorWidth:-70,KnobHeight:-20);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {knob2_sphere:};" crlf)
(printout door_set " };" crlf)
(printout door_set "(Child) knob2_block2: {" crlf)
(printout door_set " class; ug_block;" crlf)
(printout door_set " Length; 10;" crlf)
(printout door_set " Width; 40;" crlf)
(printout door_set " Height; 40;" crlf)
(printout door_set " Origin; DoorOrigin: + Vector(-50,DoorWidth:-70,KnobHeight:-20);" crlf)
(printout door_set " Operation; Subtract;" crlf)
(printout door_set " Target; {knob2_sphere:};" crlf)
(printout door_set " };" crlf)
(close door_set))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -