KR20150079441A - 3 차원 모델링된 오브젝트의 설계 - Google Patents

3 차원 모델링된 오브젝트의 설계 Download PDF

Info

Publication number
KR20150079441A
KR20150079441A KR1020140191734A KR20140191734A KR20150079441A KR 20150079441 A KR20150079441 A KR 20150079441A KR 1020140191734 A KR1020140191734 A KR 1020140191734A KR 20140191734 A KR20140191734 A KR 20140191734A KR 20150079441 A KR20150079441 A KR 20150079441A
Authority
KR
South Korea
Prior art keywords
feature
profile
database
geometry
features
Prior art date
Application number
KR1020140191734A
Other languages
English (en)
Inventor
아메야 디베카르
Original Assignee
다솔 시스템므
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 다솔 시스템므 filed Critical 다솔 시스템므
Publication of KR20150079441A publication Critical patent/KR20150079441A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

발명은 특히, 3D 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법에 관한 것이다. 3D 모델링된 오브젝트는 데이터베이스에 저장된다. 방법은,
- 복수의 피처들을 갖는 3 차원 모델링된 오브젝트를 제공하는 단계;
- 사용자 액션 시에, 제 1 피처의 제 1 기하구조를 선택하는 단계;
- 선택된 제 1 기하구조에 따라 적어도 하나의 사양을 데이터베이스에서 질의 및 취출하는 단계;
- 적어도 하나의 제 2 피처를 선택하는 단계;
- 선택된 적어도 하나의 제 2 피처에 대해, 데이터베이스로부터 취출된 상기 적어도 하나의 사양을 적용하는 단계를 포함한다.

Description

