KR101716103B1 - 컨텍스트-프리 그래머를 이용한 부품 설계 - Google Patents
컨텍스트-프리 그래머를 이용한 부품 설계 Download PDFInfo
- Publication number
- KR101716103B1 KR101716103B1 KR1020100107058A KR20100107058A KR101716103B1 KR 101716103 B1 KR101716103 B1 KR 101716103B1 KR 1020100107058 A KR1020100107058 A KR 1020100107058A KR 20100107058 A KR20100107058 A KR 20100107058A KR 101716103 B1 KR101716103 B1 KR 101716103B1
- Authority
- KR
- South Korea
- Prior art keywords
- features
- rules
- design
- feature
- rule
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/17—Mechanical parametric or variational design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/20—Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/24—Sheet material
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/18—Manufacturability analysis or optimisation for manufacturability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Processing Or Creating Images (AREA)
- Stored Programmes (AREA)
- Image Generation (AREA)
Abstract
본 발명은,
- 컨텍스트-프리 그래머 (context-free grammar) 의 시드 구조,
- 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들 (design features) 로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
를 이용하여 모델링되는 부품을 설계하기 위한 컴퓨터 구현 방법에 관한 것이다.
이 컴퓨터 구현 방법은,
- 우선 순서에 따라 그래픽 사용자 인터페이스에서 부품의 표현을 디스플레이하는 단계,
- 규칙들의 세트를 변경함으로써 상기 2 개의 설계 피처들 간의 우선 순서를 변경하는 단계, 및
- 변경된 우선 순서에 따라 부품의 표현을 디스플레이하는 단계를 포함한다.
- 컨텍스트-프리 그래머 (context-free grammar) 의 시드 구조,
- 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들 (design features) 로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
를 이용하여 모델링되는 부품을 설계하기 위한 컴퓨터 구현 방법에 관한 것이다.
이 컴퓨터 구현 방법은,
- 우선 순서에 따라 그래픽 사용자 인터페이스에서 부품의 표현을 디스플레이하는 단계,
- 규칙들의 세트를 변경함으로써 상기 2 개의 설계 피처들 간의 우선 순서를 변경하는 단계, 및
- 변경된 우선 순서에 따라 부품의 표현을 디스플레이하는 단계를 포함한다.
Description
본 발명은 컴퓨터 프로그램 및 시스템 분야에 관한 것으로, 보다 구체적으로는 설계 피처들 (design features) 에 의해 모델링되는 부품을 설계하기 위한 컴퓨터 구현 방법에 관한 것이다.
부품 설계를 위한 시장에서, 상표 CATIA 로 본 출원인에 의해 제공되는 것과 같은 다수의 시스템 및 프로그램이 제시된다. 이러한 소위 컴퓨터-지원 설계 (CAD; Computer-Aided Design) 시스템은 사용자가 부품의 복잡한 3 차원 (3D) 모델을 구성하고 조작할 수 있게 한다.
부품을 설계하기 위해 다수의 상이한 모델링 기술이 이용될 수 있다. 이러한 기술은 솔리드 (solid) 모델링, 와이어-프레임 모델링, 및 표면 (surface) 모델링을 포함한다. 솔리드 모델링 기술은 토폴로지 3D 모델에 대해 제공되며, 그 3D 모델은, 예를 들면 상호연결된 에지와 면의 집합이다. 기하학적으로, 부품을 표시하는 3D 솔리드 모델은 폐쇄 스킨 (closed skin) 을 정의하는 트림드 표면들 (trimmed surfaces) 의 집합이다. 트림드 표면들은 에지들에 의해 경계지워지는 토폴로지 면들에 대응한다. 폐쇄 스킨은 부품의 재료로 채워진 3D 공간의 경계 영역을 정의한다. 한편, 와이어-프레임 모델링 기술은 부품을 간단한 3D 라인들의 집합으로서 표시하는데 이용될 수 있으며, 반면에, 표면 모델링은 부품을 외부 표면들의 집합으로서 표시하는데 이용될 수 있다. CAD 시스템은 이러한 모델링 기술을 파라미터 모델링 기술과 같은 다른 모델링 기술과 조합시킬 수도 있다.
파라미터 모델링 기술은, 부품의 상이한 설계 피처들에 대한 다양한 파라미터들을 정의하고, 다양한 파라미터들 간의 관계에 기초하여 이들 설계 피처들 간의 관계를 정의하는데 이용될 수 있다. 파라미터 솔리드 모델링을 지원하는 CAD 시스템에서, 솔리드 모델링과 파라미터 모델링은 조합될 수 있다.
설계 엔지니어는 3D CAD 시스템의 통상적인 사용자이다. 설계 엔지니어는 3D 모델의 기능적, 물리적 및 미적 측면을 설계하며, 3D 모델링 기술에 능숙하다. 설계 엔지니어는 부품을 설계하며, 그 부품을 하나 이상의 서브어셈블리 (subassemblies) 로 조립할 수도 있다. 부품 이외에도, 서브어셈블리는 또한 다른 서브어셈블리로 구성될 수도 있다. 부품 및 서브어셈블리를 이용하여, 설계 엔지니어는 통상 어셈블리를 설계한다.
예를 들면, 컴퓨터 지원 설계 시스템을 이용한 자동차 본체 설계의 분야에서, 기존의 솔루션은 사용자에게 기하학적 및 토폴로지 상호작용 커맨드를 제공한다. 설계자는 점 (point), 평면, 곡선 및 표면을 취급하며, 그 작업은 외부 스타일링 표면으로부터 시작하여, 최종 "차체 (body-in-white)" 형상을 획득하기 위해, 이들 곡선 및 표면을 생성, 변형, 오프셋 (offset), 스윕 (sweep), 외삽, 트림 (trim), 평활화, 연결하는 것이다.
그리하여, 부품은 일반적으로, CAD 시스템에서 일반적으로 제공되는 툴을 이용하여, 다양한 기하학적 빌딩 블록을 사용하여 설계된다. 부품을 설계하는 동안 설계 엔지니어가 설계 피처들을 생성하는 순서는 피처-기반 CAD (feature-based CAD) 에서 그 부품의 물리적 구조에 영향을 미친다. 따라서, 이들 시스템은 히스토리-기반이다. 예를 들어, 먼저 블록을 실린더로 컷팅한 후 컷 실린더에 의해 남겨진 공백 (void) 의 내부로 연장되는 돌기 (boss) 를 부가함으로써 구성되는 부품은, 홀 내부에 돌기의 재료를 갖는 홀을 야기할 것이다. 오퍼레이션의 순서가 반대로 되어 실린더 컷 이전에 돌기가 부가된다면, 컷은 원래의 블록의 재료만을 컷팅하는 것이 아니고 후속하는 돌기의 재료까지 컷팅하여, 그 내부에 아무런 재료도 없는 홀을 야기한다.
이는, 종래 기술의 CAD 시스템의 스크린에 디스플레이되는 윈도우를 나타내는 도 1 내지 도 3 에 예시되어 있다. 도 1 은 구성 중인 부품의 3 개의 뷰 (views) 를 포함하는 윈도우 (2) 를 나타낸 것이다. 평면도 (4), 정면도 (6), 및 회전도 (8) 는 부품이 2 개의 블록 피처들 (즉, 상부 블록 (12) 및 하부 블록 (14)) 에 의해 부분적으로 정의됨을 나타낸다. 또한, 평면도 (4) 및 정면도 (6) 는 원의 돌출 프로파일 (extruded profile; 10) 을 평면적으로 나타낸 것이다. 돌출 프로파일 (10) 의 목적은 부품에서 실린더 컷 피처를 생성하는 것이다. 도 2 는 컷 피처를 구성하기 위해 돌출 프로파일 (10) 이 이용된 후의 윈도우 (2) 를 나타낸 것이다. 컷 (16) 은, 상부 블록 (12) 및 하부 블록 (14) 으로부터 돌출 프로파일 (10) 내에 위치된 재료를 공제함으로써 생성된다. 컷 피처 (16) 의 포함에 선행하여, 상부 블록 (12) 및 하부 블록 (14) 이 부품 정의에 포함된다면 (즉, 존재한다면), 컷 (16) 은 히스토리-기반 CAD 시스템에서 도 2 에 예시된 바와 같이 나타난다. 도 3 은, 컷 피처 (18) 가 상부 블록 (12) 으로부터 재료를 공제하지 않은 부품을 포함하는 윈도우 (2) 를 나타낸 것이다. 첫째로 하부 블록 (14) 이 부품 정의에 포함되고, 둘째로 컷 피처 (18) 가 부품 정의에 포함되고, 셋째로 상부 블록이 부품 정의에 포함되면, 컷 (18) 은 히스토리-기반 CAD 시스템에서 도 3 에 예시된 바와 같이 나타날 수도 있다. 도 1 내지 도 3 의 예는 부품을 정의하기 위해 설계 피처들이 입력되는 순서가 부품의 출력 형상에 영향을 미친다는 것을 나타낸다. 기계 부품에 관한 이러한 서술은 설계 시스템에서의 다른 유형의 부품 또는 컴포넌트, 예를 들면, 몰드된 부품, 회로에서의 전기적 피처, 또는 더 일반적으로 부품 또는 컴포넌트를 형성하는 어셈블리의 임의의 유형의 피처에도 적용된다.
기존의 CAD 시스템은 설계자에 의해 수행되는 기하학적 오퍼레이션의 히스토리를 캡처함으로써 귀납적인 변경을 허용한다. 부품 설계를 변경하는 것은 설계자가 입력 파라미터 또는 기하학적 오브젝트를 변경하는 것이며, 시스템이 오퍼레이션의 히스토리를 재연 (replaying) 하고, 새로운 결과를 산출하는 것이다.
히스토리-기반 시스템은 상이한 문제를 발생시킨다.
"와이어 프레임 및 표면" CAD 시스템의 워크벤치를 이용할 경우, 예를 들면, "차체" 부품을 설계할 경우, 피처들이 너무 많이 오버랩되지 않는 한 피처들이 생성될 수 있고 용이하게 변경될 수 있다. 설계 피처들의 오버랩은 이들 설계 피처들 간의 공간 충돌에 대응한다. CAD 시스템은, 결과적인 기하학적 형상이 여전히 산출될 수도 있는 경우를 관리해야 한다. 특정한 오버랩 비율을 초과하면, 그 복잡도가 CAD 시스템에 의해 관리될 수 없으며, 설계자의 책임은 어떻게 오버랩 피처가 서로 트림해야 하는지를 생각하고 결과적인 기하학적 형상을 기본 툴을 통해 생성하는 것이다. 그리하여, 설계자가 오랜 시간 전에 최초로 설계한 부품의 설계를 변경하는 것은 어렵다. 사실상, 그런 경우에, 설계자가 어떻게 오버랩 설계 피처들을 관리했는지를 잊어버릴 수도 있으므로, 피쳐들의 변경 목적을 위해 그것을 고려할 수 없다.
기존의 시스템에 의해 제공되는 기하학적 의미 때문에, 사용자의 머릿속에 남아 있는 설계 의도와는 대조적인 설계 결과만이 시스템에 의해 캡처된다. 이는, CAD 시스템이 히스토리 설계를 캡처한다고 할지라도 사실이다. 그 결과, 최종 형상의 품질은 전부 설계자의 책임이다. 고 품질을 달성하기 위해, 애플리케이션 전문가 (부품의 애플리케이션 분야의 전문가) 와 함께 CAD 편집기에 의해 전용 방법론이 수립되어야 한다. 이러한 방법론은 설계자에 대해 교수되어야 하고, 전용 프로세스는 생산시 그 방법론이 실제로 사용되는지를 체크해야 한다. 이는 시간 및 비용 소모적이며, 조직 문제를 발생시킨다.
한편, 기록된 오퍼레이션의 히스토리를 재연함으로써 변경하는 것은, 새롭지만 다소 유사한 결과를 산출한다. 큰 설계 변화는 많은 기하학적 오브젝트의 삭제 및 생성을 요구한다. 또한, 특정한 레벨의 복잡도 (통상 기하학적 오브젝트 및 그들의 관계의 수) 를 초과하면, 원래의 설계자만이 변경을 수행할 수 있을 수도 있다. 심지어, 그것은, 설계자가 이미 행한 것을 여전히 기억하지 못하기 때문에 보장되지 않는다.
미리 정의된 템플릿의 사용이 제안되어 있지만, 템플릿은 의미 레벨을 높이지 못한다. 템플릿은 설계 생성 페이즈를 가속시키고, 한번에 많은 기하학적 오브젝트를 생성함으로써 대화 가속기로서 작용한다. 그러나, 변경 및 재작업 결점은 마찬가지로 남아있다.
히스토리 의존성 때문에, 협력적 설계에 이를 수 없다. 비가환적 피처들 (non commutative features) 은 비동기 협력을 통해 용이하게 공유될 수 없다는 것이 잘 알려져 있다. 사실상, 사용자 A 가 사용자 B 에게 설계 피처 F 를 보내는 경우, 사용자의 B 순서화된 시퀀스에서의 적소에 피처 F 를 삽입하는 것은 자동적으로 행해질 수 없다.
이러한 문제는 발명의 명칭이 "Part design system using a context-free grammar" 인 미국 특허 7,495,662 에 의해 다뤄지고 있다. 이 특허는, 컨텍스트-프리 그래머 (context-free grammar) 를 이용하여 정의되는 시드 구조 및 설계 피처들로 부품을 설계하는 히스토리-기반 설계 시스템을 기재하고 있으며, 시드 구조는 인스턴스화된 설계 피처로부터 컨트리뷰션들 (contribution) 을 수용하도록 구성된다. 시드 구조는 컨트리뷰션들이 수용되는 순서가 시드 구조에 의해 출력된 결과를 변화시키지 않도록, 또는 보다 구체적으로, 코어 시스템에 의한 이 결과의 평가를 변화시키지 않도록 제작된다. 시드 구조는 편집기에 의해 편집될 수도 있다. 편집기는 코어 시스템의 성능에 따라, 그 기능을 변화시키지 않고서 기존의 시드 구조가 더욱 효율적이도록 적응시키는 것을 가능하게 한다. 또한, 편집기는 주어진 애플리케이션에서 시드 구조의 기능적 성능을 증가시키는 것을 가능하게 한다.
컨텍스트-프리 그래머의 시드 구조의 사용을 통해, 미국 특허 7,495,662 는, CAD 시스템이 선언적 (declarative) 설계 피처들을 제공하는 것을 보장하는 인프라 구조를 기재하고 있다. 이런 방식으로, 설계 피처들이 인스턴스화되는 순서가 결과적인 부품에 관련되지 않더라도 히스토리-기반 설계 시스템의 이점을 제시한다.
그러나, 미국 특허 7,495,662 에 의해 기재된 솔루션은 편리성이 부족하다. 사실상, 그 특허에서의 시드 구조 성능은 애플리케이션 전문가에 의한 개념 스테이지에 고정되며, 최종 사용자에 의해 변경될 수 없다. 부품을 설계할 때, 설계자는 이들 성능을 고려해야 한다. 따라서, 이전에 생각된 시드 구조에 의해 지원되는 설계 의도만이 구체화될 수도 있다. 그리하여, 설계자가 자신의 설계 의도를 시드 구조에 의해 제공되는 성능에 적응시키는 것이 필수적이다. 이러한 낮은 편리성은 간단하고 비사실적인 부품의 설계만을 허가한다.
따라서, 본 발명의 목적은 히스토리-기반 설계 시스템의 이점 및 설계자에 대한 높은 편리성을 가지고 부품을 설계하는 수단을 제공하는 것이다.
이러한 목적은,
- 컨텍스트-프리 그래머의 시드 구조,
- 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
를 이용하여 모델링되는 부품을 설계하기 위한 컴퓨터 구현 방법에 의해 달성되며,
이 컴퓨터 구현 방법은,
- 우선 순서에 따라 그래픽 사용자 인터페이스에서 부품의 표현을 디스플레이하는 단계,
- 규칙들의 세트를 변경함으로써 상기 2 개의 설계 피처들 간의 우선 순서를 변경하는 단계, 및
- 변경된 우선 순서에 따라 부품의 표현을 디스플레이하는 단계를 포함한다.
바람직한 실시형태들은 하기 특성들 중 하나 이상을 포함한다:
- 우선 순서를 변경하는 단계에서, 스왑 규칙 (swap rule) 이 규칙들의 세트에 부가되며;
- 규칙들의 세트는 스왑 규칙을 포함하고, 우선 순서를 변경하는 단계에서, 스왑 규칙이 규칙들의 세트로부터 제거되며;
- 규칙들의 세트는 스왑 규칙을 포함하고, 우선 순서를 변경하는 단계에서, 언-스왑 규칙 (un-swap rule) 이 규칙들의 세트에 부가되며;
- 우선 순서를 변경하는 단계에서, 브링-투-프론트 규칙 (bring-to-front rule) 또는 샌드-투-백 규칙 (send-to-back rule) 이 규칙들의 세트에 부가되고, 브링-투-프론트 규칙 또는 샌드-투-백 규칙에 따라 우선 순위가 변경되며;
- 이 컴퓨터 구현 방법은, 각각의 디스플레이하는 단계 이전에 시드 구조에 규칙들을 적용하는 단계를 더 포함하며;
- 각각의 규칙을 적용하는 단계는, 규칙의 적어도 하나의 비-터미널 심볼 (non-terminal symbol) 에 따라 시드 구조를 변경하며;
- 각각의 규칙은, 규칙의 비-터미널 심볼에 대응하는 시드 구조의 비-터미널 심볼을 대체하며;
- 각각의 설계 피처는, 스톡 피처 유형 (stock feature type), 푸쉬 피처 유형 (push feature type), 콘택트 피처 유형 (contact feature type), 스티프너 피처 유형 (stiffener feature type), 컷 피처 유형 (cut feature type), 및 표면 추출 피처 유형 (surface extraction feature type) 을 포함하는 그룹에 속하는 유형을 가지며;
- 변경하는 단계에서, 2 개의 설계 피처들의 유형에 의존하는 스왑 규칙이 규칙들의 세트에 부가되며;
- 시드 구조 및 규칙들의 세트는, 피처들의 각각의 유형에 따라 피처들 간의 디폴트 우선 순서를 정의하며;
- 이 컴퓨터 구현 방법은 차체 부품을 설계하기 위해 수행되고, 시드 구조 및 규칙들의 세트는, 피처들의 각각의 유형에 따라 피처들 간의 디폴트 우선 순서를 정의하고, 스티프너 피처는 콘택트 피처보다 더 낮은 디폴트 우선순위를 가지며, 콘택트 피처 자체는 푸쉬 피처보다 더 낮은 디폴트 우선순위를 가지며, 푸쉬 피처 자체는 컷 피처보다 더 낮은 디폴트 우선순위를 가진다.
a) 데이터베이스, 및
b) 상기 컴퓨터 구현 방법을 수행하는데 적합한 그래픽 사용자 인터페이스를 포함하는 컴퓨터-지원 설계 시스템이 또한 제공되고,
상기 a) 데이터베이스는,
- 컨텍스트-프리 그래머의 시드 구조,
- 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
에 의해 모델링되는 부품을 저장한다.
컴퓨터에 의해 실행하기 위한 명령들을 포함하는 컴퓨터 프로그램이 또한 제공되고, 이 명령들은, 컴퓨터-지원 설계 시스템의 그래픽 사용자 인터페이스로 상기 컴퓨터 구현 방법을 수행하는 수단을 포함하고,
이 컴퓨터-지원 설계 시스템은,
- 컨텍스트-프리 그래머의 시드 구조,
- 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
를 이용하여 모델링되는 부품을 저장하는 데이터베이스를 더 포함한다.
상기 컴퓨터 프로그램을 기록한 컴퓨터 판독가능 저장 매체가 또한 제공된다.
하기 열거되는 첨부 도면들을 참조하면서, 비한정적인 예시로서 주어지는 본 발명의 실시형태들의 하기 설명으로부터 본 발명의 추가적인 특성들 및 이점들이 명백해질 것이다.
도 1 내지 도 3 은 종래 기술의 히스토리-기반 시스템에서의 부품의 도면.
도 4 는 컨텍스트-프리 그래머의 워드 (word) 를 체크하기 위한 푸쉬다운 오토마톤 (pushdown automaton) 을 나타낸 도면.
도 5 는 도 4 의 푸쉬다운 오토마톤에 의해 체크될 수도 있는 그래머로 생성되는 워드에 대응하는 트리의 예를 나타낸 도면.
도 6 내지 도 11 은 스왑 우선순위 개념을 설명하는 예를 나타낸 도면.
도 12 내지 도 15 는 도 6 내지 도 11 의 예에 사용된 그래머로 생성되는 워드에 대응하는 트리의 예를 나타낸 도면.
도 16 은 브링-투-프론트 및 샌드-투-백 오퍼레이션의 원리를 설명하는 도면.
도 17 내지 도 19 는 우선 순서를 변경하기 위한 컨트리뷰션 및 시드 구조를 설명하는 도면.
도 20 내지 도 25 는 차체 피처의 예를 나타낸 도면.
도 26 은 차체 피처들 간의 디폴트 우선 순서를 설명하는 도면.
도 27 은, 4 개의 설계 피처가 주어질 경우, 모든 가능한 시퀀스 순서는 동일한 결과로 이어지고, 이 시퀀스가 어떠하든, 시스템은 항상 그 결과적인 기하학적 형상을 산출하는 것을 설명하는 도면.
도 28 내지 도 29 는 차체 부품을 설계하기 위한 시드 구조를 설명하는 도면.
도 30 은 콘택트 피처의 컨트리뷰션들을 설명하는 도면.
도 31 은 차체 피처들 간의 우선 순서를 변경하는 가능성을 나타낸 도면.
도 32 내지 도 35 는 차체 피처들 간의 우선순위 관리를 설명하는 도면.
도 4 는 컨텍스트-프리 그래머의 워드 (word) 를 체크하기 위한 푸쉬다운 오토마톤 (pushdown automaton) 을 나타낸 도면.
도 5 는 도 4 의 푸쉬다운 오토마톤에 의해 체크될 수도 있는 그래머로 생성되는 워드에 대응하는 트리의 예를 나타낸 도면.
도 6 내지 도 11 은 스왑 우선순위 개념을 설명하는 예를 나타낸 도면.
도 12 내지 도 15 는 도 6 내지 도 11 의 예에 사용된 그래머로 생성되는 워드에 대응하는 트리의 예를 나타낸 도면.
도 16 은 브링-투-프론트 및 샌드-투-백 오퍼레이션의 원리를 설명하는 도면.
도 17 내지 도 19 는 우선 순서를 변경하기 위한 컨트리뷰션 및 시드 구조를 설명하는 도면.
도 20 내지 도 25 는 차체 피처의 예를 나타낸 도면.
도 26 은 차체 피처들 간의 디폴트 우선 순서를 설명하는 도면.
도 27 은, 4 개의 설계 피처가 주어질 경우, 모든 가능한 시퀀스 순서는 동일한 결과로 이어지고, 이 시퀀스가 어떠하든, 시스템은 항상 그 결과적인 기하학적 형상을 산출하는 것을 설명하는 도면.
도 28 내지 도 29 는 차체 부품을 설계하기 위한 시드 구조를 설명하는 도면.
도 30 은 콘택트 피처의 컨트리뷰션들을 설명하는 도면.
도 31 은 차체 피처들 간의 우선 순서를 변경하는 가능성을 나타낸 도면.
도 32 내지 도 35 는 차체 피처들 간의 우선순위 관리를 설명하는 도면.
본 발명에 따른 컴퓨터 구현 방법은 부품의 설계를 의도한다. 부품은 컨텍스트-프리 그래머의 시드 구조, 컨텍스트-프리 그래머의 규칙들의 세트, 각각의 설계 피처는 그 세트의 적어도 하나의 규칙에 의해 정의되는 적어도 2 개의 설계 피처, 및 시드 구조 및 규칙들의 세트에 의해 결정된 설계 피처들 간의 우선 순서를 이용하여 모델링된다. 이 방법은 우선 순서에 따라서 그래픽 사용자 인터페이스에서 부품의 표현을 디스플레이하는 단계를 포함한다. 이 방법은 또한 규칙들의 세트를 변경함으로써 상기 2 개의 설계 피처들 간의 우선 순서를 변경하는 단계를 포함한다. 이 방법은 또한 변경된 우선 순서에 따라서 부품의 표현을 디스플레이하는 단계를 포함한다.
시드 구조와 규칙들의 세트에 의해 결정된 설계 피처들 간의 우선 순서는 선언적 시스템에서 히스토리-기반 설계 시스템의 이점을 제공한다. 규칙들의 세트를 변경함으로써 우선 순서를 변경하는 단계는 설계자에게 매우 편리함을 제공한다.
본 발명에 따른 방법은 부품의 설계를 의도한다. 용어 "부품"은 공산품의 기계적 컴포넌트를 지칭한다. 그러나, 본 발명의 범위 내에서 많은 변형들이 가능하다. 예를 들어, 이 방법은 또한 부품들의 어셈블리, 가능하게는, 공산품 전체 (예를 들어, 자동차의 휠) 를 설계하는데 이용될 수도 있다. 또한, 본 발명은 기계적 부품들의 설계만을 의도하지 않으며, 컴퓨터 설계가 요구되는 어떤 분야에도 적용가능하다. 예를 들어, 본 발명은 비디오 게임 분야에 적용가능하다.
방법을 예시하기 전에, 컨텍스트-프리 그래머들을 간략하게 논의한다. 컨텍스트-프리 그래머들에 관한 상세한 설명은 Introduction to Automata Theory, Language and Computation, J.E. Hopcroft 및 J.D. Ullmann, Addison-Wesley, 1979에서 찾을 수도 있다.
컨텍스트-프리 그래머 G는 G = (X,V,P) 로 정의되고, X는 터미널 심볼들의 세트이고, V는 비-터미널 심볼들의 세트이고, P는 규칙들의 세트이다. 규칙은 커플 (S, m) 이며, 첫번째 오브젝트는 비-터미널 심볼이고 두번째 오브젝트는 터미널 및 비-터미널 심볼들로 이루어진 스트링이고; 보다 상세하게, P는 의 서브셋이다. 규칙은 또한 로 기록된다; 다른 말로, 스트링에 적용된 규칙은 비-터미널 심볼을 터미널 및 비-터미널 심볼들로 이루어진 스트링으로 변화시킨다. 그래머에서의 심볼들의 스트링은 워드로 지칭된다. 컨텍스트-프리 그래머를 이용하는 것은, 그래머의 규칙들을 적용함으로써 잘 정의된 신택스 (syntax) 에서 워드들을 반복적으로 생성하는 것을 가능하게 한다. 컨텍스트-프리 그래머 이론은 또한 이러한 워드들을 스캔하기 위한, 즉 그래머의 규칙들의 적용을 통해 생성되었는지를 보장하기 위해 신택스를 체크하기 위한 알고리즘을 제공한다. 이 점에서, 비-터미널 심볼이 개입하는 규칙의 적용 때문에- 비-터미널 심볼의 기능은 터미널 및 비-터미널 심볼들로 이루어진 스트링으로 대체되는 것이다.
부품은 컨텍스트-프리 그래머의 시드 구조에 의해 모델링된다. 시드 구조는 컨텍스트-프리 그래머에서 정의되고 편집된다. 이와 같이, 시드 구조는 컨텍스트-프리 그래머의 워드일 뿐이다. 그래머는 시드 구조들을 정의하기 위한 형식적이고 엄격한 환경을 제공한다. 구문론의 규칙들을 위반하는 것을 방지하기 위해 시드 구조의 신택스를 체크하는 것을 허용한다. 이것은 방법이 이용되는 애플리케이션의 분야에 전적으로 의존한다. 이것은 미국 특허 7,495,662 에 설명되어 있고 메타-그래머를 참고로 하여 아래에 더욱 상세하게 설명할 것이다.
부품은 또한 그래머의 규칙들의 세트를 이용함으로써 모델링된다. 부품은 또한 적어도 2 개의 설계 피처들에 의해 모델링된다. 각각의 설계 피처는 세트의 적어도 하나의 규칙에 의해 정의된다.
그래머의 규칙들의 세트는 그래머의 모든 규칙들 중에서 취해진 규칙들의 순서를 정하지 않은 집합이다. 세트의 개념은 세트 이론으로부터 알려진다.
부품을 설계할 경우, 설계자는 통상적으로 시드 구조로부터 시작한다. 사용되는 시드 구조는 애플리케이션의 분야에 의존할 수도 있다. 예를 들어, 설계자는 일반적으로 자동차용 부품의 설계를 위한 시드 구조와 선박용 부품의 설계를 위한 시드 구조를 상이하게 이용한다.
그런 다음, 설계자는 부품을 모델링하기 위한 설계 피처를 생성한다. 설계 피처는 부품에 부가되는 제약, 예를 들어, 기하학적 또는 토폴로지 제약이다. 설계자에 의해 사용되는 CAD 시스템의 기능성들에 의해 이것이 제공된다. 설계 피처들 (이후, 피처들이라고도 함) 은 그 유형에 따라서 분류된다. 예를 들어, 도 1 내지 도 3은 (블록 12 및 블록 14에 의해 나타내어지는 체적의 부가에 대응하는) 블록 피처들과 (컷 (16) 에 대응하는) 실린더 컷 피처의 사용을 도시한다. 많은 피처들이 설계자에게 제공될 수도 있다. 설계자에게 제공된 피처들의 리스트는 설계자에 의해 사용된 CAD 시스템에 의존한다. 비배타적인 리스트는 블록 피처, 돌출 피처, 둥근 피처, 필렛 (filet) 피처 등을 포함한다. 다른 유형의 피처들은 나중에 개시한다. 그 유형에 부가하여, 설계 피처는 파라미터들을 사용하게 할 수도 있다. 예를 들어, 도 1 내지 도 3의 예를 참고하면, 블록 피처들은 부가된 체적의 좌표를 이용한다. 체적 컷팅을 위한 컷 피처에 동일하게 적용된다. 피처를 위한 가능한 파라미터들은 설계자에 의해 사용되는 CAD 시스템에 의존한다. 또한, 부품의 동일한 기하학적 또는 토폴로지 모델들은 상이한 피처들로 달성될 수도 있다. 예를 들어, 컷 (16) 은 실린더 컷 피처를 생성하고 실린더의 축의 좌표, 그 반지름, 및 가능하게는 높이를 파라미터로서 입력함으로써 획득될 수도 있다. 하지만 컷 (16) 은 또한 컷 피처 (구체적인 컷의 형태는 없음) 를 생성하고 컷이 실린더인 정보를 파라미터로서 입력한 후, 실린더의 축의 좌표, 그 반지름, 및 가능하게는 높이를 파라미터로서 입력함으로써 획득될 수도 있다. 따라서, 설계자에 의해 사용되는 시스템이 동일하더라도, 동일한 기하학적 형상을 갖는 2 개의 부품들이 상이하게 모델링될 수도 있다.
방법은 부품을 모델링하기 위해 당업계에 알려진 임의의 피처들을 이용하여 실시될 수도 있다. 각각의 설계 피처는 적어도 하나의 규칙의 세트에 의해 정의된다. 설계 피처는 하나의 규칙에 의해, 또는 복수의 규칙들에 의해 정의될 수도 있다. 설계 피처는 하나 이상의 컨트리뷰션으로 구성될 수도 있다. 컨트리뷰션은 부품 모델의 변경으로서, 예를 들어, 체적의 부가, 체적의 컷팅, 체적의 전환, 체적의 회전, 체적의 감소 등이다. 각각의 컨트리뷰션은 그래머의 규칙에 의해 정의될 수도 있다. 그 경우, 여러 가지 컨트리뷰션으로 구성되는 피처는, 단순화가 달성되지 않는다면, 적어도 컨트리뷰션의 수 만큼의 규칙들로 정의된다. 여러 개의 규칙들로 정의될 수 있게 하는 피처들은 설계자에게 진보된 역량을 제공한다. 설계자는 기본적인 오퍼레이션에 제한되지 않는다. 이로써, 애플리케이션 전문가들에 의해 직관적으로 고안된 피처들이 모델링될 수도 있다. 다음에서, 컨트리뷰션들은 이들을 구현하는 규칙을 지칭할 수도 있고, 반대도 가능하다.
피처들을 정의하는 규칙들은 임의의 순서로 시드 구조에 적용될 수도 있다. 상기 설명된 바와 같이, 규칙들의 시드 구조로의 적용을 통해 워드가 획득된다. 규칙들의 적용 순서에 따라서, 워드는 상이할 수도 있다.
부품을 모델링하는 설계 피처들 간의 우선 순서는 시드 구조와 규칙들의 세트에 의해 결정된다. 우선 순서는 설계 의도를 전환시킨다. 도 1 내지 도 3을 참고로 하여 상술된 바와 같이, 블록 피처들과 컷 피처 간의 우선 순서에 따라서 결과가 상이하다. 시드 구조에 대한 규칙들의 적용 순서가 무엇이든간에, 우선 순서는 획득된 워드에 의해 모델링된 부품이 동일하다는 것을 보장한다. 우선 순서가 시드 구조 및 규칙들의 세트로 결정되기 때문에, 규칙들의 적용 순서에 관하여 추가적인 정보없이, 이 방법은 히스토리-기반 시스템의 이점을 제공하는데, 즉, 선언적 시스템에서, 설계 의도를 피처들 간의 우선 순서들로 전환한다. 규칙들의 적용 순서를 기록함으로써, 히스토리 기반 방법은 선언 피처들의 순서의 트랙을 유지하지만, 본 방법은 이러한 기록을 필요로 하지 않는다. 규칙들은 선언적이며, 즉, 이들 간의 적용 순서가 없다. 하지만 여전히, 설계 의도는 피처들 간의 우선 순서로 전환된다. 결과적으로, 부품의 설계의 사후 변경, 또는 동시 설계가 쉽게 실시된다. 이외에도, 설계자들에 대해 방법론을 교수하는데 소요되는 시간이 절약된다.
컨텍스트-프리 그래머의 이용은, 반복적인 함수들을 이용함으로써, 시드 구조에 컨트리뷰션의 적용을 쉽게 한다. 특히, 시드 구조는 다수의 터미널 및 비-터미널 심볼들을 포함하는 워드이다. 이러한 심볼들은 시드 구조에 컨트리뷰션을 적용하는데 사용된다. 비-터미널 심볼들은 시드 구조에 대한 "입력들"로서 이해된다. 터미널 심볼들은 오브젝트들 (이 예에서 솔리드 오브젝트들) 을 조합시키는 오퍼레이션을 특정하는데 사용된다. 이 점에서, 시드 구조에 대한 컨트리뷰션의 적용은 단지 시드 구조의 비-터미널 심볼을 컨트리뷰션으로 대체함으로써 실시될 수 있으며; 컨트리뷰션은 워드임을 가정하고, 이것은 그래머의 주어진 규칙을 단순화한다. 반복성을 보장하기 위해서 - 시드 구조에 임의의 수의 컨트리뷰션을 적용하는 능력 - 시드 구조의 비-터미널 심볼을 컨트리뷰션 뿐만 아니라 대체된 비-터미널 심볼을 포함하는 시퀀스로 대체함으로써 시드 구조에 컨트리뷰션을 적용하는 것이 충분하다. 본 설명의 나머지 부분에서, 대체된 비-터미널 심볼이 대체 스트링에서 나타나는 규칙은 또한 치환 (substitution) 또는 상징적 치환으로 지칭될 수도 있다. 이 대체의 정의를 이용하는 것은, 시드 구조의 비-터미널 심볼을 비-터미널 심볼 및 컨트리뷰션을 포함하는 워드로 변화시키기 위해 치환을 이용함으로써 규칙이 시드 구조에 적용된다. 이것은, 결과적인 워드가 여전히, 추가적인 컨트리뷰션이 다시 적용될 수도 있는 비-터미널 심볼을 포함한다는 것을 보증한다. 이것은 추가로, 시드 구조의 구조가 컨트리뷰션의 입력 동안 내내 보존된다는 것을 보증한다.
컨텍스트-프리 그래머의 이용은 추가로 전문-사용자에게 시스템이 선언적이도록 보증하는 것을 쉽게 하고: 컨트리뷰션들이 시드 구조에 적용되게 하는 치환 규칙들이 가환적인 것, 즉, 시드 구조 및 규칙들이 규칙들의 적용 순서가 무엇이든 간에 결과가 동일하게 적응되는 것을 체크하는 것으로 충분하다.
이제, 상기 설명의 예증을 위해서 도 4 및 도 5를 참고로 하여 단순한 컨텍스트-프리 그래머를 설명한다. 이 그래머는 다음과 같이 정의된다 :
심볼 a는 제 1 터미널 심볼이고 임의의 솔리드를 나타낸다 - 코어 시스템의 프리미티브들 및 오버레이션들의 순서화된 시퀀스에 의해 또는 컨트리뷰션에 의해 실시형태에서 정의됨. 심볼 는 제 2 터미널 심볼이고, 합 (union) (+), 공제 (-) 및 교차 (×) 의 오퍼레이션과 같은 임의의 오퍼레이션을 나타낸다. 비-터미널 심볼 S는 규칙들의 세트 P에 포함된 규칙들을 이용하여 비-터미널 심볼 및 터미널 심볼의 시퀀스로 대체될 수도 있다. 특히, 제 1 규칙 는 비-터미널 심볼 S를 2 개의 비-터미널 심볼들 간의 오퍼레이션의 결과로 대체한다. 이 결과는 를 더욱 간결한 방법으로 단순화하는 인 것을 주목한다. 트리의 면에서는, 제 1 오퍼레이션은 트리의 리프 (leaf) S를 2 개의 브랜치 (branch) 를 가진 노드로 대체한다. 노드는 브랜치의 끝에 위치된 2 개의 비-터미널 심볼들에 대한 오퍼레이션 의 결과이다. 제 2 오퍼레이션 는 비-터미널 심볼을 터미널 심볼로 대체하고 주어진 값 - 터미널 심볼 - 이 트리의 리프에 적용되는 경우 통상적으로 사용된다.
이 그래머로 생성된 워드의 신택스는 도 4에 나타낸 푸시다운 오토마톤에 의해 체크될 수도 있다. 이 도면에서, 상태 1은 최초 스테이터스이고; 상태 2는 최종 스테이터스이다. 신택스는 오토마톤이 최종 심볼을 판독한 후 최종 스테이터스에 도달하는 경우 정확하고, 그렇지 않으면 정확하지 않다. 정식 언어의 당업자는 그래머 내 임의의 워드의 신택스가 쉽게 체크될 수도 있다는 것을 이해한다. 이와 같이, 신택스-프리 그래머의 이용은 푸시다운 오토마톤의 이용을 통해 워드들의 신택스를 체크하게 한다.
도 5는 본 그래머에서 코딩된 워드에 대응하는 2진 트리의 실시예이다. 이 트리는 간결한 기록 방법 a-((b+c)-d) 인 워드 abc+d - - 에 대응한다. 물론, 이것은 워드를 판독하는데 사용되는 방식에 의존한다. 다른 그래머는 상이한 형태를 가진 워드를 생성할 수도 있지만 여전히 트리에 대응한다.
이 트리는 그래머 규칙들의 다음 시퀀스를 통해 생성된다:
다른 말로, 비-터미널 심볼 S로부터 시작하다; 제 1 오퍼레이션이 비-터미널 심볼을 루트에서 - 오퍼레이션을 이용하는 2 개의 브랜치들 (60,62) 을 갖는 트리로 대체하기 위해 적용된다. 제 2 오퍼레이션이 트리의 제 1 브랜치 (60) 의 리프의 비-터미널 심볼 S를 터미널 심볼 a로 대체하기 위해 적용된다. 이후, 제 1 오퍼레이션은 루트에서 - 오퍼레이션을 이용하는 2 개의 브랜치들 (64,66) 을 갖는 트리로 대체되는 브랜치 (62) 의 리프의 나머지 비-터미널 심볼에 적용된다. 제 2 오퍼레이션은 트리의 브랜치 (66) 의 리프의 비-터미널 심볼 S를 터미널 심볼 d로 대체하기 위해 적용된다. 이후, 제 1 오퍼레이션이 루트에서 + 오퍼레이션을 이용하는 2 개의 브랜치들 (68, 70) 을 갖는 트리로 대체되는 브랜치 (64) 의 리프의 비-터미널 심볼에 적용된다. 제 2 오퍼레이션이 브랜치들 (68, 70) 의 리프의 비-터미널 심볼들 S를 터미널 심볼들 b 및 c 로 대체하기 위해 2회 적용된다. 도 5의 실시예에서, S의 모든 인스턴스들이 트리 또는 터미널 심볼로 대체되었기 때문에 비-터미널 심볼 S는 더 이상 나타나지 않는다.
도 5의 설명에서, 심볼 a는 터미널 심볼을 설명하는데 사용된다; 또한, 가능한 솔리드들 a, b, c 및 d 중 하나로서 사용된다. 컨텍스트-프리 그래머는 큰 수의 규칙들을 가질 수도 있다는 것을 이해한다. 확실히, 솔리드 a에 대해 권한이 부여된 상이한 파라미터들이 있기 때문에 형태 의 많은 규칙들이 존재할 수도 있다. 역으로, 심볼 a는, 컨트리뷰션에 의해 사용되는 파라미터들이 저장되는 메모리 할당에 대한 참고일 수도 있다. 그 경우, 이러한 메모리 할당들만큼 많은 규칙들이 존재할 수도 있다. 시스템에서 인코딩되는 이러한 방법 규칙들은 당업자에게 직관적이므로 더 상세하게 설명하지 않는다.
도 4 및 도 5의 예는 생성된 워드가 트리에 대응하는 방법을 설명한다. 확실히, 컨텍스트-프리 그래머는 트리에 대응하는 워드들 (트리와 같은 구조의 워드들) 을 생성하는데 적합할 수도 있다. 트리들은 부품을 모델링하기 위한 직관적 표현이고 따라서 피처-기반 CAD에서 폭넓게 사용된다. 트리들에 대응하는 워드들을 생성하기 위해 적응된 컨텍스트-프리 그래머는 이와 같이 부품들의 직관적인 모델링을 제공하는 이점을 갖는다. 그러나, 다른 유형의 컨텍스트-프리 그래머들이 사용될 수도 있다.
이 방법은 우선 순서에 따라서 그래픽 사용자 인터페이스에서 부품의 표현을 디스플레이하는 단계를 포함한다. 부품의 설계자는 통상적으로 그래픽 사용자 인터페이스에서 디스플레이된 부품의 표현을 이용하여 작업한다. 부품이 시드 구조, 규칙들의 세트, 피처들의 설계, 및 설계 피처들 간의 우선 순서를 이용함으로써 모델링되더라도, 부품의 표현은 직관적인 설계를 허용하고 설계자의 작업을 용이하게 한다.
이 방법은 또한 규칙들의 세트를 변경함으로써 상기 2 개의 설계 피처들 간의 우선 순서를 변경하는 단계를 포함한다. 이 단계는 매우 편리함을 가진 부품의 설계를 허용한다. 확실히, 시드 구조 및 규칙들의 세트에 의해 결정된 우선 순서들을 가진 시스템은 설계가 선언적이더라도 히스토리-기반 방법의 이점을 유지한다. 2 개의 설계 피처들 간의 우선 순서를 변경하는 것은 이러한 시스템을 이용하는 설계자에게 유연성을 제공한다.
동시에, 이러한 단계들은 부품들을 설계하는 툴에 히스토리-기반 시스템의 이점을 갖는 선언적 시스템을 제공한다.
이 방법은 또한 변경된 우선 순서에 따라서 부품의 표현을 디스플레이하는 단계를 포함한다. 이것은 설계자로 하여금 변경 결과를 관찰하게 한다. 이 결과가 충분히 만족스럽지 않다면, 설계자는 다른 피처들을 이용하여 액션을 반복할 수도 있고, 즉 피처들 중 하나와 다른 피처들 간, 또는 2 개의 다른 피처들 간의 우선 순서를 변경할 수도 있다. 이와 같이, 변경 및 디스플레이 단계는 반복될 수도 있다.
부품의 표현은 3차원일 수도 있다. 3D 표현은 설계자에게 사실적인 뷰를 제공한다. 그러나, 이 방법은 2차원 표현에도 적용된다.
이러한 방법은 학습 및 훈련 시간을 감소시키고, 복잡성을 낮추고 평행적/공동 팀워크 설계를 허용함으로써 설계 시간 사이클을 감소시킨다. 피처들의 본질적인 거동은 보다 양호한 품질의 최종 결과를 보증한다. 절약된 시간은 시장화하는 시간을 단축시켜 다른 설계 대안을 연구하는데 쓸 수 있다.
부품은 3 개 이상의 피처들에 의해 모델링될 수도 있다. 이 경우, 이 방법은 피처들 사이에서 우선 순서를 가진 2 개의 피처들을 선택하는 단계를 포함할 수도 있다. 이후, 이들 2 개의 피처들 간의 우선 순서만이 변경될 수도 있다. 이것은 국부적인 유연성을 허용한다. 이 방법은 역으로 피처들 사이에서 우선 순서를 가진 3 개 이상의 피처들을 선택하는 단계를 포함한다. 이후, 이 순서는 일 단계에서 변경될 수도 있다. 예를 들어, 3개의 피처들이 선택된다면, 최하위 우선순위를 갖는 피처가 상단의 위치에 배치될 수도 있다. 애플리케이션의 분야 또는 설계자의 선호에 따라서 다른 기능성이 제공될 수도 있다.
이 방법은 각각의 디스플레이 단계 전에 규칙들의 세트의 규칙들을 시드 구조에 적용하는 단계를 포함할 수도 있다. 이것은 부품의 표현이 쉽게 산출되는 부품을 모델링하는 워드를 제공한다. 대안으로, 방법은 규칙들을 시드 구조에 실제로 적용하지 않지만 규칙들을 스캐닝하고 표현을 동적으로 변경함으로써 표현을 디스플레이할 수도 있다. 이것은 사용자에 대한 뚜렷한 컨트리뷰션에서 포인팅의 이점을 갖는다.
각각의 규칙을 적용하는 것은 규칙의 비-터미널 심볼에 따라서 시드 구조를 변경할 수도 있다. 그렇게 함으로써, 시드 구조는 상이한 종류의 규칙에 따라서 변경됨으로써 우선 순서를 정의할 수도 있다. 이후 각각의 규칙은 규칙의 비-터미널 심볼에 대응하는 시드 구조의 비-터미널 심볼을 대체할 수도 있다. 그렇게 함으로써, 2 개의 설계 피처들 간의 우선 순서는 설계 피처들을 정의하는 규칙들에 수반된 컨텍스트 프리-그래머의 비-터미널 심볼 (또는 심볼들) 및 시드 구조 내의 이 심볼 (또는 심볼들) 의 위치에 의해 적어도 부분적으로 결정된다.
이제, 우선 순서의 변경이 발생할 수도 있는 상이한 상황들을 논의한다.
이 예에서, 우선 순서를 변경하는 단계에서, 규칙들의 세트에 스왑 규칙이 부가된다. 규칙들의 세트로의 스왑 규칙의 부가는 시드 구조를 변화시키지 않고 우선 순서를 스와핑 (swapping) 하며, 즉 2 개의 피처들 간의 우선 순서를 변경하는 것을 허용한다.
스왑 우선순위 개념은 도 6 내지 도 11을 참고로하여 단순한 모델을 통해 설명된 후 일반화된다. 도 6 내지 도 11의 실시예에서, 제 1 피처는 솔리드, 스톡을 입력하고, 이후 스톡에 어떤 재료를 부가하거나 스톡으로부터 어떤 재료를 제거할 수 있다. 재료를 제거하는 것은 재료를 부가하는 것보다 높은 우선순위를 갖는다. 이 애플리케이션의 의미는 도 6으로 표현된 트리에 대응하는 시드 구조를 통해 캡쳐된다. 다음에서, 용어 "시드 구조"는, 시드 구조 그 자체 이외에도, 시드 구조에 대응하는 트리 또는 시드 구조에 선행하는 규칙을 지정한다.
보유된 애플리케이션의 의미 (재료 부가는 재료 제거보다 높은 우선순위를 갖는다) 는 도 7의 시드 구조에 의해 캡쳐될 수도 있다는 것을 주목한다.
이제, 설계자는 하나의 "스톡" 피처, 솔리드 S, 3개의 "부가"피처들 A, B, C 및 2 개의 "제거" 피처들 D, E를 예시하며, 순서화된 시퀀스는 상관없을 수도 있다. 따라서 부품은 도 6의 시드 구조 및 상기 피처들을 결정하는 규칙들의 세트에 의해 모델링된다. 규칙들의 세트는 이후에 설명된다. 편의상 피처들은 Stock(S), Add(A), Remove(D), Add(B), Add(C), Remove(E) 로 명명된다. 피처들의 리스트를 도 8의 가장 왼쪽 부분에 나타낸다. 제거 피처들이 부가 피처들보다 더 높은 우선순위를 갖는다. 도 8의 가장 오른쪽 부분에 나타낸 도 8의 구조는 이 설계 의도를 모은 것이다.
D 및 E가 A, B 및 C를 트림하기 때문에 이 구조는 디폴트 거동을 따른다 (제거가 더 높은 우선순위를 갖는다). 그러나, 설계자가 임의의 2 개의 피처에 대하여 이 거동을 변경하기 원한다고 가정한다. 예를 들어, 설계자는 "부가" 피처 B가 "제거" 피처 D보다 더 높은 우선 순서를 갖기를 원한다고 가정한다. 이것은 솔리드 D를 시드 구조의 "제거" 노드에 부가하기 직전에 솔리드 D로부터 솔리드 B를 제거함으로써 시드 구조를 변경하지 않고 달성될 수 있다. 이것은 도 9의 트리를 산출한다.
이 방법은, 솔리드 D가 솔리드 B에 의해 점유된 공간을 회피하고 이후 솔리드 B를 트림하지 않는다. 도 9의 Swap(B,D) 로 표현되는 "스왑 B 및 D" 피처는 설계 피처들의 리스트에 부가된다. 스왑 피처는 그래머의 적어도 하나의 규칙에 의해 정의될 수도 있다. 이와 같이, 2 개의 피처들 간의 우선순위의 스와핑은 부품을 모델링하는 규칙들의 세트에 적어도 하나의 규칙을 추가하는 것을 포함할 수도 있다. 다른 피처들, 예를 들어, 피처들 D와 A, 다음 E와 A 간의 우선순위의 스와핑은 이 프로세스를 반복하며, 이는 도 10의 피처들의 트리 및 리스트를 산출한다.
이와 같이, 설계자에 의한 이전의 액션에 관하여, 규칙들의 세트는 스왑 규칙을 포함할 수도 있다. 그 경우, 우선 순서를 변경하는 단계에서, 스왑 규칙이 규칙들의 세트로부터 제거될 수도 있다. 이것은 우선 순서의 앞의 변경을 소거시킨다.
역으로, 우선 순서를 변경하는 단계에서, 언-스왑 규칙이 규칙들의 세트에 부가될 수도 있다. 언-스왑 규칙은 언-스왑 설계 피처를 구현한다. 언-스왑 규칙은 이전에 스와핑된 우선순위의 언-스와핑 (un-swapping) 을 허용하는 그래머의 규칙이다. "언-스와핑"은 규칙들의 세트에 스왑 규칙을 부가하기 전의 거동으로 다시 돌아가는 것이다. 뷰의 컨트리뷰션 관리 포인트로부터, 이는 대응하는 국부적인 제거를 회수하는 것이다. 예를 들어, Swap(B, D) 의 "언-스와핑" 은 도 11의 트리를 산출한다. 언-스왑 규칙을 규칙들의 세트에 부가하는 것은 소거의 트랙을 유지하면서 순서의 앞의 변경을 소거하게 한다. 언-스왑 규칙은 스왑 규칙에 취소선을 그어 표현하며, 도 11에서 를 적용한다.
도 6 내지 도 11의 실시예의 경우에서와 같이, 시드 구조 및 규칙들의 세트는 피처들 간의 디폴트 우선 순서를 정의할 수도 있다. 이 디폴트 우선 순서는 각각의 피처들의 유형에 따라서 정의될 수도 있다. 예를 들어, 위의 실시예는 피처들에 대한 3개의 유형 (스톡, 부가 및 제거) 을 제공한다. 높은 우선순위로부터 낮은 우선순위로의 내림 차순의 디폴트 우선순위는, 제거, 그 다음이 부가, 그 다음이 스톡이다. 이것은, 먼저 스톡 피처가 적용되고 나서 부가 피처가 적용되며, 그후 제거 피처가 적용된다는 것을 의미한다. 디폴트 우선 순서의 제공은 애플리케이션 분야에 더 높은 적용가능성을 제공한다.
디폴트 우선 순서는 애플리케이션의 분야 및 피처들의 유형들에 의존한다. 애플리케이션의 분야에 적응되는 디폴트 우선 순서는 애플리케이션의 그 분야에 대해 의도되는 부품들의 설계 시 상당히 시간을 절약하게 한다. 이와 같이, 적어도 2 개의 피처들에 의해 모델링된 부품에 있어서, 2 개의 피처들 간의 우선 순서는 이러한 디폴트 우선 순서에 대한 결과일 수도 있다. 디폴트 우선 순서는 이후에 예를 들어 설명되는 바와 같이 시드 구조 및 규칙들의 세트에 의해 결정된다. 간략하게, 설계 피처들은, 시드 구조에 적용되는, 그래머의 적어도 하나의 규칙에 의해 정의된다. 이 규칙은 적어도 하나의 비-터미널 심볼을 개입시킨다. 디폴트 우선 순서는, 다른 비-터미널 심볼에 대하여, 시드 구조의 이 비-터미널 심볼들의 위치에 의해 부분적으로 결정될 수도 있다. 비-터미널 심볼들의 위치는 컨트리뷰션이 부품에 적용되는 순서를 결정하며, 이것에 의해 우선 순서를 결정한다. 디폴트 우선순위는 최다 설계 상황, 즉 80%를 해결하도록 정의된다. 이것은, 거의 각각의 산업상 부품들에 있어서, 2 개의 피처들 간의 디폴트 우선순위가 스와핑될 필요가 있는 적어도 하나의 상황이 경험상 존재하기 때문에 80%의 산업상 부품들이 설계될 수 있음을 의미하지 않는다. 그 결과, 전술한 바와 같이 적어도 스왑 규칙에 의해 구현되는 "스왑 우선순위" 피처는 산업상 부품의 설계의 완성을 위해 의무적인 것이다. 다른 말로, "스왑 우선순위" 피처 없이는, 단지 단순하고 사실적이지 않은 부품들이 설계될 수 있다.
이 방법은 구조 깊이를 제공하면서 모든 가능한 스왑 조합들을 제공하는 것이 명백하다. 최대 2 개의 깊이 레벨들이 원래의 (스왑 프리) 구조에 부가된다. 디폴트 우선 순서에 의해 결정된 디폴트 거동이 거의 전부의 시간을 유지함에도 불구하고, 임의의 산업상 설계에서, 우선순위 스왑이 필수적인 경우가 항상 존재한다. 진정한 설계 피처 (스왑 피처) 를 통한 이 능력의 제공은 사용의 유연성과 편리함에 기여한다.
스왑 프로세스의 수학적 증명은, 우선 순서 스왑 후 산출된 결과가 순서를 뒤집어 오퍼레이션을 실시한 경우 산출된 것과 동일한 결과임을 보장한다. 이것은 일반화가 복잡하지 않기 때문에 다음의 단순한 경우에서 이 결과를 증명하기에 충분하다.
스톡 솔리드 S로 시작하여, 표준 부가 피처 A 및 표준 제거 피처 D는 구조 (S+A)-D를 산출한다. 이후, 부가 및 제거 피처들의 스왑 우선순위는 구조 (S+A)-(D-A)를 산출한다. 표준 불 대수 및 표준 표기법들을 이용하여, 수학적 증명은 다음을 명시한다.
이것은, 우선순위 스왑이 오퍼레이션 순서를 뒤바꾼 것과 등가라는 것을 의미한다. 완전함을 위해서, 이 결과는 "부가 재료"가 최고 우선순위를 갖는 대안적 단순한 구조에 대해 상세히 열거된다. 시작 구조는 (S-D)+A이다. 스와핑 우선순위는 (S-D)+(A-D) 를 산출하며, 이는 아래에 증명되는 바와 같이 (S+A)-D와 동일하다.
일관성을 위해서, "스왑 우선순위" 개념은 컨텍스트-프리 그래머에 관하여 새로 만들어진다. 미국 특허 7,495,662 의 표기를 이용하여, 상기 예의 단순한 시드 구조를 정의하는 컨텍스트 프리 그래머는
터미널 심볼 는 부 노드 (parent node) 아래의 자 노드 (children node) 들의 수를 카운팅하는 구문 특징이다; 이것은 그래머의 워드와 동형인 트리를 만드는데 사용된다.
상기 정의된 그래머는 설계 피처들 간의 디폴트 우선 순서를 허용한다. "스왑" 피처의 사용을 허용하는 것은 그래머에 대한 다음의 조정을 요구한다.
추가적인 비-터미널 심볼 T가 요구되고, 부품이 제거 피처에 의해 모델링되는 경우, 치환 대신에, 치환 를 이용하여 제거 노드에 부가된 각각의 컨트리뷰션에 대한 솔리드 컨트리뷰션들의 제거의 잠재력을 예상한다. 예를 들어, 제거 피처를 부가 피처로 스와핑하는 것은 규칙들의 세트에 스왑 규칙을 부가하는 것을 통해 실제로 완료된다: 치환 .
보다 일반적으로, 몇 개의 스왑 규칙이 스왑 피처에 대해 요구될 수도 있다. 이것은 이후의 실시예에서와 같이 피처들이 몇 개의 컨트리뷰션으로 있는 경우이다. 그 경우에서, 우선순위의 변경은 규칙들의 세트에 스왑 규칙들을 부가함으로써 달성된다. 몇 개의 언-스왑 규칙들에 의해 구현될 수 있는 언-스왑 피처들에 대해 동일함이 적용된다. 다음에서, 일반성의 손실없이, 스왑 (각각 언-스왑) 을 실시하기 위해 일 스왑 (각각 언-스왑) 이 규칙들의 세트에 부가되는 것을 생각한다.
상기 실시예로 돌아가서, 강화된 구조는 도 13의 트리와 동형인
기하학적 평가를 위해서, 스톡, 부가, 제거 및 T와 같이, 워드에 남아있는 비-터미널 심볼들은 비어있는 세트와 같이 거동한다. B 및 D의 우선순위 스와핑은 컨트리뷰션 D에 연관된 T의 발생에 대해 치환 를 적용하는 것이다. 이것은, 도 14의 트리에 대응하는
를 로 변환한다. 이것은 "+"가 가환적 및 결합적 오퍼레이션이기 때문에 (합이 가환적 및 결합적 오퍼레이션이기 때문에) 허용된다. 이후, 언-스왑 규칙인 뒤의 상징적 치환 를 적용하는 것은 예상된 결과를 산출한다.
우선 순서의 이전 변경은 스왑 개념과 관련된다. 상이한 상황은: 우선 순서를 변경하는 단계에서, 브링-투-프론트 (bring-to-front) 규칙 또는 샌드-투-백 (send-to-back) 규칙이 규칙들의 세트에 부가될 수도 있으며, 브링-투-프론트 규칙 또는 샌드-투-백 규칙에 따라 우선 순서가 변경된다. 이것은 설계자에게 높은 유연성을 제공한다.
설계 목적을 위해서, 피처의 우선순위는 항상 (시간 상) 과거 및 (시간 상) 미래의 피처들을 포함하여 임의의 다른 피처의 우선순위보다 더 높은 (각각 더 낮은) 것이 유용할 수도 있다. 이것은 브링-투-프론트 (각각 샌드-투-백) 피처를 정의하는 브링-투-프론트 (각각 샌드-투-백) 규칙에 의해 달성된다. 도 16의 차트는 이 원리를 예시한다. "표준" 피처는 시드 구조 및 그래머의 규칙들에 의해 결정된 디톨트 우선 순서에 따라서 거동한다. "백" 피처는 설계자에 의해 낮은 우선순위가 주어진 피처이다. "프론트" 피처는 설계자에 의해 높은 우선순위가 주어진 피처이다.
이론적 관점으로부터, 이것은 동적 우선순위 스왑들에 의해 해결된다. 프론트 피처를 생성하는 것은 모든 후속하는 피처들의 동적 업데이트를 요구하기 때문에 현실적이지 않다.
대안적인 솔루션은 "프론트" 또는 "백" 피처들에 전용된 시드 구조에 노드들을 부가하는 것이다. 시드 구조 내에서, 백 피처 노드들은 스톡 후 그리고 스티프너 전에 위치되고, 프론트 피처들 노드들은 "푸쉬" 노드들 후 그리고 "컷" 노드 전에 위치된다. 우선 순서를 변경하기 위한 이러한 브링-투-프론트 또는 샌드-투-백 규칙들의 제공은 컴퓨터 리소스를 저장한다.
방법은 우선 순서를 변경하는 리셋 오퍼레이션을 더 포함할 수도 있다. 리셋 오퍼레이션은 브링-투-프론트 및 샌드-투-백 오퍼레이션들에 의해 부가된 규칙들을 간단하게 소거시킬 수도 있다. 리셋은, 그 효과를 소거하면서 (즉, 이들이 부품의 표현을 디스플레이하는 경우 사용되는 것을 방지하면서) 그 규칙들의 트랙을 역으로 유지할 수도 있다.
백 및 프론트 피처들의 개념을 고려해 볼때, 상이한 유형들의 2 개의 백 피처들의 상대적인 우선순위를 관리하는 방법이 의문이다. 예를 들어, 상기 예와 관련하여, 부가 피처 및 제거 피처는 둘 모두 샌드-투-백이다. 디폴트 거동은 상대적인 디폴트 우선순위를 유지하는 것이다: (백) "제거"의 우선순위는 (백) "부가"의 우선순위보다 더 높다. 더욱이, 표준 피처들에 대해 설명된 동일한 전략을 이용하여 상대적인 우선순위를 스와핑하는 것이 가능하다. 다른 말로, 사용자 상호 작용의 다음 시퀀스가 허용된다:
1. 부가 피처 A1을 생성.
2. 제거 피처 R1을 생성.
3. A1을 백으로 보냄.
4. R1을 백으로 보냄.
5. A1 및 R1의 우선순위들을 스왑.
"스왑" 오퍼레이션을 "샌드 투 백" 및 "브링 투 프론트" 오퍼레이션들과 비교하기 위해 엄격한 조사가 제공된다. 피처들 A, B 및 C가 피처 D보다 낮은 우선순위를 갖는다고 가정한다. 키 포인트는 A와 D, B와 D, C와 D의 스와핑 이후 결과적인 기하학적 형상은 D를 백으로 보낸 후와 동일하다는 것을 보증하는 것이다. 이전에 정의된 단순한 시드 구조에 대한 증명이 주어진다. 피처들 (A, B, C 및 D) 의 생성 이후, 시드 구조 및 컨트리뷰션은 도 17에 나타낸 바와 같다.
A와 D, B와 D, C와 D의 스와핑 이후, 시드 구조 및 컨트리뷰션은 도 18에 나타낸 바와 같다.
다음 산출은, 이것이 솔리드 S 후 그리고 A, B 및 C의 부가 전에 솔리드 D를 제거하는 것과 등가이므로, 솔리드 D를 포함한 낮은 우선순위 노드 "백 피처들"을 정당화한다는 것을 증명한다. 요약하면, X:=A+B+C이다.
가장 마지막 식은 도 19 에 나타낸 컨트리뷰션 및 구조와 등가이다.
스왑 및 언-스왑의 경우에 대해, 브링-투-프론트 및 샌드-투-백 오퍼레이션이 2개 이상의 규칙에 의해 구현될 수도 있다.
그리하여, 시드 구조는 "샌드-투-백" 및 "브링-투-프론트" 오퍼레이션뿐만 아니라 백 피처 또는 프론트 피처 내의 "스왑" 오퍼레이션을 지원하기 위한 새로운 노드를 갖출 수도 있다. 이는 초기 시드 구조의 직선적 연장이다. 노드 이름은, 백 부가 (Back Add), 백 제거 (Back Remove), 프론트 부가 (Front Add), 프론트 제거 (Front Remove) 일 수도 있다.
브링-투-프론트 또는 샌드-투-백 오퍼레이션을 정의하는 규칙은 스왑 규칙에 관련된 설명을 고려하여 당업자가 용이하게 액세스할 수 있기 때문에, 여기에서 명확하지 않다.
이 방법은, 부품이 몇개의 기본적 피처 (스톡, 부가, 및 제거) 로 설계되는 간단한 예를 참조하여 기재되었다. 이하에서, 이 방법은 특정 애플리케이션 분야를 참조하여 기재된다.
부품을 모델링하는 각각의 설계 피처는,
- 스톡 피처 유형,
- 푸쉬 피처 유형,
- 콘택트 피처 유형,
- 스티프너 피처 유형,
- 컷 피처 유형, 및
- 표면 추출 피처 유형
을 포함하는 그룹에 속하는 유형을 갖는다.
아마도, 이 방법은 상기 그룹 중에서 유형을 선택함으로써 부품을 모델링하는 피처를 정의하는 단계를 포함한다. 바람직하게, 이 그룹은 설계자에 의해 좌우된다. 환언하면, 설계자에 의해 사용되는 소프트웨어는, 상기 피처 유형 중 임의의 피처 유형의 피처로 부품을 모델링하는 성능을 가진다.
상기 그룹의 이점은, 자동차 본체의 특정 분야에 대해 부품을 설계하기 위한 피처의 직관적 및 포괄적 패널을 제공하는 것이다. 그리하여, 본 발명은 컴퓨터 지원 설계 시스템을 이용하여 직관적 자동차 본체 설계를 허용한다. 정확하게, 시트 금속 부품뿐만 아니라 생산 스탬핑 다이를 포함하는, "차체" 페이즈가 특별히 다뤄진다. 상기 그룹의 피처는 "차체" 피처라고 지칭된다.
"차체" (또는 BiW) 는, 자동차 본체 시트 금속 (도어, 후드 및 트렁크 덮개를 포함) 이 조립 또는 설계되지만 컴포넌트 (섀시, 모터) 및 트림 (윈드실드, 시트, 업홀스트리 (upholstery), 전자제품 등) 이 부가되기 이전인 자동차 제조 스테이지를 지칭한다. BiW 부품은 도 20 에 나타나 있다.
"차체" 피처를 갖는 설계를 위한 입력 데이터는 스타일링 표면 및 적어도 하나의 스탬핑 방향을 포함할 수도 있다. 스탬핑 방향은 부품을 모델링하는 피처의 파라미터를 정의하기 위한 방향이다. 컨벤션에 의해 그리고 간단함을 위해, 하기 내용 전체에 걸쳐 하나의 스탬핑 방향인 z 방향이 이용되지만, 스탬핑 방향은 임의의 방향일 수 있다. 스탬핑 방향은 거의 모든 피처에 의해 공유된다. 스탬핑 방향이 설계 도중에 변경되는 경우, 피처는 새로운 방향에 따라 업데이트된다.
스타일링 표면은 시트 부품의 시작 형상이다. 설계자의 역량은, 기능적 사양이 충족되도록 이 기본적 형상에 피처를 트림 및 조합하는 것이다.
이하, BiW 피처에 대해 도 20 내지 도 25 를 참조하여 서술한다. 도 20 은 컷, 콘택트, 네거티브 푸쉬, 포지티브 푸쉬 및 스티프너 피처를 갖는 BiW 부품의 예를 제공한다. 도 21 은 도 20 의 부품에 대한 컷 피처의 예를 제공한다. 도 22 은 도 20 의 부품에 대한 네거티브 및 포지티브 푸쉬 피처의 예를 제공한다. 도 23 은 도 20 의 부품에 대한 콘택트 피처의 예를 제공한다. 도 24 는 도 20 의 부품에 대한 상방 및 하방의 얇은 스티프너 피처의 예를 제공한다. 도 25 는 다른 부품에 대한 두꺼운 스티프너 피처의 예를 제공한다.
정의에 의해, 컷 피처 (또는 "컷") 는 시트 부품으로부터 재료를 제거한다. 컷 피처는 내부 홀을 펀칭하거나 또는 그 가장자리를 트림한다. 많은 경우에, 홀의 형상은 프로파일이며, 홀은 스탬핑 방향을 따라 이 프로파일을 돌출시켜 펀칭된다. 컷은, 중량 감소, 배수, 공간 보존, 게이트, 시트 상의 고정 장비, 다이 상에 시트 고정 또는 위치결정을 생성하기 위해 이용된다. 예외적으로, 특별한 목적을 위해, 컷은 시트 부품으로부터 제거되는 임의의 체적일 수도 있다.
정의에 의해, 푸쉬 피처 (또는 "푸쉬") 를 통해, 공간 공역을 회피하기 위해 시트 부품이 변형된다. 통상, 이러한 영역은, 시트 부품과 충돌하지 않아야 하는 다른 디바이스에 의해 차량 (vehicle) 내에 점유된다 (또는 점유될 것이다). 시트 부품이 바닥부로부터 상단부로 변형될지 (포지티브 푸쉬) 또는 상단부로부터 바닥부로 변형될지 (네거티브 푸쉬) 의 여부는 설계자의 결정이다. 푸쉬에 대한 입력 데이터는 스탬핑 방향에 따라 스펙 "업" 또는 "다운" 과 함께 임의의 체적이다. 결과적인 시트 부품과 입력 체적 사이의 거리가 d 이상이도록 선택적 클리어런스 거리 d 가 특정될 수 있다.
정의에 의해, 콘택트 피처 (또는 "콘택트 에어리어") 는 주요 시트에 연결된 표면이다. 콘택트 피처는 시트 부품과 몇몇 다른 디바이스 또는 부품 사이의 공통 에어리어이다. 콘택트 피처는 랜딩 구역 (landing zone) 또는 고정 구역일 수 있다. 콘택트 표면은 평면형 프로파일에 의해 통상 정의되지만, 콘택트 표면은, 스타일링 표면의 오프셋을 포함하는, 표면의 임의의 피스일 수 있으며, 단, 스탬핑 방향에 대해 접혀지지 않는다.
정의에 의해, 스티프너 피처 (또는 "스티프너") 는, 부품을 더욱 강성으로 만들기 위해 부가되는 시트 금속 워크 피스에서의 엠보싱된 피처이다. 결과적인 스티프너는 스타일링 표면과 스트일링 표면의 오프셋 사이에 걸친다. 얇은 스티프너는 두께 및 스타일링 표면 상에 존재하는 곡선 또는 선의 평면형 네트워크에 의해 정의된다. 두꺼운 스티프너는 평면형 폐쇄 에어리어에 의해 정의되며, 스타일링 표면은 이들 폐쇄 에어리어 위에 국부적으로 오프셋된다.
이러한 피처를 정의함으로써, 이 방법은 차체 부품을 설계하기 위해 사용되는데 적응된다. 시드 구조 및 규칙들의 세트는 또한 피처 각각의 유형에 따라 피처들 간의 디폴트 우선 순서를 정의할 수도 있다. 스티프너 피처는 콘택트 피처보다 더 낮은 디폴트 우선순위를 가지며, 콘택트 피처 자체는 푸쉬 피처보다 더 낮은 디폴트 우선순위를 가지며, 푸쉬 피처 자체는 컷 피처보다 더 낮은 디폴트 우선순위를 가진다. 이러한 정확한 디폴트 순서는 차체 설계자의 의도에 가장가깝기 때문에, 차체 설계에 대해 이상적이다.
디폴트에 의해, 피처의 상대적 우선순위는 하기와 같이 정의된다. 컷 우선순위는 모든 다른 피처들보다 더 높다. 푸쉬 우선순위는 콘택트 및 스티프너보다 더 높다. 콘택트 우선순위는 스티프너보다 더 높다. 이는, 공간적 오버랩의 경우에, 컷이 임의의 다른 피처를 트림하고, 푸쉬가 콘택트 또는 스티프너를 트림하고, 콘택트가 스티프너를 트림한다는 것을 의미한다. 우선순위는 도 26 에 의해 캡처된다.
본 발명의 2 개의 주요 우선순위가 도 27 에 의해 설명된다. 첫번째로, 시스템은 피처의 복잡하고 복합적인 오버랩의 경우에도 그리고 순서화된 시퀀스가 어떠하더라도 기하학적 결과를 산출하도록 적응된다. 두번째로, 최종 결과는 피처 생성 순서에 의존하지 않는다. 따라서, 시스템은 선언적이다. 이는, 컷 피처, 푸쉬 피처, 콘택트 피처 및 스티프너 피처의 상이한 생성 순서를 나타내는, 그래프에서의 상단부로부터 바닥부로의 모든 경로가 동일한 지점에서 종료되는 이유이다.
이하, 차체 부품의 설계에 특별히 적응된 시드 구조에 대해 도 28 을 참조하여 기재한다.
간단하게 하기 위해, 스탬핑 방향은 수직 방향이며, 이는 일반성을 한정하지 않는다.
"차체" 시드 구조는 입력 표면으로부터 생성되는 솔리드 스톡 (solid stock) 에서 시작한다. 설계자에 의해 제공되는 이러한 표면은 피처가 구현되어야 하는 (가능한 트림되지 않은) 스타일링 표면이다. 스톡 솔리드는, 스탬핑 방향으로 입력 표면의, 수평 평면까지 충분히 낮게 (이후, "바닥 평면" 이라 함) 돌출시키는 것이다. 이 컨트리뷰션은 노드 STK 에 제공된다.
포지티브 푸쉬는 스톡에 입력 체적을 부가하는 것이다. 이 컨트리뷰션은 노드 PP 에 제공된다. 네거티브 푸쉬는 스톡으로부터 입력 체적을 제거하는 것이다. 이 컨트리뷰션은 노드 NP 에 제공된다.
콘택트는 일반적으로 평면형 프로파일에 의해 정의된다. 솔리드 컨트리뷰션은 입력 표면의 하방 전환 (downward translation) 까지 이 프로파일을 돌출 및 드래프팅함으로써 생성된다. 이러한 전환의 값은 후술된다. 이 솔리드 컨트리뷰션은 스톡에 부가된다. 이 컨트리뷰션은 노드 PC 에 제공된다. 다른 솔리드 컨트리뷰션은 입력 표면의 상방 전환 (upward translation) 까지 입력 프로파일을 돌출시킴으로써 생성된다. 이 솔리드 컨트리뷰션은 스톡으로부터 제거된다. 이 컨트리뷰션은 노드 NC 에 제공된다. 동일한 정의가 오프셋 콘택트 또는 표면 콘택트에 대해 유지되고: 하방 및 상방 솔리드 컨트리뷰션이 각각 스톡에 부가되고 스톡으로부터 제거된다.
스티프너는 스톡에 부가되는 하방 솔리드 돌출물 (노드 PS 에 제공됨) 및 스톡으로부터 제거되는 상방 솔리드 돌출물 (노드 NS 에 제공됨) 로 정의된다. 동일한 정의가 얇은 스티프너 또는 두꺼운 스티프너에 대해 유지된다.
컷은 스탬핑 방향에 평행하지 않은 평면형 프로파일에 의해 정의된다. 이 프로파일은 충분히 높은 평면 (이후, "상단 평면" 이라 함) 까지 그리고 바닥 평면까지 스탬핑 방향을 따라 돌출된다. 이 컨트리뷰션은 노드 C 에 제공된다.
모든 푸쉬, 콘택트 및 스티프너 솔리드 컨트리뷰션이 스톡에 부가되고 스톡으로부터 제거된 후에, 변경된 솔리드 스톡의 상단 표면이 추출된다. 이러한 추출은, 상단 평면까지 그리고 바닥 평면까지 입력 스타일링 표면의 솔리드 돌출물과 변경된 솔리드 스톡을 교차시킴으로써 용이하게 행할 수 있다. 그후, 이 상단 표면은 컷 솔리드에 의해 트림된다. 대안으로서, 변경된 솔리드 스톡으로부터 솔리드 돌출물의 상보물을 컷팅함으로써 동일한 결과를 획득할 수도 있다. 이는 원하지 않은 슬라이버 (sliver) 를 제거한다.
각 피처의 컨트리뷰션은 피처들 간의 역 디폴트 우선 순서로 스톡 솔리드에 선형으로 적용된다. 이는 도 28 에 나타낸 바와 같이 시드 구조의 상단부로부터 바닥부로이다. 이 방식에서, 제 1 컨트리뷰션 (낮은 우선순위) 이 다음 컨트리뷰션에 의해 트림되고 그리고 가장 마지막 컨트리뷰션 (가장 높은 우선순위) 까지 트림된다. 이러한 원리는 도 28 의 시드 구조를 산출한다.
이하, 차체 컨텍스트 프리 그래머 (BiW 그래머) 에 대해 상세하게 기재한다. 이 그래머는 이하 상술하듯이, 도 28 을 참조하여 기재된 기능성을 수행하도록 적응된다. 터미널 심볼은 이고, 여기서,
δ 는 오퍼레이션에 대한 입력 심볼의 수를 캡처하고,
A, B, C, … 는 체적이다.
stk, ps, ns, pc, nc, pp, np, c 는 설계 피처 유형 (스톡, 포지티브 및 네거티브 스티프너 컨트리뷰션, 포지티브 및 네거티브 콘택트 컨트리뷰션, 포지티브 및 네거티브 푸쉬 컨트리뷰션, 컷 컨트리뷰션) 을 리콜한다. 사실상, 이들 심볼은 피처 유형의 모든 발생을 나타내기 위해 인덱스될 수도 있고,
T 는 관리 우선순위 심볼이다.
상징적 치환은 다음과 같다. 가장 처음 치환은 도 28 의 트리에 대응하는 시드 구조
를 생성한다.
다음 치환은 스톡 솔리드를 생성한다. 어떠한 우선순위 관리도 아직 요구되지 않는다.
다음 치환은 다른 피처의 컨트리뷰션을 부가한다. 이는 후술하는 바와 같이, 심볼 T 를 통해 우선순위 관리 성능을 요구한다.
이론에 따르면, 시드 구조를 정의하는 식의 일관성은 메타-그래머로부터 단계적 생성에 의해 입증된다. 메타-그래머는 다음과 같다:
여기서, A=X∪V 는 애플리케이션 (예를 들면, "차체") 그래머의 터미널 및 비-터미털 심볼들의 세트이다. 모든 단계는 정보를 위해 부록 A 에 열거된다. 부록 A 의 시퀀스는 고유하지 않다.
시드 구조는 이 메타-그래머를 통해 소프트웨어 엔지니어 또는 숙련된 설계자에 의해 편집될 수도 있다. 이는 시드 구조를 특정 필요에 적응시키는 것을 허용한다. 예를 들면, 디폴트 거동 (즉, 디폴트 우선 순서) 은 시드 구조에서의 푸쉬 "부가" 와 푸쉬 "제거" 를 스위칭함으로써 모든 푸쉬 피처에 대해 변화될 수 있다. 이러한 결정은 애플리케이션 기준에 따라 시드 구조 설계 도중에 이루어진다.
이하, BiW 그래머에서의 피처 인스턴스화 (instantiation) 에 대해 서술한다.
스티프너는, 각각 스톡에 부가되고 스톡으로부터 제거되는 S+ 및 S- 인 2개의 체적을 통해 시트 부품에 기여한다. 이들 컨트리뷰션을 시드 구조에 삽입하는 것은 상징적 치환의 하기 시퀀스를 통해 행해진다.
콘택트는, 각각 스톡에 부가되고 스톡으로부터 제거되는 C+ 및 C- 인 2개의 체적을 통해 시트 부품에 기여한다. 이들 컨트리뷰션을 시드 구조에 삽입하는 것은 상징적 치환의 하기 시퀀스를 통해 행해지며, 도 30 에 의해 예시된다.
포지티브 푸쉬는, 스톡에 부가되는 P+ 인 하나의 체적을 통해 시트 부품에 기여한다. 이 컨트리뷰션을 시드 구조에 삽입하는 것은 하기 상징적 치환을 통해 행해진다.
네거티브 푸쉬는, 스톡으로부터 제거되는 P- 인 하나의 체적을 통해 시트 부품에 기여한다. 이 컨트리뷰션을 시드 구조에 삽입하는 것은 하기 상징적 치환을 통해 행해진다.
컷은, 추출된 표면으로부터 제거되는 C 인 하나의 체적을 통해 시트 부품에 기여한다. 이 컨트리뷰션을 시드 구조에 삽입하는 것은 하기 상징적 치환을 통해 행해진다.
전술한 바와 같이, 브링-투-프론트 및 샌드-투-백 오퍼레이션을 관리하기 위해 시드 구조에 새로운 노드를 생성하는 것이 또한 가능하다. 이들 추가적 노드는 동적으로 생성될 수 있음에도 불구하고, 기본 시드 구조에 그들을 포함시키는 것이 더 편리하다. 이는 도 29 에 설명된다.
도 31 의 차트는 "브링-투-프론트", "샌드-투-백", "스왑" 및 "리셋" 커맨드를 혼합하는 모든 가능성을 모은 것이다. 상기 설명을 감안하여, 부품을 모델링하는 피처들 간의 우선 순서를 변경하기 위해 가능한 한 더 정교한 다른 커맨드가 사용될 수도 있다.
이하, BiW 피처들 간의 우선순위 관리에 대해 도 32 내지 도 35 를 참조하여 서술한다. 특히, 동일한 유형의 2 개의 피처들 간의 우선순위를 관리하는 방법이 서술된다. 또한, 2 개의 BiW 피처들 간의 우선 순서를 변경하는 방법이 이하에 서술된다.
우선순위 관리는 설계 의도이며, 설계 피처와 유사한 방식으로 캡처된다. 환언하면 그리고 이전 서술을 통해 언급된 바와 같이, 2 개의 설계 피처들 간의 우선순위를 스왑하는 것은 설계자가 "스왑" 피처를 생성하는 것이며, 2 개의 설계 피처들로 그것을 제공한다.
앞서 강조한 바와 같이, 피처는 부품에 하나 이상의 컨트리뷰션 (각각의 컨트리뷰션은 부품을 모델링하는 규칙들의 세트 중 규칙에 대응함) 을 적용할 수도 있다. 특히, BiW 피처는 하나 또는 2 개의 컨트리뷰션을 적용한다.
먼저, 오버랩 대수 (algebra) 에 대해 도 32 내지 도 33 을 참조하여 서술한다. 그들은 동일한 유형의 2 개의 피처를 취급하며, 피처 각각은 2 개의 체적을 통해 시드 구조에 기여하고, 하나의 체적이 스톡에 부가되고, 다른 하나의 체적이 스톡으로부터 제거된다. 스티프너 및 콘택트만이 이 정의에 적합하다. 오버랩 대수는 2 개의 이러한 피처들을 혼합하는 모든 가능성을 제공한다.
먼저, BiW 피처를 오버랩하는 2-컨트리뷰션의 대수에 대해 도 32 를 참조하여 서술한다.
명백하게 하기 위해, 하기 내용은 콘택트 피처의 견지에서 작성되지만, 스티프너 피처에 대해서도 진실이다. F1 및 F2 가 2 개의 콘택트라고 하고, F1 +, F1 -, F2 +, F2 - 가 그들 각각의 컨트리뷰션이라고 한다. 체적 Fi + 가 스톡에 부가되고, 체적 Fi -가 스톡으로부터 제거된다. 콘택트 F1 및 F2 가 오버랩하는 경우, 디폴트 거동 (도 32 의 가장 왼쪽 부분에 나타냄) 은, 하부 콘택트가 상부 콘택트를 트림하는 것을 의미하는 min(F1, F2) 을 산출할 수도 있다. 이는, 콘택트 공제가 시드 구조에 의한 콘택트 부가 이후에 수행되기 때문이다. 그럼에도 불구하고, 결과 max(F1, F2) 는 F1 - 로부터 F2 + 를 제거하고 F2 - 로부터 F1 + 를 제거함으로써 획득될 수 있다. 형식적으로, 이는 치환의 하기 시퀀스를 통해 행해진다:
마지막으로, 변경된 거동 "F1 은 항상 F2 를 트림한다" (도 32 의 가장 오른쪽 부분에 나타냄) 은 F2 - 로부터 F1 + 를 제거함으로써 획득될 수도 있고, 이는 하기 치환을 통해 행해진다.
상기 규칙들은 동일한 유형의 2 개의 2-컨트리뷰션 피처들 간의 디폴트 우선 순서를 변경하기 위해 부품을 모델링하는 규칙들의 세트에 부가하는 스왑 규칙들을 제공한다.
이하, BiW 피처들을 오버랩하는 1-컨트리뷰션의 대수에 대해 도 33 을 참조하여 서술한다. 이는 푸쉬 피처에 전용된다. 사실상, 컷 피처는 당연히 가환적이므로, 2 개의 컷 피처들 간의 우선순위 관리는 다뤄질 필요가 없다.
포지티브 푸쉬와 네거티브 푸쉬는 다른 피처들에 대해 동일한 우선순위를 가진다. 그럼에도 불구하고, 포지티브 푸쉬와 네거티브 푸쉬가 오버랩할 경우, 시드 구조가 푸쉬 부가 이후에 푸쉬 공제를 수행하기 때문에 디폴트 거동 (도 33 의 가장 왼쪽 부분에 나타냄) 은 네거티브 푸쉬에 의해 포지티브 푸쉬를 트림하는 것이다. 이러한 디폴트 거동은 시드 구조에서 푸쉬 "부가" 와 푸쉬 "제거" 를 스위칭함으로써 모든 푸쉬 피처들에 대해 변화될 수 있다. 이러한 결정은 애플리케이션 기준에 따라 시드 구조 설계 도중에 행해진다. 디폴트 거동에 의해 결정되는 우선 순서는 변화될 수 있다. P+ 및 P- 를 포지티브 푸쉬 및 네거티브 푸쉬라 한다. 규칙들의 세트에 부가될 수도 있는 하기 스왑 규칙에 의해 특정되는 바와 같이, 거동 변화 (도 33 의 가장 오른쪽 부분에 나타냄) 는 P- 로부터 P+ 를 제거함으로써 획득된다.
이하, 상이한 유형의 2 개의 피처들 간의 우선순위의 관리에 대해 도 34 내지 도 35 를 참조하여 서술한다.
먼저, 스티프너 피처와 콘택트 피처 간의 우선순위의 관리에 대해 서술한다. S 를 스티프너라 하고, S+, S- 를 그 컨트리뷰션이라 한다. C 를 콘택트라 하고, C+, C- 를 그 컨트리뷰션이라 한다. 디폴트에 의해, 콘택트 C 는 스티프너 S 를 트림한다. 이 우선순위를 역으로 하는 것 (스티프너 S 가 콘택트 C 를 트림함) 은, C+ 로부터 S- 를 제거하고 C- 로부터 S+ 를 제거함으로써 획득되고, 이는 치환의 하기 시퀀스를 통해 획득된다.
이하, 스티프너 피처와 포지티브 푸쉬 피처 간의 우선순위의 관리에 대해 서술한다. S 를 스티프너라 하고, S+, S- 를 그 컨트리뷰션이라 한다. P+ 를 포지티브 푸쉬라 한다. 디폴트에 의해, 푸쉬 P+ 가 스티프너 S 를 트림한다. 이 우선순위를 역으로 하는 것 (스티프너 S 가 푸쉬 P+ 를 트림함) 은 P+ 로부터 S- 를 제거함으로써 획득되고, 이는 하기 대체를 통해 획득된다.
이하, 스티프너 피처와 네거티브 푸쉬 피처 간의 우선순위의 관리에 대해 서술한다. S 를 스티프너라 하고, S+, S- 를 그 컨트리뷰션이라 한다. P- 를 네거티브 푸쉬라 한다. 디폴트에 의해, 푸쉬 P- 가 스티프너 S 를 트림한다. 이 우선순위를 역으로 하는 것 (스티프너 S 가 푸쉬 P- 를 트림함) 은 P- 로부터 S+ 를 제거함으로써 획득되고, 이는 하기 대체를 통해 획득된다.
이하, 스티프너 피처와 컷 피처 간의 우선순위의 관리에 대해 도 34 를 참조하여 서술한다. S 를 스티프너라 하고, S+, S- 를 그 컨트리뷰션이라 한다. K 를 컷이라 한다. 디폴트에 의해, K 가 스티프너 S 를 컷팅한다. 이 우선순위를 역으로 하는 것 (스티프너 S 가 K 에 의해 컷팅되지 않음) 은 K 로부터 S+ 및 S- 를 제거함으로써 획득되고, 이는 치환의 하기 시퀀스를 통해 획득된다.
이하, 콘택트 피처와 포지티브 푸쉬 피처 간의 우선순위의 관리에 대해 도 35 를 참조하여 서술한다. C 를 콘택트라 하고, C+, C- 를 그 컨트리뷰션이라 한다. P+ 를 포지티브 푸쉬라 한다. 디폴트에 의해, 푸쉬 P+ 가 콘택트 C 를 트림한다. 이 우선순위를 역으로 하는 것 (콘택트 C 가 푸쉬 P+ 를 트림함) 은 P+ 로부터 C- 를 제거함으로써 획득되고, 이는 하기 치환을 통해 획득된다.
이하, 콘택트 피처와 네거티브 푸쉬 피처 간의 우선순위의 관리에 대해 서술한다. C 를 콘택트라 하고, C+, C- 를 그 컨트리뷰션이라 한다. P- 를 네거티브 푸쉬라 한다. 디폴트에 의해, 푸쉬 P- 가 콘택트 C 를 트림한다. 이 우선순위를 역으로 하는 것 (콘택트 C 가 푸쉬 P- 를 트림함) 은 P- 로부터 C+ 를 제거함으로써 획득되고, 이는 하기 대체를 통해 획득된다.
이하, 콘택트 피처와 컷 피처 간의 우선순위의 관리에 대해 서술한다. C 를 콘택트라 하고, C+, C- 를 그 컨트리뷰션이라 한다. K 를 컷이라 한다. 디폴트에 의해, K 가 콘택트 C 를 컷팅한다. 이 우선순위를 역으로 하는 것 (콘택트 C 가 K 에 의해 컷팅되지 않음) 은 K 로부터 C+ 및 C- 를 제거함으로써 획득되고, 이는 치환의 하기 시퀀스를 통해 획득된다.
이하, 포지티브 푸쉬 피처와 컷 피처 간의 우선순위의 관리에 대해 서술한다. P+ 를 포지티브 푸쉬라 한다. K 를 컷이라 한다. 디폴트에 의해, K 가 푸쉬 P+ 를 컷팅한다. 이 우선순위를 역으로 하는 것 (푸쉬 P+ 가 K 에 의해 컷팅되지 않음) 은 K 로부터 P+ 를 제거함으로써 획득되고, 이는 치환의 하기 시퀀스를 통해 획득된다.
이하, 네거티브 푸쉬 피처와 컷 피처 간의 우선순위의 관리에 대해 서술한다. P- 를 네거티브 푸쉬라 한다. K 를 컷이라 한다. 디폴트에 의해, K 가 푸쉬 P- 를 컷팅한다. 이 우선순위를 역으로 하는 것 (푸쉬 P- 가 K 에 의해 컷팅되지 않음) 은 K 로부터 P- 를 제거함으로써 획득되고, 이는 치환의 하기 시퀀스를 통해 획득된다.
이하, 프론트 피처와 백 피처 간의 우선순위의 관리에 대해 서술한다. 프론트 피처를 생성하는 것은 표준 노드 대신에 전용 프론트 노드에 기여하는 것이다. 백 피처를 생성하는 것은 표준 노드 대신에 전용 백 노드에 기여하는 것이다. 표준 피처를 백에 보내는 것은 표준 노드로부터 그 컨트리뷰션을 제거하고 그 컨트리뷰션을 전용 백 노드로 이동시키는 것이다. 표준 피처를 프론트에 가져가는 것은 표준 노드로부터 그 컨트리뷰션을 제거하고 그 컨트리뷰션을 전용 프론트 노드로 이동시키는 것이다. 프론트 또는 백 피처를 리셋하는 것은 프론트 또는 백 노드로부터 그 컨트리뷰션을 제거하고 그 컨트리뷰션을 표준 노드로 이동시키는 것이다.
상기 설명은 2 개의 BiW 피처들 간의 우선순위를 역으로 하는 수단을 제공한다. 특히, 나타낸 바와 같이, 2 개의 피처들 간의 디폴트 우선 순서를 변경하기 위해 하나 이상의 스왑 규칙을 부가하는 것이 항상 가능하다.
이 방법은 CAD 시스템의 견지로부터의 일반적 측면에서 서술되었다. 통상 그래픽 사용자 인터페이스를 통해, 설계자가 피처를 생성 (즉, 인스턴스화) 하는 동안, 시스템은 백 프로세스에서 규칙들의 세트 및 시드 구조를 관리한다. 전술한 바와 같이, 그래픽 사용자 인터페이스를 통한 사용자의 액션은 백 프로세스에서 규칙들의 세트의 변경을 야기한다. 그래픽 사용자 인터페이스의 전개 및 규칙들의, 시드 구조의 인코딩은 소프트웨어 엔지니어의 역할이며, 상세하게 기재하지 않는다.
구현은 특정되는 바와 같은 솔리드 모델링 오퍼레이션들 (합, 교차, 공제 등) 을 구현함으로써 본 발명의 이익을 취할 수 있다. 이는 본 발명의 단도직입적 이용이다. 표면 모델링 알고리즘 (주로 스플리팅 및 트림) 이 구현에 대해 바람직한 경우, 본 발명은 솔리드 모델링 오퍼레이션을 통해 획득되는 것들로서 결과를 정의함으로써 이들 표면화 오퍼레이션을 조합하는 방식을 특정하는 것을 돕는다.
규칙들은 피처의 각각의 컨트리뷰션에 부가된다. 규칙들은 내부 파라미터들이다. 피처들을 특정할 경우, 설계자는 통상 기하학적 오브젝트들을 특정하기 위해 파라미터 값들을 입력한다. 그리하여, 솔리드 컨트리뷰션의 형상은 2 개의 유형의 입력들에 기초한다. 한편, 사용자 정의된 오브젝트 (주로 프로파일 및 두께), 그리고, 다른 한편, 내부 파라미터 및 기하학적 형상. 이들 내부 입력은:
- 입력 표면 아래에 충분히 떨어져 위치된 바닥 평면. 바닥 평면은 스톡 솔리드 및 컷 컨트리뷰션의 하한을 정의한다. 바닥 평면은 입력 표면 확장된 경계 박스로부터 산출될 수 있다.
- 입력 표면 위에 충분히 떨어져 위치된 상단 평면. 상단 평면은 컷 컨트리뷰션의 상한을 정의한다. 상단 평면은 입력 표면 확장된 경계 박스로부터 산출될 수 있다.
- 입력 표면의 상방 전환인 상부 표면. 상부 표면은 스톡 솔리드로부터 제거되는 드래프팅된 솔리드 컨트리뷰션 (스티프너 및 콘택트의 것들) 의 상한을 정의한다.
- 입력 표면의 하방 전환인 하부 표면. 하부 표면은 스톡 솔리드에 부가되는 드래프팅된 솔리드 컨트리뷰션 (스티프너 및 콘택트의 것들) 의 하한을 정의한다.
- BiW 시트 부품에 합리적으로 적용될 수 있는 가능한 한 가장 높은 피처 및 가능한 한 가장 낮은 피처에 관련되는 상부 표면 및 하부 표면의 전환 값들. 이들 표면 중 하나 외에 피처를 생성하는 것은 실패로 이어진다. 시스템은 설계자 오류로서 사용자에 의해 해석되는 이상한 형상 (예상치못한 컷, 연결되지 않은 시트 부품) 을 생성한다.
이 방법은 "차체" 설계에 적응되는 다른 피처로 연장될 수도 있다. 본 발명에 기재된 시드 구조는 잠재적으로, 다른 "차체" 피처들: 예를 들면, 플랜지 피처를 지원할 수 있다. 새로운 피처를 설계하는 것은, 시드 구조 노드를 통해 컨트리뷰션을 수립 및 확장하는 것이다. 기존의 노드가 새로운 피처를 지원할 수 없는 경우, 기존의 피처 및 거동을 보존하면서 새로운 노드가 시드 구조에 부가될 수 있다.
상기 엘리먼트는 본 발명의 애플리케이션의 단순 예시이다. 특히 개시된 시드 구조는 고유하게 정의되지 않는다. 사실상, 상이한 시드 구조는 설계의 동일한 방식으로 이어질 수도 있다 (동일한 컨트리뷰션이 동일한 디폴트 순서에 적용됨). 상기 시드 구조는 등가라고 일컬어진다.
시드 구조는 정확한 신택스 (syntax) 를 통해 오퍼랜드 및 오퍼레이션 심볼을 혼합하는 대수 표현으로서 관찰될 수 있다. 오퍼레이션 특징 (주로 가환 및 분포) 에 의존하여, 다른 등가 구조가 존재할 수 있다. 예를 들면, 하기 설정된 이론적 불 표현 (S∪A)-R 은 (S-R)∪(A-R) 과 등가인데,
으로 입증되는 바와 같이, 이는 하나가 다른 하나로 변화될 수 있기 때문이다.
덧붙여진 컨벤션으로 재공식화되어, 이는, 시드 구조 SA∪R- 가 SR-AR-∪ 와 등가임을 의미한다. 따라서, 정의에 의해, 2 개의 시드 구조는 대수 조작의 시퀀스를 이용하여 하나가 다른 하나로 변화될 수 있다면 등가이다. 허용된 대수 조작은 시드 구조에 관련된 오퍼레이션의 특징의 결과이다. 이전 예시에서, 하기 정의 및 특징이 사용된다: "세트를 다른 세트에 대해 제거하는 것은 첫번째 세트를 두번째 세트의 컴플리먼트 (complement) 와 교차시키는 것이다" 및 "교차는 합에 걸쳐 분포될 수 있다".
전통적인 히스토리 기반 CAD 시스템으로 설계된 기존의 "차체" 시트 부품은 입력 표면으로서 수반될 수 있고, 단, 그것은 유효 2-매니폴드 (manifold) 오브젝트이다. 형상은 컨트리뷰션 및 시드 구조에 따라 선언적 피처에 의해 트림될 것이다. 다른 한편, 시드 구조로부터 야기되는 출력 표면은 유효 2-매니폴드 오브젝트이기 때문에 전통적인 CAD 시스템에 재사용될 수 있다. 임의의 추가적인 오퍼레이션 (드로잉, 오프셋, 조립, 트림, 머시닝 등) 이 수행될 수 있고, 연관성이 보존된다.
본 발명은 하기 엘리먼트들 중 하나 이상을 특정하기 때문에 당업계에 현저하게 기여된다:
- "차체" 피처의 리스트. 각각의 피처는 "차체" 부품의 설계자에게 의미있는 정확한 기능을 충족시키도록 정의된다.
- 피처 오버랩의 경우에서의 디폴트 거동. 이 디폴트 거동은, 2 개 이상의 피처들이 3D 공간에서의 인접하는 위치들을 점유하는 경우 서로 트림해야 하는 방식을 정의한다. 피처 오버랩이 어떠하든, 시스템은 항상 기하학적 솔루션을 제공한다.
- 디폴트 거동이 설계 의도에 적합하지 않을 경우 국부적 우선순위 변경뿐만 아니라 전체적인 우선순위 변경 (즉, 변화). 이 방법의 구현 및/또는 상황에 의존하여, 피처의 특징으로서 또는 적절한 설계 피처로서 우선순위 변화가 캡처된다.
- 상기 디폴트 거동 및 변경된 거동에 따라 상기 피처를 처리할 수 있는 특수화된 시드 구조.
- 히스토리 자유 설계 (즉, 선언적 설계): 결과적인 형상 ("차체" 피처의 컨트리뷰션, 즉, 규칙들의 세트에 의해 제공되는 시드 구조에 의해 산출됨) 은 피처 생성 순서에 의존하지 않는다.
이들 특징 덕분에, 본 발명은 설계자가 적절한 의미를 가지고 취급하기 때문에 "차체" CAD 시스템을 보다 용이하게 제작하여 습득 및 사용한다. 내부 복잡성 (주로 오퍼레이션의 히스토리) 이 숨겨진다. 품질이 형성되고, 히스토리 자유 특징은 협력적인 설계를 허용한다.
이 방법은 CAD 시스템으로 수행될 수도 있다. 컴퓨터-지원 설계 시스템은, 컨텍스트-프리 그래머의 시드 구조, 컨텍스트-프리 그래머의 규칙들의 세트, 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서를 이용하여 모델링되는 부품을 저장하는 데이터베이스를 포함할 수도 있고; 이 컴퓨터-지원 설계 시스템은 상술된 방법을 수행하는데 적합한 그래픽 사용자 인터페이스를 더 포함할 수도 있다.
컴퓨터 프로그램은 컴퓨터에 의해 실행하기 위한 명령들을 포함할 수도 있고, 명령들은, 컴퓨터-지원 설계 시스템의 (컴퓨터-지원 설계 시스템에 의해 포함된) 그래픽 사용자 인터페이스로 상기 방법을 수행하는 수단을 포함한다. 컴퓨터-지원 설계 시스템은, 컨텍스트-프리 그래머의 시드 구조, 컨텍스트-프리 그래머의 규칙들의 세트, 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및 시드 구조 및 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서에 의해 모델링되는 부품을 저장하는 데이터베이스를 더 포함한다. 이러한 프로그램은 본 발명의 방법을 수행하기 위해 적합하게 되도록 CAD 시스템을 업데이트하는데 사용될 수도 있다.
종래 기술로부터 알 수 있듯이, 이러한 프로그램은 컴퓨터 판독가능 저장 매체에 기록될 수도 있다.
부록 A
Claims (15)
- - 컨텍스트-프리 그래머 (context-free grammar) 의 시드 구조,
- 상기 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들 (design features) 로서, 각각의 설계 피처는 상기 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 상기 시드 구조 및 상기 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
를 이용하여 모델링되는 부품을 설계하기 위한 컴퓨터 구현 방법으로서,
상기 컴퓨터 구현 방법은,
- 상기 우선 순서에 따라 그래픽 사용자 인터페이스에서 상기 부품의 표현을 디스플레이하는 단계,
- 상기 규칙들의 세트를 변경함으로써 상기 2 개의 설계 피처들 간의 우선 순서를 변경하는 단계, 및
- 상기 변경된 우선 순서에 따라 상기 부품의 표현을 디스플레이하는 단계를 포함하는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
상기 우선 순서를 변경하는 단계에서, 스왑 규칙 (swap rule) 이 상기 규칙들의 세트에 부가되는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
상기 규칙들의 세트는 스왑 규칙을 포함하고,
상기 우선 순서를 변경하는 단계에서, 상기 스왑 규칙이 상기 규칙들의 세트로부터 제거되는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
상기 규칙들의 세트는 스왑 규칙을 포함하고,
상기 우선 순서를 변경하는 단계에서, 언-스왑 규칙 (un-swap rule) 이 상기 규칙들의 세트에 부가되는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
상기 우선 순서를 변경하는 단계에서, 브링-투-프론트 규칙 (bring-to-front rule) 또는 샌드-투-백 규칙 (send-to-back rule) 이 상기 규칙들의 세트에 부가되고, 상기 브링-투-프론트 규칙 또는 상기 샌드-투-백 규칙에 따라 상기 우선 순서가 변경되는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
각각의 상기 디스플레이하는 단계 이전에 상기 시드 구조에 상기 규칙들을 적용하는 단계를 더 포함하는, 컴퓨터 구현 방법. - 제 6 항에 있어서,
각각의 규칙을 적용하는 단계는, 상기 규칙의 적어도 하나의 비-터미널 심볼 (non-terminal symbol) 에 따라 상기 시드 구조를 변경하는, 컴퓨터 구현 방법. - 제 7 항에 있어서,
각각의 규칙은, 상기 규칙의 상기 비-터미널 심볼에 대응하는 상기 시드 구조의 비-터미널 심볼을 대체하는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
각각의 설계 피처는,
- 스톡 피처 유형 (stock feature type),
- 푸쉬 피처 유형 (push feature type),
- 콘택트 피처 유형 (contact feature type),
- 스티프너 피처 유형 (stiffener feature type),
- 컷 피처 유형 (cut feature type), 및
- 표면 추출 피처 유형 (surface extraction feature type)
을 포함하는 그룹에 속하는 유형을 갖는, 컴퓨터 구현 방법. - 제 9 항에 있어서,
상기 변경하는 단계에서, 상기 2 개의 설계 피처들의 유형에 의존하는 스왑 규칙이 상기 규칙들의 세트에 부가되는, 컴퓨터 구현 방법. - 제 1 항에 있어서,
상기 시드 구조 및 상기 규칙들의 세트는, 상기 피처들의 각각의 유형에 따라 상기 피처들 간의 디폴트 우선 순서를 정의하는, 컴퓨터 구현 방법. - 제 10 항에 있어서,
상기 시드 구조 및 상기 규칙들의 세트는, 상기 피처들의 각각의 유형에 따라 상기 피처들 간의 디폴트 우선 순서를 정의하고,
스티프너 피처는 콘택트 피처보다 더 낮은 디폴트 우선 순서를 가지며, 상기 콘택트 피처 자체는 푸쉬 피처보다 더 낮은 디폴트 우선 순서를 가지며, 상기 푸쉬 피처 자체는 컷 피처보다 더 낮은 디폴트 우선 순서를 가지며,
차체 (body-in-white) 부품을 설계하기 위한, 컴퓨터 구현 방법. - a) 데이터베이스, 및
b) 제 1 항 내지 제 12 항 중 어느 한 항에 기재된 컴퓨터 구현 방법을 수행하는데 적합한 그래픽 사용자 인터페이스를 포함하고,
상기 a) 데이터베이스는,
- 컨텍스트-프리 그래머의 시드 구조,
- 상기 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 상기 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 상기 시드 구조 및 상기 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
에 의해 모델링되는 부품을 저장하는, 컴퓨터-지원 설계 시스템. - 컴퓨터에 의해 실행하기 위한 명령들을 포함하는 컴퓨터 프로그램이 기록된 컴퓨터 판독가능 저장 매체로서,
상기 명령들은, 컴퓨터-지원 설계 시스템의 그래픽 사용자 인터페이스로 제 1 항 내지 제 12 항 중 어느 한 항에 기재된 컴퓨터 구현 방법을 수행하는 수단을 포함하고,
상기 컴퓨터-지원 설계 시스템은,
- 컨텍스트-프리 그래머의 시드 구조,
- 상기 컨텍스트-프리 그래머의 규칙들의 세트,
- 적어도 2 개의 설계 피처들로서, 각각의 설계 피처는 상기 규칙들의 세트 중 적어도 하나의 규칙에 의해 정의되는, 상기 적어도 2 개의 설계 피처들, 및
- 상기 시드 구조 및 상기 규칙들의 세트에 의해 결정되는 설계 피처들 간의 우선 순서
를 이용하여 모델링되는 부품을 저장하는 데이터베이스를 더 포함하는, 컴퓨터 프로그램이 기록된 컴퓨터 판독가능 저장 매체.
- 삭제
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP09290828.4A EP2325769B1 (en) | 2009-10-30 | 2009-10-30 | Part design using a context-free grammar |
EP09290828.4 | 2009-10-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110048011A KR20110048011A (ko) | 2011-05-09 |
KR101716103B1 true KR101716103B1 (ko) | 2017-03-14 |
Family
ID=42028216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100107058A KR101716103B1 (ko) | 2009-10-30 | 2010-10-29 | 컨텍스트-프리 그래머를 이용한 부품 설계 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8473258B2 (ko) |
EP (1) | EP2325769B1 (ko) |
JP (1) | JP5646954B2 (ko) |
KR (1) | KR101716103B1 (ko) |
CN (1) | CN102054093B (ko) |
CA (1) | CA2719013C (ko) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5962057B2 (ja) * | 2012-02-28 | 2016-08-03 | 富士通株式会社 | 3次元形状作成支援プログラム,方法及び装置 |
US20150339410A1 (en) * | 2014-05-22 | 2015-11-26 | Siemens Product Lifecycle Management Software Inc. | Cad components with overlay data |
US10140392B1 (en) | 2017-06-29 | 2018-11-27 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
US10254941B2 (en) | 2017-06-29 | 2019-04-09 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
US9971854B1 (en) * | 2017-06-29 | 2018-05-15 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
US10922449B2 (en) | 2018-11-21 | 2021-02-16 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
US10867081B2 (en) | 2018-11-21 | 2020-12-15 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
US10706637B2 (en) | 2018-11-21 | 2020-07-07 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
WO2021178221A1 (en) | 2020-03-03 | 2021-09-10 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
US11514203B2 (en) | 2020-05-18 | 2022-11-29 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001331536A (ja) | 2000-03-16 | 2001-11-30 | Fujitsu Ltd | Cadシステムにおける編集方法、媒体、およびプログラム |
JP2005044365A (ja) | 2003-07-25 | 2005-02-17 | Dassault Systemes | 文脈自由文法を用いた部品設計システム |
JP2006209763A (ja) | 2005-01-26 | 2006-08-10 | Solidworks Corp | コンピュータ支援設計システムのための認識およびアクティブフィーチャ |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5815154A (en) * | 1995-12-20 | 1998-09-29 | Solidworks Corporation | Graphical browser system for displaying and manipulating a computer model |
DE19612016A1 (de) * | 1996-03-15 | 1997-09-18 | Daimler Benz Ag | Verfahren zur rechnergestützten Geometriemodellierung |
US6525745B1 (en) * | 1999-10-25 | 2003-02-25 | Alventive, Inc. | Sheet metal geometric modeling system |
US7313504B2 (en) * | 2001-10-15 | 2007-12-25 | Solidworks Corporation | Model management technology using grouping of features |
US8305376B2 (en) * | 2007-04-12 | 2012-11-06 | Dassault Systemes Solidworks Corporation | Locally updating a three-dimensional model |
-
2009
- 2009-10-30 EP EP09290828.4A patent/EP2325769B1/en active Active
-
2010
- 2010-10-22 US US12/909,964 patent/US8473258B2/en active Active
- 2010-10-27 CA CA2719013A patent/CA2719013C/en active Active
- 2010-10-28 JP JP2010242556A patent/JP5646954B2/ja active Active
- 2010-10-29 CN CN201010529183.8A patent/CN102054093B/zh active Active
- 2010-10-29 KR KR1020100107058A patent/KR101716103B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001331536A (ja) | 2000-03-16 | 2001-11-30 | Fujitsu Ltd | Cadシステムにおける編集方法、媒体、およびプログラム |
JP2005044365A (ja) | 2003-07-25 | 2005-02-17 | Dassault Systemes | 文脈自由文法を用いた部品設計システム |
JP2006209763A (ja) | 2005-01-26 | 2006-08-10 | Solidworks Corp | コンピュータ支援設計システムのための認識およびアクティブフィーチャ |
Also Published As
Publication number | Publication date |
---|---|
EP2325769B1 (en) | 2018-10-24 |
JP2011096256A (ja) | 2011-05-12 |
US8473258B2 (en) | 2013-06-25 |
CN102054093B (zh) | 2016-02-17 |
CA2719013A1 (en) | 2011-04-30 |
CA2719013C (en) | 2019-11-12 |
KR20110048011A (ko) | 2011-05-09 |
EP2325769A1 (en) | 2011-05-25 |
JP5646954B2 (ja) | 2014-12-24 |
CN102054093A (zh) | 2011-05-11 |
US20110264412A1 (en) | 2011-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101716103B1 (ko) | 컨텍스트-프리 그래머를 이용한 부품 설계 | |
JP4477443B2 (ja) | 文脈自由文法を用いた部品設計システム | |
EP1302904B1 (en) | Object modeling | |
US8305376B2 (en) | Locally updating a three-dimensional model | |
US10303822B2 (en) | Systems and methods of designing geometry of tool set in a numerical simulation of sheet metal forming operations including springback compensation | |
CN101198957B (zh) | 与三维几何体相关的参数模型的生成方法和设备 | |
DE102005055133A1 (de) | System für den maschinengestützten Entwurf technischer Vorrichtungen | |
CN105893666A (zh) | 基于catia的铁路车辆参数化模型的建模方法 | |
CN115017569A (zh) | 一种二、三维联动的桥梁参数化建模、出图方法、装置、设备及介质 | |
CN111612686B (zh) | 一种ebom到pbom的结构映射方法 | |
CN103605845A (zh) | 一种基于装配知识描述的机床夹具库管理系统 | |
JP5623796B2 (ja) | オブジェクトのコンピュータ支援設計のシステム内でオブジェクトの間の関係のステータスを更新するプロセス | |
Feng et al. | A hybrid and automated approach to adapt geometry model for CAD/CAE integration | |
Aranburu et al. | Reusability and flexibility in parametric surface-based models: a review of modelling strategies | |
Jubierre et al. | Knowledge-based engineering for infrastructure facilities: assisted design of railway tunnels based on logic models and advanced procedural geometry dependencies | |
Cascini | State-of-the-Art and Trends of Computer-Aided Innovation Tools: Towards the integration within the Product Development Cycle | |
Golkar | Development of knowledge based engineering support for design and analysis of car components using NX–Knowledge Fusion | |
Flurl et al. | A Rule-based Collaborative Modelling System for Infrastructure Design | |
Gómez et al. | Modeling the organizational style structure in five | |
Xue et al. | Design Process Modeling for the Future CAD Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |