예: 블렌더 커버에 대한 매개변수적 설계
다음 예는 INPUT, EXECUTE 및 IF-ELSE 문을 이용하는 설계 로직을 보여 줍니다. 부품 설계의 ADD FEATURE 문의 형식이 간단해졌습니다. square brackets에 대한 설명은 참고용으로 보통 목록에는 나타나지 않습니다.
|
여기에서 이 예의 모델을 다운로드할 수 있습니다.
|
매개변수 설계 생성
1. 어셈블리 1
2. 어셈블리 2
3. 어셈블리 3
4. COVER_TYPE=NO
5. CYL_DIAM
6. CAP: MODEL_A
7. COVER_TYPE=YES
8. COVER_SIZE
9. CAP: MODEL_B
어셈블리 BLENDER에 대한 설계
어셈블리 BLENDER 에 대한 매개변수 설계는 다음과 같습니다.
...
INPUT
COVER_TYPE YES_NO
"Does the cover have a cap?"
MATERIAL STRING
"Enter material (ABS or POLY)"
CAP_TYPE STRING
"Enter cap type (MODEL_A or MODEL_B)"
COVER_SIZE NUMBER
"Enter the top plate dimension"
END INPUT
RELATIONS
END RELATIONS
EXECUTE PART COVER [a.]
COVER_TYPE = COVER_TYPE
COVER_SIZE = COVER_SIZE
MATERIAL = MATERIAL
END EXECUTE
EXECUTE PART (CAP_TYPE)
COVER_SIZE = COVER_SIZE
END EXECUTE
...
ADD PART COVER [b.]
INTERNAL COMONENT ID 40
END ADD
IF COVER_TYPE == YES [c.]
ADD PART (CAP_TYPE)
INTERNAL COMPONENT ID 45
PARENTS = 40 (#5)
END ADD
END IF
...
| a. COVER_TYPE의 값을 "커버" 부품에 전달합니다. 값이 YES인 경우 커버에 구멍이 추가됩니다. 또한 커버의 재료와 크기(상단 판의 크기)에 대한 값을 전달합니다. b. 커버를 추가합니다. c. COVER_TYPE=YES인 경우 어셈블리에 캡을 추가합니다. |
부품 COVER 설계
부품 COVER에 대한 매개변수 설계는 다음과 같습니다.
...
INPUT
COVER_TYPE YES_NO
COVER_SIZE NUMBER
MATERIAL STRING
END INPUT
RELATIONS [a.]
PTC_MATERIAL_NAME = MATERIAL
DIAM = COVER_SIZE / 2
IF MATERIAL == "POLY"
d0=.10
ELSE
d0=.2
ENDIF
d13=0.1
END RELATIONS
ADD FEATURE (initial number 1) [b.]
INTERNAL FEATURE ID 1
...
IF COVER_TYPE = YES [c.]
ADD FEATURE (internal number 8) [Add a hole.]
INTERNAL FEATURE ID 1915
PARENTS = 1(#1) 5(#3) 40(#5)
...
END ADD
END IF
...
| a. 관계식은 구멍 지름에 대한 관계식과 재료 유형에 대한 조건문을 포함합니다. ("폴리" 및 "ABS"에는 큰따옴표가 필요합니다.) b. 베이스 피쳐를 추가합니다. e. COVER_TYPE=YES인 경우 구멍을 추가합니다. |
부품 CAP 설계
부품 CAP은 인스턴스, MODEL_A, MODEL_B 와 함께 테이블 제어됩니다. 부품 CAP에 대한 매개변수 설계는 다음과 같습니다.
...
INPUT
COVER_SIZE NUMBER
END INPUT
RELATIONS
CYL_DIAM = COVER_SIZE / 2
END RELATIONS
...
ADD FEATURE (initial number 5)
INTERNAL FEATURE ID 40
PARENTS = 1(#1) 5(#3) 3(#2)
END ADD
...