3 차원 모델링된 오브젝트의 설계{DESIGN OF A THREE―DIMENSIONAL MODELED OBJECT}
발명은 컴퓨터 프로그램들 및 시스템들의 분야에 관한 것으로, 더욱 구체적으로, 3 차원 모델링된 오브젝트 (three-dimensional modeled object) 를 설계하기 위한 방법, 시스템 및 프로그램에 관한 것이다.
다수의 시스템들 및 프로그램들이 오브젝트들의 설계, 공학 및 제조를 위하여 시장에서 제공된다. CAD 는 컴퓨터-지원 설계 (Computer-Aided Design) 에 대한 두문자어이고, 예를 들어, 그것은 오브젝트를 설계하기 위한 소프트웨어 솔루션들에 관한 것이다. CAE 는 컴퓨터-지원 공학 (Computer-Aided Engineering) 에 대한 두문자어이고, 예를 들어, 그것은 미래의 제품의 물리적 거동을 시뮬레이팅하기 위한 소프트웨어 솔루션들에 관한 것이다. CAM 은 컴퓨터-지원 제조 (Computer-Aided Manufacturing) 에 대한 두문자어이고, 예를 들어, 그것은 제조 프로세스들 및 동작들을 정의하기 위한 소프트웨어 솔루션들에 관한 것이다. 이러한 컴퓨터-지원 설계 시스템들에서는, 그래픽 사용자 인터페이스가 기술의 효율에 관련하여 중요한 역할을 한다. 이 기술들은 제품 수명주기 관리 (Product Lifecycle Management; PLM) 시스템들 내에 내장될 수도 있다. PLM 은 확장된 기업의 개념에 걸쳐, 제품 데이터를 공유하고, 공통의 프로세스들을 적용하고, 그 구상으로부터 수명의 종료까지 제품들의 개발을 위한 공동 지식을 활용하도록 회사들을 돕는 사업 전략을 지칭한다.
(상표명들 CATIA, ENOVIA 및 DELMIA 하에서) Dassault
Figure pat00001
에 의해 제공된 PLM 솔루션들은 제품 공학 지식을 조직화하는 공학 허브 (Engineering Hub), 제조 공학 지식을 관리하는 제조 허브, 및 기업 통합들 및 공학 및 제조 허브들 양자 모두로의 연결들을 가능하게 하는 기업 허브를 제공한다. 모두 함께, 시스템은 최적화된 제품 정의, 제조 준비, 생산 및 서비스를 추진하는 동적인 지식-기반 제품 생성 및 판단 지원을 가능하게 하기 위하여 제품들, 프로세스들, 자원들을 링크시키는 개방형 오브젝트 모델을 전달한다.
CAD 모델링 소프트웨어를 이용하는 설계자들은 암시적으로 또는 명시적으로 자신의 설계 의도를 포착한다. 용어 설계 의도는 설계자의 프로젝트 목적들 또는 요건들을 의미한다. 설계자는 설계 의도를 명시적으로 포착하기 위한 메커니즘들로서 피처 사양 (feature specification) 들 및 제약들을 제공한다. 피처의 사양은 피처의 기재된 설명이다.
실제적으로, 설계자는 모델링된 오브젝트를 설계할 때에 시간을 절약하기 위하여 몇몇 피처들에 대해 유사한 설계 의도들을 이용하기를 원한다. 또한, 설계자는 하나의 피처로부터의 설계 의도들을 재이용하기를 원할 수도 있고, 다른 피처들에 대해 유사한 설계 의도를 가질 수도 있다. 설계자들이 원래의 설계 의도들에 대해 변경들을 행하고 이것들을 다른 피처들에 전파시키기를 원할 때, 설계 의도를 재이용하는 것은 특별히 더욱 중요하다.
일부의 알려진 CAD 소프트웨어 솔루션들은 피처들의 복사 및 붙여넣기를 허용함으로써 또는 피처들의 사양을 대체함으로써 생성된 기하구조의 재이용을 허용한다. 그러나, 설계자들은 피처의 서브-요소 (sub-element) 또는 사용자 선택에 기초하여 설계 의도를 이해하는 것에는 미흡하다. 다시 말해서, 설계자들은 그 설계 의도를 포착하는 표현의 그러한 선택으로부터, 자신들이 재이용하기를 원하는 설계 의도를 CAD 소프트웨어들이 이해한다고 인식할 수도 있다.
몇몇 피처들에 걸쳐 유사한 설계 변경을 초래할 때, 지금은 설계자가 모든 피처에서 개별적으로 변경을 초래할 필요가 있다. 수학적인 항들로 설명하기 위하여, 사용자가 하나의 피처에 대해 설계 변경을 초래하기 위하여 n 개의 단계들을 필요로 하고 k 개의 다른 피처들에서 이러한 설계 변경들을 초래하기를 희망할 경우, 본질적으로, 사용자는 모든 설계 변경들을 초래하기 위하여 n×k 개의 단계들을 필요로 한다.
게다가, 변경 요청들의 관리는 일부의 기준 기하구조에 대한 기하구조의 편집을 요구한다. 이 기준 기하구조는 기하학적 세트에서의 표면, 평면, 축과 같이, 반드시 독립적인 기준 기하구조가 아니라, 패드의 상단 한계, 구멍의 바닥, 구멍의 타입, 등과 같은 더욱 암시적인 기하구조이다.
현재로는, 알려진 CAD 소프트웨어 솔루션들의 어느 것도 사용자의 기하구조 선택에 기초하여 설계 의도를 추론하는 것을 허용하지 않는다. 다시 말해서, 설계자들이 사용자의 선택에 기초하여, 피처 사양의 세분화 레벨에서 설계 의도를 재이용하도록 하기 위한 메커니즘이 지금은 없다.
따라서, 설계자들은 다른 피처들에 걸쳐 그 피처들의 시맨틱들을 재이용할 수 없다.
이 상황 내에서는, 피처-기반 3 차원 모델링된 오브젝트를 설계하기 위한 개선된 방법에 대한 필요성이 여전히 있다.
그러므로, 데이터베이스에 저장되는 3 차원 (3D) 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법이 제공된다. 방법은:
- 복수의 피처들을 갖는 3 D 모델링된 오브젝트를 제공하는 단계;
- 사용자 액션 시에, 제 1 피처의 제 1 기하구조를 선택하는 단계;
- 선택된 제 1 기하구조에 따라 적어도 하나의 사양을 데이터베이스에서 질의 및 취출하는 단계;
- 적어도 하나의 제 2 피처를 선택하는 단계;
- 선택된 적어도 하나의 제 2 피처에 대해, 데이터베이스로부터 취출된 상기 적어도 하나의 사양을 적용하는 단계를 포함한다.
방법은 다음 중 하나 이상을 포함할 수도 있다:
- 데이터베이스에서 질의 및 취출하는 단계는,
- 선택된 제 1 기하구조가 속하는 제 1 피처를 식별하는 단계;
- 제 1 피처가 구축되었던 프로파일을 식별하는 단계;
- 선택된 기하구조가 발생하는 식별된 프로파일의 적어도 하나의 부분을 발견하는 단계; 및
- 데이터베이스에서 발견된 적어도 하나의 부분과 연관된 적어도 하나의 사양을 발견하는 단계를 포함하고;
- 프로파일을 식별한 후에:
- 프로파일을 형성하는 부분들을 식별하는 단계;
- 프로파일의 각각의 부분을 인덱싱하는 단계를 더 포함하고;
적어도 하나의 사양을 발견하는 단계는, 선택된 기하구조가 발생하는 프로파일의 부분과 연관된 인덱스에 따라 수행되고;
- 적어도 하나의 제 2 피처를 선택하는 단계는, 제 1 피처와 유사한 적어도 하나의 제 2 피처를 선택하는 단계를 포함하고;
- 제 1 및 제 2 피처는 양자 모두가 동일한 타입인 경우에 유사한 것으로서 검출되고;
- 사용자 액션 시에, 선택된 적어도 하나의 제 2 피처에 대해 적용되어야 할 추가적인 사양을 선택하는 단계를 더 포함하고, 적용하는 단계는, 선택된 적어도 하나의 제 2 피처에 대해, 데이터베이스로부터 취출된 상기 적어도 하나의 사양 및 추가적인 사양을 적용하는 단계를 포함하고;
- 추가적인 사양은 제 1 피처에서 식별된 사양들의 세트 중에서 선택된다.
방법을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램이 추가로 제공된다.
컴퓨터 프로그램을 그 위에 기록된 컴퓨터 판독가능한 저장 매체가 추가로 제공된다.
메모리 및 그래픽 사용자 인터페이스에 결합된 프로세서를 포함하는 시스템으로서, 메모리는 컴퓨터 프로그램을 그 위에 기록한, 상기 시스템이 추가로 제공된다.
발명의 실시형태들은 비-제한적인 예로서, 그리고 첨부한 도면들을 참조하여 지금부터 설명될 것이며, 여기서:
도 1 은 방법의 일 예의 플로우차트를 도시하고;
도 2 는 도 1 의 방법의 단계 (S30) 의 일 예를 도시하는 플로우차트를 도시하고;
도 3 은 프로파일-기반 구멍 피처 (profile-based hole feature) 의 일 예를 도시하고;
도 4 내지 도 7 은 도 3 의 프로파일-기반 구멍 피처의 부분들 및 기하구조들의 예들을 도시하고;
도 8 은 추론된 사양으로서 구멍의 타입을 갖는 피처 사양들 패널의 일 예를 도시하고;
도 9 및 도 10 은 본 발명에 따라 3D 모델링된 오브젝트가 설계되는 GUI 의 스크린샷을 도시하고;
도 11 은 발명에 따른 방법이 수행될 수 있는 GUI 의 일 예를 도시하고;
도 12 는 발명에 따른 방법을 수행하기 위한 컴퓨터 시스템의 일 예를 도시한다.
도 1 의 플로우차트를 참조하면, 3 차원 (3D) 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법이 제안되어 있다. 3D 모델링된 오브젝트는 데이터베이스에 저장된다. 방법은 복수의 피처들을 갖는 모델링된 오브젝트를 제공하는 것을 포함한다. 이에 따라, 3D 모델링된 오브젝트는 피처-기반 3D 모델링된 오브젝트이다. 방법은 사용자 액션 시에, 제 1 피처의 제 1 기하구조를 선택하는 것을 더 포함한다. 방법은 또한, 데이터베이스에서 질의 (query) 하는 것과, 선택된 제 1 기하구조에 따라 데이터베이스에서 적어도 하나의 사양을 취출 (retrieving) 하는 것을 포함한다. 방법은 적어도 하나의 제 2 피처를 선택하는 것을 더 포함한다. 선택된 제 2 피처는 제 1 피처와 유사할 수도 있다. 다음으로, 방법은 선택된 적어도 하나의 제 2 피처에 대하여, 데이터베이스로부터 취출된 상기 적어도 하나의 사양을 적용하는 것을 포함한다.
이러한 방법은 사용자 선택으로부터 3D 모델링된 오브젝트를 추론함으로써 설계 의도를 재이용하기 위한 새로운 방법으로서, 3D 모델링된 오브젝트의 설계를 개선시킨다. 피처의 기하구조 (예를 들어, 기하구조의 시각적 표현) 의 사용자 선택은 피처와 연관된 일부의 설계 의도를 포착한다. 다시 말해서, 사양 (들) 의 식별은 3D 모델링된 오브젝트의 피처의 기하구조의 사용자 선택에 따라 수행된다. 이에 따라, 시맨틱 (semantic) 들 (또는 사양 (들)) 이 포착되고, 3D 모델링된 오브젝트의 다른 피처들에 대해 재이용된다. 이것은 사용자들이 몇몇 피처들에 대한 그 설계 의도들을 더 적은 단계들에서 신속하게 전파하도록 한다.
방법은 컴퓨터 구현된다. 이것은 방법의 단계들 (또는 실질적으로 모든 단계들) 이 적어도 하나의 컴퓨터, 또는 비슷한 임의의 시스템에 의해 실행되는 것을 의미한다. 따라서, 방법의 단계들은 아마도 완전히 자동으로, 또는 반자동으로 컴퓨터에 의해 수행된다. 예들에서는, 방법의 단계들 중의 적어도 일부의 트리거링이 사용자-컴퓨터 상호작용을 통해 수행될 수도 있다. 요구된 사용자-컴퓨터 상호작용의 레벨은 예견된 자동성 (automatism) 의 레벨에 종속될 수도 있고, 사용자의 소망들을 구현하기 위한 필요성과 균형을 잡을 수도 있다. 예들에서는, 이 레벨이 사용자-정의될 수도 있고 및/또는 미리 정의될 수도 있다.
예를 들어, 제 1 기하구조의 선택은 사용자 액션 시에 수행된다. 유사하게, 적어도 하나의 제 2 피처를 선택하는 단계는 사용자 액션 시에 수행될 수도 있다.
방법의 컴퓨터 구현의 전형적인 예는 이 목적을 위해 구비된 시스템으로 방법을 수행하는 것이다. 시스템은 메모리 및 그래픽 사용자 인터페이스 (graphical user interface; GUI) 에 결합된 프로세서를 포함할 수도 있고, 메모리는 방법을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램을 그 위에 기록하였다. 메모리는 또한 데이터베이스를 저장할 수도 있다. 메모리는, 아마도 몇몇 물리적인 별개의 부분들 (예를 들어, 프로그램을 위한 하나, 및 아마도 데이터베이스를 위한 하나) 을 포함하는, 이러한 저장을 위해 구비된 임의의 하드웨어이다.
"데이터베이스" 에 의해, 그것은 검색 (search) 및 취출을 위해 조직된 데이터 (즉, 정보) 의 임의의 집합을 의미하게 된다. 메모리 상에 저장될 때, 데이터베이스는 컴퓨터에 의한 신속한 검색 및 취출을 허용한다. 데이터베이스들은 실제로, 다양한 데이터-프로세싱 동작들과 함께 데이터의 저장, 취출, 수정, 및 삭제를 용이하게 하도록 구조화된다. 데이터베이스는, 하나 이상의 필드들로 각각 구성된 레코드들로 분해될 수 있는 파일 또는 파일들의 세트로 구성될 수도 있다. 필드들은 데이터 저장의 기본 단위들이다. 사용자들은 주로 질의들을 통해 데이터를 취출할 수도 있다. 키워드들 및 정렬 커맨드들을 이용하여, 사용자들은 이용되고 있는 데이터베이스 관리 시스템의 규칙들에 따라 데이터의 특별한 총합들에 대한 보고들을 취출하거나 생성하기 위하여 많은 레코드들에서 필드를 신속하게 검색, 재배치, 그룹화, 및 선택할 수 있다.
방법의 경우에 있어서, 데이터베이스는 3 차원 모델링된 오브젝트를 포함할 수도 있고, 3D 모델링된 오브젝트는 복수의 피처들을 가질 수도 있다. 데이터베이스는 또한 피처-기반 3D 모델링된 오브젝트의 각각의 피처의 하나 이상의 사양들을 저장할 수도 있다.
방법은 일반적으로 모델링된 오브젝트들을 조작한다. 모델링된 오브젝트는 데이터베이스에 저장된 데이터에 의해 정의된 임의의 오브젝트이다. 확장에 의하여, 표현 "모델링된 오브젝트" 는 데이터 자체를 나타낸다. 시스템의 타입에 따르면, 모델링된 오브젝트들은 데이터의 상이한 종류들에 의해 정의될 수도 있다. 시스템은 실제로, CAD 시스템, CAE 시스템, CAM 시스템, PDM 시스템 및/또는 PLM 시스템의 임의의 조합일 수도 있다. 그러한 상이한 시스템들에서는, 모델링된 오브젝트들이 대응하는 데이터에 의해 정의된다. 따라서, 누군가는 CAD 오브젝트, PLM 오브젝트, PDM 오브젝트, CAE 오브젝트, CAM 오브젝트, CAD 데이터, PLM 데이터, PDM 데이터, CAM 데이터, CAE 데이터에 대해 말할 수도 있다. 그러나, 모델링된 오브젝트는 이 시스템들의 임의의 조합에 대응하는 데이터에 의해 정의될 수도 있으므로, 이 시스템들은 다른 것의 배타적인 하나가 아니다. 이하에 제공된 이러한 시스템들의 정의들로부터 명백한 바와 같이, 시스템은 이와 같이 양호하게 CAD 및 PLM 시스템의 양자 모두 일 수도 있다.
CAD 시스템에 의하여, 그것은 CATIA 와 같이, 모델링된 오브젝트의 그래픽 표현에 기초하여 모델링된 오브젝트를 적어도 설계하기 위해 구비된 임의의 시스템을 의미하게 된다. 이 경우, 모델링된 오브젝트를 정의하는 데이터는 모델링된 오브젝트의 표현을 허용하는 데이터를 포함한다. CAD 시스템은 예를 들어, 면들 또는 표면들을 갖는 어떤 경우들에 있어서, 에지 (edge) 들 또는 라인들을 이용한 CAD 모델링된 오브젝트들의 표현을 제공할 수도 있다. 라인들, 에지들, 또는 표면들은 다양한 방식들, 예를 들어, 비균일 유리 B-스플라인들 (non-uniform rational B-splines; NURBS) 로 표현될 수도 있다. 구체적으로, CAD 파일은 기하구조가 그로부터 생성될 수도 있는 사양들로서, 생성되어야 할 표현을 궁극적으로 허용하는 사양들을 포함한다. 모델링된 오브젝트의 사양들은 단일 CAD 파일 또는 다수의 CAD 파일들에 저장될 수도 있다. CAD 시스템에서 모델링된 오브젝트를 나타내는 파일의 전형적인 사이즈는 부분 당 1 메가바이트 (Megabyte) 의 범위에 있다. 그리고, 모델링된 오브젝트는 전형적으로 수 천개의 부분들의 어셈블리일 수도 있다.
CAD 의 상황에서, 모델링된 오브젝트는 전형적으로, 예를 들어, 부분들 또는 부분들의 어셈블리와 같은 제품, 또는 아마도 제품들의 어셈블리를 나타내는 3D 모델링된 오브젝트일 수도 있다. "3D 모델링된 오브젝트" 에 의하여, 그것은 그 3D 표현을 허용하는 데이터에 의해 모델링되는 임의의 오브젝트를 의미하게 된다. 3D 표현은 모든 각도들로부터 부분의 시청을 허용한다. 예를 들어, 3D 로 표현될 때, 3D 모델링된 오브젝트는 그 축들 중의 임의의 것 주위로, 또는 표현이 그 위에 디스플레이되는 스크린에서의 임의의 축 주위로 취급 및 회전될 수도 있다. 이것은 특히, 3D 모델링되지 않은 2D 아이콘들을 제외한다. 3D 표현의 디스플레이는 설계를 용이하게 한다 (즉, 설계자들이 통계적으로 그 태스크를 달성하는 속도를 증가시킴). 제품들의 설계가 제조 프로세스의 일부이므로, 이것은 산업에서 제조 프로세스의 속도를 올린다.
CAD 시스템은 이력-기반 (history-based) 일 수도 있다. 이 경우, 모델링된 오브젝트는 기하학적 피처들의 이력을 포함하는 데이터에 의해 추가로 정의된다. 모델링된 오브젝트는 실제로, 표준 모델링 피처들 (예를 들어, 돌출 (extrude), 회전 (revolute), 절단 (cut), 및/또는 라운드 (round) 등) 및/또는 표준 표면처리 피처들 (예를 들어, 스윕 (sweep), 블렌드 (blend), 로프트 (loft), 충전 (fill), 변형 (deform), 평탄화 (smoothing), 및/또는 등) 을 이용하여 물리적인 사람 (즉, 설계자/이용자) 에 의해 설계될 수도 있다. 모델링된 오브젝트는 여기에서 피처-기반 모델링된 오브젝트이다. 이러한 모델링 기능들을 지원하는 많은 CAD 시스템들은 이력-기반 시스템이다. 이것은 설계 피처들의 생성 이력이 상기 기하학적 피처들을 입력 및 출력 링크들을 통해 함께 링크시키는 비주기적 데이터 흐름 (acyclic data flow) 을 통해 전형적으로 저장된다는 것을 의미한다. 이력 기반 모델링 패러다임은 80 년대의 초기부터 잘 알려져 있다. 모델링된 오브젝트는 2 개의 지속적인 데이터 표현들: 이력 및 B-렙 (B-rep) (즉, 경계 표현) 에 의해 설명된다. B-렙은 이력에서 정의된 연산들의 결과이다. 모델링된 오브젝트가 표현될 때, 컴퓨터의 스크린 상에 디스플레이된 부분의 형상은 B-렙 (의 테셀레이션 (tessellation)) 이다. 부분의 이력은 설계 의도이다. 기본적으로, 이력은 모델링된 오브젝트가 거친 동작들에 대한 정보를 수집한다. B-렙은 복잡한 부분들을 디스플레이하는 것을 용이하게 하기 위하여, 이력과 함께 저장될 수도 있다. 이력은 설계 의도에 따라 부분의 설계 변경들을 허용하기 위하여 B-렙과 함께 저장될 수도 있다.
PLM 시스템에 의하여, 그것은 물리적으로 제조된 제품을 나타내는 모델링된 오브젝트의 관리를 위해 구비된 임의의 시스템을 의미하게 된다. PLM 시스템에서는, 이에 따라, 모델링된 오브젝트가 물리적 오브젝트의 제조를 위해 적당한 데이터에 의해 정의된다. 이것들은 전형적으로 치수 값들 및/또는 공차 값들일 수도 있다. 오브젝트의 정확한 제조를 위하여, 이러한 값들을 가지는 것이 실제로 더 양호하다.
CAM 은 컴퓨터-지원 제조를 의미한다. CAM 솔루션에 의하여, 그것은 제품의 제조 데이터를 관리하기 위해 구비된, 하드웨어의 소프트웨어인 임의의 솔루션을 의미하게 된다. 제조 데이터는 일반적으로 제조하기 위한 제품, 제조 프로세스 및 요구된 자원들과 관련된 데이터를 포함한다. CAM 솔루션은 제품의 전체적인 제조 프로세스를 계획하고 최적화하기 위해 이용된다. 예를 들어, 그것은 제조 프로세스의 특정 단계에서 이용될 수도 있는, 실현가능성에 대한 정보, 제조 프로세스의 지속기간, 또는 특정 로봇들과 같은 자원들의 수를 CAM 사용자들에게 제공할 수 있고; 이에 따라, 관리 또는 요구된 투자에 대한 판정을 허용할 수 있다. CAM 은 CAD 프로세스 및 잠재적인 CAE 프로세스 이후의 추후의 프로세스이다. 이러한 CAM 솔루션들은 상표명 DELMIA® 하에서 Dassault
Figure pat00002
에 의해 제공된다.
CAE 는 컴퓨터-지원 공학을 의미한다. CAE 솔루션에 의하여, 그것은 모델링된 오브젝트의 물리적 거동의 분석을 위해 구비된, 하드웨어의 소프트웨어인 임의의 솔루션을 의미하게 된다. 잘 알려지고 널리 이용된 CAE 기술은, 물리적 거동들이 수식들을 통해 연산되고 시뮬레이팅될 수 있는 요소들로의 모델링된 오브젝트의 분할을 전형적으로 수반하는 유한 요소 방법 (Finite Element Method; FEM) 이다. 이러한 CAE 솔루션들은 상표명 SIMULIA® 하에서 Dassault
Figure pat00003
에 의해 제공된다. 또 다른 성장하는 CAE 기술은 CAD 기하구조 데이터 없이 물리학의 상이한 분야들로부터의 복수의 컴포넌트들로 이루어진 복잡한 시스템들의 모델링 및 분석을 수반한다. CAE 솔루션들은 시뮬레이션 및 이에 따른 최적화, 제조하기 위한 제품들의 개선 및 유효성 검사를 허용한다. 이러한 CAE 솔루션들은 상표명 DYMOLA® 하에서 Dassault
Figure pat00004
에 의해 제공된다.
PDM 은 제품 데이터 관리를 의미한다. PDM 솔루션에 의하여, 그것은 특별한 제품과 관련된 모든 타입들의 데이터를 관리하기 위해 구비된, 하드웨어의 소프트웨어인 임의의 솔루션을 의미하게 된다. PDM 솔루션은 제품의 수명주기에 관여된 모든 관계자들: 프로젝트 관리자들, 재무 인력, 판매 인력 및 구매자들도 포함하는 주로 공학작들에 의해 이용될 수도 있다. PDM 솔루션은 일반적으로 제품-지향 데이터베이스에 기초하고 있다. 그것은 관계자들이 그 제품들에 대한 일관된 데이터를 공유하게 하고, 그러므로, 관계자들이 다른 데이터를 이용하는 것을 방지한다. 이러한 PDM 솔루션들은 상표명 ENOVIA® 하에서 Dassault
Figure pat00005
에 의해 제공된다.
도 11 은 시스템이 CAD 시스템인 시스템의 GUI 의 일 예를 도시한다.
GUI (100) 는 바닥 및 측면 툴바 (toolbar) 들 (140, 150) 뿐만 아니라 표준 메뉴 바(bar) 들 (110, 120) 을 갖는 전형적인 CAD 와 유사한 (CAD-like) 인터페이스일 수도 있다. 이러한 메뉴 바들 및 툴바들은 사용자 선택가능한 아이콘들의 세트 (set) 를 포함하고, 각각의 아이콘은 당해 분야에서 알려진 바와 같은 하나 이상의 동작들 또는 기능들과 연관된다. 이 아이콘들 중의 일부는 GUI (100) 에서 디스플레이된 3D 모델링된 오브젝트 (200) 에 대해 편집 및/또는 작동하기 위해 구비된 소프트웨어 도구들과 연관된다. 소프트웨어 도구들은 워크벤치 (workbench) 들로 그룹화될 수도 있다. 각각의 워크벤치는 소프트웨어 도구둘의 서브세트 (subset) 를 포함한다. 특히, 워크벤치들 중의 하나는 모델링된 제품 (200) 의 기하학적 피처들을 편집하기에 적당한 편집 워크벤치이다. 동작 시에, 설계자는 예를 들어, 오브젝트 (200) 의 부분을 미리 선택할 수도 있고, 다음으로, 적절한 아이콘을 선택함으로써 동작 (예를 들어, 치수, 컬러, 등을 변경함) 을 시작하거나 기하학적 제약들을 편집할 수도 있다. 예를 들어, 전형적인 CAD 동작들은 스크린 상에 디스플레이된 3D 모델링된 오브젝트의 펀칭 (punching) 또는 폴딩 (folding) 의 모델링이다.
GUI 는 예를 들어, 디스플레이된 제품 (200) 과 관련된 데이터 (250) 를 디스플레이할 수도 있다. 도 2 의 예에서, "피처 트리 (feature tree)" 로서 디스플레이된 데이터 (250) 및 그 3D 표현 (2000) 은 브레이크 캘리퍼 및 디스크를 포함하는 브레이크 어셈블리에 속한다. GUI 는 편집된 제품의 동작의 시뮬레이션을 트리거하기 위하여, 예를 들어, 오브젝트의 3D 배향을 용이하게 하기 위한 다양한 타입들의 그래픽 도구들 (130, 170, 180, 400) 을 추가로 보여줄 수도 있거나, 디스플레이된 제품 (200) 의 다양한 속성 (attribute) 들을 제공할 수도 있다. 커서 (160) 는 사용자가 그래픽 도구들과 상호작용하도록 하기 위하여 햅틱 디바이스에 의해 제어될 수도 있다.
도 12 는 시스템이 클라이언트 컴퓨터 시스템, 예를 들어, 사용자의 워크스테이션인 시스템의 일 예를 도시한다.
상기 예의 클라이언트 컴퓨터는 내부 통신 버스 (1000) 에 접속된 중앙 프로세싱 유닛 (central processing unit; CPU) (1010), 버스에 또한 접속된 랜덤 액세스 메모리 (random access memory; RAM) (1070) 를 포함한다. 클라이언트 컴퓨터에는, 버스에 접속된 비디오 랜덤 액세스 메모리 (1100) 와 연관되는 그래픽 프로세싱 유닛 (graphical processing unit; GPU) (1110) 이 추가로 제공된다. 비디오 RAM (1100) 은 또한 당해 분야에서 프레임 버퍼로서 알려져 있다. 대용량 저장 디바이스 제어기 (1020) 는 하드 드라이브 (1030) 와 같은 대용량 메모리 디바이스에 대한 액세스들을 관리한다. 컴퓨터 프로그램 명령들 및 데이터를 유형적으로 (tangibly) 구체화하기 위해 적당한 대용량 메모리 디바이스들은, 예로서, EPROM, EEPROM, 및 플래시 메모리 디바이스들과 같은 반도체 메모리 디바이스들; 내부 하드 디스크들 및 제거가능한 디스크들과 같은 자기 디스크들; 자기-광 디스크들; 및 CD-ROM 디스크들 (1040) 을 포함하는 모든 형태들의 비휘발성 메모리를 포함한다. 상기한 것 중의 임의의 것은 특별히 설계된 주문형 집적회로 (application-specific integrated circuit; ASIC) 들에 의해 보충될 수도 있거나, 또는 상기 ASIC 들 내에 포함될 수도 있다. 네트워크 어댑터 (1050) 는 네트워크 (1060) 에 대한 액세스들을 관리한다. 클라이언트 컴퓨터는 또한, 커서 제어 디바이스, 키보드 등과 같은 햅틱 디바이스 (1090) 를 포함할 수도 있다. 커서 제어 디바이스는 사용자가 커서를 디스플레이 (1080) 상의 임의의 희망하는 장소에 선택적으로 위치시키는 것을 허용하기 위하여 클라이언트 컴퓨터에서 이용된다. 추가적으로, 커버 제어 디바이스는 사용자가 다양한 커맨드들을 선택하고 제어 신호들을 입력하도록 한다. 커서 제어 디바이스는 제어 신호들을 시스템에 입력하기 위한 다수의 신호 생성 디바이스들을 포함한다. 전형적으로, 커서 제어 디바이스는 마우스 (mouse) 일 수도 있고, 마우스의 버튼은 신호들을 생성하기 위하여 이용될 수도 있다. 대안적으로 또는 추가적으로, 클라이언트 컴퓨터 시스템은 감지 패드, 및/또는 감지 스크린을 포함할 수도 있다.
컴퓨터 프로그램은 컴퓨터에 의해 실행가능한 명령들을 포함할 수도 있고, 명령들은 상기 시스템으로 하여금 방법을 수행하게 하기 위한 수단을 포함할 수도 있다. 프로그램은 시스템의 메모리를 포함하는 임의의 데이터 저장 매체 상에서 기록가능할 수도 있다. 프로그램은 예를 들어, 디지털 전자 회로부로, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어로, 또는 이들의 조합들로 구현될 수도 있다. 프로그램은 장치 예를 들어, 프로그래밍가능한 프로세서에 의한 실행을 위해 머신-판독가능한 (machine-readable) 저장 디바이스에서 유형적으로 구체화된 제품으로서 구현될 수도 있다. 방법 단계들은 입력 데이터에 대해 동작함으로써 그리고 출력을 생성함으로써 방법의 기능들을 수행하기 위한 명령들의 프로그램을 실행하는 프로그래밍가능한 프로세서에 의해 수행될 수도 있다. 이에 따라, 프로세서는 데이터 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 데이터 및 명령들을 이들에게 송신하기 위해 프로그래밍가능하고 결합될 수도 있다. 애플리케이션 프로그램은 하이-레벨 (high-level) 절차적 또는 객체-지향 (object-oriented) 프로그래밍 언어로, 또는 희망하는경우에 어셈블리 또는 머신 언어로 구현될 수도 있다. 어떤 경우에도, 언어는 컴파일링된 (compiled) 또는 해독된 (interpreted) 언어일 수도 있다. 프로그램은 완전한 설치 프로그램 또는 업데이트 프로그램일 수도 있다. 시스템 상에서의 프로그램의 애플리케이션은 어떤 경우에도, 방법을 수행하기 위한 명령들로 귀착된다.
"3D 모델링된 오브젝트의 설계" 는 3D 모델링된 오브젝트를 정교하게 기술하는 프로세스의 적어도 일부인 임의의 액션 또는 일련의 액션들을 나타낸다. 따라서, 방법은 스크래치로부터 3D 모델링된 오브젝트를 생성하는 것을 포함할 수도 있다. 대안적으로, 방법은 이전에 생성된 3D 모델링된 오브젝트를 제공하는 것과, 다음으로, 3D 모델링된 오브젝트를 수정하는 것을 포함할 수도 있다.
방법은, 방법을 수행한 후에, 모델링된 오브젝트에 대응하는 물리적 제품을 생산하는 것을 포함할 수도 있는 제조 프로세스 내에 포함될 수도 있다. 어떤 경우에도, 방법에 의해 설계된 모델링된 오브젝트는 제조 오브젝트를 나타낼 수도 있다. 이에 따라, 모델링된 오브젝트는 모델링된 입체 (즉, 입체를 나타내는 모델링된 오브젝트) 일 수도 있다. 제조 오브젝트는 부분, 또는 부분들의 어셈블리와 같은 제품일 수도 있다. 방법은 모델링된 오브젝트의 설계를 개선시키므로, 방법은 또한 제품의 제조를 개선시키고, 이에 따라, 제조 프로세스의 생산성을 증가시킨다.
지금부터 도 1 을 참조하면, 발명에 따른 방법의 일 예가 논의된다.
단계 (S10) 에서는, 복수의 피처들을 갖는 3 차원 (3D) 모델링된 오브젝트가 제공된다. 3D 모델링된 오브젝트는 데이터베이스에 저장된다. 3D 모델링된 오브젝트를 제공하는 것은, 3D 모델링된 오브젝트의 데이터가 발명의 방법을 수행하는 CAD 시스템에 의해 이용가능하다는 것을 의미한다. 예를 들어, 3D 모델링된 오브젝트의 데이터는 CAD 시스템에 의해 실행된 장면 (scene) 에 제공된다. 이에 따라, 3D 모델링된 오브젝트는 3D 장면에서 로딩되지만, 반드시 사용자에게 표현되지는 않는다. 3D 모델링된 오브젝트를 제공하는 것은, 데이터베이스에서 검색하고 3D 모델링된 오브젝트의 데이터베이스 데이터로부터 취출하는 2 개의 연속적인 단계들의 결과일 수도 있다.
3D 모델링된 오브젝트, 예를 들어, 과거의 설계 세션에서 설계되었던 3D 모델링된 오브젝트는 시스템에 의해 자동으로 제공될 수도 있다. 세션은 사용자가 CAD 시스템과 적어도 하나의 시간을 상호작용하는 시간 주기이다. 실제적으로, 사용자는 자신이 설계를 수행하기를 원할 때마다 시스템에 로그온 하고, 과거의 설계 세션은 사용자가 로그인 할 때에 로딩될 수도 있다.
대안적으로, 3D 모델링된 오브젝트는 사용자 액션 시에 수행된 선택의 결과로서 제공될 수도 있다. 사용자는 키보드, 마우스, 스타일러스 (stylus), 터치 감지 디스플레이, 등과 같은 햅틱 디바이스를 통해 선택을 수행할 수도 있다. 예를 들어, 2-버튼 마우스에서, 좌측 버튼은 제 1 및/또는 제 2 부분을 선택하기 위하여 이용될 수 있다. 부분들의 리스트로의 선택이 수행될 수도 있지만 이것으로 제한되지 않으며, 여기서, 리스트는 텍스트 리스트 또는 부분들의 2D 또는 3D 표현들의 리스트일 수도 있다.
용어 피처는 3D 모델링된 오브젝트의 부분을 형성하는 기하학적 오브젝트를 의미한다. 이에 따라, 3D 모델링된 오브젝트는 당해 분야에서 알려진 바와 같이 피처-기반 모델링된 오브젝트이다. 이에 따라, 피처는 기하학적 특성들을 가진다. 그것은 위상적인 특성들을 더 포함할 수도 있다. 기하학적 특성들 및 (만약 있다면) 위상적인 특성들은 피처의 사양들을 형성하고: 이에 따라, 피처의 사양은 피처의 기하구조의 기재된 설명이고, 규칙들은 피처들의 상기 기하구조들에 적용된다. 따라서, 피처는, 제품에 속하며 설계되는 제품에 대해 판단하기에 유용한 사양 (들) 과 연관되는 일반적으로 형상이다.
실제적으로, 3D 모델링된 오브젝트의 피처는 프로파일 (profile) 로부터 얻어질 수도 있고; 피처는 프로파일-기반 피처라고 불린다. 프로파일-기반 피처의 기하학적 형상은 전형적으로, 당해 분야에서 알려진 바와 같이 스윕된 체적 (swept volume) 이 얻어지는 2 차원 형상 (프로파일) 으로부터 얻어진다.
도 3 은 타입 카운터-보링 (counter-bored) 의 구멍 피처의 프로파일을 예시하고: 프로파일은 연결되어 있는 4 개의 부분들 (1, 2, 3, 4) 을 포함하고, 이에 따라, 연결된 에지들의 세트를 형성한다. 각각의 부분은 또한 2 개의 정점 (vertex) 들을 연결하는 배선이라고 지칭될 수도 있다. 2 개의 정점들을 연결하는 배선은 임의의 타입: 일직선 라인, 굴곡된 라인, 등일 수도 있다는 것을 이해해야 한다. 카운터-보링 구멍 피처는 축 (5) 주위로 프로파일을 회전시킴으로써 형성된다. 여기서, 프로파일은 축 (5) 주위로 360°의 회전을 수행하였다. 도 4 내지 도 7 은 도 3 에 예시된 프로파일로부터 얻어진 카운터-보링 피처의 상이한 도면들을 도시한다. 포함된 체적은 비어 있는 프로파일의 회전에 의해 정의된 체적이라는 것을 이해해야 한다. 기하구조는 프로파일의 각각의 부분으로부터 발생한다. 이것은 적어도 하나의 기하구조가 부분에 의해 스윕된 표면으로부터 생성된다는 것을 의미한다.
지금부터 도 6 을 참조하면, 빗금표시된 라인들은 도 3 에서 표현된 프로파일의 부분 (1) 으로부터 얻어진 기하구조를 도시한다. 결과적인 기하구조는 원통의 일반적인 형태를 갖는 표면이다.
지금부터 도 4 를 참조하면, 빗금표시된 라인들은 도 3 에서 표현된 프로파일의 부분 (2) 으로부터 얻어진 기하구조를 도시한다. 디스크는 에지 (2) 에 의해 스윕된 표면으로부터 얻어진다.
지금부터 도 5 를 참조하면, 빗금표시된 라인들은 도 3 에서 표현된 프로파일의 부분 (3) 으로부터 얻어진 기하구조를 도시하고; 여기서, 원통이 얻어진다.
지금부터 도 7 을 참조하면, 빗금표시된 라인들은 도 3 에서 표현된 프로파일의 부분 (4) 으로부터 얻어진 원뿔 표면을 도시한다.
따라서, 도 4 내지 도 7 에 표현된 카운터-보링 구멍 피처는 4 개의 기하구조들을 포함하고, 각각의 하나는 프로파일의 부분으로부터 생성된다. 피처의 각각의 기하구조에 대하여, 생성기가 연관될 수도 있다: 용어 생성기는 기하구조가 생성되는 프로파일의 부분을 의미한다.
다시 도 1 로 가면, 단계 (S20) 에서는, 사용자가 제 1 피처의 제 1 기하구조를 선택한다. 선택은 키보드, 마우스, 스타일러스, 터치 감지 디스플레이, 등과 같은 햅틱 디바이스를 통해 수행될 수도 있다. 예를 들어, 기하구조들의 리스트로의 선택이 수행될 수도 있으며, 여기서, 리스트는 텍스트 리스트 또는 부분들의 2D 또는 3D 표현들의 리스트일 수도 있다. 예를 들어, 마우스의 커서가 기하구조의 표현 상에 있을 때, 2-버튼 마우스의 좌측 버튼은 제 1 기하구조를 선택하기 위해 이용될 수 있다. 도 6 에서, 사용자는 디스플레이 상에 표현된 카운터-보링 구멍 피처의 원통을 선택하였고, 어떤 기하구조가 선택되었는지를 사용자에게 보여주기 위하여, 선택된 피처의 표현은 변경되었고, 원통의 윤곽들은 빗금표시된 라인들로 표현된다.
다음으로, 단계 (S30) 에서, 3D 모델링된 오브젝트가 저장되는 데이터베이스는, 선택된 제 1 기하구조에 따라 적어도 하나의 사양을 데이터베이스로부터 취출하기 위하여 질의를 받는다. 따라서, 단계 (S20) 에서의 기하구조의 선택은 상기 선택된 기하구조에 연관되는 하나 (또는 더 많은) 사양의 식별을 트리거한다.
설명을 위하여, 단계 (S30) 의 일 예가 도 2 를 참조하여 지금부터 설명된다. 이 예에서, 3D 모델링된 오브젝트의 피처들은 데이터베이스에 저장된 프로파일-기반 피처들이다. 각각의 프로파일-기반 피처에 대하여, 피처의 적어도 프로파일 및 사양들은 데이터베이스에 저장된다. 피처의 각각의 사양과 연관될 수도 있는 값들은 사양들과 함께 저장될 수 있다. 데이터베이스는 프로파일의 부분으로부터 발생하는 기하구조들을 추가로 저장할 수도 있다. 실제적으로, 피처가 인스턴스화 (instantiate) 되고 데이터베이스 상에 저장될 때, 기하구조들이 생성된다. 생성된 기하구조들은 데이터베이스 상에 임시로 저장될 수도 있다.
단계 (S300) 에서는, 제 1 기하구조의 사용자에 의한 선택 후에, 선택된 기하구조가 속하는 피처가 식별된다. 식별은 당해 분야에서 알려진 바와 같이 수행된다. 실제적으로, 방법을 수행하는 시스템은 각각의 인스턴스화된 피처의 기하구조들을 저장하여, 피처의 식별은 기하구조들의 직접적인 식별을 허용하고, 반대로, 기하구조의 식별은 그것이 속하는 피처를 추론하는 것을 허용한다. 따라서, 기하구조들 및 속하는 피처들 사이에는 맵핑이 있다.
다음으로, 단계 (S310) 에서는, 단계 (S300) 에서 식별된 피처가 구축된 프로파일이 식별된다. 위에서 논의된 바와 같이, 각각의 프로파일-기반 피처의 프로파일이 피처와 함께 저장되므로, 이 식별은 데이터베이스에서 직접 수행될 수도 있다. 데이터베이스에서 식별하는 것은 데이터베이스에서 질의하는 것의 동의어이다.
다음으로, 단계 (S320) 에서는, 프로파일을 형성하는 부분들이 식별된다. 이 정보는 피처의 프로파일과 함께 저장될 수도 있고, 즉, 프로파일을 형성하는 부분들의 세트는 데이터베이스 상에 저장된다.
대안적으로, 프로파일의 부분들의 세트는 예를 들어, 프로파일을 형성하는 연결된 에지들의 세트를 검색함으로써, 데이터베이스에 저장된 프로파일로부터 추론될 수도 있다. 예를 들어, 부분들은 미리 결정된 방식으로 저장될 수도 있고, 예를 들어, 카운터 보링 구멍은 구멍의 상단으로부터 바닥까지 저장된 부분들을 항상 가질 것이다.
다음으로, 단계 (S330) 에서는, 프로파일의 각각의 부분이 인덱싱된다. 이것은 프로파일의 각각의 부분이 고유의 식별자와 연관된다는 것을 수반한다. 예를 들어, 각각의 부분이 각각의 부분을 식별하는 것을 허용하는 수치 값 1, 2, 3, 4 와 연관되는 바와 같이, 도 3 에 도시된 프로파일의 부분들은 인덱싱되었다. 따라서, 인덱싱으로부터 부분들을 순서화하는 것이 가능하다.
프로파일의 하나 이상의 부분들의 인덱싱은 피처의 프로파일에 관련된 정보와 함께 데이터베이스 상에 저장될 수도 있다는 것을 이해해야 한다. 이 경우, 프로파일의 각각의 부분을 인덱싱하는 것은 각각의 부분과 연관된 인덱스 값이 데이터베이스에서 식별되는 것을 의미한다. 대안적으로, 인덱스는 데이터베이스에 저장되는 것이 아니라 부분들의 순서가 각각의 구멍 타입에 대해 알려져 있으므로, 인덱스는 용이하게 식별될 수도 있다.
일단 프로파일의 각각의 부분이 인덱싱되면, 부분 및 프로파일의 부분의 정보를 개별적으로 선택하는 것이 가능하다.
다음으로, 단계 (S340) 에서는, 선택된 기하구조가 발생하는 적어도 하나의 부분이 데이터베이스에서 발견된다. 실제적으로, 하나의 단일 부분은 하나의 선택된 기하구조에 대해 구해지고, 하나를 초과하는 기하구조가 부분으로부터 발생할 수 있다는 것이 이해된다. 위에서 논의된 바와 같이, 데이터베이스는 프로파일의 부분으로부터 발생하는 기하구조들을 저장할 수도 있거나 임시로 저장할 수도 있다. 이에 따라, 하나의 부분의 식별은 예를 들어, 관계 데이터베이스 (relational database) 에 저장된 기하구조들 및 부분들 사이의 관계들을 이용함으로써, 데이터베이스를 이용하여 수행될 수도 있다.
다음으로, 단계 (S350) 에서는, 단계 (S340) 에서 발견된 적어도 하나의 부분과 연관된 적어도 하나의 사양이 데이터베이스에서 발견된다. 실제적으로, 단계 (S330) 에서 수행된 부분의 인덱싱은 사양을 식별하기 위하여 활용된다. 실제로, 데이터베이스는 프로파일의 부분들 및 사양 사이의 맵핑을 저장할 수도 있고, 맵핑은 연관된 사양을 식별하기 위하여 부분들의 인덱싱을 이용한다. 위에서 논의된 바와 같이, 피처의 사양들은 프로파일의 부분 (들) 으로부터 발생하는 기하구조들 및 피처의 프로파일로부터 별도로 저장된다.
기하구조의 선택에 기초하여 데이터베이스에서 사양을 구하기 위한 단계들 (S300 내지 S350) 의 알고리즘은 도 4 내지 도 7, 및 도 9 내지 도 10 을 참조하여 지금부터 서술된다. 이 예에서, 누군가는 도 9 에 예시된 바와 같이, 4 개의 구멍 피처들이 패드 (98) 에 존재하는 그래픽 사용자 인터페이스 (예를 들어, 도 11 의 GUI (100)) 에 디스플레이된 3D 모델링된 오브젝트를 고려한다. 구멍 피처 (90) 는 타입 카운터-보링 구멍인 반면, 구멍 피처들 (92, 94, 96) 은 관통 구멍들의 타입이다. 용어 타입은 피처가 속하는 구멍의 카테고리를 의미한다. 일 예로서, 구멍은 타입 관통 구멍, 카운터싱크 (countersink) 구멍, 블라인드 (blind) 구멍일 수도 있지만, 이것으로 제한되지 않는다. 패드 (98) 는 또한 이 예에서 피처이다.
데이터베이스는 도 9 에 표현된 3D 모델링된 오브젝트; 즉, 피처들 (90, 92, 94, 96 및 98) 의 데이터를 저장한다. 데이터베이스는 관계 데이터베이스일 수도 있다. 피처와 관련된 데이터는 하기를 포함한다:
(i) 타입 관통 구멍의 구멍 피처들의 프로파일;
(ii) 타입 카운터-보링 구멍의 구멍 피처들의 프로파일, 프로파일의 4 개의 부분들은 도 3 에 도시된 바와 같이 인덱싱 값들 1, 2, 3, 4 와 각각 연관됨;
(iii) 패드 피처들의 프로파일;
(iv) 프로파일의 각각의 부분으로부터 발생하는 기하구조;
(v) 각각의 피처의 타입;
(vi) 프로파일의 각각의 부분과 연관된 (만약 있다면) 사양.
부분은 사양과 연관되지 않을 수도 있다는 것을 이해해야 한다. 부분들 및 사양들 사이의 맵핑 (누군가는 또한 관계라고 말할 수 있음) 은 부분들의 인덱스화를 통해 유지된다. 사양들의 예들은 타입 카운터-보링의 구멍 피처에 대해 도 8 에서 주어진다. 이 예에서, 카운터 보어 (counter bore) 는 직경 15 mm 를 가지고, 구멍 직경은 10 mm 와 동일하다.
사용자는 구멍 (90) 의 카운터-보링 면을 선택한다. 면 기하구조의 선택 후에, 구멍 피처가 데이터베이스에서 식별된다. 부수적으로, 피처를 식별하는 동안에 피처 타입이 또한 추론되며, 여기서, 피처는 타입 카운터-보링 구멍이다.
다음으로, 피처의 부분들 및 프로파일이 데이터베이스에서 식별된다. 그 후에, 1 로 인덱싱되었으며 선택된 면 기하구조와 연관되는 부분이 데이터베이스에서 발견된다.
지금부터는, 선택된 기하구조가 발생하는 부분의 인덱스가 1 이므로, 데이터베이스에서 추론된 사양은 구멍 피처의 선택된 면이 구멍의 카운터-보어를 고유하게 나타낸다는 것이다. 게다가, 선택된 기하구조는 카운터-보링 직경 사양을 또한 나타낸다. 따라서, 이 예에서는, 2 개의 사양들이 식별된 부분과 연관된다: 구멍의 타입 (카운터-보링) 및 구멍의 직경 (15 mm).
사용자가 2 로 인덱싱된 부분으로부터 발생하는 디스크를 선택하였을 경우에는, 데이터베이스에서 추론된 사양은 카운터-보링된 구멍의 깊이이다.
사용자가 도 3 에 표현된 프로파일의 부분 (3) 으로부터 얻어진 기하구조 (원통) 을 선택하였을 경우에는, 취출된 사양은 구멍의 직경이다.
또 다른 예로서, 사용자가 도 3 에 표현된 프로파일의 부분 (4) 으로부터 발생하는 원뿔 표면을 선택하였을 경우에는, 취출된 사양은 구멍의 바닥-타입이다.
도 1 을 다시 참조하면, 단계 (S40) 에서는, 적어도 하나의 제 2 피처가 선택된다. 선택은 사용자 액션 시에 수행될 수도 있거나, 그것은 발명에 따른 방법을 수행하는 시스템에 의해 자동으로 선택될 수도 있다.
실제적으로, 선택된 제 2 피처는 선택된 제 1 피처와 유사하고, 즉, 제 2 피처는 제 1 피처와 거의 동일하다. 자동으로 선택될 때, 시스템은 제 1 피처로 공통의 특징들의 가장 중요한 수치를 갖는 피처들을 검색한다. 특징들에 의해, 그것은 기하구조, 기하구조와 연관된 사양들을 의미하게 된다. 일반적으로, 제 2 피처는 제 1 피처에 대한 것과 동일한 타입이다. 예를 들어, 그리고 도 9 를 참조하면, 제 1 피처 (90) 및 제 2 피처 (92) 의 양자 모두는 타입 구멍이며, 이것은 이 2 개의 피처가 유사한 기하구조들 및 사양들, 예를 들어, 구멍의 직경을 가진다는 것을 수반한다. 도 9 에서, 몇몇 구멍 피처들 (92, 94, 96) 은 자동으로 선택된다.
다음으로, 단계 (S50) 에서는, 제 1 피처의 사양의 세트가 데이터베이스에서 식별된다. 이것은 전형적으로 제 1 피처의 프로파일의 부분들에 맵핑된 모든 사양들을 검색함으로써 수행된다.
다음으로, 단계 (S60) 에서, 사용자는 선택된 제 2 피처 (들) 에 적용되어야 할 추가적인 사양을 선택할 수도 있다. 추가적인 사양은 단계 (S50) 에서 식별된 세트에서 선택된다. 선택은 도 8 에서 도시된 바와 같이 피처 사양들 패널을 통해 수행될 수도 있고; 패널의 좌측 부분은 카운터-보링 구멍 피처에 대해 추론된 사양의 리스트를 사용자에게 제공하고, 패널의 우측 부분은 사용자에 의해 선택된 사양들, 여기서는, 바닥 타입 및 바닥 각도를 보여준다.
다음으로, 단계 (S70) 에서는, 단계 (S30) 에서 데이터베이스로부터 취출된 사양은 선택된 제 2 피처 (들) 에 적용되고; 예를 들어, 사양의 값은 선택된 제 2 피처에 대해 적용된다. 사용자가 단계 (S60) 에서 하나 이상의 추가적인 사양들을 선택하였을 경우에는, 이 사양들은 또한 선택된 제 2 피처 (들) 에 대해 적용된다. 피처에 대해 사양을 적용하는 것은, 사양 및 사양과 연관된 값이 피처에 대해 영향을 가지도록 피처가 수정된다는 것을 의미한다. 이와 다르게 말하면, 사양 (들) 의 전파가 수행된다.
지금부터 도 10 을 참조하면, 사용자에 의해 선택된 구멍 (90) 의 카운터-보링 면과 연관된 사양 및 단계 (S60) 에서 사용자에 의해 선택된 사양들이 각각의 피처 (92, 94, 98) 에 대해 적용되는 도 9 의 3D 모델링된 오브젝트가 도시되어 있다. 여기서, 3 개의 사양들은 각각의 피처 (92, 94, 98) 에 대해 적용된다: 카운터-보링 구멍, 바닥 타입 및 바닥 각도. 이 3 개의 사양들을 적용함으로써, 피처들 (92, 94, 98) 은 이들이 관통 구멍 대신에 타입 카운터-보링 구멍이 되도록 수정되고, 그 바닥들은 주어진 각도 값을 갖는 원뿔 바닥을 형성하기 위하여 수정된다. 예를 들어, 구멍의 타입을 설명하는 사양의 값은 "단순형 (simple)" 으로부터 "카운터보링형" 으로 변경된다. 피처의 구축이 이것을 뒤따른다. 피처를 구축하는 것은 새로운 값 (구멍의 카운터-보링 타입) 의 효과를 가지고, 구멍의 기하구조 및 위상 (topology) 에서 분명해진다.
데이터베이스에서 취출된 및/또는 사용자에 의해 선택된 사양 (들) 의 전파는 다음의 단계들을 수행함으로써 수행될 수도 있다:
1. 사용자에 의해 선택된 피처들의 리스트를 반복한다;
2. 사용자에 의해 선택된 각각의 피처에 대하여:
a. 전파시킬 사양들의 리스트를 취출한다;
b. 리스트의 각각의 사양에 대하여:
i. 제 1 피처로부터 제 2 피처 (들) 로 전파되어야 할 사양의 값을 취출한다;
ii. 사양의 값을 제 2 피처 (들) 로 전파한다.
본 발명의 바람직한 실시형태가 설명되었다. 발명의 사상 및 범위로부터 이탈하지 않으면서 다양한 수정들이 행해질 수도 있다는 것을 이해할 것이다. 그러므로, 다른 구현들은 다음의 청구항들의 범위 내에 있다. 예를 들어, 피처들은 비-프로파일 기반 피처들일 수 있다. 이 경우, 비-프로파일 기반 피처를 나타내는 선택된 기하구조가 취출될 수도 있다. 선택된 기하구조와 관련된 사양들은 선택의 시맨틱들을 나타낸다. 따라서, 비-프로파일 기반 피처에 대해서는, 피처의 프로파일을 추론하는 것이 필요하지 않다. 비-프로파일 기반 피처를 나타내는 기하구조와 관련된 사양 (들) 은 피처의 기하구조의 선택 시에 추론된다.

