KR20070072416A - Plm 데이터베이스의 대상물을 디스플레이하는 프로세스및 그 프로세스를 구현하는 장치 - Google Patents

Plm 데이터베이스의 대상물을 디스플레이하는 프로세스및 그 프로세스를 구현하는 장치 Download PDF

Info

Publication number
KR20070072416A
KR20070072416A KR1020060137971A KR20060137971A KR20070072416A KR 20070072416 A KR20070072416 A KR 20070072416A KR 1020060137971 A KR1020060137971 A KR 1020060137971A KR 20060137971 A KR20060137971 A KR 20060137971A KR 20070072416 A KR20070072416 A KR 20070072416A
Authority
KR
South Korea
Prior art keywords
modeled object
identifying
viewpoint
database
plm database
Prior art date
Application number
KR1020060137971A
Other languages
English (en)
Other versions
KR101333865B1 (ko
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
Priority claimed from EP05028720.0A external-priority patent/EP1804183B1/en
Priority claimed from EP05028721.8A external-priority patent/EP1804184B1/en
Application filed by 다솔 시스템므 filed Critical 다솔 시스템므
Publication of KR20070072416A publication Critical patent/KR20070072416A/ko
Application granted granted Critical
Publication of KR101333865B1 publication Critical patent/KR101333865B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

본 발명은 PLM 데이터베이스의 대상물의 디스플레이하는 장치, 컴퓨터 프로그램 및 프로세스에 관한 것으로, 이 프로세스의 단계는:
- 모델링된 대상물을 포함하는 PLM 데이터베이스 및 그래픽 사용자 인터페이스 (100) 를 제공하는 단계;
- 렌더링하기 위해 대상물 (21 내지 24) 의 뷰 (110) 상에서 뷰포인트를 식별하는 단계 (S200); 및
- 뷰포인트에 따른 상기 뷰를 렌더링하는 단계 (S210 내지 S270) 를 포함하고,
상기 렌더링 단계는,
- 뷰 내의 복수의 위치 (32a 내지 32i) 를 결정하는 단계 (S210);
- 결정된 위치에 따라서, 그 내부에서 데이터베이스를 검색하고 모델링된 대상물을 식별하는 단계, 및
- 그래픽 사용자 인터페이스 내에서 상기 뷰를 렌더링하도록 식별된 모델링된 대상물을 증분적으로 디스플레이하는 단계 (S220 내지 S270) 를 포함한다.
PLM 데이터베이스

Description

PLM 데이터베이스의 대상물을 디스플레이하는 프로세스 및 그 프로세스를 구현하는 장치{PROCESS FOR DISPLAYING OBJECTS OF A PLM DATABASE AND APPARATUS IMPLEMENTING THIS PROCESS}
도 1 은 CAD 그래픽 사용자 인터페이스의 예시적인 디스플레이.
도 2 는 본 발명의 프로세스의 하부 단계를 반영하는 플로우차트.
도 3a 및 도 3b 는 본 발명의 일 실시형태에 따른 프로세스에 이용된 8 진 트리 (octree).
도 4 는 도 1 의 그래픽 사용자 인터페이스에 디스플레이되고, 본 발명의 일 실시형태에 따라서 식별될 수 있는 한 세트의 대상물의 뷰.
도 5a 내지 도 5h 는 본 발명의 일 실시형태에 따른, PLM 데이터베이스의 대상물을 디스플레이하는 프로세스의 단계를 반영하는 뷰의 시퀀스.
도 6 은 본 발명의 일 실시형태에 따른 프로세스 내에서 동시에 구현될 수도 있는 다양한 방법을 통해서 획득된 디스플레이 완성의 비교도.
* 도면의 주요 부분에 대한 부호의 설명 *
10 : GUI 11, 12 : 표준 메뉴 바
13, 40 : 그래픽 툴 14 : 하부 툴 바
15 : 측면 툴 바 20 : 스케이트보드
25 : 데이터
본 발명은 컴퓨터-구현 방법 및 시스템의 분야에 관한 것으로, 더욱 상세하게는, 모델링된 대상물의 데이터 표현의 데이터 베이스를 포함하는 생산품 수명 주기 관리 솔루션에 관한 것이다.
DASSAULT SYSTEMES 에서 제조된 제품인 상표 CATIA 와 같은, 부품의 일부 또는 어셈블리의 설계에 대한 다수의 시스템 및 솔루션이 시장에 제공된다. 소위 CAD (computer-aided design) 시스템으로 지칭되는 이들은 사용자로 하여금 대상물의 복잡한 3D (three-dimensional) 모델 또는 대상물의 어셈블리를 조립하고, 조작하고 관찰하게 한다. CAD 시스템은, 면을 가지는 특별한 경우의 에지 또는 라인을 이용하여 모델링된 대상물의 표현을 제공한다. 라인 또는 에지는 다양한 방법, 예를 들어, NURBS (non-uniform rational B-splines) 으로 표현될 수도 있다. 이들 CAD 시스템은, 기하학적인 본래의 구체적 표현인 모델링된 대상물로서 부품 또는 부품의 어셈블리를 관리한다. 특히, CAD 파일은 기하학적 모형이 생성되는 구체적 표현을 포함하고, 이 기하학적 모형으로부터 표현이 생성된다. 구체적 표현, 기하학적 모형 및 표현은 단일의 CAD 파일 또는 복합의 CAD 파일에 저장될 수도 있다. CAD 시스템은 모델링된 대상물을 설계자에게 표현하는 그래픽 툴을 포함하고, 이들 툴은 복잡한 대상물의 디스플레이에 전용되며 - CAD 시스 템에서 대상물을 표현하는 파일의 통상적인 크기는 일부에 대해 메가-바이트의 범위 내에 있고, 어셈블리는 수천 개의 부품을 포함할 수도 있다. CAD 시스템은 전자 파일에 저장된 대상물의 모델을 관리한다.
또한, DASSAULT SYSTEMES 가 제조한 제품인 상표 CATIA, ENOVIA 및 DELMIA 와 같은, PLM (product life cycle management) 솔루션이 존재하고; 이들 솔루션은 제품 엔지니어링 지식을 조정하는 엔지니어링 허브, 제조 엔지니어링 지식을 관리하는 제조 허브, 및 전체적인 통합 및 접속을 엔지니어링과 제조 허브 양쪽으로 가능하게 하는 전체 허브를 제공한다. 시스템 모두는, 최대로 유용하게 활용되는 생산품 정의, 제조 준비, 생산 및 서비스를 가동하는 동적, 지식-기반 생산품 생성 및 결정 지원을 가능하게 하기 위해 개방 대상물 모델 연결 생산품, 프로세스, 리소스를 전달한다.
이러한 PLM 솔루션은 생산품의 상관 데이터베이스를 포함한다. 일반적으로, 데이터베이스는 신속 검색 (search) 및 회수 (retrieval) 를 위해 조직된 데이터의 수집 (통상적으로, 데이터 및 데이터들 사이에서의 관계) 으로 정의된다. 데이터베이스는 다양한 데이터-프로세싱 동작과 관련된 데이터의 저장, 회수, 변형, 및 삭제를 용이하게 하도록 구조화된다. 일반적으로, 데이터베이스는 하나 이상의 분야로 구성되는 각각의 레코드로 분류될 수 있는 파일 또는 파일의 세트로 구성된다. 필드 (field) 는 데이터 저장의 기본적인 유닛이다. 사용자들은 질의 (query) 를 통해서 처음으로 데이터베이스 정보를 회수한다. 키워드를 이용하고 명령을 분류함으로써, 사용자는 이용되고 있는 데이터베이스 관리 시스템의 규칙에 따라서 데이터의 특정 집합에 대한 기록을 회수 또는 생성하기 위해 많은 레코드에서 필드를 검색하고, 재배열하고, 그루핑 및 선택할 수 있다.
PLM 솔루션을 이용하여, 가능한 상이한 뷰 또는 상이한 뷰포인트 (가상의 카메라) 및 이에 따른 수천 개의 대상물/부품으로 이루어진 복잡한 생산품을 시각화하는 것이 사용자가 기본적으로 필요한 것이다. 사용자는 디스플레이되는 모델링된 대상물을 나타내는 동안 뷰포인트를 변형시킬 수도 있다. 또한, 사용자는 이를 (즉, 가능한 이를 변형하는) 편집하기 위해 소정의 부품을 선택하기를 희망할 수도 있다.
이 문제에 대한 표준 솔루션은, 모델의 3 차원 그래픽 표현 및 기하학적 모형, 제한, 또한, 다른 대상물로의 하이퍼링크와 같이 상기 대상물의 모든 정보를 포함하는, 상기 대상물의 어셈블리에 대응하는 전체 모델을 클라이언트 컴퓨터 메모리 내에서 로딩시키는 것이다. 따라서, 개별적인 부품의 선택이 가능하다. 그러나, PLM/CAD 의 분야에서, 중요한 문제는 시각화 데이터의 포괄적인 양이 빠른 디스플레이를 가능하게 하기 위해 메모리 내에 맞추기 위해서는 적어도 너무 크다는 것이다. 따라서, CAD 생산품 (메모리의 수 기가-8중 (giga-octet) 을 나타내는 수백 만개의 부품을 포함할 수 있는 비행기와 같은 생산품) 을 표현하는 파일의 전형적인 크기로 인해서, 상기 생산품의 뷰의 렌더링 시간은 기능을 상실할 정도로 길 수도 있다.
따라서, 수 개의 부품을 포함하는 CAD 생산품의 효과적인 디스플레이를 가능 하게 하는 솔루션에 대한 필요성이 있다. 바람직하게는, 이 솔루션은 감소된 I/O (Input/Output) 및 메모리 소비를 통해서 큰 3D PLM 데이터의 네비게이팅을 허용해야만 한다.
일 실시형태에서, 본 발명은 PLM 데이터베이스의 대상물을 디스플레이하는 프로세스를 제공하는데, 이 프로세스는:
- 모델링된 대상물을 포함하는 PLM 데이터베이스 및 그래픽 사용자 인터페이스를 제공하는 단계;
- 렌더링되는 대상물의 뷰 상에서 뷰포인트를 식별하는 단계; 및
- 뷰 표인트에 따른 상기 뷰를 렌더링하는 단계를 포함하고,
상기 렌더링 단계는,
- 뷰 내에서 복수의 위치를 결정하는 단계;
- 결정된 위치에 따라서, 그 내부에서 데이터베이스를 검색하고 모델링된 대상물을 식별하는 단계, 및
- 그래픽 사용자 인터페이스 내에서 상기 뷰를 렌더링하도록 식별된 모델링된 대상물을 증분적으로 디스플레이하는 단계를 포함한다.
다른 실시형태에서, 본 발명에 따른 프로세스는 하나 이상의 이하의 특징을 포함할 수도 있다:
- 본 발명에 따른 프로세스는, 뷰포인트를 식별하는 단계 이전에, 사용자에 의해 뷰포인트의 동적인 정의를 수신하는 단계를 더 포함하는데, 여기서, 복수의 위치를 결정하는 단계는 뷰포인트의 사용자 정의에 따라서 동적으로 수행되고,
- 이 위치는 뷰 내에 정의된 그리드 (grid) 로부터 결정되고;
- 복수의 위치를 결정하는 단계는 시간에 따라서 상기 그리드를 정제하는 단계를 포함하고;
- PLM 데이터베이스는 모델링된 대상물의 디스플레이 컴포넌트를 더 포함하고, 여기서, 렌더링하는 단계는 식별된 모델링된 대상물의 디스플레이 컴포넌트를 스트리밍하는 단계를 더 포함하고, 렌더링하는 단계에서, 증분적으로 디스플레이하는 단계는 디스플레이 컴포넌트를 증분적으로 디스플레이하는 단계를 포함하고;
- 모델링된 대상물을 식별하고 증분적으로 디스플레이하는 단계는 시간 기준에 따라서 교대로 수행되고;
- 렌더링하는 단계는 모델링된 대상물을 식별하는 단계에서 식별된 대상물의 랭킹을 확립하는 단계를 포함하고, 모델링된 대상물을 증분적으로 디스플레이하는 단계는 상기 랭킹에 따라서 수행되고;
- 본 발명에 따른 프로세스는 데이터베이스를 검색하고 모델링된 대상물을 식별하는 단계, 데이터베이스 내에서 뷰포인트에 따라 상기 뷰가 시각적으로 표시된 모델링된 대상물의 리스트를 식별하는 단계, 결정된 위치에 따라서 식별된 모델링된 대상물을 증분적으로 디스플레이하는 단계 및 그 리스트에 따라서 모델링된 대상물의 디스플레이를 완성하는 단계를 포함하는 단계를 더 포함하고;
- 데이터베이스를 검색하고 모델링된 대상물을 식별하는 단계는 뷰포인트 및 정의된 하나 이상의 위치를 통해서 통과하는 선을 계산하는 단계를 더 포함하고;
- 검색하고 식별하는 단계는 계산된 선을 교차하는 각각의 모델링된 대상물의 하나 이상의 바운딩 체적을 식별하는 단계를 더 포함하고;
- 본 발명에 따른 프로세스는 교차 바운딩 체적에 대응하는 대상물 중에 뷰포인트에 가장 가까운 대상물을 식별하는 단계를 더 포함하고;
- 본 발명에 따른 프로세스는, 데이터베이스를 검색하는 단계 이전에, PLM 데이터베이스 내에서 각각의 모델링된 대상물에 대해 바운딩 체적을 계산 및 저장하는 단계를 더 포함하고;
- 바운딩 체적을 계산 및 저장하는 단계에서, 단지 하나의 바운딩 체적만이 모델링된 대상물의 복합적으로-예시된 대상물에 대해 저장되고;
- 하나 이상의 교차 바운딩 체적을 식별하는 단계는 각각의 대상물들 사이에서 데이터베이스 내에 저장된 관계에 기초하여 반복적으로 수행되고;
- 본 발명에 따른 프로세스는, 데이터베이스를 검색하는 단계 이전에, PLM 데이터베이스 내에서 각각의 바운딩 체적의 세부분할된 바운딩 체적을 계산 및 저장하는 단계를 더 포함하고;
- 본 발명에 따른 프로세스는 계산된 선을 교차하는 하나 이상의 세부분할된 바운딩 체적을 식별하는 단계를 더 포함하며; 및
-모델링된 대상물을 디스플레이하는 단계는 상기 모델링된 대상물의 3 차원 표현을 디스플레이하는 단계를 포함하고, 상기 표현은 상기 대상물을 편집하기 위해 사용자-선택가능하다.
본 발명은 모델링된 대상물을 포함하는 PLM 데이터베이스 내에 대상물을 선 택하는 장치를 제안하는데, 이 장치는 본 발명에 따른 프로세스의 단계들을 구현하는 수단을 포함한다.
본 발명은 컴퓨터로 하여금 본 발명에 따른 프로세스의 단계를 취하도록 위한 코드 수단을 포함하고, 모델링된 대상물을 포함하는 PLM 데이터베이스 내에서 대상물을 선택하기 위해 컴퓨터 판독가능 매치에 저장된 컴퓨터 프로그램을 고려한다.
본 발명에 채용된 시스템이 비-제한적인 예시의 방법으로 첨부된 도면을 참조하여 이하 설명된다.
본 발명은 PLM 데이터베이스의 대상물을 디스플레이하는 프로세스에 관련된다. 모델링된 대상물을 포함하는 PLM 데이터베이스 및 그래픽 사용자 인터페이스가 제공된다. 렌더링되는 대상물의 관점에서 뷰포인트가 식별된다. 다음으로, 뷰는 뷰포인트에 따라서 렌더링된다. 렌더링하는 단계는, 예를 들어, 그리드에 따라서 획득된 뷰 내의 복수의 위치를 결정하는 단계를 포함한다. 다음으로, 데이터베이스가 검색되고, 모델링된 대상물은 상기 위치에 따라서 식별된다. 한편, 식별된 모델링된 대상물은 뷰 - 3 차원 뷰를 렌더링하도록 그래픽 사용자 인터페이스 내에 증분적으로 디스플레이된다.
모두 디스플레이하는 대신에 식별된 대상물을 증분적으로 한번에 디스플레이하는 단계는 진보적이고, 따라서 더욱 반응적인 디스플레이를 허용하는데: 대상물이 거칠고 또한 분할되어 디스플레이되고, 그 표현은 클라이언트 메모리 내에 분할되어 로딩된다.
또한, 대상물이 뷰 내에 결정된 위치에 따라서 식별되기 때문에, 스크린의 표면상에서 보다 가시적일수록 먼저 결정될 기회가 보다 크다. 따라서, 가장 가시적인 대상물이 먼저 디스플레이되고, 더 작은 대상물 (스크린상에 도시된 바와 같이) 이 나중에 디스플레이된다. 따라서, 디스플레이는 사용자에게 더욱 적절하게 나타난다. 또한, 이롭게는 전체적으로 숨겨진 대상물이 발견되지 않고, 따라서 메모리 내에 저장될 필요가 없다. 대상물을 식별하고 증분적으로 디스플레이하는 단계는 더욱 효과적인 디스플레이를 위해서 가능하게 교차될 수 있다.
제안된 솔루션은 뷰의 빠른 디스플레이를 허용한다. "개별적인" 모델링된 대상물은 디스플레이되기 때문에, 뷰 내에 디스플레이된 즉시 이러한 대상물을 개별적으로 선택하는 것이 가능하고, 필요한 경우, 예를 들어, 단일 마우스-클릭을 통해서 세션 (설계, 네비게이션, 뷰잉...) 내에서 그에 관련된 데이터를 통해서 선택된 대상물을 로딩하는 것이 가능하다.
결정된 위치에 따른 대상물의 식별을 고려하면, 예를 들어, PLM 데이터베이스 내에 저장된 바운딩 체적으로 이루어진 사용이 가능하다. 이는, 뷰 내에서 단지 하나의 특정 위치가 고려된 (소위 데이터베이스 내에서 "피크 질의 (pick query)" 로 지칭되는 것을 수행하기 위한) 예시를 통해서 도 2 내지 도 4 를 참조하여 설명된다. 뷰 내에서 결정된 복수의 위치에 의존하는 본 발명에 따른 광범위한 프로세스는 도 5a 내지 도 5h 를 참조하여 특별히 예시된다.
도 1 을 참조하여, 예를 들어 마우스의 사용자-제어 포인터를 통해서 그래픽 사용자 인터페이스가 제공된다.
그래픽 사용자 인터페이스 (또는 GUI) (10) 는 표준 메뉴 바 (11, 12) 뿐만 아니라 하부 및 측면 툴 (14, 15) 를 가지는 전형적인 CAD/CAM/CAE 인터페이스일 수도 있다. 이러한 메뉴- 및 툴바는 사용자-선택가능 아이콘의 세트를 포함하고, 각각의 아이콘은 당업계에 공지된 바와 같이 하나 이상의 동작 또는 기능과 관련된다.
이들 아이콘의 몇몇은, GUI (10) 내에 디스플레이된 것과 같은 모델링된 대상물 (30) 상에서 편집 및/또는 작업하기 위해 구성된 소프트웨어 툴과 관련된다. 문제의 소프트웨어 툴은 워크벤치로 그루핑될 수도 있다. 이와 다르게, 각각의 워크벤치는 상이한 서브세트의 소프트웨어 툴을 포함한다. 특히, 이들 중 하나는 모델링된 대상물 (30) 의 기하학적 특징을 편집하기에 적합한 편집 워크벤치이다. 동작시에, 설계자는 예를 들어 대상물 (30) 의 부품을 사전-선택할 수도 있고, 적절한 아이콘을 선택함으로써 동작 (예를 들어, 크기 또는 임의의 특성 등을 변경) 을 시작할 수도 있다. 예를 들어, 전형적인 CAD 동작은 스크린상에 디스플레이되는 3D 모델링된 대상물을 입력하고 폴딩 (folding) 하는 모델링이다.
예를 들어, GUI 는 디스플레이된 대상물 (30) 에 관련된 데이터 (25) 를 디스플레이할 수도 있다. 도 1 의 예시에서, "특징 트리" 로서 디스플레이된 데이터 (25), 및 그 3D 표현은 브레이크 캘리퍼스 및 디스크를 포함하는 브레이크 어셈블리에 속한다. GUI 는, 예를 들어, 대상물의 3D 방향을 조절하고, 편집된 생산품의 동작의 시뮬레이션을 트리거하는 다양한 유형의 그래픽 툴 (13, 40) 을 더 나타낼 수도 있고, 또는, 디스플레이된 생산품 (30) 의 다양한 특성을 렌더링할 수도 있다.
실시형태의 예시로서, 본 발명의 프로세스는 사용자 컴퓨터 및 PDM (product data management) 시스템을 포함하는 컴퓨터 네트워크에서 구현된다. 사용자 컴퓨터는 PDM 시스템을 통해서 통신하고, 가능한 한 계층적으로 연관된 수많은 문서, 관계 및 데이터의 조정을 허용한다. 예를 들어, PDM 시스템은 네트워크의 백본 (backbone) 에 위치될 수도 있다. 이러한 PDM 시스템은 설계자에 의해 편집될 가능성이 있는 모델링된 대상물에 관련된 데이터를 가지는 데이터베이스를 이용한다. 따라서, 복수의 사용자가 상이한 대상물 (예를 들어, 부품, 생산품 또는 부품의 어셈블리) 에서 협동적인 방법으로 작업할 수도 있다.
따라서, GUI (10) 및 관련 CAD/CAM/CAE 애플리케이션은, 기존의 CAD/CAM/CAE 인터페이스와 비교하여, 사용자 요청 또는 배경 임무 둘 중 하나에 의해서 PLM 데이터베이스에 접근을 허용하도록 설계된다. 따라서, 동작시에, 데이터베이스에 접근을 희망하는 사용자는 제 1 CAD 윈도우에서 PDM 윈도우로 통과하지 않고 (예를 들어, 제 1 윈도우를 최소화시키고, 제 2 윈도우를 최대화시킴으로써), 그 후, CAD 윈도우로 다시 진행한다. 설계자에 의해 자주 수행되는 이러한 윈도우 스위칭 동작은 시간을 낭비하고, CAD/CAM/CAE 분야에 있어서 특히 부적절하다.
GUI (10) 는 디스플레이 및 메모리를 가지는 네트워크의 하나의 사용자 컴퓨터에서 구동된다. 예를 들어, 도 1 에 디스플레이된 참조 수치 (10) 에 의해 식별된 것과 유사한 GUI 는 네트워크의 다른 사용자 컴퓨터상에서 구동될 수도 있다. 이들 컴퓨터는 유사한 국부적 CAD/CAM/CAE 애플리케이션 및, 더욱 상세하 게는, 일반적인 환경에서 이점을 더 가질 수도 있다.
이제, 도 2 를 참조하여, 프로세스는 설계 시간 (단계 100) 및 구동 시간 (단계 130 내지 단계 160) 으로 광범위하게 분해된다. 설계 시간은, 주로 바운딩 체적 계산에 전용되고, 가능하게는 대상물 인덱스의 생성에 전용되는 사전-프로세싱 단계 (100) 를 중요하게 포함할 수도 있다.
"바운딩 체적", 또는 바운딩 박스에 의해, 예를 들어, 컬링 또는 교차 테스트 등의 목적으로 대상물을 둘러싸는 임의의 계산적인 더욱 간단한 표면을 나타낸다. 예를 들어, 전형적인 바운딩 체적은 입방체, 원통형 박스 또는 구형이다. 사용은 이하의 바운딩 박스로 이루어진다.
디스플레이되는 각각의 대상물의 바운딩 박스가 계산되고 PLM 데이터베이스 내에 순차적으로 저장된다. 이러한 바운딩 박스는 그 대응 대상물과 관련하여 함께 저장된다. 대상물의 기하학적 정의는 상기 박스들을 계산하는데 이용될 수 있다. 이 정의는 상기 대상물의 모자이크식 표현의 정의와 같은, 완성된 정의 또는 간략화된 정의 중 하나 일 수도 있다.
바람직하게는, 사용자가 모자이크식 표현의 정의를 이용하고, 이는 더 빠른 계산 시간을 발생시킨다.
예를 들어, 트리와 같은 대상물의 체계와 같은 생산품을 고려하면, 예를 들어, 그 트리의 터미널 노드에 속하는 제 1 계산된 박스이다. 그 후, 상산품 구조 정의는 어셈블리 박스를 계산하기 위해 이용되며 (단계 100), 이는 그 구조의 정의 및 이미 생성된 터미널 박스를 이용한다.
또한, 세부분할된 박스는 각각의 모체 바운딩 박스 (respective parent bounding boxes) 와 함께 데이터베이스 내에서 계산되고 저장된다. 이러한 경우, 모체 바운딩 박스는 8진 트리의 모체 노드, 즉, 각각의 모체 노드가 그 모체 노드의 공간의 체적을 함께 분할하는 8 개의 산물 노드 (child node) 를 가지는 트리 데이터 구조이다. 따라서, 각각의 트리의 노드는 입방형의 체적, 예를 들어, 세부분할된 바운딩 체적을 표현한다. 수 개의 세부분할은 소정의 분해능에 의존하여 예기될 수 있다 (모체, 산물, 산물의 산물 등).
또한, 단지 하나의 바운딩 박스는 대상물의 세트의 복합적으로-예시된 대상물에 대해 저장되는 것이 바람직하다. 즉, 바운딩 박스는 단지 참조에 대해 계산된다. 이 경우에, 동일한 참조의 예는 위치 매트릭스 (또는, 여기에서는, 링크) 와 함께 저장될 가능성이 크다. 따라서, 동작시에, 박스는 간단한 데카르트 시스템 변화하에서 임의의 복합적으로-예시된 대상물에 대해 빠르게 균등화될 수도 있다.
대상물의 식별을 간주하여, 프로세스는 뷰 내에서 복수의 위치를 결정하는 단계를 포함한다. 예를 들어, 이하 설명되는 바와 같이, 상기 위치는 뷰 내에서 정의된 그리드로부터 정의될 수도 있다. 이하에서, 본 발명에 따른 프로세스는 뷰 내에 정의된 단일의 위치를 이용하여 먼저 설명된다.
먼저, 단계 (130) 에서, 위치는 스크린의 위치 예를 들어, 특정 x,y 위치로 뷰 내에서 결정된다. 임의의 공지된 편리한 방법이 단계 (130) 를 수행하기 위해 이용될 수 있다.
다음으로, 단계 (140 내지 160) 에서, 이 시스템은 데이터베이스를 검색하고, 결정된 위치에 따라서 하나의 대상물을 사용자에게 식별하도록 진행된다. 이러한 단계는 본 발명의 몇몇 특정 실시형태에 따라서 이하 설명된다.
먼저, 단계 (140) 에서, 뷰의 뷰포인트 및 스크린 내에서 포인터의 결정된 x,y 위치를 통해서 통과하는 선 (ray) 또는 임의의 기하학적 동등물로 계산된다. 여기서, 뷰포인트는 3D 콘텐츠에서 표현에 대해 이용되는 원근법의 선택에 의존한다. 이는, 배니싱 (vanishing) 또는 카메라 스테이션 포인트, 또는 임의의 다른 유형의 원근법으로 당업계에 공지된 것 일 수도 있다.
다음으로, 단계 (150) 에서, 계산된 선을 교차하는 대상물의 세트의 각각의 대상물의 하나 이상의 바운딩 박스가 식별된다. 이에 대한 목적으로, 수 개의 공지된 기술이 교차가 존재하는지의 여부를 결정하기 위해 이용될 수도 있다. 예를 들어, 스크린 상에 먼저 결정된 포인터 위치 및 뷰 포인트에 의해, 그 선이 바운딩 박스를 교차하는지의 여부를 결정할 수도 있다.
브루트 포스 방식 (brute force method) 에서, 이 알고리즘은, 박스들이 상기 계산된 선을 교차하는지 결정하기 위한 참조뷰의 각각의 산물 예에 대응하는 모든 바운딩 박스를 예를 들어 스캔할 수도 있다. 이 단계는 참조 뷰의 좌표 시스템에서 수행된다.
그러나, 상기 스캔 단계는 대상물의 수가 증가함에 따라서 급격하게 금지된다. 예를 들어, 현대의 비행기를 모델링하는 CAD/CAM 은 3 백만개의 박스까지 저장하는 단계를 요구할 수도 있다. 따라서, 사용자는 교차 재검색 알고리즘을 고속화하기 위한 이점이 있을 수도 있다는 것을 이해한다.
이에 관하여, 사용자는 소위 R-트리 기술, 즉, 공간이 가능한 한 오버래핑되는 박스에 계층적으로 포개지도록 분할되는 공간 접근 방법으로 지칭되는 기술을 이용할 수도 있다. 이러한 기술은 다양한 가능한 기준에 따라서 더욱 균형잡힌 특징의 트리를 유도하고, 더욱 효과적인 스캔을 유도한다.
다음으로, 참조 뷰의 산물 예시로 교차된 것이 발견되는 즉시, 초기의 선은 상기 교차된 산물 예시의 좌표 시스템 내에서 재계산되고, 신규의 스캔이 어떠한 교차도 발견되지 않을 때까지, 그 산물 예시 등에서 수행된다.
따라서, 교차 검색 알고리즘은 반복적이고 (단계 150 내지 단계 160), 즉, n 번째 순서로 교차된 모체 박스의 마지막으로 교차된 산물이 검색되고, 이하로 진행한다.
교차 바운딩 박스가 검출되면, 본 발명의 일 실시형태에 따른 프로세스는 교차된 바운딩 박스 내에 더욱 작은 세부분할 레벨에서 구동한다. 예를 들어, 사용자는 도 3a 에 도시된 8 개의 입방체 박스 내에서 분할되는 체적인 8 진 트리를 고려할 수도 있다.
8 진 트리 (310) 가 모델의 임의의 엘리먼트를 포함하지 않고 모델의 엘리먼트로 완전하게 채워지는 경우를 제외하고, 8 진 트리 (300) 는 도 3b 에 도시된 바와 같이 그들 자신이 더 세부분할된다. 모델의 엘리먼트를 포함하는 각각의 8 진 트리 (300) 는 더 세부분할된다.
따라서, 8 진 트리 (800) 는 3D 화소 (320) (여기서 이 크기는 사용자에 의 해 입력된 정의에 의존할 수도 있다) 으로 알려진 가장 작게 분할되지 않은 체적까지 계산된 선을 통해서 임의의 교차를 검출하도록 스캐닝된다. 다음으로, 이 프로세스는 정지하고, 식별된 3D 화소에 그 내부에 있는 (또는, 근접한) 뷰의 대상물이 선택된다.
대상물이 선택되면, 뷰포인트의 3D 화소에 대응하는 거리가 저장된다. 그 후, 프로세스는 선을 따라서 뷰포인트에 가장 근접한 대상물을 찾고 선택하기 위해 동일한 단계 (박스, 8 진 트리, 3D 화소 바운딩) 에 따른 다른 바운딩 박스 (단계 150 - 160) 를 반복적으로 테스트한다. 프로세스를 최적화시키기 위해, 바운딩 박스가 계산된 선을 교차하지 않는 경우 (신규의 좌표 시스템에서), 이 바운딩 박스는 훼손된다. 동일하게, 바운딩 박스가 바운딩 박스와 이전에 저장된 거리보다 큰 뷰포인트 사이의 거리가 아닌 선에 의해 교차되는 경우, 상기 바운딩 박스는 더 테스트되지 않는다.
모든 바운딩 박스가 테스트되고 대상물이 데이터베이스 내에서 식별되면, 상기 대상물의 표현이 데이터베이스로부터 로딩되고 디스플레이된다. 상기 표현은 정확한 모자이크식 표현 또는 NURBS 표현과 같은 정확한 표현으로 간략화된다. 로딩 및 후속의 디스플레이 교차가 어떻게 되는지는 이하에 더 설명된다.
상기 선택된 대상물은 예를 들어 실제 특성 (색상, 텍스쳐, 재료...) 를 이용하여 디스플레이될 수도 있다. 또한, 다른 회수된 정보는 그 성명, 소유자, 또는 임의의 다른 특성과 같은 특성 트리 (도 1 참조) 내에서 또는 식별된 부분 근처에 디스플레이될 수도 있다.
도 1 에서와 동일한 그래픽 사용자 인터페이스에 디스플레이되는 모델링된 대상물을 도시하는 도 4 를 참조하여 전술한 알고리즘의 실시형태가 이하 설명된다. 바운딩 박스는 단지 관찰용으로 도 4 에서 점선으로 도시된다.
여기서, GUI (10) 는 도 1 을 참조하여 이미 설명된 것과 유사한 메뉴 및 툴바를 갖는다. GUI (10) 에서, 렌더링되는 대상물 (21 내지 24) 의 뷰가 표현된다. 그러나, 사용자는 프로세스의 시작부에서는 어떠한 대상물도 실질적으로 디스플레이되지 않는다는 것을 명심해야만 한다. 상기 뷰는 보드 (21), 전면 (f) 트럭 및 후면 (r) 트럭 (22f, 22r) 으로 구성된 스케이트보드 (20) 의 간략화된 비-결합 뷰를 디스플레이한다. 이 트럭은 각각의 샤프트 (23f, 23r; shaft) 및 좌측 (l) 휠 및 우측 (r) 휠 (24lf, 24rf, 24lr, 24rr; "lf" 는 좌측-전면, "rf" 는 우측-전면임) 을 포함한다. 각각의 바운딩 박스 (b) 는 유사한 참조번호 (21b, 22fb, 22rb, 23fb, 23rb, 24lfb, 24rfb, 24lrb 및 24rrb) 로 도시된다. 특히, 이 박스들의 몇몇은 단말기 노드, 예를 들어, 퓔, 샤프트 및 보드에 대응하고, 다른 박스들은 부품의 몇몇 어셈블리 (예를 들어, 트럭) 에 대응한다. 상기 박스는, 전술한 바와 같이, 바람직하게는 구축-시간 프로세스 도중의 생산품 구조 정의에 따라서 계산된다.
동작시에, 참조 포인트 (32) 를 포함하는 그리드가 정의되고, 위치는 그리드 정의로부터 결정된다. 이 예시에서, 상기 포인트 (32) 는 스케이트 보드의 좌측-전면 휠 (24lf) 에 대응하는 위치의 스크린에 위치된다.
다음으로, 이 방법에 따라서, 데이터베이스의 질의가 트리거된다. 뷰포 인트 및 포인트 (32) 의 위치를 통해서 통과하는 선이 전술된 바와 같이 계산된다. 다음으로, 스케이트보드를 형성하는 세트 (20) 의 모든 산물 예시가 스캐닝된다. 이 예시에서, 교차가 (전면 트럭 (22f) 에 대응하는) 박스 (22fb) 를 통해서 발견되기 때문에, 이 루틴은 박스 (22f) 의 시스템 좌표로의 스위칭을 계속한다. 비-교차된 박스가 훼손된다.
다음으로, "으로 구성된" 관계로 인해서, 상기 선이 임의의 박스 (23fb, 24rfb 및 24lfb) 를 교차하는지의 여부를 테스트한다. 교차는 예를 들어, 참조 "샤프트" 로 예시되는 전면 샤프트 및 예를 들어, 참조 "휠" 로 예시되는 좌측 휠에 대응하는, 즉, 박스 (23fb 및 24lfb) 로 발견된다. 다음으로, 계층적인 산물은 어떤 그 이상의 예시도 교차된 예시를 구성하기 위해 발견되지 않는 것에 따라서, 정지한다. 그 후, 루틴은 뷰포인트에 대한 각각이 거리를 비교하고, 만약 정확한 기준이 설정되는 경우, 마지막으로 디스플레이되는 부품으로서 휠 (24lf) 를 반환한다. 본 발명에 따르면, 시스템은 상기 부품 선택된 부품과 관련되는 가능한 몇몇 또는 모든 데이터의 표현을 데이터베이스로부터 회수한다.
데이터베이스에 저장된 생산품 구조 정의에 따라서, 질의의 결과는 발생, 즉, 예시적인 경로이다. 이에 관하여, 사전의 예에서, 질의의 결과는 간단하게 전면 좌측 휠 (24lf) 이 아니지만, 참조 "트럭" 의 "전면 트럭" 예시에서, 참조 "휠" 의 "좌측 휠" 예시이다.
일 실시형태에서, 식별된 부품의 그 이상의 선택 (예를 들어, 간단한게 클릭함으로써) 은, 그 내부에서 렌더링된 선택된 부품을 통해서, 편집에 준비하여, 편 집 윈도우를 개방할 수도 있다.
다른 실시형태에서, 사용자는 이미 개방된 편집 윈도우에서 선택된 부품을 첨가하기 위해 "첨가" 명령을 실행하거나, 또는, 뷰잉 세션 등에 선택된 부품을 첨가하는 것을 고려할 수도 있다.
따라서, 도 2 를 참조하여 도시된 프로세스는 사전-선택 방법으로 간주될 수 있고, 대상물의 최종 선택은 단지 식별된 대상물을 포인팅하는 포인터의 활성하에서만 수행된다.
도 4 의 예시는 이해의 목적으로 매우 명백하게 간단하다. 그러나, 도 2 의 플로우 차트를 다시 참조하여, 수개의 경우에서, 바운딩 박스가 발견되고, 추가적인 체계는 박스들을 분명하게 구별하기 위해 구현될 수도 있다. 특히, 수개의 3D 화소는 선을 교차하도록 발견되고, 뷰포인트에 가장 가까운 것은 선택된 사용자 등으로서 식별될 수 있다.
따라서, 일 실시형태에서, 상기 프로세스는 사용자로 하여금 데이터베이스로부터 편집에 대해 준비된 부품을 직접적으로 선택하고 회수하게 한다. 포인트 위치와 그 부품 사이의 상관성만이 요구되고; 따라서 부품은 빠르게 회수된다. 그 결과, 그 부품이 디스플레이를 위해 로딩될 수도 있다. 이러한 접근법은 더욱 가변적이므로, 경량 (light) 의 디바이스 (퍼스널 컴퓨터) 에서의 3D 네비게이션에서 3D 데이터로 접근하는 것을 가능하게 한다.
일 실시형태에서, 데이터베이스의 신규의 질의가 뷰포인트가 변경되는 매 시간마다 트리거된다.
이상, 프로세스의 기초 단계는 뷰에서 결정된 단일의 위치에 관하여 설명되었다. 이제 프로세스는 복수의 위치가 이용되는 구동-시간에서 발생하는 단계를 도시하는 도 5a 내지 도 5h 를 참조하여 설명된다.
전술한 바와 같이, 프로세스는 구축-시간 및 구동-시간으로 분해될 수도 있다. 통상적으로, 생산품의 인덱스가 설계되고 (대상물들 사이에서 관계를 형성), 바운딩 박스들은 도 4 를 참조하여 프로세스의 효율성을 위해 구축-시간 도중에 저장된다. 몇몇 PLM 데이터의 중복이 더욱 빠른 3D 검색를 가능하게 하기 위해 이용될 수도 있다. 상기 중복은 저장된 PLM 모델과 동일한 구조인 것이 바람직하다.
그러나, 이와 다르게, 필터링이 구동시간에 행해질 수 있는 것과 같이, 데이터베이스에 저장된 생산품 구조당 하나의 인덱스를 생성할 필요는 없다는 것이 명시된다.
도 5a 내지 도 5h 는 구동-시간을 더욱 상세하게 도시한다.
도 5a 를 참조하여: 렌더링되는 대상물의 뷰 (110) 는 설명을 완성하는 목적으로 도시된다. 상기 대상물은 아직 도시되지 않았다. GUI 의 상세한 설명은 명확성을 위해 생략되었다. 대상물과 대상물의 세트는 도 4 를 참조하여 설명된 세트 (20) 및 대상물 (21 내지 24) 에 대응한다. 상기 대상물은 각각의 바운딩 박스를 통해서 더 도시된다. 또한, 참조는 명확성을 위해 생략되었다. 도 5a 는 렌더링되는 상기 뷰 상의 뷰포인트가 식별되는 단계 (S200) 에 도시된다. 뷰포인트는 사용자에 의해 동적으로 정의 (즉, 실시간 변형됨) 될 수 있다. 따 라서, 가상 카메라가 완성되는 것이 가능하다.
다음으로, 단계 (S210) 및 도 5b 를 참조하여, 복수의 위치 (32a 내지 32i) 가 뷰 내에서 결정된다. 전술한 바와 같이, 상기 위치는 그리드에서 결정될 수 있고, 그 자신은 뷰 내에 정의된다. 그러나, 그리드를 이용하는 경우 프로세스는 그리드 스캔 프로세스를 참조된다. 또한, 상기 위치를 결정하는 것은 뷰포인트의 가능한 동적인 정의에 따라서 동적으로 수행될 수 있다.
현재의 관점에서, 관찰하는 눈과 예를 들어 그리드에 대응하는 스크린 픽셀의 세트 사이의 선의 리스트가 계산된다. 다음으로, 상기 선은 전술한 단계에 따라서 처리된다. 따라서, 당업계의 전문용어를 이용하여, 피크 질의의 루프 (loop) 가 수행된다.
도 5b 에서 볼 수 있는 그리드로부터, 데이터베이스를 검색하는 것은, 대응 바운딩 박스와 직면되는 것과 같이, 몇몇 포인트 위치가 보드 (도 4 의 참조번호 (21)) 에 속한다는 것을 포함한다. 이들은 포인트 (32a, 32d, 32e, 32h 및 32i) 이다 (따라서, 전부 5 개). 다른 포인트 (32b) 는 좌측 전면 휠에 속한다 (도 4 의 참조번호 (23lf) 참조). 따라서, 제 1 스캔의 완성하에서, 관련 부품이 식별되고, 그 리스트가 데이터베이스에 링크된 PLM 서버에서 반환된다.
다음으로, 도 5c 내지 도 5d 를 참조하여, 디스플레이 루틴이 개시된다. 모델링된 대상물은 증분적으로 디스플레이되고, 이는 뷰 내에서 즉각적인 디스플레이를 허용한다. 또한, 전술한 바와 같이, 더욱 큰 대상물은 그리드의 포인트가 직면하는 더 큰 기회를 갖는다. 따라서, 가장 분별가능한 대상물이 먼저 디스 플레이된다. 이 예에서, 보드는 후속의 디스플레이에 대해 쉽게 식별된다.
전면 좌측 휠이 또한 식별되고, 이는, 현재의 뷰포인트 하에서 가장 식별가능한 대상물은 아니다. 따라서, 그리드 스캔 프로세스는 식별된 대상물의 랭킹을 확립함으로써 가능하게 개선될 수도 있는데, 예를 들어:
- 보드 : 5 개의 카운트
- 좌측 전면 휠 : 1 개의 카운트.
터미널 부재에 관련하는 통계만이 이용된다. 그러나, 이와 다르게, 모체 노드에 관련하는 통계가 예를 들어, 전면 좌측 휠이 전면 트럭의 산물인 것을 고려할 수도 있고, 사용자는 또한 하나의 카운트를 전면 트럭으로 분배할 수도 있다.
따라서, 상기 대상물을 디스플레이하는 순서는, 가장 식별가능한 대상물, 예를 들어 보드가 먼저 사실상 디스플레이되도록 보증하기 위해, 상기 랭킹에 따라서 계산된다.
일 실시형태에서, PKM 데이터베이스는 모델링된 대상물의 디스플레이 컴포넌트를 더 저장한다. 따라서, 렌더링 단계는 식별된 모델링된 대상물의 디스플레이 컴포넌트를 스트리밍하는 단계를 포함할 수도 있다. 따라서, 디스플레이 컴포넌트는 증분적으로 디스플레이된다 (S220 - S230). 컴포넌트를 스트리밍하는 단계는 배경에서 구동될 수 있다.
상기 디스플레이 컴포넌트는 도 5c 내지 도 5d 에서 도시된 바와 같이 동일한 부품의 상이한 컴포넌트 (상이한 페이스 (face) 와 같은) 로 구성될 수도 있다. 도 5c 에서, 보드의 상부 페이스 (21uf) 는 먼저 디스플레이된다. 도 5d 에서, 측면 페이스 (21sf) 가 후속적으로 디스플레이된다.
바람직하게는, 문제의 컴포넌트는, 예를 들어, 3D 화소, 다음으로 저 분해능 트라이앵글 및 최종적으로 정확한 트라이앵글의 증가하는 정확한 서브-컴포넌트의 시퀀스로서 증분적으로 로딩된다. 이는 I/O 사용을 감소시킨다.
이와 다르게, 대상물을 증분적으로 디스플레이하고 대상물 컴포넌트를 증분적으로 스트리밍/디스플레이하는 단계는 렌더링 시간을 개선시키기 위해 서로 얽혀져 있다. 예를 들어, 대상물의 소정의 수는 제 1 스캔 도중에 식별된다. 상기 대상물을 디스플레이하는 단계는 3D 화소, 그 후, 트라이앵글을 디스플레이함으로써 시작된다. 제 2 스캔 도중에, 다른 대상물이 식별되고, 사전의 컴포넌트를 스트리밍하는 단계는 배경에서 계속된다.
또한, 사용자는 현재의 뷰포인트에 의존하여, 몇몇 채택 로딩을 사용할 수도 있다. 사용자는 컬링 기술 (culling technique) 을 더 사용할 수도 있다 (뷰포인트 컬링, 교합 컬링, 픽셀 컬링...). 또한, 뷰포인트가 변화할 때, 피크 메모리 사용을 제한하도록 추가적인 로딩 또는 언로딩이 수행될 수 있다.
도 5e 내지 도 5f 는, 좌측 전면 휠 (24lf) 이, 예를 들어, 컴포넌트의 증분 스트리밍에 따라서 디스플레이된다 (이 예시에서, 좌측 전면 휠 (24lf) 의 외부 그 후에 측면 컴포넌트가 순차적으로 디스플레이된다).
도 5g 내지 도 5h 는, 복수의 위치를 결정하는 단계로서, 이는, 시간을 통해서 초기 그리드를 정제하는 단계 (S250 내지 S260) 를 포함한다. 따라서, 신규의 그리드가 계산되고, 신규의 선 질의 (따라서, 신규 스캔) 가 수행되고, 신규의 카운트 통계가 반환되고, 사전의 언로딩 부분을 디스플레이하게 한다 (예를 들어, 스케이트의 후면 우측 휠 (24rr)).
또한, 다양한 그리드 분해능이 스크린 영역에 대해 국부적인 통계에 의존하여 이용될 수도 있다. 이는, 스크린 스캔의 수렴을 개선되는 것을 도울 수도 있다.
또한, 모델링된 대상물 (예를 들어, 스캔/선 질의) 을 식별하고, 증분적으로 디스플레이 (예를 들어, 3D 디스플레이) 하는 단계는 시간 기준에 따라서 다르게 수행된다. 예를 들어, 선은 300ms (그리드 정제를 포함) 도중에 계산되고, 쌓여진 결과는 다시 전송되는 결과를 도출한다. 시간 기준은 뷰포인트 변화의 "속도" 에 따라서 스케일링이 가능할 수도 있다. 이는, 현재의 뷰포인트를 통해서 부품 식별에 대해 매치되는 것을 허용한다.
따라서, 그리드 분해능이 후속으로 정제될 수도 있다. 복합의 스크린 스캔은 이에 따라서 수행되고, 시간에 따라서 정제되는 테스트된 픽셀의 그리드가 구축된다. 먼저, 스캔은 가장 식별가능한 대상물을 빨리 찾는다.
통상적으로 테스트된 픽셀의 수는 그리드 분해능의 스퀘어로 진화한다. 따라서, 설명된 프로세스를 통해서 즉각적인 디스플레이를 허용하고, 수렴은 결과적으로 느리다. 따라서, 스크린에서 최종의 그리드 분해능보다 작은 대상물의 몇몇은 반환이 되지 않을 수도 있다.
다양한 방법으로 획득된 시간의 기능으로 디스플레이 완성을 비교하는 것이 도 6 에 도시된다. 도시된 바와 같이, 전술된 그리드 스캔 프로세스 (전체 라 인) 는 몇몇 더욱 작은 부분 (사용자가 유한의 분해능을 사용하는 경우에는 더욱더 많은 부분) 을 훼손시킬 수도 있고, 그리드 스캔의 종료시점에서는 모든 부분이 디스플레이 되지 않는다. 반대로, 당업계에 공지된 프로세스 (점선 및 실선) 는 느린 시작을 나타낼 가능성이 있지만, 최종적으로 리스트 회수를 허용한다.
따라서, 도 6 을 참조하여, 상기 그리드 스캔은 디스플레이를 개시하기 위해 시간을 더욱 할애하지만 결국 대상물의 완성 리스트를 반환하는 하나 이상의 질의를 통해서 동시에 수행될 수 있는데, 필요한 경우, 뷰 내에서 가시적인 단독의 대상물로 한정한다.
특히, 상기 프로세스는 모델링된 대상물의 (공동) 리스트를 데이터베이스에서 식별하는 (공동) 단계를 포함할 수도 있다. 식별되면, 대상물의 시각화 데이터가 로딩되로, 동시에 저장되며, 디스플레이를 위해 대기할 수 있다.
따라서, 또한, 증분적인 디스플레이는 2 개의 보충적인 디스플레이 서브-단계으로서 분해된다. 제 1 서브-단계에서, 프로세스는 결정된 위치에 따라서, 즉, 전술한 그리드 스캔 프로세스에 따라서 식별된 모델링된 대상물을 디스플레이한다. 제 2 서브-단계에서, 모델링된 대상물의 디스플레이는 반환된 공동 리스트에 따라서 완성된다. 따라서, 개선된 수렴을 가지는 모든 가시적인 대상물을 결국 디스플레이하는 것이 가능하다. 제 2 서브-단계에 관련된 프로세스가 완성될 때, 제 1 서브-단계에 관련된 프로세스는 공동 리스트가 완성됨에 따라서 정지될 수 있다.
예를 들어, 제 2 서브-단계는 (상기 원용된 바와 같이) 스크린 스캔의 수렴 을 향상시키도록 스크린 영역에 대한 국부적인 통계에 의존하는 그리드 분해능을 이용하도록 간단하게 구성될 수도 있다.
또한, 제 2 서브-단계는 "뷰포인트 질의" (예를 들어, 모든 가시적인 대상물이 교합을 통해서 또는 교합하지 않고 공동 리스트에서 식별된다) 또는 "전체적인 확장" 유형의 질의 (모든 대상물이 반환된 자연 리스트) 로 구성될 수도 있다. 이러한 방법은, 예를 들어, 모든 스크린 픽셀을 테스트하지 않고 디스플레이의 완성하게 할 수도 있다.
뷰포인트 질의를 고려하여, 뷰포인트 (숨겨진 뷰포인트까지도) 에서 대상물의 전체적인 리스트를 계산하는 임의의 공지된 방법이 고려될 수 있다. 이 리스트는 단독으로 가시적인 대상물에 제한될 수도 있다. 이는 최소의 I/O 및 메모리 이용으로 디스플레이의 완성하게 한다.
도 6 에 도시된 바와 같이, 공지된 방법 (점선/실선) 은 그리드 스캔 프로세스와 비교하여 느린 개시를 가진다. 몇몇 교차점에서, 공지된 방법의 하나로 전환하는 것은, 필요한 경우, 디스플레이를 완성하기 위해 수렴 레이트를 개선하게 한다.
본 발명은 도면을 참조하여 전술한 바람직한 실시형태에 한정하지 않는다. 특히, 혼합된 표현이 GUI 내의 뷰에서 렌더링 될 때 이용될 수도 있다. 예를 들어, 상기 뷰는 대상물의 특정 세트와는 부분적으로 비-결합일 수도 있다. 특히, 이는 부품의 어셈블리를 제공할 수도 있고, 더욱 빠른 로딩을 허용한다. 이와 반대로, 다른 대상물은 그 직접적인 선택을 허용하는 각각의 특성의 관점에서 로딩될 수 있다. 이는 구축-시간에서 생산품의 특정 인덱세이션을 요구한다. 예를 들어, 몇몇 대상물의 표현은 데이터베이스로 하이퍼링크하는 하나의 세트를 포함할 수도 있다. 따라서, 하이퍼링크에 대응하는 적절한 구역을 클리킹하는 것은 각각의 부품이 직접적으로 선택되게 한다.
본 발명에 따르면, 이 솔루션으로 하여금 감소된 I/O (Input/Output) 및 메모리 소비를 통해서 큰 3D PLM 데이터의 네비게이팅을 허용한다.

Claims (19)

  1. PLM 데이터베이스의 대상물을 디스플레이하는 프로세스로서,
    모델링된 대상물을 포함하는 PLM 데이터베이스 및 그래픽 사용자 인터페이스 (100) 를 제공하는 단계;
    렌더링되는 대상물 (21 내지 24) 의 뷰 (110; view) 상에서 뷰포인트를 식별하는 단계 (S200); 및
    상기 뷰포인트에 따라서 상기 뷰를 렌더링하는 단계 (S210 내지 S270) 를 포함하고,
    상기 렌더링 단계는,
    상기 뷰 내에서 복수의 위치 (32a 내지 32i) 를 결정하는 단계 (S210);
    상기 결정된 위치에 따라서, 그 내부에서 상기 PLM 데이터베이스를 검색하고 모델링된 대상물 (21 내지 24) 을 식별하는 단계; 및
    상기 그래픽 사용자 인터페이스 내에서 상기 뷰 (110) 를 렌더링하도록 식별된 상기 모델링된 대상물 (21 내지 24) 을 증분적으로 디스플레이하는 단계 (S220 내지 S270) 를 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  2. 제 1 항에 있어서,
    상기 뷰포인트를 식별하는 단계 이전에,
    사용자에 의해 상기 뷰포인트의 동적 정의를 수신하는 단계를 더 포함하고,
    상기 복수의 위치를 결정하는 단계는 상기 뷰포인트의 상기 사용자 정의에 따라서 동적으로 수행되는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 위치는 상기 뷰 내에서 정의된 그리드 (32a 내지 32i) 로부터 결정되는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  4. 제 3 항에 있어서,
    상기 복수의 위치를 결정하는 단계는, 시간에 따라서 상기 그리드를 정제하는 단계 (S250 내지 S260) 를 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 PLM 데이터베이스는 상기 모델링된 대상물 (21 - 24) 의 디스플레이 컴포넌트 (21uf, 21sf) 를 더 포함하고,
    상기 렌더링 단계는,
    상기 식별된 모델링된 대상물의 디스플레이 컴포넌트를 스트리밍하는 단계 (S220 내지 230, SS240 내지 250) 를 더 포함하고,
    상기 렌더링 단계에서, 상기 증분적으로 디스플레이하는 단계는,
    상기 디스플레이 컴포넌트 (21uf, 21sf) 를 증분적으로 디스플레이하는 단계 (S220 내지 S230) 를 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 모델링된 대상물을 식별하고 증분적으로 디스플레이하는 단계는, 시간 기준에 따라서 교대로 (alternatively) 수행되는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    상기 렌더링 단계는,
    상기 모델링된 대상물을 식별하는 단계에서 식별된 대상물 (21 내지 24) 의 랭킹을 확립하는 단계를 더 포함하고,
    상기 모델링된 대상물을 증분적으로 디스플레이하는 단계는 상기 랭킹에 따라서 수행되는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 PLM 데이터베이스를 검색하고, 모델링된 대상물을 식별하는 단계를 연속적으로 포함하는 단계는,
    상기 PLM 데이터베이스 내에서 상기 뷰포인트에 따라 상기 뷰에서 가시적인 모델링된 대상물 (21 내지 24) 의 리스트를 식별하는 단계를 더 포함하고,
    상기 증분적으로 디스플레이하는 단계는,
    상기 결정된 위치에 따라 식별된 상기 모델링된 대상물을 디스플레이하는 단계; 및
    상기 리스트에 따라서 상기 모델링된 대상물의 상기 디스플레이를 완성하는 단계를 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    상기 PLM 데이터베이스를 검색하고 모델링된 대상물을 식별하는 단계는,
    뷰포인트 및 정의된 하나 이상의 위치 (32a 내지 32i) 를 통해서 통과하는 선을 계산하는 단계를 더 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  10. 제 9 항에 있어서,
    상기 PLM 데이터베이스를 검색하고 모델링된 대상물을 식별하는 단계는,
    상기 계산된 선을 교차하는 각각의 모델링된 대상물 (21, 22, 23, 24) 의 하나 이상의 바운딩 체적 (21b, 22b, 23b, 24b) 을 식별하는 단계를 더 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  11. 제 10 항에 있어서,
    교차하는 바운딩 체적에 대응하는 상기 대상물들 중에, 상기 뷰포인트에 가 장 가까운 대상물을 식별하는 단계를 더 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  12. 제 10 항 또는 제 11 항에 있어서,
    상기 PLM 데이터베이스를 검색하는 단계 이전에,
    상기 PLM 데이터베이스 내에서 각각의 모델링된 대상물의 바운딩 체적을 계산 및 저장하는 단계를 더 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  13. 제 12 항에 있어서,
    상기 바운딩 체적을 계산 및 저장하는 단계에서,
    오직 하나의 바운딩 체적만이 상기 모델링된 대상물의 복합적으로-예시된 (multi-instantiated) 대상물에 대해 저장되는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  14. 제 10 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 하나 이상의 교차하는 바운딩 체적을 식별하는 단계는, 상기 각각의 대상물 사이에서 상기 PLM 데이터베이스 내에 저장된 관계에 기초하여 반복적으로 수행되는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  15. 제 10 항 내지 제 14 항 중 어느 한 항에 있어서,
    상기 PLM 데이터베이스를 검색하는 단계 이전에,
    상기 PLM 데이터베이스 내에서 각각의 바운딩 체적의 세부분할된 바운딩 체적을 계산 및 저장하는 단계를 더 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  16. 제 15 항에 있어서,
    상기 계산된 선을 교차하는 하나 이상의 세부분할된 바운딩 체적을 식별하는 단계를 더 포함하는, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  17. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 모델링된 대상물을 디스플레이하는 단계는, 상기 모델링된 대상물의 3 차원 표현을 디스플레이하는 단계를 포함하고,
    상기 3 차원 표현은 상기 대상물을 편집하기 위해 사용자-선택가능한, PLM 데이터베이스의 대상물의 디스플레이 프로세스.
  18. 모델링된 대상물을 포함하는 PLM 데이터베이스 내에서 대상물을 선택하는 장치로서,
    제 1 항 내지 제 17 항 중 어느 한 항에 기재된 프로세스의 단계들을 수행하는 수단을 포함하는, PLM 데이터베이스 내의 대상물 선택 장치.
  19. 모델링된 대상물을 포함하는 PLM 데이터베이스에서 대상물을 선택하기 위한 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램으로서,
    컴퓨터로 하여금 제 1 항 내지 제 17 항 중 어느 한 항에 기재된 프로세스의 단계들을 취하도록 하기 위한 코드 수단을 포함하는, 컴퓨터 프로그램.
KR1020060137971A 2005-12-30 2006-12-29 Plm 데이터베이스의 오브젝트를 디스플레이하는 방법 및 그 방법을 구현하는 장치 KR101333865B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
EP05028720.0 2005-12-30
EP05028721.8 2005-12-30
EP05028720.0A EP1804183B1 (en) 2005-12-30 2005-12-30 Process for selecting objects in a PLM database and apparatus implementing this process
EP05028721.8A EP1804184B1 (en) 2005-12-30 2005-12-30 Process for selecting an object in a PLM database and apparatus implementing this process
EP06291228.2A EP1804187B1 (en) 2005-12-30 2006-07-28 Process for displaying objects in a PLM database and apparatus implementing this process
EP06291228.2 2006-07-28

Publications (2)

Publication Number Publication Date
KR20070072416A true KR20070072416A (ko) 2007-07-04
KR101333865B1 KR101333865B1 (ko) 2013-11-27

Family

ID=37758754

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060137971A KR101333865B1 (ko) 2005-12-30 2006-12-29 Plm 데이터베이스의 오브젝트를 디스플레이하는 방법 및 그 방법을 구현하는 장치

Country Status (5)

Country Link
US (1) US8013854B2 (ko)
EP (1) EP1804187B1 (ko)
JP (1) JP5230095B2 (ko)
KR (1) KR101333865B1 (ko)
CA (1) CA2571954C (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100132926A (ko) * 2009-06-10 2010-12-20 다솔 시스템므 Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치
KR20130004066A (ko) * 2011-05-11 2013-01-09 다솔 시스템므 기하학적 3차원 모델링된 오브젝트를 디자인하는 방법
KR20130060162A (ko) * 2011-11-29 2013-06-07 다솔 시스템므 복수의 3d 곡선들로부터의 표면 생성

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000022551A1 (en) 1998-10-13 2000-04-20 Chris Cheah Method and system for controlled distribution of information over a network
US8773425B2 (en) * 2007-05-01 2014-07-08 M.E.P. CAD Inc. Methods and apparatuses for proposing resolutions to conflicts in a CAD drawing with reflections
JP5385921B2 (ja) * 2008-01-17 2014-01-08 ダッソー・システムズ・ソリッドワークス・コーポレーション 可視率を利用するモデルのサイズ縮小
US8924881B2 (en) * 2008-02-24 2014-12-30 The Regents Of The University Of California Drill down clinical information dashboard
GB0810205D0 (en) 2008-06-04 2008-07-09 Advanced Risc Mach Ltd Graphics processing systems
US8350846B2 (en) * 2009-01-28 2013-01-08 International Business Machines Corporation Updating ray traced acceleration data structures between frames based on changing perspective
US10152198B2 (en) * 2009-12-15 2018-12-11 Dassault Systèmes Method and system for editing a product assembly
JP5434651B2 (ja) * 2010-02-12 2014-03-05 富士通株式会社 干渉判定装置、干渉判定方法および干渉判定プログラム
EP2565583B1 (en) * 2011-08-29 2018-08-01 Harman Becker Automotive Systems GmbH Navigation device, method of outputting a map, and method of generating a database
US8725763B2 (en) 2011-11-23 2014-05-13 Siemens Product Lifecycle Management Software Inc. Massive model visualization with spatial indexing
US9761204B1 (en) * 2014-09-30 2017-09-12 Cadence Design Systems, Inc. System and method for accelerated graphic rendering of design layout having variously sized geometric objects
US10614632B2 (en) 2015-04-23 2020-04-07 Siemens Industry Software Inc. Massive model visualization with a product lifecycle management system
KR102495387B1 (ko) * 2015-06-05 2023-02-01 대우조선해양 주식회사 조선용 캐드 프로그램이 미설치된 클라이언트 장치에 캐드 서비스 제공을 위한 시스템 및 방법
EP3179451B1 (en) * 2015-12-08 2019-05-29 Dassault Systèmes A computer-implemented method for drawing a polyline in a three-dimensional scene
KR20180051288A (ko) * 2016-11-08 2018-05-16 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
EP3822920A1 (en) 2019-11-18 2021-05-19 Dassault Systèmes Methods for localizing a digitally-modeled object with respect to a digitally-modeled space and for performing volumetric queries

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202671A (en) * 1989-10-24 1993-04-13 International Business Machines Corporation Pick function implementation in a parallel processing system
EP0439260B1 (en) 1990-01-23 1998-08-19 Hewlett-Packard Company Distributed processing apparatus and method for use in global rendering
JPH0554087A (ja) * 1991-08-23 1993-03-05 Fujitsu Ltd 図形処理方式
US5563990A (en) * 1992-10-30 1996-10-08 International Business Machines Corporation Method and apparatus for processing a pick event
US6219055B1 (en) 1995-12-20 2001-04-17 Solidworks Corporation Computer based forming tool
JPH1091057A (ja) * 1996-09-17 1998-04-10 Mitsubishi Electric Corp 技術相談支援システム
US5982382A (en) 1996-11-12 1999-11-09 Silicon Graphics, Inc. Interactive selection of 3-D on-screen objects using active selection entities provided to the user
US6057847A (en) * 1996-12-20 2000-05-02 Jenkins; Barry System and method of image generation and encoding using primitive reprojection
JP3184785B2 (ja) * 1997-07-23 2001-07-09 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 三次元形状モデル送信方法及び装置、三次元形状モデル圧縮方法及び装置、三次元形状モデル表示方法及び装置
US6055328A (en) * 1998-01-16 2000-04-25 Cognex Corporation Analyzing an acquired arrangement of object locations
SG80633A1 (en) 1998-07-18 2001-05-22 Univ Singapore System and method for creating bounding volume hierarchies utilizing model simplification
US7196702B1 (en) * 1998-07-23 2007-03-27 Freedesign, Inc. Geometric design and modeling system using control geometry
US6377257B1 (en) * 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
DE10031041A1 (de) * 2000-06-26 2002-01-03 Autodesk Inc Bereitstellen einer Zugriffsmöglichkeit auf Anwendungsdatenelemente eines Anwendungsprogramms
US20020191034A1 (en) * 2000-06-28 2002-12-19 Sowizral Henry A. Size conditioned visibility search system and method
JP2002077562A (ja) 2000-08-31 2002-03-15 Canon Inc 画像通信装置
US6636211B2 (en) * 2000-12-15 2003-10-21 Dassault Systemes CAD/CAM feature tree with manipulatable 3D miniatures
US20020175257A1 (en) 2001-05-25 2002-11-28 Yen Jun Huei Tool holding and testing device
JP4776834B2 (ja) * 2001-09-19 2011-09-21 東芝医用システムエンジニアリング株式会社 画像処理装置
US7366643B2 (en) * 2003-03-20 2008-04-29 Delphi Technologies, Inc. System, method, and storage medium for determining a packaging design for a container
US7103434B2 (en) * 2003-10-14 2006-09-05 Chernyak Alex H PLM-supportive CAD-CAM tool for interoperative electrical and mechanical design for hardware electrical systems
US8042056B2 (en) 2004-03-16 2011-10-18 Leica Geosystems Ag Browsers for large geometric data visualization
US8031190B2 (en) * 2004-05-03 2011-10-04 Microsoft Corporation Translating two-dimensional user input on three-dimensional scene

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100132926A (ko) * 2009-06-10 2010-12-20 다솔 시스템므 Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치
KR20130004066A (ko) * 2011-05-11 2013-01-09 다솔 시스템므 기하학적 3차원 모델링된 오브젝트를 디자인하는 방법
KR20130060162A (ko) * 2011-11-29 2013-06-07 다솔 시스템므 복수의 3d 곡선들로부터의 표면 생성

Also Published As

Publication number Publication date
JP2007220090A (ja) 2007-08-30
EP1804187A2 (en) 2007-07-04
KR101333865B1 (ko) 2013-11-27
US8013854B2 (en) 2011-09-06
US20070168392A1 (en) 2007-07-19
EP1804187B1 (en) 2020-09-09
CA2571954A1 (en) 2007-06-30
JP5230095B2 (ja) 2013-07-10
EP1804187A3 (en) 2013-02-20
CA2571954C (en) 2015-03-24

Similar Documents

Publication Publication Date Title
KR101333865B1 (ko) Plm 데이터베이스의 오브젝트를 디스플레이하는 방법 및 그 방법을 구현하는 장치
KR101706048B1 (ko) Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치
KR101333930B1 (ko) Plm 데이터베이스에서 오브젝트를 선택하는 방법 및 그 방법을 구현하는 장치
US7620638B2 (en) Process for selecting an object in a PLM database and apparatus implementing this process
EP2439664A1 (en) Designing a modeled object within a session of a computer-aided design system interacting with a database
JP6721333B2 (ja) オブジェクトのセットの視点の選択
JP2016126794A (ja) 3dモデル化されたアセンブリ上で境界ボックスを生成すること

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161111

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171110

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181113

Year of fee payment: 6