KR20100132926A - Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치 - Google Patents

Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치 Download PDF

Info

Publication number
KR20100132926A
KR20100132926A KR1020100054595A KR20100054595A KR20100132926A KR 20100132926 A KR20100132926 A KR 20100132926A KR 1020100054595 A KR1020100054595 A KR 1020100054595A KR 20100054595 A KR20100054595 A KR 20100054595A KR 20100132926 A KR20100132926 A KR 20100132926A
Authority
KR
South Korea
Prior art keywords
objects
assembly
database
model
identified
Prior art date
Application number
KR1020100054595A
Other languages
English (en)
Other versions
KR101706048B1 (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
Application filed by 다솔 시스템므 filed Critical 다솔 시스템므
Publication of KR20100132926A publication Critical patent/KR20100132926A/ko
Application granted granted Critical
Publication of KR101706048B1 publication Critical patent/KR101706048B1/ko

Links

Images

Classifications

    • 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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing
    • 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
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2008Assembling, disassembling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Architecture (AREA)

Abstract

본 발명은 제품 라이프사이클 관리 데이터베이스의 객체의 어셈블리를 디스플레이하기 위한 프로세스, 컴퓨터 프로그램 및 장치에 관한 것이다. 본 발명에 따른 방법은 데이터베이스에 대한 액세스를 제공하는 단계, 데이터베이스에서 객체들의 어셈블리를 선택하는 단계 (S20), 상기 어셈블리 상의 복수의 뷰포인트들을 식별하는 단계 (S60), 복수의 식별된 뷰포인트들에 따라 상기 어셈블리의 객체들 세트를 데이터베이스로부터 검색하는 단계 (S80), 객체들 세트 중 모든 검색된 객체들에 대해 상기 어셈블리의 모델을 연산하는 단계 (S100), 및 모델의 뷰를 디스플레이하는 단계 (S110) 를 목표로 하고, 임의의 디스플레이된 뷰는 검색하는 단계에서 검색된 객체에서 시작하여 국부적으로 연산된다.

Description

PLM 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치{PROCESS, PROGRAM AND APPARATUS FOR DISPLAYING AN ASSEMBLY OF OBJECTS OF A PLM DATABASE}
본 발명은 컴퓨터 구현 프로세스, 프로그램 분야에 관한 것이고, 보다 구체적으로는 모델링된 객체를 나타내는 데이터의 데이터베이스를 포함하는 제품 라이프사이클 (lifecycle) 관리 솔루션에 관한 것이다.
상표 CATIA 로 DASSAULT SYSTEMES 에 의해 제공된 것과 같은, 부품 또는 부품의 어셈블리의 설계에 대한 다수의 시스템 및 솔루션이 시장에 제공된다. 이들 소위 컴퓨터 보조 설계 (CAD) 시스템은 사용자가 객체 또는 객체의 어셈블리의 복잡한 3 차원 (3D) 모델을 구성하고, 조작하며 바라보는 것을 허용한다. CAD 시스템은, 면 (face) 을 갖는 특정 경우에서 에지 또는 라인을 이용하여 모델링된 객체의 표현을 제공한다. 라인 또는 에지는 다양한 방식, 예를 들어 NURBS (non-uniform rational B-splines) 으로 표현될 수도 있다. 이들 CAD 시스템은, 본질적으로 지오메트리 (geometry) 의 명세 (specification) 인 모델링된 객체로서 부품 또는 부품의 어셈블리를 관리한다. 특히, CAD 파일은 지오메트리가 생성되는 명세를 포함하고, 이 지오메트리로부터 표현 (representation) 이 생성된다. 명세, 지오메트리 및 표현은 단일의 CAD 파일 또는 다수의 CAD 파일 내에 저장될 수도 있다. CAD 시스템은 모델링된 객체를 설계자에게 표현하기 위한 그래픽 툴을 포함하고; 이들 툴은 복잡한 객체들의 디스플레이에 전용되며 - CAD 시스템에서 객체를 표현하는 파일의 통상적인 크기는 부품에 대해 메가-바이트의 범위 내에 있고, 어셈블리는 수천 개의 부품을 포함할 수도 있다. CAD 시스템은 전자 파일에 저장되는 객체의 모델을 관리한다.
또한, 상표 CATIA, ENOVIA 및 DELMIA 로 DASSAULT SYSTEMES 에 의해 제공된 제품들의 세트와 같은 PLM (product lifecycle management) 솔루션이 존재하고; 이들 솔루션은 제품 엔지니어링 지식을 구성하는 엔지니어링 허브, 제조 엔지니어링 지식을 관리하는 제조 허브, 및 엔지니어링 및 제조 허브 양쪽으로의 전체적인 통합 및 접속을 가능하게 하는 기업 허브를 제공한다. 시스템 모두는, 제품, 프로세스, 자원을 연결하는 개방 객체 모델을 전달하여, 최적의 제품 정의, 제작 준비, 생산 및 서비스를 구동하는 동적인 지식-기반 제품 생성 및 결정 지원을 가능하게 한다.
이러한 PLM 솔루션은 제품의 관련 데이터베이스를 포함한다. 일반적으로, 데이터베이스는 신속한 탐색 (search) 및 검색 (retrieval) 을 위해 조직된 데이터의 집합 (통상적으로, 데이터 및 데이터 간의 관계) 으로 정의된다. 데이터베이스는 다양한 데이터-프로세싱 동작과 관련된 데이터의 저장, 검색, 변형, 및 삭제를 용이하게 하도록 구조화된다. 일반적으로, 데이터베이스는 하나 이상의 필드 (field) 로 구성되는 각각의 레코드로 분류될 수 있는 파일 또는 파일의 세트로 구성된다. 필드는 데이터 저장의 기본적인 유닛이다. 사용자들은 주로 질의 (query) 를 통해서 처음으로 데이터베이스 정보를 검색한다. 키워드를 이용하고 명령을 분류함으로써, 사용자는 이용되고 있는 데이터베이스 관리 시스템의 규칙에 따라서 데이터의 특정 집합에 대한 기록을 검색 또는 생성하기 위해 많은 레코드에서 필드를 탐색, 재배열, 그룹화 및 선택할 수 있다.
PLM 솔루션을 이용할 때, 사용자에게 기본적으로 필요한 것은 수천 개의 객체/부품으로 이루어진 복잡한 제품을 시각화하는 것이고, 이는 상이한 뷰 (view) 또는 상이한 뷰포인트 (가상의 카메라) 에 따른 것이다. 사용자는 디스플레이되는 모델링된 객체를 바라보는 동안 뷰포인트를 현저하게 변형시킬 수도 있다 (예를 들어, 엔지니어는 그의 고객에게 제품의 오버뷰 (overview) 를 보여주기를 원할 수도 있다).
이 문제에 대한 표준 솔루션은, 모델의 3 차원 그래픽 표현 및 지오메트리, 제한, 또한, 다른 객체로의 하이퍼링크와 같이 상기 객체에 관한 모든 정보를 포함하는, 상기 객체의 어셈블리에 대응하고, PLM 데이터베이스 상에 저장된 전체 모델을 클라이언트 컴퓨터 메모리 내에서 로딩시키는 것이다. 따라서, 개별적인 부품의 선택이 가능하다. 그러나, PLM/CAD 의 분야에서, 중요한 문제는 시각화 데이터의 포괄적인 양이 클라이언트 컴퓨터 메모리 내에 맞추기 위해서 너무 크거나 적어도 신속한 디스플레이를 가능하게 하기 위해 너무 크다는 것이다. 따라서, CAD 제품 (메모리의 수 기가-옥텟 (giga-octet) 을 나타내는 수백 만개의 부품을 포함할 수 있는 비행기와 같은 제품) 을 표현하는 파일의 통상적인 크기로 인해, 상기 제품의 뷰의 렌더링 (rendering) 시간은 기능을 상실할 정도로 길 수도 있다. 또한, 전체 모델을 로딩하고/하거나 개별적인 부품을 선택하는 것이 사용자에게 항상 필요하지는 않다 (예를 들어, 세일즈 엔지니어만이 제품의 오버뷰를 그의 고객에게 보여줄 필요가 있다).
다른 솔루션은 전체 모델을 로딩하지 않고 PLM 데이터베이스에서 네비게이팅하는 것에 있다. 이 경우, 렌더링될 객체의 뷰 상의 뷰포인트가 식별된다. 그 후, 뷰는 식별된 뷰포인트에 따라 렌더링된다. 이를 위해, 뷰에서의 복수의 로케이션이 결정되고, 이는 예를 들어 그리드에 따라 획득된다. 다음으로, 데이터베이스가 질의되고, 상기 로케이션에 따라 모델링된 객체가 식별된다. 통상적으로, 뷰포인트 및 로케이션을 통과하는 광선들이 캐스트 (cast) 되고, 광선들이 교차하는 모델링된 객체가 식별된다. 한편, 모델링된 식별된 객체는, 모델링된 객체의 3 차원 뷰를 렌더링하도록 그래픽 사용자 인터페이스에서 증분적으로 디스플레이된다.
그러나, 이 솔루션은 여러 결점을 나타낸다. 첫 번째, 전체 프로세스는 각각의 새로운 뷰포인트에 대해 반복되어야 한다. 클라이언트 컴퓨터 상의 사용자에 의해 몇몇 새로운 뷰포인트들이 선택될 때, PLM 데이터베이스는 수 차례 질의되고, PLM 데이터베이스를 호스팅하는 서버의 자원들 (메모리, CPU...) 이 연속적으로 이용되고, 이것은 이용 가능한 서버의 자원의 고갈을 초래할 수 있다. 결과적으로, 질의에 대한 응답이 제 시간에 제공될 수 없고, 그 결과 모델링된 객체의 3 차원 뷰가 디스플레이될 수 없다. 따라서, 모델 주변의 비주얼 네비게이션, 즉, 수개의 연속적인 뷰포인트에 따른 모델의 시각화가 연속적인 뷰 래그 (lag) 의 디스플레이와 같이 사용하기 쉽지 않다; 2 개의 뷰 간의 전이가 즉각적이지 않거나 준-즉각적이다. 따라서, 비주얼 네비게이션은 유동성 및 인체공학이 부족하고, 사용자에게 시간 소모적이다. 또한, 새로운 선택된 뷰포인트가 미리 선택되었더라도, 전체 프로세스는 여전히 반복되어야 한다. 실제로, 클라이언트 컴퓨터의 자원이 제한된다 (예를 들어, 새로운 뷰가 디스플레이됨에 따라 클라이언트의 메모리가 클리어된다).
부가적으로, 사용자의 클라이언트 컴퓨터는 로컬 영역 네트워크 (LAN) 또는 광대역 네트워크 (WAN) 와 같은 컴퓨터 네트워크를 통해 제품 데이터 관리 (PDM) 시스템을 통해 통신할 수도 있다. 이러한 상황은, 그 사무실 밖에 위치한 세일즈 엔지니어가 고객에게 제품 (예를 들어, 3D 모델) 을 보여주기를 원할 때 발생할 수도 있다. 클라이언트 컴퓨터에 의해 수행된 요청은 네트워크를 통해 전달되고, PDM 시스템에 의해 제공된 응답은 네트워크에 의해 또한 전송된다. 또한, 전체 프로세스의 반복이 PDM 시스템의 자원의 막대한 소모 뿐만 아니라 네트워크 대역폭의 큰 소모를 수반한다. 그 결과, 네트워크가 혼잡해지고, 레이턴시, 지연, 지터 (jitter), 패킷 손실 확률 (packet dropping probability), 큐잉 지연 (queuing delay), 비트 에러 레이트와 같은 다른 네트워크 파라미터들이 열화된다. 네트워크가 압도되고, 그 전체 성능이 심하게 감소된다.
따라서, 간략하게 전술된 기존 솔루션의 한계에 따라, 디스플레이를 제공하기 위해 필요한 연산 및/또는 네트워크 자원을 감소시키는, 제품 라이프사이클 관리 데이터베이스의 객체의 어셈블리를 디스플레이하기 위해 개선된 솔루션이 필요하다.
따라서, 본 발명은 제품 라이프사이클 관리 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스를 제공한다. 본 프로세스는,
- 데이터베이스에 대한 액세스를 제공하는 단계;
- 데이터베이스에서 객체의 어셈블리를 선택하는 단계;
- 상기 어셈블리 상의 복수의 뷰포인트를 식별하는 단계;
- 복수의 식별된 뷰포인트에 따라 상기 어셈블리의 객체들 세트를 데이터베이스로부터 검색하는 단계;
- 객체들 세트 중 모든 검색된 객체들에 대한 상기 어셈블리의 모델을 연산하는 단계; 및
- 모델의 뷰를 디스플레이하는 단계로서, 임의의 디스플레이되는 뷰는 검색하는 단계에서 검색된 객체들에서 시작하여 국부적으로 연산되는, 상기 디스플레이하는 단계를 포함한다.
본 발명에 따른 프로세스는 다음의 특징들 중 하나 이상을 포함할 수도 있다:
- 객체는 3 차원 모델링된 객체이고, 객체들의 어셈블리의 연산된 모델은 그래픽 사용자 인터페이스 상에 디스플레이된 3 차원 모델이다;
- 식별된 뷰포인트들은 객체의 어셈블리 밖에 위치한다;
- 검색된 객체들 세트의 객체들은 뷰포인트에서 보인다;
- 객체들 세트를 데이터베이스로부터 검색하는 단계 전에, 일 단계는 식별된 뷰포인트 및 객체들의 어셈블리의 객체를 통과하는 광선들을 연산한다;
- 복수의 뷰포인트를 식별하는 단계는 객체들의 어셈블리의 바운딩 (bounding) 볼륨의 면을 식별하는 단계, 및 바운딩 볼륨의 각각의 식별된 면에 대해 적어도 하나의 뷰포인트를 식별하는 단계를 포함한다;
- 객체들 세트를 검색하는 단계 전에, 일 단계는 연산된 광선들이 교차되는 객체들의 어셈블리의 각각의 개별 객체에 대해 하나 이상의 바운딩 볼륨을 식별한다;
- 연산된 광선들은 0 도 내지 45 도의 범위의 입사각으로 식별된 면을 통과한다;
- 디스플레이하는 단계에서, 모델의 뷰는 비-연관 뷰 (non-associated view) 이다;
- 디스플레이하는 단계 전에, 일 단계는 비-연관 뷰를 형성하기 위해 검색된 객체들 세트의 객체를 집합시킨다;
- 검색된 객체들 세트의 객체들의 지오메트리가 집합된다;
- 객체들의 어셈블리를 선택하는 단계는 모델의 디스플레이되는 뷰의 정밀도를 선택하는 단계를 더 포함한다;
- 선택된 정밀도는 식별된 면 및 식별된 면의 표면 (surface) 을 통과하는 다수의 광선들 간의 비율에 비례한다;
- 정밀도는 다음들 중 하나에서 선택된다:
- 디폴트 값;
- 사용자에 의해 선택된 값;
- 네트워크의 적어도 하나의 파라미터에 따라 결정된 값;
- 컴퓨터의 적어도 하나의 파라미터에 따라 결정된 값;
- 각각의 식별된 면에 대한 광선들의 수는 선택된 정밀도에 따라 연산된다;
- 객체들의 어셈블리를 선택하는 단계는 어셈블리의 구성을 선택하는 단계를 더 포함한다;
- 객체들 세트를 데이터베이스로부터 검색하는 단계는 사용자의 보안 콘텍스트 (context) 에 따라 수행된다.
본 발명은 제품 라이프사이클 관리 데이터베이스의 객체의 어셈블리를 디스플레이하기 위해, 컴퓨터로 하여금 본 발명의 프로세스 단계들을 취하도록 하기 위한 코드 수단을 포함하는 컴퓨터 판독가능 매체 상에 저장된 컴퓨터 프로그램을 또한 제안한다.
본 발명은 또한, 제품 라이프사이클 관리 데이터베이스의 객체의 어셈블리를 디스플레이하기 위해 본 발명의 프로세스 단계들을 구현하기 위한 수단을 포함하는 장치에 관한 것이다.
비제한적인 예시의 방식에 의해 첨부된 도면을 참조하여 본 발명을 구현하는 시스템을 설명한다.
- 도 1 은 CAD 와 같은 그래픽 사용자 인터페이스의 디스플레이.
- 도 2 는 본 발명의 프로세스의 기본 단계들을 반영하는 흐름도.
- 도 3 및 도 4 는 본 발명의 일 실시형태에 따른 프로세스에 이용된 옥트리 (octree) 의 개략도.
- 도 5 는 도 1 에 따른 GUI 에서 디스플레이된 객체들 세트의 뷰의 개략도.
- 도 6 은 도 5 에 따른 객체들 세트의 바운딩 박스의 뷰의 개략도.
- 도 7 및 도 8 은 도 6 에 따른 바운딩 박스의 개략적 전면도.
- 도 9 는 도 6 에 따른 바운딩 박스의 개략적 상부 전면도.
- 도 10 은 본 발명을 수행하기 위해 사용 가능한 소프트웨어 아키텍처의 개략도.
- 도 11 은 본 발명을 수행하기 위해 구성된 사용자의 클라이언트 컴퓨터 아키텍처의 개략도.
- 도 12 는 본 발명을 수행하기 위해 구성된 네트워크 아키텍처의 일 실시형태의 개략도.
본 발명은 제품 라이프사이클 관리 (PLM) 데이터베이스의 객체의 어셈블리를 디스플레이하기 위한 프로세스에 관한 것이다. PLM 데이터베이스에 대한 액세스가 제공되고, PLM 데이터베이스에서 객체의 어셈블리가 선택된다. 통상적으로, 객체들의 어셈블리는 제품이고, 어셈블리의 객체들은 3 차원 (3D) 모델링된 객체이다. 그 다음에, 어셈블리 상에서 복수의 뷰포인트가 선택된 식별된다. 뷰포인트는 어셈블리의 뷰가 디스플레이될 수도 있는 특정 로케이션을 지칭한다. 다음으로, 선택된 어셈블리의 객체들 세트가 식별된 복수의 뷰포인트들에 따라 데이터베이스로부터 검색된다. 그 다음에, 선택된 어셈블리의 모델은 객체들 세트 중 모든 검색된 객체들에 대해 연산되고, 연산된 모델의 뷰는 디스플레이되며, 임의의 디스플레이된 뷰가 검색된 객체들 세트의 객체들에서 시작하여 국부적으로 연산된다. 통상적으로, 객체의 어셈블리의 연산된 모델은 그래픽 사용자 인터페이스 상에 디스플레이된 3 차원 (3D) 모델이다.
선택된 어셈블리의 객체들 세트는 복수의 식별된 뷰포인트에 따라 검색된다. 그 결과, 본 발명의 프로세스는 특정 뷰포인트, 예를 들어 사용자에 의해 선택된 뷰포인트에 제한되지 않는다. 유리하게, 제안된 발명은 복수의 뷰포인트를 고려한다: 선택된 어셈블리의 연산된 모델은 복수의 뷰포인트의 표현이다. 따라서, 연산된 모델에서 시작하여, 데이터베이스에서 새로운 어셈블리의 객체를 검색하지 않고, 선택된 어셈블리의 임의의 뷰를 디스플레이하는 것이 가능하다. 다시 말하면, 연산된 모델은 다수의 뷰포인트를 나타내는 단일 모델이다.
따라서, 종래 기술이 새로운 뷰 포인트가 선택될 때마다 데이터베이스를 질의하는 것을 포함하는 반면, 제안된 발명은 모델을 연산하기 위해 필요한 객체들 세트가 사용자의 클라이언트 컴퓨터에 의해 한번 검색되기 때문에 특히 유리하다. 따라서, PLM 데이터베이스 상에 수행된 요청의 수가 극적으로 감소되고, 데이터베이스를 호스팅하는 서버의 하드웨어 자원이 보존된다. 또한, 제안된 발명은 또한 네트워크의 자원을 보존한다: 다수의 요청들 대신에 단일의 요청이 객체들 세트를 검색하도록 클라이언트 컴퓨터에 의해 수행되고, 따라서 대역폭과 같은 네트워크 자원의 연산이 감소된다. 또한, 선택된 어셈블리의 더 좋은 비주얼 네비게이션이 제공된다: 일단 연산된 모델이 클라이언트 컴퓨터에 의해 연산되면, 어셈블리의 뷰는 연산된 모델에서 시작하여 디스플레이될 수 있다. 그 결과, 객체의 어셈블리의 뷰의 디스플레이는 더 빠르고, 비주얼 네비게이션은 더 유동적이고 더 원활하다.
도 1 을 참조하면, 예시된 그래픽 사용자 인터페이스 (또는 GUI; 100) 는 표준 메뉴바 (110, 120) 뿐만 아니라, 바닥 및 사이드 툴바 (140, 150) 를 갖는 통상의 CAD 형 인터페이스일 수도 있다. 이러한 메뉴바 및 툴바는 일 세트의 사용자-선택가능 아이콘을 포함하며, 각 아이콘은 공지된 바와 같이 하나 이상의 동작 또는 기능과 연관된다.
이들 아이콘들 중 몇몇은 GUI (100) 에 디스플레이되는 것과 같은 모델링된 제품 (200) 또는 제품 (200) 의 부품에 대해 편집 및/또는 작동하도록 구성된 소프트웨어 툴과 연관된다. 다음의 설명에서, "제품", "부품", "어셈블리" 등은 단순함을 위해 "제품" 으로 지칭될 수도 있다. "제품" 의 개념은 실제로 "객체" 의 개념으로 보편화될 수 있으며, 여기서, 객체는 단지 설계되는 제품의 오직 "물리적" 부품일 수 있거나, 보다 일반적으로는, 설계 프로세스에 참여하는 (그러나, 최종 제품 "내" 에 있을 필요는 없다) 임의의 소프트웨어 툴일 수 있다.
소프트웨어 툴은 작업대들 (workbenches) 로 그룹화될 수도 있다. 각 작업대는 소프트웨어 툴의 서브세트를 포함한다. 특히, 작업대들 중 하나는 모델링된 제품 (200) 의 기하학적 특성을 편집하는데 적합한 편집 작업대이다. 동작 시에, 사용자 (예를 들어, 설계자) 는, 예를 들어 객체 (200) 의 일부를 미리 선택한 후, 적절한 아이콘을 선택함으로써 동작을 개시 (예를 들어, 치수, 색 등을 변경) 하거나, 기하학적 제약을 편집할 수도 있다. 예를 들어, 통상적인 CAD 동작은 스크린 상에 디스플레이된 3D 모델링되는 객체의 펀칭 (punching) 또는 폴딩 (folding) 의 모델링이다.
GUI 는, 예를 들어 디스플레이된 제품 (200) 에 관련된 데이터 (250) 를 디스플레이할 수도 있다. 도 1 의 예에서, "특성 트리 (feature tree)" 로서 디스플레이된 데이터 (250), 및 그에 대한 3D 표현 (200) 은 브레이크 캘리퍼 및 디스크를 포함하는 브레이크 어셈블리에 관련된다. GUI 는, 편집된 제품의 동작에 대한 시뮬레이션의 트리거링 또는 디스플레이된 제품 (200) 의 다양한 속성의 렌더링을 위해, 예를 들어 객체의 3D 배향을 용이하게 하기 위한 다양한 유형의 그래픽 툴 (130, 400) 을 또한 도시할 수도 있다.
실시형태의 일 예로서, 본 발명의 프로세스는 클라이언트 컴퓨터를 포함하는 컴퓨터 네트워크 및 제품 데이터 관리 (PDM) 시스템에서 구현된다. 도 12 는 본 발명을 수행하기 위해 구성된 네트워크 아키텍처의 일 실시형태의 개략도를 나타낸다. 클라이언트 컴퓨터들은, 다수의 문헌, 관계 및 데이터의 관리를 허용하고, 가능하게는 계층적으로 상호관계된 PDM 시스템을 통해 통신한다. PDM 시스템은 예를 들어, 네트워크의 인터넷 초고속 통신망 (backbone) 에 위치할 수도 있다. 이러한 PDM 시스템은, 설계자에 의해 편집되기 쉬운 모델링된 객체에 관련된 데이터를 갖는 데이터베이스를 이용한다. 따라서, 도 12 에 나타난 바와 같이, 복수의 사용자들은 상이한 객체 (예를 들어, 부품들, 제품들 또는 부품들의 어셈블리) 에 대해 협력 방식으로 작업할 수도 있다.
또한, GUI (100) 및 연관된 CAD/CAM/CAE 애플리케이션은 클라이언트 컴퓨터 요청에 대해 또는 백그라운드 태스크로서 PLM 데이터베이스에 대한 액세스를 허용하기 위해 설계될 수도 있다. 따라서, 동작 시에, 데이터베이스를 액세스하기를 원하는 사용자는 (예를 들어, 제 1 윈도우를 최소화하고 제 2 윈도우를 최대화함으로써) 제 1 CAD 윈도우로부터 PDM 윈도우로 패스한 후 CAD 윈도우로 돌아갈 필요가 없다. 설계자에 의해 자주 수행되는 이러한 윈도우 스위칭 동작은 시간 소모적이며, 특히 CAD/CAM/CAE 의 분야에 부적합하다.
GUI (100) 는 디스플레이 및 메모리를 갖는 네트워크의 하나의 클라이언트 컴퓨터 상에서 구동된다. 예를 들어, 도 1 에 디스플레이된 참조 부호 (100) 로 식별되는 것과 유사한 GUI 는 네트워크의 다른 클라이언트 컴퓨터 상에서 구동될 수도 있다. 이들 컴퓨터는 유사한 로컬 CAD/CAM/CAE 애플리케이션, 및 보다 일반적으로는 공통 환경에서 또한 이익을 얻을 수도 있다.
이제 도 2 를 참조하면, 프로세스는 구축 시간 (단계 S10) 및 구동 시간 (단계 S20 - S110) 과 같이 광범위하게 분해된다. 구축 시간은 주로 바운딩 볼륨 연산, 및 가능하게는 객체의 인덱스의 생성에 전용된다. 그 결과, 단계 S10 은 데이터베이스, 통상적으로 PLM 데이터베이스 상에 저장된 미리-연산된 바운딩 볼륨을 다음 단계들에 제공한다. 따라서, 사용자의 클라이언트 컴퓨터는 그 자체의 바운딩 박스들을 연산할 필요가 없고, 이에 의해 시간 및 클라이언트 자원을 절약한다.
"바운딩 볼륨", 또는 바운딩 박스에 의하면, 그것은 예를 들어, 컬링 (culling) 또는 교차 테스트를 위해 객체를 둘러싸는 수학적으로 단순한 임의의 표면을 의미한다. 실제로, 객체는 3 차원 모델링된 객체들이고, 통상적인 객체의 바운딩 볼륨은 예를 들어, 정육면체, 실린더 박스 또는 구형이다. 이하에서는 바운딩 박스가 이용된다.
디스플레이될 각 개체의 바운딩 박스가 연산되고 후속하여 PLM 데이터베이스에 저장된다. 이러한 바운딩 박스는 그 대응하는 객체와 관련되어 함께 저장된다. 객체의 기하학적 정의가 이용되어 상기 박스들을 연산하는데 이용될 수 있다. 이용된 정의는 완전한 정의이거나 상기 객체들의 모자이크식 표현의 정의와 같은 단순화된 정의일 수도 있다.
바람직하게, 더 빠른 연산 시간을 초래하는 모자이크식 표현의 정의를 이용한다.
객체의 분류체계, 예를 들어 트리로서 제품을 가정하면, 예를 들어 첫 번째 연산된 박스들이 이 트리의 말단 노드에 속한다. 그 다음에, 제품 구조 정의가 이용되어, 이미 생성된 말단 박스 및 구조의 정의 덕분에 객체의 어셈블리의 박스를 연산한다 (단계 S10).
또한, 분할된 박스가 연산되고, 각각의 페어런트 (parent) 바운딩 박스와 함께 데이터베이스에 저장된다. 이 경우, 페어런트 바운딩 박스는 옥트리, 즉 각 페어런트 노드가 8 개의 차일드 (child) 노드를 갖는 트리 데이터 구조의 페어런트 노드이고, 차일드 노드들은 페어런트 노드의 공간의 볼륨을 함께 분할한다. 따라서, 트리의 각 노드는 입방형 볼륨, 예를 들어 세분된 바운딩 볼륨을 나타낸다. 원하는 해상도에 따라 몇몇 세분이 고려될 수 있다 (페어런트, 차일드, 차일드의 차일드 등).
또한, 바람직하게는 단지 하나의 바운딩 박스가 객체들 세트 중 다수의 예시된 객체들을 위해 저장된다. 즉, 바운딩 박스는 단지 참고를 위해 연산된다. 이 경우, 동일한 기준의 예들은 위치 매트릭스 (또는 그 링크) 와 함께 저장되기 쉽다. 따라서, 동작 시에, 박스는 단순한 카티션 시스템 (Cartesian system) 변화에 따라 다수의 예시된 객체들 중 어느 하나로 그때그때 (on-the-fly) 동일시될 수도 있다. 또한, 더 적은 바운딩 박스가 데이터베이스 상에 저장됨에 따라 자원이 데이터베이스 상에서 절약된다.
프로세스는 제품, 정밀도 (precision), 및 구성을 선택하는 단계를 포함하는 단계 S20 을 더 포함한다. 통상적으로, 제품은 객체들의 어셈블리로 이루어진다. 제품의 선택은, 예를 들어, 도 1 의 트리 (250) 와 같은 트리의 이용 덕분에 행해질 수도 있다. 또한, 사용자가, 예를 들어, 제품의 식별 정보를 입력함으로써, 리스트에서 제품을 선택함으로써 등등 사용자 인터페이스의 다른 유형으로 제품을 선택하는 것이 가능하다.
모델의 디스플레이된 뷰의 정밀도 및 구성의 선택은 콤보 박스, 아이콘, 특별한 커맨드 또는 우측 클릭 등과 같은 임의의 종류의 사용자 인터페이스로 인해 수행될 수도 있다. 또한, 정밀도 및/또는 구성은 디폴트 (default) 에 의해 선택될 수도 있다.
정밀도는, 모델의 뷰가 디스플레이되는 미세 (refinement) 의 정도, 즉 뷰의 정확도를 반영한다. 뷰의 정확도는 뷰의 정확성 및 품질을 포함한다. 예를 들어, 현대의 비행기는 3 백만 개의 객체까지 필요로 할 수도 있다. 선택된 정밀도에 따라, 비행기의 뷰는 동체의 리벳 (rivet) 을 보여주거나 보여주지 않을 것이다.
정밀도는, 덜한 정확도를 위한 0 에서부터 매우 정확한 디스플레이를 위한 9 까지, 수적인 스케일로 표현될 수도 있다.
통상적으로, 정밀도는 본 발명의 프로세스를 수행하는데 필요한 자원들을 감소시키는 것에 기여할 수도 있다. 실제로, 정밀도는 뷰를 디스플레이하는데 필요한 하드웨어 자원들을 결정하는 것을 허용한다. 디스플레이가 덜 정확할수록, 객체의 세트를 데이터베이스로부터 검색하고, 모델을 연산하며, 모델의 뷰를 디스플레이하는데 필요한 자원들이 더 적어진다; 반대로, 디스플레이가 더 정확할수록, 객체의 세트를 검색하고, 모델을 연산하며, 모델의 뷰를 디스플레이하는데 필요한 자원들이 더 많아진다. 또한, 모델의 뷰를 디스플레이하는데 필요한 시간은 선택된 정밀도에 의존한다; 디스플레이가 덜 정확할수록 뷰의 디스플레이가 더 빠르고, 디스플레이가 더 정확할수록 뷰의 디스플레이가 더 느리다.
유리하게, 정밀도의 선택은 클라이언트 컴퓨터가 제한된 자원을 갖더라도 모델의 뷰를 디스플레이하는 것을 가능하게 한다 (예를 들어, 세일즈 엔지니어가 워크스테이션보다 더 적은 자원을 갖는 랩톱 컴퓨터 상에 모델 뷰의 디스플레이를 론칭할 수도 있다). 따라서, 제안된 발명의 프로세스는 하드웨어 제약에 적응될 수도 있다. 정밀도가 더 상세히 설명될 것이다.
구성은 제품의 객체들 또는 제품의 배열이다. 이 구성은 예를 들어, 제품에 이용 가능한 재료 및 상이한 색을 포함하는 상업적 구성일 수 있다. 예를 들어, 자동차의 모델은 자동차 스타일 (쿠페, 컨버터블), 트랜스밋션 유형 (수동, 자동), 외부 및 내부 옵션 (컬러, 휠 유형, 시트 스타일, 라디오,...) 과 같은 엘리먼트의 조합에 기초하여 수많은 구성을 가질 수도 있다.
따라서, 구성의 선택은 고객의 희망에 따라, 즉 원하는 구성에 따라 사용자가 제품을 보는 것을 허용한다.
다음으로, 단계 S30 에서, 미리연산된 제품의 바운딩 박스가 PLM 데이터베이스로부터 검색된다 (예를 들어, 선택된 제품을 둘러싸는 큐브가 검색된다). 통상적으로, PLM 데이터베이스를 호스팅하는 서버는 바운딩 박스를 검색하고 메모리 내에 그것을 저장한다. 메모리 내에 바운딩 박스를 저장하는 것은, 바운딩 박스가 그 객체보다 더 적은 데이터로 설명되기 때문에 메모리 내에 객체를 저장하는 것과 비교하여 유리하다; 따라서 메모리는 보존된다.
다음으로, 단계들 S40 - S60 에서, 프로세스는 선택된 어셈블리 상의 복수의 뷰포인트를 식별한다. 통상적으로, 이들 단계는 PLM 데이터베이스를 호스팅하는 서버, 예를 들어 PDM 시스템에 의해 수행된다. 이러한 단계가 본 발명의 몇몇 특정 실시형태에 따라 상세히 설명된다.
단계 S40 에서, 미리연산된 선택된 제품의 바운딩 박스의 면들이 식별된다. 이 단계는 공지된 바와 같이 수행된다.
단계 S50 에서, 단계 S20 에서 선택된 정밀도에 따라 제품의 바운딩 박스의 각 식별된 면에 대해 동등한 임의의 지오메트리 또는 광선의 수가 연산된다. 정밀도는 식별된 면 및 식별된 면 (face) 의 표면 (surface) 을 통과하는 다수의 광선들 간의 비율에 비례한다. 따라서, 선택된 제품의 바운딩 박스의 각 면에 대해 연산된 광선의 수는 식별된 면의 표면과 선택된 정밀도 간의 곱에 비례한다. 연산된 광선의 수와 곱 간의 비례는 비례 상수를 통해 결정될 수도 있다. 비례 상수는:
- 수행되어야 하는 데이터 입력이 아닌 디폴트 값;
- 사용자에 의해 선택된 값으로서, 선택은 제품, 정밀도 및 구성을 선택하는데 이용된 것들과 유사할 수도 있는 수단을 통해 수행되는, 상기 선택된 값;
- 대역폭, 레이턴시, 지연, 지터 (jitter), 패킷 손실 확률, 큐잉 지연, 비트 에러 레이트와 같은 네트워크의 적어도 하나의 파라미터에 따라 결정된 값으로서, 이 값의 결정은 하나 이상의 네트워크 파라미터를 나타내는 값이 소정의 임계값을 초과하지 않도록 이루어지는, 상기 결정된 값에 비례할 수도 있다. 따라서, 선택된 정밀도는 네트워크 상의 프로세스의 영향을 제한할 수도 있고, 그 후 이 프로세스는 네트워크에 다음과 같이 적응될 수도 있다;
- 이용 가능한 CPU 자원, 이용 가능한 메모리 자원와 같은 클라이언트 컴퓨터의 적어도 파라미터에 따라 결정된 값으로서, 이 값의 결정은 하나 이상의 클라이언트 컴퓨터 파라미터를 나타내는 값이 소정의 임계값을 초과하지 않도록 이루어지는, 결정된 값. 유사하게, 선택된 정밀도는 사용자의 클라이언트 컴퓨터 상의 프로세스의 영향을 제한할 수도 있고, 따라서 본 발명의 프로세스는 클라이언트 컴퓨터의 하드웨어 자원에 적응될 수도 있다.
그 후, 단계 S60 에서, 뷰포인트의 식별이 수행된다. 뷰포인트는 객체의 어셈블리의 뷰가 디스플레이될 수도 있는 특정 위치이다. 뷰포인트는, 객체의 어셈블리가 또한 위치하는 장면에서 가상 카메라의 위치의 표현이다. 장면은 객체들 간의 공간적 관계가 설명되는 공간이다. 장면은 적어도 하나의 객체로 구성되고, 객체(들)은 모델링된 객체(들) 또는 3-차원 (3D) 모델링된 객체(들)일 수도 있다. 따라서, 장면이 3D 모델링된 객체들로 구성되는 경우, 이 장면은 3D 공간이다. 따라서, 객체들의 어셈블리 또는 제품은 다수의 뷰포인트를 포함할 수도 있다.
바람직하게, 식별된 뷰포인트는 제품 "밖" 에 위치한다. 뷰포인트는, 뷰포인트가 제품의 객체들 중 어느 것과 접촉하거나 어느 것 내에 없을 때 제품 "밖" 에 위치한다. 따라서, 뷰포인트는, 뷰포인트가 제품에 의해 형성된 인클로저 또는 경계를 넘어 있을 때 밖에 있다.
복수의 뷰포인트들의 식별은 객체의 어셈블리의 바운딩 볼륨의 면을 식별하는 단계 및 바운딩 볼륨의 각 식별된 면에 대해 적어도 뷰포인트를 식별하는 단계를 포함한다. 이 경우, 뷰포인트는, 뷰포인트가 (제품의 객체의 바운딩 박스를 둘러싸는) 제품의 바운딩 박스와 접촉하거나 이 안에 없을 때 제품 "밖" 에 위치한다. 따라서, 뷰포인트가 제품의 바운딩 박스의 인클로저 또는 경계를 넘는 장소에 배치될 때 뷰포인트는 제품 "밖" 에 위치한다.
제품 밖에 위치한 뷰포인트를 식별하는 단계는 제품의 주변에 위치하는 객체에 대한 포커싱을 허용하는 것으로 이해된다. 따라서, 단계 S100 에서 연산된 모델은 제품 주위의 비주얼 네비게이션, 즉 선택된 제품 밖에 위치한 몇몇 연속적인 뷰포인트들에 따른 모델의 시각화를 허용할 것이다.
바람직하게, 바운딩 박스의 각 식별된 면에 대해 식별된 뷰포인트의 수는 식별된 뷰포인트의 수를 제한하도록 단계 S50 에서 연산된 광선들의 수보다 적거나 동일하다.
유리하게, 바운딩 박스의 각 식별된 면에 대한 뷰포인트의 수는 각각의 뷰포인트를 통과할 광선의 평균 수에 기초하여 결정된다. 각각의 뷰포인트를 통과할 광선의 평균 수는 디폴트로 결정되고, 또는 사용자에 의해 선택될 수도 있다. 광선의 평균 수의 선택은, 예를 들어 정밀도 또는 구성의 선택에서와 유사한 방식으로 행해질 수도 있다.
단계 S70 에서, 식별된 뷰포인트를 통과하는 광선 또는 임의의 기하학적 등가물 및 선택된 제품의 미리연산된 바운딩 박스의 면이 연산 또는 캐스트된다.
그 후, 단계 S80 에서, 선택된 제품의 객체들 세트는 복수의 식별된 뷰포인트에 따라 데이터베이스로부터 검색된다. 이를 위해, 연산된 광선이 교차되는 제품의 각각의 개별 객체에 대해 하나 이상의 바운딩 박스가 식별된다.
통상적으로, 연산된 광선이 교차되는 바운딩 박스를 식별하기 이전에, 선택된 제품의 객체의 바운딩 박스가 데이터베이스로부터 검색되고, 예를 들어 PLM 데이터베이스를 호스팅하는 서버의 메모리 내에 함께 저장될 수도 있다. 객체의 바운딩 박스의 검색은 객체들 간의 관계 및 제품 구조로 인해 수행될 수도 있다.
도 5 와 관련하여 도 6 은 단계 S30 에서 수행된 선택된 제품의 바운딩 박스의 검색, 및 또한 제품의 객체의 바운딩 박스의 검색을 나타낸다. 도 5 는 3 개의 객체들로 구성되는 제품 (50) 을 도시한다: 실린더 (52) 와 나란히 배치된 평행육면체 (51), 평행육면체 (51) 및 실린더 (52) 는 봉 (53) 에 의해 함께 고정된다. 봉 (53) 은 평행육면체 (51) 및 실린더 (52) 내에 둘러싸여 점선으로 도시된다. 도 6 은 검색되는 4 개의 바운딩 박스들을 나타낸다: 바운딩 박스 (60) 는 제품 (50) 에 속하고 단계 S30 에서 검색되고, 3 개의 바운딩 박스들 (61, 62, 63) 은 바운딩 박스 (60) 에 의해 둘러싸이고, 각각 평행육면체 (51), 실린더 (52) 및 봉 (53) 과 관련되며, 연산된 광선들이 교차되는 바운딩 박스를 식별하기 전에 검색된다.
바운딩 박스들은 단지 눈의 가이드로서 도 6, 도 7, 도 8 및 도 9 에서 점선으로 도시된다.
교차가 존재하는지 아닌지 여부를 결정하기 위해 수개의 공지된 기술이 존재할 수도 있다. 예를 들어, 식별된 면 및 뷰포인트로 인해, 광선이 바운딩 박스를 교차하는지 여부가 결정될 수도 있다.
바운딩 박스와 연산된 광선들 간의 교차를 연산하는 것은 선택된 제품의 객체 상의 교차를 연산하는 것을 구성하는 솔루션과 비교하여 유리하다. 실제로, 바운딩 박스는 객체를 둘러싸는 수학적으로 단순한 표면이고, 카티션 좌표계에서 그 좌표는 단순하므로, 교차의 결정을 용이하게 한다. 따라서, 바운딩 박스와 연산된 광선 간의 교차를 연산하는 것은 더 적은 자원들을 필요로 한다; 특히, PDM 시스템의 메모리가 보존된다.
주먹구구식 방법 (brute force method) 에서, 알고리즘은, 예를 들어 어느 박스가 상기 연산된 광선을 교차하는지를 결정하기 위해서 모든 바운딩 박스를 스캔할 수도 있다. 이 단계는 기준 뷰의 좌표 시스템에서 수행된다.
그러나, 상기 스캔 단계는 객체의 어셈블리의 객체의 수가 증가함에 따라 신속하게 엄두를 못낼 정도가 된다. 예를 들어, 현대 비행기의 CAD/CAM 모델링은 3 백만개의 박스들까지 저장하는 것을 필요로 할 수도 있다. 즉, 교차 조사 알고리즘을 스피드업하는 것이 유리하다.
이에 대하여, 예를 들어 소위 R-트리 기술, 즉 공간 액세스 방법을 이용할 수도 있고, 여기서 공간은 계층적으로 네스팅되는 (nested), 가능하게는 겹치는 박스들로 스플릿된다. 이러한 기술은 다양한 가능한 기준에 따라 더욱 균형잡힌 트리들을 초래하고, 더욱 효율적인 스캔을 초래한다.
다음으로, 식별된 뷰포인트의 차일드 경우에서 교차가 일단 발견되었으면, 초기 광선은 교차된 차일드 경우의 좌표 시스템에서 재연산되고, 더 이상의 교차가 발견되지 않을 때까지 새로운 스캔이 그 차일드 인스턴스들 내에서 수행되는 등이다.
따라서, 교차 조사 알고리즘은 반복적이고, 즉 n 번째로 교차된 페어런트 박스의 최종 교차된 차일드가 탐색되고, 다음과 같이 구동한다:
일단 교차되는 바운딩 박스가 검출되면, 일 실시형태에 따른 프로세스가 교차된 바운딩 박스 내의 더 작은 세분 레벨에서 작동한다. 예를 들어, 도 3 에 도시된 바와 같은 8 개의 큐빅 박스로 볼륨 분할되는 옥트리를 고려할 수도 있다.
옥트리 (300) 는 예를 들어, 옥트리 (310) 가 모델의 임의의 엘리먼트를 포함하지 않거나 모델의 엘리먼트로 완전히 채워지는 경우를 제외하고 (명확함을 위해 2 차원으로 표현된) 도 4 에 도시된 바와 같이 그 자체를 더 세분한다. 모델의 엘리먼트를 포함하는 각 옥트리 (300) 가 더 세분된다.
3D 화소 (320) (예를 들어, 크기는 사용자에 의해 입력된 정의에 의존할 수도 있음) 로서 알려진, 가장 작은 분할되지 않은 볼륨까지 연산된 광선과의 임의의 교차를 검출하기 위해 옥트리 (300) 가 스캔된다. 프로세스는 그 후 정지되고, 식별된 3D 화소 내부에 (또는 가까이에) 있는 뷰 내의 객체가 선택된다.
옥트리 및 3D 화소와 같은 교차된 바운딩 박스 내에서 더 작은 세분 레벨을 이용하는 것이 유리하다. 실제로, PDM 시스템의 메모리 및 CPU 자원은 옥트리 및 3D 화소가 도 3 에 나타난 바와 같이 수학적으로 단순한 표면을 갖고, 따라서 연산된 광선과 이들 수학적으로 단순한 표면들 중 하나 사이의 교차의 연산이 용이해진다.
객체가 선택되면, 객체가 뷰포인트에서 보이거나 보이지 않는 지를 결정한다. 객체는, 객체가 다른 객체에 의해 완전히 숨겨지지 않을 때 보여진다. 그 후, 프로세스는 뷰포인트에서 보이는 객체를 발견 및 선택하기 위해 동일한 단계에 따라 다른 바운딩 박스들 (바운딩 박스들, 옥트리, 3D 화소) 을 반복적으로 테스트한다. 프로세스를 최적화하기 위해서, 바운딩 박스가 (새로운 좌표 시스템에서) 연산된 광선과 교차하지 않으면, 이 바운딩 박스는 폐기된다. 유사하게, 바운딩 박스가 광선에 의해 교차되면, 그러나 한편 바운딩 박스가 식별된 뷰포인트들 중 적어도 하나에서 보이지 않으면, 상기 바운딩 박스가 폐기될 것이다.
제품의 바운딩 박스는 특정 바운딩 박스이다. 실제로, 반드시 객체들을 포함할 필요는 없고, 단지 제품의 객체들의 바운딩 박스들만 포함하면 된다. 따라서, 제품의 바운딩 박스가 연산된 광선에 의해 교차되는 경우에도 임의의 객체가 선택될 수도 있다. 프로세스를 최적화하기 위해서, 교차 조사 알고리즘은 제품의 바운딩 박스에 적용되지 않고, 단지 제품의 바운딩 박스 및 그 각각의 옥트리 및 3D 화소로 둘러싸인 바운딩 박스들에 적용된다.
또한, 제품의 바운딩 박스는 선택된 제품이 위치하는 장면에서 볼륨을 식별하는데 주로 이용될 수도 있다. 이 볼륨은 연산된 광선들이 캐스트되어야 하는 공간을 유리하게 제한한다. 통상적으로, 제품의 바운딩 박스는 가능한 한 가장 작고, 즉, 그 볼륨은 제품의 객체들의 바운딩 박스를 둘러쌀 수 있는 최소의 바운딩 박스이다.
모든 바운딩 박스들이 테스트되고 적어도 하나의 객체가 데이터베이스에서 식별되면, 식별된 객체가 저장된다. 이를 위해, 객체의 식별과 관련된 정보 (예를 들어, 객체의 이름) 가 파일 상에 저장된다. 이러한 파일은, 예를 들어 식별된 뷰포인트에 따라 데이터베이스로부터 검색된 선택된 제품의 객체들 세트를 포함하는 인덱스를 형성할 수도 있다. 통상적으로, 인덱스는 클라이언트 컴퓨터에 의해 검색된다.
바람직하게, 연산된 광선은 제품의 바운딩 박스의 면에 실질적으로 수직한 입사각을 갖고 식별된 면을 통과할 수도 있다. 실제로, 면에 실질적으로 수직한 입사각을 갖는 단지 하나의 광선이 소정의 뷰포인트에 대해 연산된다. 실제로, 소정의 뷰포인트에 있어서, 다른 것과 동일한 입사각을 갖는 광선을 연산 또는 캐스트하는 것은 제 2 광선이 제 1 광선과 동일한 바운딩 박스를 교차하기 때문에 쓸모없다.
입사각은 도 7 에 도시된 바와 같이 입사 포인트에서 면에 수직한 면 및 라인 상의 입사광 간의 각도이다. 도 7 은 도 6 의 바운딩 박스 (60) 의 면 (63) 의 전면 뷰의 개략도이다. 입사각을 갖는 2 개의 광선들 (71 및 72) 이 도시되고, 각각의 각도는 α 및 β 로 표시된다. 광선들 (71 및 72) 중 각 광선의 입사각은 입사 포인트에서의 표면에 수직한 라인 (70) 과 비교하여 정의된다.
유리하게, 연산된 광선은 0 내지 45°의 범위의 입사각으로 식별된 면들을 통과할 수도 있다. 다시 도 7 을 참조하면, 각도 α 및 β는 0 내지 45 °사이에 포함된 값들을 취할 수도 있다. 그 결과, 연산된 광선들이 교차되는 제품의 각 객체의 하나 이상의 바운딩 박스들의 식별이 개선된다. 실제로, 바운딩 박스를 식별하기 위한 능력을 제공하고, 그렇지 않은 경우 도 6 상의 바운딩 박스 (60) 의 면 (64) 의 전면 뷰의 개략도인 도 8 에 도시된 바와 같이 식별되지 않을 것이다. 면 (64) 상에 그려진 각 포인트는 실질적으로 수직의 입사각으로 면 (64) 을 통과하는 연산된 광선의 입사 포인트를 나타낸다. 이제 75 로 표시된 입사 포인트에 대해 초점을 둔다. 입사 포인트 (75) 에 수직한 연산된 광선 (미도시) 은 바운딩 박스 (60) 에 의해 둘러싸인 3 개의 바운딩 박스들 (61, 62, 및 63) 중 어느 하나를 교차하지 않는다. 입사 포인트 (75) 를 통과하는 2 개의 연산된 광선들 (76 및 77) 이 표현된다. 그 입사각으로 인해, 연산된 광선 (76)(각각 77) 은 바운딩 박스 (61)(각각 62) 를 교차한다. 또한, 교차 조사 알고리즘에 따르면, 관련된 객체 (53) 가 객체들 (51 및 52) 에 의해 완전히 숨겨지기 때문에 바운딩 박스 (63) 가 검색되지 않는다. 객체 (53) 는 식별된 뷰포인트들 중 어느 것에서 보이지 않고, 따라서 객체 (53) 는 데이터베이스로부터 검색된 객체들 세트의 객체가 아니다.
바람직하게, 객체들 세트를 데이터베이스로부터 검색하는 것은 사용자의 보안 콘텍스트에 따라 수행된다. 따라서, 바운딩 박스 및 그 객체의 식별은 사용자 보안 콘텍스트를 만족시킬 수도 있다. 사용자 보안 콘텍스트는 제어, 즉 특정 사용자에 의한 특정 자원의 사용을 허용 또는 부인하기 위한 능력을 액세스하는 것과 관련된다. 통상적으로, 사용자는 객체를 판독, 및/또는 기록, 및/또는 실행 (예를 들어, 디스플레이) 시키도록 허용되거나 허용되지 않을 수도 있다. 예를 들어, 모델링된 객체는 모델링된 객체의 책임을 갖는 설계자에 의해 록킹될 수도 있고, 이는 설계자가 모델링된 객체를 해제할 때까지 다른 사용자가 모델링된 객체를 변형하는 것이 허용되지 않는다는 것을 의미한다. 또한, 설계자가 아닌 사람은 완전한 모델링된 객체를 액세스하도록 허용되지 않을 수도 있다. 또한, 액세스 제어가 사용자의 물리적 위치에 기초할 수도 있다 (예를 들어, 사용자가 그 사무실에 위치하지 않을 때 사용자가 제품을 디스플레이하도록 허용되지 않을 수도 있다).
그 후, 단계들 S90 - S100 에서, 프로세스는 객체들 세트 중 검색된 객체들 모두에 대해 선택된 제품의 모델을 연산한다. 바람직하게, 모델은 사용자의 클라이언트 컴퓨터에 의해 연산된다. 따라서, PDM 시스템은 모델의 연산을 담당하는 것이 아니고, 이에 따라 그 자원들이 소모되지 않는다.
단계 S90 에서, 객체들 세트의 지오메트리가 검색된다. 객체들 세트의 객체들은 선택된 제품의 객체들 세트를 저장하는 인덱스로 인해 식별된다. 그 후, 인덱스의 객체들 각각에 대해 지오메트리는 그 각각의 객체 내에서 탐색 및 검색된다; 객체에 대한 논리적 포인터가 이용될 수도 있다.
지오메트리는 객체를 구성하는 상이한 유형의 엘리먼트이다. 이들은 꼭지점, 에지, 면, 다각형 및 표면을 포함할 수도 있다.
완전한 객체 대신에 객체의 지오메트리의 검색이 양적인 면에서 유리하고, 검색할 정보의 수가 제한된다. 실제로, 객체는 지오메트리 뿐만 아니라 사용자 보안 콘텍스트, 객체의 특성 (예를 들어, 생성 날짜, 최종 변형, 객체를 담당하는 설계자) 과 같은 메타데이터로 이루어진다. 결과적으로, 네트워크의 대역폭이 보존되고, 클라이언트 컴퓨터는 연산하기 위해 더 적은 정보를 갖는다.
그 후, 단계 S100 에서, 선택된 제품의 모델은 검색된 지오메트리에 기초하여 연산된다. 연산된 모델은 식별된 뷰포인트에 따라 검색된 선택된 제품의 객체들 세트의 표현이다. 다른 관점에서, 연산된 모델은 선택된 제품 밖에 위치하는 식별된 뷰포인트에서 보이는 객체의 표현이다.
실제로, 모델은 그래픽 사용자 인터페이스 상에 디스플레이된 3 차원 (3D) 모델이고, 모델은 공지된 바와 같은 삼각형, 라인, 굴곡면 등과 같은 다양한 기하학적 엔티티에 의해 연결된 3D 공간에서의 포인트들의 집합체로 이루어진다.
바람직하게, 검색된 객체들 세트의 객체들의 지오메트리는 모델의 비-연관 뷰를 형성하기 위해서 집합된다. 비-연관 뷰는, 뷰를 형성하는 그래픽 엘리먼트들이 시스템 관점으로부터 객체들 세트의 개별적 부분들에 따라 구획되지 않는 것을 의미한다. 따라서, 뷰에 표현되는 바와 같은 객체들 세트는 콘텐츠에 기초한 어드레싱이 가능하지 않고, 사용자는 뷰에 디스플레이된 세트를 구성하는 임의의 개별 객체를 선택하지 않을 수도 있다. 예를 들어, 비트맵도 래스터 이미지도 표현된 객체에 대하여 콘텐츠에 기초한 어드레싱이 가능하지 않다. 벡터적 뷰는, 그것이 다양한 드로잉 엘리먼트로 분할되는 것과 개념적으로 상이하다. 그럼에도 불구하고, 드로잉 엘리먼트가 PLM 데이터베이스에 저장된 객체들 세트 중 다양한 객체들과 연관되지 않기 때문에 본 발명의 관점에서 그것은 비-연관 뷰의 예이다.
다음으로, 단계 S110 에서, 모델의 뷰가 디스플레이된다. 중요하게, 모델의 임의의 디스플레이된 뷰들은 검색 단계 S80 에서 검색된 객체들에서 시작하여 연산된다. 따라서, 도 2 에 도시된 프로세스의 단계 S10 내지 S100 중 어느 하나를 반복하지 않고 선택된 제품의 임의의 뷰를 디스플레이하는 것이 가능하다. 실제로, 선택된 제품의 객체들 세트가 복수의 뷰포인트에 따라 검색된다. 따라서, 고유한 요청을 시작으로, 제품의 객체들 세트의 객체들 모두를 검색하는 것이 가능하다. 제품의 모델은 검색된 객체들 세트의 객체들에 기초하여 연산되고, 그 결과 제품 주변의 비주얼 네비게이션, 즉 제품의 뷰의 연속적 디스플레이는 단지 단일의 연산된 모델에 의존한다. 연산된 모델은 다수의 뷰포인트들의 단일 모델 표현이다.
따라서, 본 발명에 따른 프로세스는 모델이 동시에 연산되기 때문에 특히 유리하다; 또한, 연산은 클라이언트 컴퓨터 측에서 이루어지기 때문에 PLM 데이터베이스 및 네트워크 자원을 호스팅하는 서버의 하드웨어 자원이 보존된다. 따라서, 선택된 제품의 비주얼 네비게이션이 개선되고 뷰들이 더 빠르게 디스플레이된다. 비주얼 네비게이션은 더 적은 자원이 비주얼 네비게이션을 수행하기 위해 필요한 동안 유동적이다. 일반적으로, 시스템이 강화된다. 예를 들어, 모델의 뷰를 디스플레이하기 위해 제안된 발명에 의해 필요한 시간은 약 1 초이고, 반면 종래 기술에서 이 시간은 약 30 초이다.
이제, 도 6 에 도시된 바운딩 박스의 상부 전면 뷰를 도시하는 도 9 를 참조하여 전술된 프로세스의 실시형태를 설명한다.
제안된 발명은 제품 라이프사이클 관리 데이터베이스의 객체의 어셈블리를 디스플레이하기 위한 프로세스에 관한 것이다.
먼저, 데이터베이스에 대한 액세스가 도 10 에 도시된 것과 같은 전용 소프트웨어 아키텍처로 인해 제공된다.
그 후, 객체의 어셈블리가 선택된다. 통상적으로, 제품이 선택된다.
다음으로, 복수의 뷰포인트가 객체의 선택된 어셈블리 상에서 식별된다. 실제로, 뷰포인트의 식별은 객체의 선택된 어셈블리의 바운딩 볼륨의 면의 식별을 포함한다. 예를 들어, 바운딩 볼륨 (60) 의 면들 (64 및 66) 이 식별된다. 모두, 바운딩 볼륨 (60) 의 6 개의 면들이 식별된다. 그 후, 적어도 하나의 뷰포인트가 각각의 식별된 면에 대해 식별된다. 여기서, 면 (64) 에 대해 식별된 뷰포인트 (75) 가 표현된다.
바람직하게, 뷰포인트는 객체의 어셈블리 밖에 위치한다. 뷰포인트는, 객체의 어셈블리의 바운딩 볼륨이 식별되는 경우 뷰포인트가 제품의 객체들 중 어느 것과 접촉하거나 어느 것 내에 없을 때, 또는 (제품의 객체의 바운딩 박스를 둘러싸는) 제품의 바운딩 박스와 접촉하거나 바운딩 박스 내에 없을 때 제품의 "밖" 에 위치한다.
실제로, 식별된 뷰포인트는 객체의 어셈블리의 바운딩 볼륨의 식별된 면 상에 위치한다 (예를 들어, 식별된 뷰포인트 (75) 는 바운딩 박스 (60) 의 면 (64) 상에 위치한다). 면 상의 뷰포인트의 분포는 랜덤할 수도 있고, 또는 반대로 한정될 수도 있다. 뷰포인트의 한정된 분포의 경우에서, 분포는 동질적 또는 이질적일 수도 있다. 동질적 분포는 뷰포인트가 면 상에서 균일하게 분포되는 것을 포함한다. 이질적 분포는 뷰포인트가 면 상에서 불규칙적으로 분포되는 것을 포함한다; 이질적 분포는 임의의 파라미터가 포함되는 랜덤한 분포에 반하여 적어도 하나의 파라미터 또는 함수에 따라 판정된다. 예를 들어, 이종의 분포는 식별된 면의 에지로부터의 거리의 함수 표현에 따라 결정될 수도 있다; 더 적은 뷰포인트가 에지 근처에 위치할 수 있다.
그 후, 어셈블리의 객체들 세트가 복수의 식별된 뷰포인트에 따라 데이터베이스로부터 검색된다. 프로세스에 따르면, 데이터베이스 상의 질의가 트리거된다. 어셈블리의 객체 및 식별된 뷰포인트를 통과하는 광선이 연산된다.
통상적으로, 광선들은 어셈블리의 객체들의 바운딩 박스 및 뷰포인트를 통과한다. 하나 이상의 바운딩 박스가 연산된 광선들이 교차되는 객체들의 어셈블리의 각 객체에 대해 식별된다. 각각의 식별된 바운딩 박스에 있어서, 객체가 검색되고, 따라서 객체들 세트를 형성한다.
도 9 를 참조하면, 광선들 (76, 77 및 81) 은 면 (64) 및 바운딩 박스 (60) 상에 위치한 뷰포인트 (75) 를 통과한다. 광선들 (76 및 77) 은 각각 바운딩 박스들 (61 및 62) 을 가로지른다. 바운딩 박스들 (61 및 62) 의 각 객체들이 선택 및 식별된다. (바운딩 박스들 (61 및 62) 의 교차 후의) 광선들 (76 및 77) 의 연속은 점선으로 표현된다. 특히, 광선 (76) 은 또한 식별 및 선택되지 않은 바운딩 박스 (63) 를 가로지른다. 실제로, 검색된 객체들 세트의 객체들은 뷰포인트에서 보인다. 그러나, 바운딩 박스들 (61 및 62) 의 객체들에 의해 숨겨지기 때문에 바운딩 박스 (63) 의 객체는 뷰포인트 (75) 에서 보이지 않는다. 따라서, 바운딩 박스 (63) 의 객체가 선택되지 않고 저장되지 않는다.
실제로, 식별된 뷰포인트가 무엇이든지, 바운딩 박스 (63) 의 객체는 바운딩 박스들 (61 및 62) 의 객체들에 의해 항상 숨겨지므로, 바운딩 박스 (63) 는 폐기될 것이다. 반대로, 바운딩 박스 (63) 의 객체가 적어도 하나의 뷰포인트에서 보이면, 이 객체가 선택될 것이다.
다음으로, 선택된 어셈블리의 모델은 객체들 세트 중 검색된 객체들 모두에 대해 연산된다; 이 모델은 바운딩 박스들 (61 및 62) 의 객체에 대해 연산된다.
그 후, 모델의 뷰가 디스플레이되고, 디스플레이된 뷰는 검색 단계에서 검색된 객체에서 시작하여 연산된다. 도 5 를 참조하면, 연산된 모델의 뷰가 디스플레이된다. 점선으로 나타난 객체 (53) 는 그 바운딩 박스 (63) 가 폐기되었기 때문에 연산된 모델의 일부분이 아니다.
설명 및 간략화를 위해, 도 9 는 단순하고 다른 것들에 의해 숨겨진 하나의 객체 만을 포함한다. 비행기와 같은 통상적인 제품은 수백만 개의 객체를 포함하고, 다수의 객체들이 숨겨진다. 실제로, 제안된 본 발명의 프로세스에 따라 디스플레이된 제품의 뷰는 제품의 외측 뷰이다. 다시 비행기의 예를 참조하면, 비행기의 연산된 모델의 뷰는 비행기 주변을 네비게이팅하도록 허용하고, 주로 동체, 날개, 수직 및 수평 안정 장치, 제트 엔진 등을 보여준다. 복수의 외측 뷰들이 디스플레이된다. 그러나, 동체 내의 시트, 날개 내의 탱크, 제트 엔진 내의 연료 주입기 등은 전체적으로 숨겨진 객체이다. 따라서, 제안된 본 발명에 따르면 이들은 절대로 디스플레이되지 않는다.
상기 방법은 CAD/CAM/CAE 시스템에 의해 정의될 수 있는 임의의 구성 또는 변하는 뷰포인트로부터 객체의 뷰를 디스플레이하는데 이용된 임의의 시스템에서 임의의 객체에 적용될 수 있다. 본 발명은 디지털 전자 회로로, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어로, 또는 이들의 조합으로 구현될 수도 있다. 본 발명의 장치는 프로그래머블 프로세서에 의한 실행을 위해 머신 판독가능 스토리지 디바이스에 구현된 컴퓨터 프로그램 제품으로 구현될 수도 있다; 그리고 본 발명의 방법 단계들은 입력 데이터 상에서 동작하고 출력을 생성함으로써 본 발명의 기능들을 수행하기 위해 명령들의 프로그램을 실행시키는 프로그래머블 프로세서에 의해 수행될 수도 있다.
본 발명은, 데이터 스토리지 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고, 이들에 데이터 및 명령들을 송신하도록 커플링된 적어도 하나의 프로그래머블 프로세서를 포함하는 프로그래머블 시스템 상에서 실행 가능한 하나 이상의 컴퓨터 프로그램으로 유리하게 구현될 수도 있다. 애플리케이션 프로그램은 하이-레벨 절차상 또는 객체-기원의 프로그래밍 언어로, 또는 원한다면 어셈블리 또는 머신으로 구현될 수도 있고; 그리고 임의의 경우, 언어는 컴파일링되거나 (compiled) 해석된 언어일 수도 있다.
도 10 은 본 발명을 수행하기 위해 사용 가능한 소프트웨어 아키텍처의 개략도이다; 이것은 사용자의 단일의 클라이언트 컴퓨터, 데이터베이스 서버 (94) 및 볼트 (vault) 서버 (97) 를 나타낸다. 클라이언트 컴퓨터는 사용자 인터페이스를 관리하고 컴포넌트들 (92, 95 및 98) 을 제어하는 엔진 (91) 을 포함한다. 엔진 (91) 은, 비제한적으로 사용자가 객체, 제품, 구성, 정밀도, 및 모델을 디스플레이하기 위한 뷰의 유형을 선택하는 것을 가능하게 한다.
도 10 은 또한 질의 엔진 (92), 데이터베이스 클라이언트 (93) 및 데이터베이스 서버 (94) 를 나타낸다. 질의 엔진 (92) 은 단일의 클라이언트에 의해 제어된다; 사용자의 커맨드에 따라 데이터베이스 진술을 구축하고 이 데이터베이스 진술을 데이터베이스 클라이언트 (93) 로 패스한다. 질의 엔진 (92) 은 또한 데이터베이스 클라이언트 (93) 로부터 수신된 질의 결과를 관리한다.
데이터베이스 클라이언트 (93) 는 데이터베이스 서버 접속을 관리하도록 구성된다. 데이터베이스 클라이언트는 질의 엔진 (92) 으로부터 질의를 수신하고, 이 질의들을 데이터베이스 서버 (94) 로 패스한다. 데이터베이스 클라이언트는 데이터베이스 서버 (94) 로부터 질의 결과들을 수신하고, 이들 결과를 질의 엔진 (92) 으로 패스한다.
데이터베이스 서버 (94) 는 클라이언트 (93) 와 같은 몇몇의 데이터베이스 클라이언트로부터 질의를 수신하고, 이들 질의를 서빙할 수도 있다. 통상적으로, 데이터베이스 서버는 관계 데이터베이스 (relational database) 이고, 기준 DB2 하의 IBM 으로부터 이용 가능하거나 오라클 (Oracle) 로부터 이용 가능한 솔루션을 이용하여 구현될 수도 있다. 또한, 데이터베이스는 객체 또는 XML 데이터베이스, 또는 데이터베이스를 액세스하는 애플리케이션 서버일 수 있다. 상기 애플리케이션 서버는 또한, 진보된 질의 (근접 질의, 공간 질의) 에 대해 (그때그때 또는 비동기식으로) 프로세싱을 제공할 수도 있다.
엔진 (91), 컴포넌트들 (92, 93 및 94) 에서 사용자에게 이용 가능한 추가의 그래픽 네비게이션 함수들 외에는 PLM 솔루션에 이용된 것과 같은 당해 기술 분야의 관계 데이터베이스와 상이할 필요가 없다. 따라서, 이들 컴포넌트들은 더욱 상세하지 않다.
도 10 은 데이터베이스에 포함된 객체의 표현을 저장 및 제공하기 위한 볼트 서버 (97) 를 나타낸다; 다시 말하면, 볼트 서버는 표현 저장소 (repository) 로서 이용된다. 볼트 서버 (97) 는 파일 서버일 수도 있고, 이에 의해 표현들은 다양한 파일 내에 저장될 수 있다. 또한, 데이터베이스 서버를 이용하여, 예를 들어 "blob" (바이너리 언어 객체) 스토리지를 이용하여 구현될 수 있다. 또한, 프록시 및/또는 캐시 기술을 이용할 수 있다. 볼트 서버에 저장된 객체의 표현은 다양한 포맷들, 예를 들어, 바운딩 박스, 다각형, 비트맵 이미지, 벡터 이미지, 세분 표면 또는 더 일반적으로는 공지된 임의의 포맷으로 존재할 수도 있다. 표현의 증분적 로딩을 허용하기 위해 볼트 서버 내에 다양한 포맷들을 저장하는 것이 유리하다.
볼트 서버는 볼트 클라이언트 (96) 로 인해 어드레싱된다. 볼트 클라이언트는 객체의 표현을 검색하기 위해서 클라이언트가 볼트 서버를 어드레싱하는 것을 가능하게 한다. 도 10 은 또한, 표현 로더 (95) 를 나타낸다. 표현 로더 (95) 는 사용자에게 디스플레이될 객체의 표현을 획득하기 위해 볼트 클라이언트 (96) 를 통해 볼트 서버 (97) 에 질의한다. 또한, 표현 로더 (95) 는 볼트 클라이언트 (96) 로부터의 표현을 수신하는 동안 로딩되는 표현 증분을 관리할 수도 있다.
시각화 엔진 (98) 은 사용자에 대한 표현 디스플레이를 관리한다. 시각화 엔진은 디스플레이 하드웨어-대개의 경우 그래픽 카드를 관리하는 디스플레이 드라이버 (99) 를 어드레싱한다. 디스플레이 하드웨어 상에 표현을 디스플레이 하기 위해서, OpenGL 드라이버를 통해, 또는 마이크로소프트 다이렉트 3D, 또는 DirectX 를 이용하여 가속된 하드웨어를 이용할 수도 있다.
도 11 및 12 는 본 발명을 수행하기 위해 구성된 클라이언트 및 네트워크 하드웨어 아키텍처의 개략도이다. 도 11 은 클라이언트 컴퓨터 시스템, 예를 들어 사용자의 워크스테이션을 나타낸다.
클라이언트 컴퓨터는 내부 통신 BUS (100) 에 접속된 중앙 처리 장치 (CPU; 101), BUS 에 또한 접속된 랜덤 액세스 메모리 (RAM; 107) 를 포함한다. 클라이언트 컴퓨터에는 BUS 에 접속된 비디오 랜덤 액세스 메모리 (110) 와 연관되는 그래픽 프로세싱 유닛 (GPU; 111) 이 또한 제공된다. 비디오 RAM (110) 은 또한 프레임 버퍼로서 당해 기술 분야에서 공지된다. 매스 스토리지 디바이스 제어기 (102) 는 하드 드라이브 (103) 와 같은 매스 메모리 디바이스에 대한 액세스를 관리한다. 컴퓨터 명령들 및 데이터를 유형적으로 수록하기에 적합한 매스 메모리 디바이스는 예시의 방식으로 EPROM, EEPROM, 및 플래시 메모리와 같은 반도체 메모리 디바이스; 내부 하드 디스크 및 착탈식 디스크와 같은 자기 디스크; 자기-광 디스크; 및 CD-ROM 디스크 (104) 를 포함하는 비휘발성 메모리의 모든 형태를 포함한다. 전술한 것들 중 어느 하나는 특별히 설계된 ASIC (application-specific integrated circuit) 내에 통합되거나, 이에 의해 추가될 수도 있다. 네트워트 어댑터 (105) 는 네트워크 (106) 에 대한 액세스를 관리한다. 클라이언트 컴퓨터는 또한 커서 (cursor) 제어 디바이스와 같은 햅틱 디바이스 (109), 키보드 등을 포함할 수도 있다. 커서 제어 디바이스는 클라이언트 컴퓨터에서 이용되어, 디스플레이 (108) 상의 임의의 원하는 로케이션에서 사용자가 커서를 선택적으로 위치시키는 것을 허용한다. 또한, 커서 제어 디바이스는 사용자가 다양한 커맨드, 및 입력 제어 신호를 선택하는 것을 허용한다. 커서 제어 디바이스는 시스템에 대한 입력 제어 신호를 위해 다수의 신호 생성 디바이스를 포함한다. 통상적으로, 커서 제어 디바이스는 마우스, 신호를 생성하는데 이용되는 마우스의 버튼일 수도 있다.
동작 시에, 도 10 의 다양한 클라이언트 컴포넌트들은 CPU (101) 에서 프로세스 실행된다. 네트워크 어댑터 (105) 는 네트워크 (106) 상의 볼트 서브 (97) 를 액세스 하기 위해 볼트 클라이언트 (96) 에 의해 이용되고, 네트워크 (106) 상의 데이터베이스 서버 (94) 를 액세스하기 위해 데이터베이스 클라이언트 (93) 에 의해 또한 이용된다. 매스 스토리지 디바이스 제어기 (102) 는 볼트 클라이언트 (96) 에 의해 이용되어, 하드 드라이브 (103) 와 같은 로컬 매스 메모리 디바이스 상의 표현의 캐시를 생성한다; 이는 자주 이용된 표현의 수행을 개선시킨다. 디스플레이 드라이버 (99) 는 연산된 모델의 집합적 지오메트리를 갖는 비디오 RAM (110) 을 제공한다; 모델은 GPU (111) 로 인해 디스플레이된다.
질의 엔진 (92) 은 질의를 프로세싱하고 결과를 RAM (107) 내에 저장한다. 표현 로더 (95) 는 연산된 모델의 지오메트리의 작업 포맷을 프로세싱하고 RAM (92) 내에 저장한다. 연산된 모델의 저장된 지오메트리는 디스플레이 드라이버 (99) 에 의해 사용되고 GPU (111) 로 전송된다.
도 12 는 본 발명을 수행하기 위해 구성된 네트워크 아키텍처의 실시형태의 개략도이다; 도 12 의 아키텍처는 일반적으로 액세스 가능한 표현들의 데이터베이스를 제공하는 공통의 볼트 서버 및 공통의 데이터베이스 서버로 인해, 다양한 사용자들이 본 발명의 프로세스를 수행하는 것을 허용하기 위해 구성된다. 도 12 의 예에서, 2 개의 로컬 영역 네트워크 (LAN)(121 및 122) 는 광대역 네트워크 (WAN; 120) 내에 접속된다. 도 12 는 데이터베이스 (127) 및 마스터 볼트 (128) 를 나타내고, 이는 LAN 들 (121 및 122) 로부터의 액세스를 위해 WAN (120) 내에 도시된다. 제 1 LAN (121) 은 2 개의 클라이언트들 (123 및 124) 을 포함하고, 제 2 LAN (122) 은 하나의 클라이언트 (125) 를 포함한다.
동작 시에, LAN (121 및 122) 중 하나의 클라이언트는 WAN (120) 을 통해 데이터베이스 (127) 를 액세스한다. 제 1 LAN (121) 의 클라이언트 (123 및 124) 및 제 2 LAN (122) 의 클라이언트 (125) 는 지오메트리와 같은 상기 객체들 상의 모든 정보, 객체들을 얻기 위해 마스터 볼트 (128) 를 직접 액세스한다.
본 발명의 바람직한 실시형태가 설명되었다. 본 발명의 사상 및 범위로부터 벗어남 없이 다양한 변형이 실시될 수도 있다는 것이 이해될 것이다. 따라서, 다음의 특허청구의 범위 내에서 다른 구현이 존재한다. 예를 들어, 모델의 연산은 클라이언트 컴퓨터 대신에 PDM 시스템에 의해 수행될 수도 있다. 따라서, 클라이언트 컴퓨터는 연산된 모델을 검색하고, 단지 모델의 뷰를 디스플레이한다.

Claims (19)

  1. 제품 라이프사이클 (lifecycle) 관리 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스로서,
    - 상기 데이터베이스에 대한 액세스를 제공하는 단계;
    - 상기 데이터베이스에서 상기 객체들의 어셈블리를 선택하는 단계 (S20);
    - 상기 어셈블리 상의 복수의 뷰포인트들을 식별하는 단계 (S60);
    - 복수의 식별된 뷰포인트들에 따라 상기 어셈블리의 객체들 세트를 상기 데이터베이스로부터 검색하는 단계 (S80);
    - 상기 객체들 세트 중 모든 검색된 객체들에 대해 상기 어셈블리의 모델을 연산하는 단계 (S100); 및
    - 모델의 뷰를 디스플레이하는 단계로서, 임의의 디스플레이되는 뷰들은 상기 검색하는 단계에서 검색된 객체들에서 시작하여 국부적으로 연산되는, 상기 모델의 뷰를 디스플레이하는 단계 (S110) 를 포함하는, 프로세스.
  2. 제 1 항에 있어서,
    객체들은 3 차원의 모델링된 객체들이고, 상기 객체들의 어셈블리의 연산된 모델은 그래픽 사용자 인터페이스 상에 디스플레이된 3 차원 모델인, 프로세스.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 식별된 뷰포인트들은 상기 객체들의 어셈블리 밖에 위치하는, 프로세스.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 검색된 객체들 세트의 객체들은 뷰포인트들에서 보이는, 프로세스.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 객체들 세트를 상기 데이터베이스로부터 검색하는 단계 전에,
    - 상기 식별된 뷰포인트들 및 상기 객체들의 어셈블리의 객체들을 통과하는 광선들을 연산하는 단계 (S70) 를 더 포함하는, 프로세스.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 복수의 뷰포인트들을 식별하는 단계는,
    - 상기 객체들의 어셈블리의 바운딩 볼륨의 면들을 식별하는 단계 (S40); 및
    - 상기 바운딩 볼륨의 각각의 식별된 면에 대해, 적어도 하나의 뷰포인트를 식별하는 단계 (S60) 를 포함하는, 프로세스.
  7. 제 6 항에 있어서,
    상기 객체들 세트를 상기 데이터베이스로부터 검색하는 단계 전에,
    연산된 광선들과 교차하는 상기 객체들의 어셈블리의 각각의 개별 객체에 대해 하나 이상의 바운딩 볼륨을 식별하는 단계 (S30) 를 더 포함하는, 프로세스.
  8. 제 7 항에 있어서,
    상기 연산된 광선들은 0 도 내지 45 도의 범위의 입사각으로 상기 식별된 면들을 통과하는, 프로세스.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    상기 디스플레이하는 단계에서, 상기 모델의 뷰는 비-연관 뷰인, 프로세스.
  10. 제 9 항에 있어서,
    상기 디스플레이하는 단계 전에,
    상기 비-연관 뷰를 형성하기 위해 상기 검색된 객체들 세트의 객체들을 집합시키는 단계를 더 포함하는, 프로세스.
  11. 제 10 항에 있어서,
    상기 검색된 객체들 세트 중의 상기 객체들의 지오메트리 (geometry) 가 집합되는, 프로세스.
  12. 제 1 항 내지 제 11 항 중 어느 한 항에 있어서,
    상기 객체들의 어셈블리를 선택하는 단계는,
    상기 모델의 디스플레이되는 뷰의 정밀도 (precision) 를 선택하는 단계를 더 포함하는, 프로세스.
  13. 제 12 항에 있어서,
    상기 선택된 정밀도는 상기 식별된 면 및 상기 식별된 면의 표면을 통과하는 다수의 광선들 간의 비율에 비례하는, 프로세스.
  14. 제 12 항 또는 제 13 항에 있어서,
    상기 정밀도는
    - 디폴트 값;
    - 사용자에 의해 선택된 값;
    - 네트워크의 적어도 하나의 파라미터에 따라 결정된 값;
    - 컴퓨터의 적어도 하나의 파라미터에 따라 결정된 값
    중 하나에서 선택되는, 프로세스.
  15. 제 12 항 내지 제 14 항 중 어느 한 항에 있어서,
    각각의 식별된 면에 대한 광선들의 수는 상기 선택된 정밀도에 따라 연산되는, 프로세스.
  16. 제 1 항 내지 제 15 항 중 어느 한 항에 있어서,
    상기 객체들의 어셈블리를 선택하는 단계는,
    - 상기 어셈블리의 구성을 선택하는 단계를 더 포함하는, 프로세스.
  17. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 객체들 세트를 상기 데이터베이스로부터 검색하는 단계는 사용자의 보안 콘텍스트 (context) 에 따라 수행되는, 프로세스.
  18. 제품 라이프사이클 (lifecycle) 관리 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위해 컴퓨터로 하여금 제 1 항 내지 제 17 항 중 어느 한 항에 기재된 프로세스의 단계들을 취하게 하기 위한 코드 수단을 포함하는 컴퓨터 판독가능 매체 상에 저장된 컴퓨터 프로그램.
  19. 제품 라이프사이클 (lifecycle) 관리 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 장치로서,
    제 1 항 내지 제 17 항 중 어느 한 항에 기재된 프로세스의 단계들을 구현하기 위한 수단을 포함하는, 장치.
KR1020100054595A 2009-06-10 2010-06-09 Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치 KR101706048B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP09290430.9A EP2261827B1 (en) 2009-06-10 2009-06-10 Process, program and apparatus for displaying an assembly of objects of a PLM database
EP09290430.9 2009-06-10

Publications (2)

Publication Number Publication Date
KR20100132926A true KR20100132926A (ko) 2010-12-20
KR101706048B1 KR101706048B1 (ko) 2017-02-14

Family

ID=41259585

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100054595A KR101706048B1 (ko) 2009-06-10 2010-06-09 Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치

Country Status (6)

Country Link
US (1) US9158865B2 (ko)
EP (1) EP2261827B1 (ko)
JP (1) JP5623797B2 (ko)
KR (1) KR101706048B1 (ko)
CN (1) CN102004809B (ko)
CA (1) CA2705955C (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2261827B1 (en) * 2009-06-10 2015-04-08 Dassault Systèmes Process, program and apparatus for displaying an assembly of objects of a PLM database
US20110179090A1 (en) * 2010-01-21 2011-07-21 Siemens Product Lifecycle Management Software Inc. Product Lifecycle Management Using a Sparsely Populated Table
US9047565B2 (en) 2010-09-17 2015-06-02 Fluor Technologies Corporation Intelligent plant development library environment
US8725763B2 (en) * 2011-11-23 2014-05-13 Siemens Product Lifecycle Management Software Inc. Massive model visualization with spatial indexing
US10185785B2 (en) * 2012-04-12 2019-01-22 Refraresources Llc System and method for tracking components of complex three dimensional structures
US9727640B2 (en) 2012-05-25 2017-08-08 Erin C. DeSpain Asymmetrical multilateral decision support system
CN103226753A (zh) * 2013-04-22 2013-07-31 中国电子科技集团公司第十研究所 全生命周期图档数据管理系统的实现方法
EP2800020B1 (en) * 2013-04-30 2020-11-04 Dassault Systèmes A computer-implemented method for manipulating three-dimensional modeled objects of an assembly in a three-dimensional scene.
EP2800064B1 (en) * 2013-04-30 2022-04-20 Dassault Systèmes A computer-implemented method for manipulating three-dimensional modeled objects of an assembly in a three-dimensional scene
US9588726B2 (en) 2014-01-23 2017-03-07 Accenture Global Services Limited Three-dimensional object storage, customization, and distribution system
USD795925S1 (en) * 2014-04-16 2017-08-29 Hitachi, Ltd. Display screen or portion thereof with icon
US10118108B2 (en) 2014-04-22 2018-11-06 General Electric Company System and method of distillation process and turbine engine intercooler
EP3040946B1 (en) * 2014-12-30 2019-11-13 Dassault Systèmes Viewpoint selection in the rendering of a set of objects
EP3040945B1 (en) * 2014-12-30 2019-06-19 Dassault Systèmes Creation of bounding boxes on a 3d modeled assembly
US10373237B2 (en) * 2015-01-16 2019-08-06 Accenture Global Services Limited Three-dimensional object storage, customization, and procurement system
US10024195B2 (en) 2015-02-19 2018-07-17 General Electric Company System and method for heating make-up working fluid of a steam system with engine fluid waste heat
US10614632B2 (en) 2015-04-23 2020-04-07 Siemens Industry Software Inc. Massive model visualization with a product lifecycle management system
US10487695B2 (en) 2015-10-23 2019-11-26 General Electric Company System and method of interfacing intercooled gas turbine engine with distillation process
EP3185152B1 (en) * 2015-12-22 2022-02-09 Dassault Systèmes Distributed clash and snapping
US10062199B2 (en) * 2016-06-27 2018-08-28 Pixar Efficient rendering based on ray intersections with virtual objects
US10430997B2 (en) 2017-02-23 2019-10-01 OPTO Interactive, LLC Method of managing proxy objects
US10635841B2 (en) * 2017-02-23 2020-04-28 OPTO Interactive, LLC Method of managing proxy objects
US10198863B2 (en) * 2017-02-23 2019-02-05 OPTO Interactive, LLC Method of managing proxy objects
US20180300326A1 (en) * 2017-04-17 2018-10-18 The Boeing Company Three-Dimensional Massive Model Visualization Database System
JP6723533B2 (ja) * 2018-07-05 2020-07-15 株式会社東陽テクニカ ドライビングシミュレーター
WO2021230854A1 (en) * 2020-05-11 2021-11-18 Siemens Industry Software Inc. Combined server requests for computer-aided design (cad) applications
CN112528436A (zh) * 2020-12-18 2021-03-19 中国石油大学(华东) 一种用于三维模型装配设计的基础数据管理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060049696A (ko) * 2004-06-28 2006-05-19 다솔 시스템므 모델링된 대상물의 데이터베이스를 네비게이션하기 위한그래픽적 방법
KR20070072416A (ko) * 2005-12-30 2007-07-04 다솔 시스템므 Plm 데이터베이스의 대상물을 디스플레이하는 프로세스및 그 프로세스를 구현하는 장치
KR20070072409A (ko) * 2005-12-30 2007-07-04 다솔 시스템므 Plm 데이터베이스에서 대상물을 선택하는 프로세스 및그 프로세스를 구현하는 장치
KR20070072415A (ko) * 2005-12-30 2007-07-04 다솔 시스템므 Plm 데이터베이스에서 대상물을 선택하는 프로세스 및그 프로세스를 구현하는 장치

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544067A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation
CA2040273C (en) * 1990-04-13 1995-07-18 Kazu Horiuchi Image displaying system
JPH0644255A (ja) * 1991-05-17 1994-02-18 Shimizu Corp 統合的生産プロジェクト情報管理システム
JP2746790B2 (ja) * 1992-03-02 1998-05-06 富士写真フイルム株式会社 立体画像記録方法および立体画像記録装置
US6184857B1 (en) * 1993-01-04 2001-02-06 Roy W. Latham Computer-implemented method of rendering an image of smoke
US5633993A (en) * 1993-02-10 1997-05-27 The Walt Disney Company Method and apparatus for providing a virtual world sound system
JPH06348787A (ja) 1993-06-02 1994-12-22 Matsushita Electric Ind Co Ltd 画像表示装置
EP0684585B1 (en) * 1994-04-22 2003-02-05 Canon Kabushiki Kaisha Image forming method and apparatus
US5913184A (en) * 1994-07-13 1999-06-15 Siemens Aktiengesellschaft Method and device for diagnosing and predicting the operational performance of a turbine plant
US5613049A (en) 1994-10-26 1997-03-18 The Boeing Company Method for creating spatially balanced bounding volume hierarchies for use in a computer generated display of a complex structure
US6016147A (en) * 1995-05-08 2000-01-18 Autodesk, Inc. Method and system for interactively determining and displaying geometric relationships between three dimensional objects based on predetermined geometric constraints and position of an input device
US5963664A (en) * 1995-06-22 1999-10-05 Sarnoff Corporation Method and system for image combination using a parallax-based technique
US5822587A (en) * 1995-10-20 1998-10-13 Design Intelligence, Inc. Method and system for implementing software objects
US6088006A (en) * 1995-12-20 2000-07-11 Olympus Optical Co., Ltd. Stereoscopic image generating system for substantially matching visual range with vergence distance
DE19549306A1 (de) * 1995-12-22 1997-07-03 Art & Com Medientechnologie Un Verfahren und Vorrichtung zur bildlichen Darstellung raumbezogener Daten
US6278418B1 (en) * 1995-12-29 2001-08-21 Kabushiki Kaisha Sega Enterprises Three-dimensional imaging system, game device, method for same and recording medium
US5864333A (en) * 1996-02-26 1999-01-26 O'heir; Brian S. Foot force actuated computer input apparatus and method
US6084979A (en) * 1996-06-20 2000-07-04 Carnegie Mellon University Method for creating virtual reality
US6121971A (en) * 1997-01-27 2000-09-19 International Business Machines Corporation Method and system for providing visual hierarchy of task groups and related viewpoints of a three dimensional environment in a display of a computer system
US6222547B1 (en) * 1997-02-07 2001-04-24 California Institute Of Technology Monitoring and analysis of data in cyberspace
US6104406A (en) * 1997-04-04 2000-08-15 International Business Machines Corporation Back away navigation from three-dimensional objects in three-dimensional workspace interactive displays
US5900879A (en) * 1997-04-28 1999-05-04 International Business Machines Corporation Three-dimensional workspace interactive display having browsing viewpoints for navigation and work viewpoints for user-object interactive non-navigational work functions with automatic switching to browsing viewpoints upon completion of work functions
US6094196A (en) * 1997-07-03 2000-07-25 International Business Machines Corporation Interaction spheres of three-dimensional objects in three-dimensional workspace displays
US6014145A (en) * 1997-07-07 2000-01-11 International Business Machines Corporation Navagation with optimum viewpoints in three-dimensional workspace interactive displays having three-dimensional objects with collision barriers
US6222554B1 (en) * 1997-08-26 2001-04-24 International Business Machines Corporation Navigation in three-dimensional workspace interactive displays having virtual force fields associated with selected objects
US6108664A (en) * 1997-10-31 2000-08-22 Oracle Corporation Object views for relational data
JP3269797B2 (ja) * 1997-12-12 2002-04-02 株式会社ナムコ 画像生成装置及び情報記憶媒体
WO1999041704A1 (en) * 1998-02-17 1999-08-19 Sun Microsystems, Inc. Estimating graphics system performance for polygons
US6266068B1 (en) * 1998-03-13 2001-07-24 Compaq Computer Corporation Multi-layer image-based rendering for video synthesis
US6118456A (en) * 1998-04-02 2000-09-12 Adaptive Media Technologies Method and apparatus capable of prioritizing and streaming objects within a 3-D virtual environment
US6154564A (en) * 1998-07-10 2000-11-28 Fluor Corporation Method for supplementing laser scanned data
US6556206B1 (en) * 1999-12-09 2003-04-29 Siemens Corporate Research, Inc. Automated viewpoint selection for 3D scenes
US6604068B1 (en) * 2000-05-18 2003-08-05 Cyra Technologies, Inc. System and method for concurrently modeling any element of a model
US6493858B2 (en) * 2001-03-23 2002-12-10 The Board Of Trustees Of The Leland Stanford Jr. University Method and system for displaying VLSI layout data
JP2003006242A (ja) 2001-06-26 2003-01-10 Sharp Corp 製品データ管理システム、そのシステムを動作させるためのプログラム、そのプログラムが記録された記録媒体および製品データ管理方法
US6803912B1 (en) * 2001-08-02 2004-10-12 Mark Resources, Llc Real time three-dimensional multiple display imaging system
US6917370B2 (en) * 2002-05-13 2005-07-12 Charles Benton Interacting augmented reality and virtual reality
US20040059657A1 (en) * 2002-06-24 2004-03-25 Juergen Kind Computerized systems and methods for performing transactions
CH703073B1 (de) 2003-03-19 2011-11-15 Roland Pulfer Vergleich von Modellen eines komplexen Systems.
US7877390B2 (en) * 2003-10-20 2011-01-25 International Business Machines Corporation Systems and methods for providing autonomous persistent storage systems
EP1612698A1 (en) * 2004-06-28 2006-01-04 Dassault Systèmes Method and system for graphically navigating among stored objects
US20060098009A1 (en) * 2004-10-28 2006-05-11 Miguel Zuniga Method and apparatus for ray and range queries using wide object isolation techniques
US7365747B2 (en) * 2004-12-07 2008-04-29 The Boeing Company Methods and systems for controlling an image generator to define, generate, and view geometric images of an object
EP1672548A1 (en) * 2004-12-20 2006-06-21 Dassault Systèmes Process and system for rendering an object in a view using a product lifecycle management database
US7646384B2 (en) * 2005-03-31 2010-01-12 Siemens Product Lifecycle Management Software Inc. System and method to determine a simplified representation of a model
EP1883020B1 (en) * 2006-07-28 2013-05-22 Dassault Systèmes Method and system for navigating in a database of a computer system
JP2008056213A (ja) 2006-09-07 2008-03-13 Hitachi Ltd 構造体の製作方法及び構造体
EP1939771A1 (en) 2006-12-28 2008-07-02 Dassault Systèmes Method and a computer program product for computer aided design of a product comprising a set of constrained objects
JP4915518B2 (ja) 2007-02-16 2012-04-11 富士通株式会社 3次元モデル表示装置、そのプログラム及び方法
CN101303651B (zh) * 2007-05-10 2011-08-24 联芯科技有限公司 业务处理方法及采用该方法的用户设备
US8072460B2 (en) * 2007-10-17 2011-12-06 Nvidia Corporation System, method, and computer program product for generating a ray tracing data structure utilizing a parallel processor architecture
US8473524B2 (en) * 2009-04-28 2013-06-25 Dassault Systemes Method and system for updating object data with respect to object specifications in a product life cycle management system
EP2261827B1 (en) * 2009-06-10 2015-04-08 Dassault Systèmes Process, program and apparatus for displaying an assembly of objects of a PLM database
US8907947B2 (en) * 2009-12-14 2014-12-09 Dassault Systèmes Method and system for navigating in a product structure of a product
US10152198B2 (en) * 2009-12-15 2018-12-11 Dassault Systèmes Method and system for editing a product assembly
US8244754B2 (en) * 2010-02-01 2012-08-14 International Business Machines Corporation System and method for object searching in virtual worlds
US8868588B2 (en) * 2010-05-27 2014-10-21 Oracle International Corporation System and method for providing a composite view object and SQL bypass in a business intelligence server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060049696A (ko) * 2004-06-28 2006-05-19 다솔 시스템므 모델링된 대상물의 데이터베이스를 네비게이션하기 위한그래픽적 방법
KR20070072416A (ko) * 2005-12-30 2007-07-04 다솔 시스템므 Plm 데이터베이스의 대상물을 디스플레이하는 프로세스및 그 프로세스를 구현하는 장치
KR20070072409A (ko) * 2005-12-30 2007-07-04 다솔 시스템므 Plm 데이터베이스에서 대상물을 선택하는 프로세스 및그 프로세스를 구현하는 장치
KR20070072415A (ko) * 2005-12-30 2007-07-04 다솔 시스템므 Plm 데이터베이스에서 대상물을 선택하는 프로세스 및그 프로세스를 구현하는 장치

Also Published As

Publication number Publication date
JP5623797B2 (ja) 2014-11-12
CA2705955C (en) 2018-10-16
CN102004809A (zh) 2011-04-06
EP2261827B1 (en) 2015-04-08
US9158865B2 (en) 2015-10-13
KR101706048B1 (ko) 2017-02-14
CA2705955A1 (en) 2010-12-10
JP2010287233A (ja) 2010-12-24
EP2261827A1 (en) 2010-12-15
CN102004809B (zh) 2016-08-03
US20110137892A1 (en) 2011-06-09

Similar Documents

Publication Publication Date Title
KR101706048B1 (ko) Plm 데이터베이스의 객체들의 어셈블리를 디스플레이하기 위한 프로세스, 프로그램 및 장치
JP5230095B2 (ja) Plmデータベース内のオブジェクトを表示する処理および本処理を実装した装置
KR100949688B1 (ko) 모델링된 대상물의 데이터베이스를 네비게이션하기 위한 그래픽적 방법
KR101333930B1 (ko) Plm 데이터베이스에서 오브젝트를 선택하는 방법 및 그 방법을 구현하는 장치
US10002465B2 (en) Creation of bounding boxes on a 3D modeled assembly
KR101461664B1 (ko) Plm 데이터베이스에서 오브젝트를 선택하는 방법 및 그 방법을 구현하는 장치
US20120078587A1 (en) Designing A Modeled Object Within A Session Of A Computer-Aided Design System Interacting With A Database
JP6721333B2 (ja) オブジェクトのセットの視点の選択

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