Claims (10)

  1. 데이터베이스에 저장되는 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법으로서,
    - 복수의 피처 (feature) 들을 갖는 상기 3 차원 모델링된 오브젝트를 제공하는 단계 (S10);
    - 사용자 액션 시에, 제 1 피처의 제 1 기하구조를 선택하는 단계 (S20);
    - 선택된 상기 제 1 기하구조에 따라 적어도 하나의 사양을 상기 데이터베이스에서 질의 및 취출하는 단계 (S30);
    - 적어도 하나의 제 2 피처를 선택하는 단계 (S40);
    - 선택된 상기 적어도 하나의 제 2 피처에 대해, 상기 데이터베이스로부터 취출된 상기 적어도 하나의 사양을 적용하는 단계를 포함하는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  2. 제 1 항에 있어서,
    상기 데이터베이스에서 질의 및 취출하는 단계 (S30) 는,
    - 상기 선택된 제 1 기하구조가 속하는 상기 제 1 피처를 식별하는 단계 (S300);
    - 상기 제 1 피처가 구축되었던 프로파일을 식별하는 단계 (S310);
    - 선택된 상기 기하구조가 발생하는 식별된 상기 프로파일의 적어도 하나의 부분을 발견하는 단계 (S340); 및
    - 상기 데이터베이스에서 발견된 상기 적어도 하나의 부분과 연관된 적어도 하나의 사양을 발견하는 단계를 포함하는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  3. 제 2 항에 있어서,
    프로파일을 식별한 후에,
    - 상기 프로파일을 형성하는 상기 부분들을 식별하는 단계 (S320); 및
    - 상기 프로파일의 각각의 부분을 인덱싱하는 단계 (S330) 를 더 포함하고,
    상기 적어도 하나의 사양을 발견하는 단계 (S350) 는, 상기 선택된 기하구조가 발생하는 상기 프로파일의 상기 부분과 연관된 인덱스에 따라 수행되는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 적어도 하나의 제 2 피처를 선택하는 단계는, 상기 제 1 피처와 유사한 적어도 하나의 제 2 피처를 선택하는 단계를 포함하는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  5. 제 4 항에 있어서,
    상기 제 1 및 제 2 피처는 양자 모두가 동일한 타입인 경우에 유사한 것으로서 검출되는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    - 사용자 액션 시에, 상기 선택된 적어도 하나의 제 2 피처에 대해 적용되어야 할 추가적인 사양을 선택하는 단계 (S60) 를 더 포함하고,
    상기 적용하는 단계는, 상기 선택된 적어도 하나의 제 2 피처에 대해, 상기 데이터베이스로부터 취출된 상기 적어도 하나의 사양 및 상기 추가적인 사양을 적용하는 단계 (S70) 를 포함하는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  7. 제 6 항에 있어서,
    상기 추가적인 사양은 상기 제 1 피처에서 식별된 (S50) 사양들의 세트 중에서 선택되는, 3 차원 모델링된 오브젝트를 설계하기 위한 컴퓨터 구현 방법.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 기재된 방법을 수행하기 위한 명령들을 포함하는, 컴퓨터 프로그램.
  9. 제 8 항에 기재된 컴퓨터 프로그램을 기록한, 컴퓨터 판독가능한 저장 매체.
  10. 메모리 및 그래픽 사용자 인터페이스에 결합된 프로세서를 포함하는 시스템으로서,
    상기 메모리는 제 8 항에 기재된 컴퓨터 프로그램을 기록한, 시스템.
KR1020140191734A 2013-12-31 2014-12-29 3 차원 모델링된 오브젝트의 설계 KR20150079441A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN4141/MUM/2013 2013-12-31
IN4141MU2013 IN2013MU04141A (ko) 2013-12-31 2013-12-31

Publications (1)

Publication Number Publication Date
KR20150079441A true KR20150079441A (ko) 2015-07-08

Family

ID=52282529

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140191734A KR20150079441A (ko) 2013-12-31 2014-12-29 3 차원 모델링된 오브젝트의 설계

Country Status (7)

Country Link
US (1) US11163915B2 (ko)
EP (1) EP2891998A1 (ko)
JP (1) JP6441664B2 (ko)
KR (1) KR20150079441A (ko)
CN (1) CN104750907A (ko)
CA (1) CA2876436A1 (ko)
IN (1) IN2013MU04141A (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10713394B1 (en) * 2014-06-12 2020-07-14 Benko, LLC Filtering components compatible with a computer-modeled structure
US11003165B2 (en) * 2015-04-24 2021-05-11 Hewlett-Packard Development Company, L.P. Transforming three dimensional object data into object property data objects
EP3159850A1 (en) * 2015-10-25 2017-04-26 Dassault Systèmes Comparing 3d modeled objects
GB201520048D0 (en) * 2015-11-13 2015-12-30 Caparo Vehicle Products Ltd Brake calipers
KR101695591B1 (ko) 2016-03-03 2017-01-23 정근창 공간상의 모델의 위치를 특정하는 프로그램 라이브러리를 이용한 토목지식 기반의 설계방법
EP3264286B1 (en) * 2016-06-28 2020-11-18 Dassault Systèmes Querying a database with morphology criterion
EP3475853A1 (en) 2016-07-28 2019-05-01 Siemens Product Lifecycle Management Software Inc. System and method for perception-based selection of features in a geometric model of a part
EP3321817A1 (en) * 2016-11-14 2018-05-16 Dassault Systèmes Querying a database based on a parametric view function
EP3340084A1 (en) * 2016-12-22 2018-06-27 Dassault Systèmes Replica selection
EP3340085B1 (en) * 2016-12-23 2021-11-03 Dassault Systèmes B-rep of the result of a two-axis 3d printing process
EP3674932A1 (en) * 2018-12-30 2020-07-01 Dassault Systèmes Modeling using a weak type definition
CN111046454B (zh) * 2019-12-20 2024-01-12 武昌首义学院 一种三维虚拟室内设计仿真系统
EP3842911B1 (en) * 2019-12-26 2023-04-05 Dassault Systèmes A 3d interface with an improved object selection

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5265197A (en) * 1988-12-23 1993-11-23 Kabushiki Kaisha Toshiba Geometric modeling apparatus
US5838328A (en) * 1989-05-19 1998-11-17 Hewlett-Packard Company Method for generating graphical models and computer aided design system
JPH04358284A (ja) * 1991-06-04 1992-12-11 Matsushita Electric Ind Co Ltd コンピュータ支援設計装置による作図方法
WO2000055815A1 (fr) * 1999-03-17 2000-09-21 Fujitsu Limited Systeme de cao et support d'enregistrement
US7280990B2 (en) * 2001-08-07 2007-10-09 Ugs Corp. Method and system for designing and modeling a product in a knowledge based engineering environment
JP4516957B2 (ja) * 2003-01-25 2010-08-04 パーデュー リサーチ ファンデーション 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
JP2005346285A (ja) * 2004-06-01 2005-12-15 Sharp Corp 部品配置支援装置、部品配置支援方法、プログラムおよび記録媒体
EP1612697A1 (en) * 2004-06-28 2006-01-04 Dassault Systèmes A graphical method for navigating in a database of modelled objects
DE102004053034A1 (de) * 2004-09-17 2006-04-13 Daimlerchrysler Ag Verfahren zur Suche nach eiem ähnlichen Konstruktionsmodell
US8015125B2 (en) * 2006-08-31 2011-09-06 Drexel University Multi-scale segmentation and partial matching 3D models
US7688318B2 (en) * 2007-02-02 2010-03-30 Dassault Systemes Solidworks Corporation Reusable data constructs for a modeling system
US8810570B2 (en) * 2008-04-14 2014-08-19 Siemens Product Lifecycle Management Software Inc. System and method for active selection in a solid model
US20100013833A1 (en) * 2008-04-14 2010-01-21 Mallikarjuna Gandikota System and method for modifying features in a solid model
US8896597B2 (en) * 2008-04-14 2014-11-25 Siemens Product Lifecycle Management Software Inc. System and method for modifying geometric relationships in a solid model
US10152198B2 (en) * 2009-12-15 2018-12-11 Dassault Systèmes Method and system for editing a product assembly
EP2439664A1 (en) * 2010-09-23 2012-04-11 Dassault Systèmes Designing a modeled object within a session of a computer-aided design system interacting with a database
US8589128B2 (en) * 2010-10-28 2013-11-19 Parametric Technology Corporation Methods and systems for creation of a dynamically configurable product design
WO2012058604A2 (en) * 2010-10-28 2012-05-03 Parametric Technology Corporation Methods and systems for computer-aided design
US8818769B2 (en) * 2010-10-28 2014-08-26 Parametric Technology Corporation Methods and systems for managing synchronization of a plurality of information items of a computer-aided design data model
US8847947B2 (en) * 2010-11-17 2014-09-30 Dassault Systemes Automatic tolerancing of geometrical templates
EP2523132A1 (en) * 2011-05-11 2012-11-14 Dassault Systèmes Designing a three-dimensional modeled assembly of objects in a three-dimensional scene
US8645107B2 (en) * 2011-09-23 2014-02-04 Dassault Systemes Solidworks Corporation Automatic component insertion and constraint based on previous-use data
US9141731B2 (en) * 2012-06-21 2015-09-22 Siemens Product Lifecycle Management Software Inc. Symmetry of discovered geometric relationships in a three dimensional model
EP2750107B1 (en) * 2012-12-31 2017-03-15 Dassault Systèmes Groups of faces that form a geometrical pattern
US20140358491A1 (en) * 2013-05-30 2014-12-04 Siemens Product Lifecycle Management Software Inc. System and method for editing features
US20150278400A1 (en) * 2014-03-28 2015-10-01 Siemens Product Lifecycle Management Software Inc. Hybrid variational solving in cad models
US20150302114A1 (en) * 2014-04-22 2015-10-22 Siemens Product Lifecycle Management Software Inc. Duplicate pattern of assembly components in cad models
US10192022B2 (en) * 2014-06-04 2019-01-29 IronCAD, LLC Geometric modeling system with intelligent behaviors of design components
US10037404B2 (en) * 2014-09-17 2018-07-31 Dassault Systemes Simulia Corp. Feature cloning based on geometric search
EP3340084A1 (en) * 2016-12-22 2018-06-27 Dassault Systèmes Replica selection
US11163916B2 (en) * 2017-06-16 2021-11-02 Dassault Systemes Solidworks Corporation Automatic generation of dimension and tolerance information for fastened components
US11093661B2 (en) * 2017-08-01 2021-08-17 Ptc Inc. Smart relations of computer aided design (CAD) components
US11017129B2 (en) * 2018-04-17 2021-05-25 International Business Machines Corporation Template selector
US11373015B2 (en) * 2018-07-16 2022-06-28 Dassault Systemes Solidworks Corporation Designing a 3D modeled object representing a mechanical structure

Also Published As

Publication number Publication date
JP2015130163A (ja) 2015-07-16
US11163915B2 (en) 2021-11-02
EP2891998A1 (en) 2015-07-08
US20150186555A1 (en) 2015-07-02
CA2876436A1 (en) 2015-06-30
IN2013MU04141A (ko) 2015-08-07
CN104750907A (zh) 2015-07-01
JP6441664B2 (ja) 2018-12-19

Similar Documents

Publication Publication Date Title
US11163915B2 (en) Three-dimensional modeled object
JP6125747B2 (ja) データベースとインタラクションを行うcadシステムのセッション内のモデル化オブジェクトの設計
JP6721332B2 (ja) 3dモデル化されたアセンブリ上で境界ボックスを生成すること
KR101955035B1 (ko) 기하학적 3차원 모델링된 오브젝트를 디자인하는 방법
KR101925640B1 (ko) 3차원 장면에서 오브젝트들의 3차원 모델링된 어셈블리의 디자인
JP2006190276A (ja) 製品ライフサイクル管理データベースを使用して、ビュー内でオブジェクトを描画するための方法およびシステム
US9336335B2 (en) Selection of a manipulator of an object among a plurality of manipulators
JP2016126795A (ja) オブジェクトのセットの視点の選択
US10409921B2 (en) Designing industrial products by using geometries connected by geometrical constraints
US11275870B2 (en) Designing an assembly of parts in a three-dimensional scene
US9483585B2 (en) Designing a staggered pattern of objects in a computer-aided design system
KR102055952B1 (ko) 오브젝트들의 원형 스태거드 패턴의 설계

Legal Events

Date Code Title Description
WITB Written withdrawal of application