KR100246066B1 - 컴퓨터 그래픽 시스템 및 그래픽 시스템 동작 제어 방법 - Google Patents

컴퓨터 그래픽 시스템 및 그래픽 시스템 동작 제어 방법 Download PDF

Info

Publication number
KR100246066B1
KR100246066B1 KR1019960006246A KR19960006246A KR100246066B1 KR 100246066 B1 KR100246066 B1 KR 100246066B1 KR 1019960006246 A KR1019960006246 A KR 1019960006246A KR 19960006246 A KR19960006246 A KR 19960006246A KR 100246066 B1 KR100246066 B1 KR 100246066B1
Authority
KR
South Korea
Prior art keywords
graphics
text
display
processing engine
markup
Prior art date
Application number
KR1019960006246A
Other languages
English (en)
Other versions
KR960035352A (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 KR960035352A publication Critical patent/KR960035352A/ko
Application granted granted Critical
Publication of KR100246066B1 publication Critical patent/KR100246066B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • 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/004Annotating, labelling

Abstract

본 발명의 컴퓨터 그래픽 시스템은 그래픽 처리 엔진, 텍스트 처리 엔진 및 감독 제어기를 포함한다. 그래픽 처리 엔진은 디스플레이의 제1부분에 3차원 객체를 나타내는 그래픽 데이터를 처리하여 디스플레이한다. 텍스트 처리 엔진은 사용자 입력에 따라 텍스트를 입력하고 디스플레이의 제2부분에 그 텍스트를 디스플레이한다. 텍스트의 각 부분은 그래픽 처리 엔진의 동작을 제어하는 커맨드 또는 핫링크를 나타낸다. 감독 제어기는 디스플레이의 제1부분에 디스플레이된 일부 텍스트의 사용자 선택에 응답하여 커맨드에 따라 적어도 하나의 그래픽 기능을 수행하기 위해 그래픽 처리 엔진을 제어한다. 그래픽 기능은 3차원 객체, 3차원 마크업, 사전정의된 뷰 포인트, 혹은 사전정의된 애니메이션중 적어도 하나와 관련될 수도 있다.
디스플레이된 텍스트를 선택하는 것에 의해 그래픽 기능을 수행할 수 있는 능력을 제공함으로써, 본 발명의 그래픽 시스템은 그 시스템에 대한 최소의 학습 및 지식만을 필요로 하는 효율적이고, 사용자에게 친숙한 인터페이스를 제공한다. 또한, 본 발명의 시스템은, 예를 들어, 제품 개발의 설계 반복동안 엔지니어링 변화 요구 등의 매우 다양한 응용 영역에서 유용한 3차원 장면(모델)과 관련해서 비기하학적 정보를 통신하기에 적합한 효과적인 수단을 제공한다.

Description

컴퓨터 그래픽 시스템 및 그래픽 시스템 동작 제어 방법
제1도는 2차원 스크린상에 3차원 객체를 디스플레이하기 위해 그래픽 시스템을 이용하는 방법을 도시한 도면.
제2도는 본 발명의 그래픽 시스템의 구조를 기능적인 블록도로서 도시한 도면.
제3도는 본 발명에 따라 텍스트 처리 서브시스템과 그래픽 서브시스템을 결합하는 커맨드 경로를 도시한 도면.
제4도는 본 발명에 따라 애니메이션을 생성, 편집 및/또는 사용하기 위해 텍스트 처리 서브시스템에 의해 수행되는 루틴을 예시하는 흐름도.
제5도는 본 발명에 따라 주제어 엔진에 의해 수행되는 커맨드 파싱 루틴을 예시하는 흐름도.
제6도는 사용자에게 하나 이상의 선택된 객체와 연관된 주석 윈도우내에 디스플레이된 텍스트의 부분을 찾아 밝게 나타낼 수 있는 능력을 제공하는데 있어서 그래픽 서브시스템, 주제어 엔진 및 텍스트 처리 서브시스템의 동작을 예시하는 흐름도.
제7도는 사용자에게 하나 이상의 선택된 마크업과 연관된 주석 윈도우내에 디스플레이된 텍스트의 부분을 찾아 밝게 나타낼 수 있는 능력을 제공하는데 있어서 그래픽 서브시스템, 주제어 엔진 및 텍스트 처리 서브시스템의 동작을 예시하는 흐름도.
제8도는 사용자에게 하나 이상의 선택된 마크업과 연관된 그래픽 윈도우내에 디스플레이된 하나 이상의 객체의 디스플레이 속성을 갱신할 수 있는 능력을 제공하는데 있어서 주제어 엔진 및 그래픽 서브시스템의 동작을 예시하는 흐름도.
제9도는 사용자에게 하나 이상의 선택된 객체와 연관된 마크업에 대한 그래픽 윈도우내에 하나 이상의 마크업과 연관된 디스플레이 속성을 갱신하거나 혹은 하나 이상의 마크업을 디스플레이할 수 있는 능력을 제공하는데 있어서 주제어 엔진 및 그래픽 서브시스템의 동작을 예시하는 흐름도.
제10도는 그래픽 처리가 주로 하드웨어적으로 구현되는 본 발명의 그래픽 시스템의 구조를 기능적으로 도시하는 도면.
* 도면의 주요부분에 대한 부호의 설명
100 : 그래픽 시스템 104 : 시스템 메모리
106 : 시스템 버스 108 : 입/출력 장치
110 : 주제어 엔진 112 : 그래픽 서브시스템
114 : 텍스트 처리 서브시스템 116 : 입/출력 폴링 서브시스템
118 : 디스플레이 장치
본 발명은 전반적으로 컴퓨터 그래픽 시스템(computer graphics systems)에 관한 것으로, 특히 사용자 대화(user interactivity)를 통해 기하학적 및 비기하학적 정보(geometric and nongeometric information)를 생성하고, 캡슐화하고, 트래버스(traverse)하는 컴퓨터 그래픽 시스템에 관한 것이다.
그래픽 시스템은 3차원 객체(three-dimensional objects) 및 관련 특징(features)을 나타내는 대량의 데이터를 기억한다. 예를 들면, 데이터는 z축(깊이)을 따르는 객체의 표면 각각의 위치, 또는 객체의 표면 각각의 컬러일 수도 있다. 데이터는 객체가 디스플레이될 시각 포인트(visual point)를 정의하는 뷰 포인트(view point)에 따라서 처리된다. 뷰 포인트는 전형적으로 제1도에 도시된 바와 같이 스크린을 통해 뷰 포인트로부터 지나는 광선(ray of light)을 추적하는 것에 의해 2차원 스크린상에 객체를 디스플레이하는데 이용된다.
종래, 대화형 그래픽 애플리케이션(interactive graphics applications)은 뷰 포인트 제어(view point control)를 수행하고, 따라서 3차원 객체의 장면(scene)을 통해, 키보드 커맨드(keyboard commands) 및/또는 풀 다운 메뉴(pull down menus)에 의한 사용자와의 대화를 통해, 또는 스페이스볼(Spaceball) 또는 마우스(mouse)와 같은 네비게이션 장치(navigation devices)의 조작을 통해 네비게이션하는 능력을 제공한다. 전형적으로, 각종 키보드 커맨드 및/또는 풀 다운 메뉴의 버튼 및/또는 네비게이션 장치 조작은 뷰 포인트의 점증적 조정(incremental adjustments)에 대응한다. 예를 들면, 점증적 조정은 줌 아웃(zoom out), 줌 인(zoom in), 우로 이동(move right), 좌로 이동(move left), 위로 이동(move up), 또는 아래로 이동(move down)을 포함할 수도 있다. 더욱이, 다수의 그래픽 애플리케이션은 일련의 사전선택된 뷰를 기억할 수 있는 능력을 사용자에게 제공하며, 통상 애니메이션(animation)으로 불리운다. 이와 같은 애플리케이션에 있어서, 다른 키보드 커맨드 및/또는 풀 다운 메뉴의 버튼 및/또는 네비게이션 장치 동작은 애니메이션의 시작, 애니메이션의 중지, 혹은 애니메이션을 순차적으로 다음 또는 이전의 뷰로 이동시키기 위해 점증적으로 갱신하는 것과 같이 이들 애니메이션을 제어하는 것과 관련된다.
또한, 종래의 대화형 그래픽 애플리케이션은 픽크 동작(pick operation)을 이용한 객체 선택(object selection)을 위해 제공된다. 전형적으로, 사용자는 마우스 또는 라이트 펜(light pen)과 같은 포인팅 장치(pointing device)를 사용하여 3차원 장면의 일부분 위에 커서(cursor) 또는 픽킹 윈도우(picking window)의 위치를 정하여 원하는 선택을 한다. 그래픽 시스템은, 전형적으로 픽킹 개구(picking aperture)를 정의하고 3차원 장면의 모든 객체를 횡단함으로써 픽킹 동작을 수행하여 픽킹 개구에 의해 교차되는 이들 객체를 결정한다. 그 다음, 사용자는 그 교차하는 객체들중 하나를 픽크된 객체로서 선택할 수 있다. 이와 달리, 교차하는 객체는 종래의 z-버퍼 기법(z-buffer techniques)을 사용해 깊이에 따라 소트한 다음, 가장 앞에 있는 객체를 픽크된 객체로서 선택할 수 있다.
특히, 실리콘 그래픽스(Silicon Graphics)는 3차원 모델의 객체와 연관된 3차원 마커 및 주석(annotations)을 생성할 수 있는 능력을 사용자에게 제공하는 IRIS Anotator란 명칭의 대화형 그래픽 애플리케이션(interactive graphics application)을 발매하였다. 예를 들면, 화살표(arrow), 핀 또는 불릿(pin or bullet)일 수도 있는 마커(markers)가 모델내 관심있는 포인트에 배치될 수 있다. 주석은 텍스트, 오디오, 영상, 비디오, 혹은 3차원 모델과 같은 디지털 매체(digital media)를 포함할 수도 있다. 주석은 특수한 주석과 연관된 마커와 병치된 소정 아이콘으로서 생성되어, 그 모델내에 내장된다(import). 더욱이, 사용자는 모델의 바람직한 뷰와 각각의 마커를 결합하여 뷰 포인트 제어를 용이하게 할 수 있다.
전술한 그래픽 애플리케이션에 있어서, 사용자와 애플리케이션간의 대화는 종래의 입력 장치의 동작(예를 들면, 마우스를 포인팅하고 클릭함)에 능숙하고, 또한 그래픽 애플리케이션에 의해 제공되는 커맨드를 발행하는(예를 들면, 뷰 포인트를 변경하기 위해 메뉴를 풀 다운하는) 특정 방안에 대한 지식을 가진 사용자를 필요로 한다. 이들 애플리케이션에 대해 미숙하고 지식이 부족한 사용자에 대해, 애플리케이션에 능숙해지고 지식을 획득하도록 하는 것은 시간 소모적이고 어려운 작업일 것이다. 더욱이, 몇몇 사용자는 애플리케이션에 능숙해지고 지식을 배우기 위한 시간 및 에너지 및 결정을 갖지 못할 수도 있기 때문에, 이러한 애플리케이션에 대한 사용자 베이스는 제한될 수도 있다.
더욱이, 전형적인 설계 및 제조 활동에 있어서, 개발중인 제품의 3차원 모델에 비기하학적 정보를 부가할 필요성이 있다. 예를 들면, 이러한 정보는 설계 반복(design iteration)과 관련된 엔지니어링 변화를 설명하는 텍스트 형태일 수 있다. 이러한 영역에서, 엔지니어, 디자이너, 제조자, 매니저, 기술진, 마케팅 등을 포함하는 제품의 개발에 참여하는 사람들간의 통신을 용이하게 하기 위해 비기하학적 정보와 기하학적 3차원 모델간의 견고한 결합이 필요하다.
본 발명의 목적은 사용자와 엔지니어링 설계 및 제조에 대해 기하학적 및 비기하학적 정보의 생성, 캡슐화, 프리젠테이션(presentation) 및 트래버스에 관한 컴퓨터 그래픽 애플리케이션간의 대화형 조작을 단순화하는데 있다.
본 발명의 다른 목적은 3차원 장면을 통해 주석과 네비게이션 간에 관련을 부여하는 데 있다.
본 발명의 또다른 목적은 주석과 뷰 포인트 제어간에 관련을 부여하는데 있다.
본 발명의 또다른 목적은 주석과 애니메이션 제어간에 관련을 부여하는데 있다.
본 발명의 또다른 목적은 주석과 3차원 장면의 선택 및 디스플레이 간에 관련을 부여하는데 있다.
본 발명의 또다른 목적은 주석과 3차원 장면의 3차원 마크업의 선택 및 디스플레이 간에 관련을 부여하는 데 있다.
본 발명에 따르면, 컴퓨터 그래픽 시스템은 디스플레이의 제1부분에 3차원 객체를 나타내는 그래픽 데이터를 처리하고 디스플레이하기 위한 그래픽 처리 엔진(graphics processing engine), 사용자 입력에 따라 텍스트를 입력하고 그래픽 처리 엔진의 동작을 제어하는 커맨드를 표시하는 디스플레이의 제2부분에 텍스트를 디스플레이하기 위한 텍스트 처리 엔진(text processing engine)-텍스트 부분들은 그래픽 처리 엔진의 동작을 제어하는 커맨드를 표시함- 및 디스플레이의 제1부분에 디스플레이된 텍스트 부분의 사용자 선택에 응답하여 그 커맨드에 따라 적어도 하나의 그래픽 기능을 수행하기 위해 그래픽 처리 엔진을 제어하는 감독 제어기(supervisory controller)를 포함한다. 적어도 그래픽 기능은 3차원 객체, 3차원 마크업, 사전정의된 뷰 포인트, 혹은 사전정의된 애니메이션중 적어도 하나와 관련될 수도 있다.
디스플레이된 텍스트를 선택하는 것에 의해 그래픽 기능을 수행할 수 있는 능력을 사용자에게 제공하여, 본 발명의 그래픽 시스템은 최소 학습 및 지식을 필요로 하는 효율적이고, 친절한 사용자 인터페이스를 제공한다. 더욱이, 본 발명에 의해 제공된 효율적인 사용자 인터페이스는, 제품의 개발에 참여하는 사람들간의 통신을 용이하게 하기 위해 비기하학적 정보와 기하학적 3차원 모델간의 결합을 견고히 할 필요성이 있는 설계 및 제조 활동에 사용하기에 적합하다.
본 발명의 전체적인 구조는 제2도에 도시되어 있다. 그래픽 시스템(graphics system)(100)은 시스템 버스(system bus)(106)를 통해 시스템 메모리(system memory)(104)내에 결합되는 호스트 프로세서(host processor)(102)를 구비한다. 시스템 메모리(104)는 하나 이상의 3차원 모델내에 포함된 객체를 정의하는 그래픽 데이터를 기억하는 랜덤 엑세스 메모리(random access memory)로 구성된다. 각각의 객체를 정의하는 그래픽 데이터는 프리미티브(primitives)의 좌표 및 속성(예를 들면, 컬러)으로 구성된다. 프리미티브의 좌표 및 속성은 입체, 선 또는 면과 같은 기하학적 개체(geometric entities)이다. 전형적으로, 프리미티브의 좌표 및 속성은 세 정점의 세트로 이루어진 삼각형이다. 이러한 경우에 있어서, 시스템 메모리(104)는 각각의 삼각형의 정점의 순서 리스트(ordered list) 및 3차원 장면의 각각의 객체와 연관된 삼각형을 리스트하는 어레이(또는 연결 리스트(linked list)와 같은 유사한 데이터 구조)를 포함하는 계층적 데이터 구조를 포함하는 것이 바람직하다. 또한, 시스템 메모리(104)는 하나 이상의 사전정의된 뷰 포인트와 하나 이상의 객체를 결합하는 어레이(또는 연결 리스트와 같은 유사한 데이터 구조)를 포함할 수도 있고, 사전정의된 뷰 포인트의 리스트와 하나 이상의 객체를 결합하는 애니메이션의 어레이(또는 연결 리스트와 같은 유사한 데이터 구조)를 또한 포함할 수도 있다.
더욱이, 시스템 메모리(104)는 3차원 장면의 하나 이상의 객체와 연관된 3차원 마크업을 정의하는 데이터를 기억할 수도 있다. 각각의 마크업을 정의하는 그래픽 데이터는 프리미티브의 좌표 및 속성(예를 들면, 컬러)으로 구성되거나 혹은 3차원으로 배치된 아이콘 또는 비트맵(bitmaps)으로 구성될 수도 있다. 마크업을 정의하는 프리미티브의 좌표 및 속성은 세정점의 세트로 이루어진 삼각형이거나 두 정점의 세트로 이루어진 에지(edges)일 수도 있다. 이러한 경우에 있어서, 시스템 메모리(104)는 3차원 장면의 각각의 마크업을 나타내는 삼각형 또는 에지를 리스트하는 어레이(또는 연결 리스트와 같은 유사한 데이터 구조)를 포함하는 것이 바람직하다. 더욱이, 시스템 메모리(104)는 3차원 장면의 하나 이상의 객체와 마크업을 결합하는 어레이(또는 연결 리스트와 같은 유사한 데이터 구조), 사전정의된 뷰 포인트와 마크업으르 결합하는 다른 어레이(또는 연결 리스트와 같은 유사한 데이터 구조) 및 사전정의된 애니메이션과 마크업을 결합하는 또다른 어레이(또는 연결 리스트와 같은 유사한 데이터 구조)를 포함할 수도 있다.
입/출력장치(I/O)(108)는 시스템 버스(106)를 통해 호스트 프로세서(102)와 인터페이스한다. 입/출력장치(108)는 키보드, 템플릿(template) 또는 텍스트 엔트리용 터치 패드(touch pad), 마우스, 트랙볼, 스페이스볼 또는 사용자가 입력용 라이트 펜과 같은 포인팅 장치, 음성 입력용 음성 인식, 오디오 출력용 스피커, 손으로 쓴 입력의 핸드라이팅 인식용 펜/태블릿, 및 비디오 입력용 비디오 카메라를 포함할 수도 있다.
호스트 프로세서(102)의 환경은 그래픽 서브시스템(112), 텍스트 처리 서브 시스템(114) 및 입/출력 폴링 서브시스템(116)과 인터페이스하는 주제어 엔진(110)을 포함한다. 그래픽 서브시스템(112)은 (도시된 바와 같이) 호스트 프로세서(102)의 일부이거나, 혹은 호스트 프로세서(102)와 통합된 코프로세서(co-processor)의 일부일 수도 있다. 그래픽 서브시스템(112)은, 시스템 버스(106)를 통해 시스템 메모리(104)와 인터페이스하고, 시스템 메모리(104)내에 기억된 그래픽 데이터가 디스플레이 장치(118)의 일부 디스플레이 영역에 픽셀의 어레이로서 디스플레이되도록 동작한다. 디스플레이 장치(118)는 픽셀을 디스플레이하기 위해 래스터 주사 기법(raster scan techniques) 또는 액정 디스플레이 기법(liquid crystal display techniques)을 이용할 수도 있다. 텍스트 처리 서브시스템(114)은 텍스트 또는 아이콘과 같은 다른 기호 데이터(symbolic data)를 디스플레이 장치(118)의 일부 디스플레이 영역상에 생성 및 디스플레이하기 위해 동작한다. 입/출력 폴링 서브시스템(116)은 사용자 입력에 대해 입/출력장치(108)를 주기적으로 폴링(poll)한다. 주제어 엔진(110)은 입/출력 폴링 서브시스템(116)으로부터 수신된 사용자 입력 데이터에 따라서 그래픽 서브시스템(112) 및 텍스트 처리 서브 시스템(114)을 제어한다.
바람직하게, 호스트 프로세서(102)의 환경은 또한 사용자에게 디스플레이 장치(118)의 디스플레이 영역상에 다수의 디스플레이 윈도우를 생성할 수 있는 능력을 제공하는 윈도우 매니저(window manager)(120)를 또한 포함하며, 각각의 윈도우는 특정 태스크(specific task)와 연관되며, 또한 통상 스레드(thread)로 불리운다. 이러한 경우에 있어서, 윈도우 매니저(120)는, 그래픽 서브시스템(112)에 의해 만들어진 3차원 장면을 디스플레이하기 위한 적어도 하나의 윈도우를 표시하고, 텍스트 처리 서브 시스템(114)에 의해 발생된 텍스트를 디스플레이하기 위한 개개의 윈도우(separate window)를 표시하기 위해 이용될 수도 있다. 더욱이, 이들 윈도우는 나란히 디스플레이되거나 또는 오버랩될 수 있다.
본 발명에 따르면, 사용자 입력 커맨드 또는 텍스트 처리 서브 시스템(114)내에서 생성되고 순차적으로 선택되는 핫링크(hot links)는 그래픽 서브시스템(112)에 결합되어 동작을 제어한다. 제3도에 예시된 바와 같이, 핫링크는 사전 정의된 뷰 또는 시스템 메모리(104)내에 기억된 애니메이션, 시스템 메모리(104)내에 기억된 3차원 마크업, 혹은 3차원 장면을 정의하는 하나 이상의 객체와 연관될 수도 있다. 이하, 제3도에 예시된 각각의 커맨드 경로가 보다 상세히 설명된다.
제4도는 뷰, 애니메이션, 객체 및 시스템 메모리(104)내에 기억된 3차원 마크업과 연관된 핫링크를 생성 및 동작시키는데 있어서 텍스트 처리 서브 시스템(114)의 동작을 예시한다. 현재의 3차원 장면(또는 모델)은 디스플레이 장치(118)의 디스플레이 영역의 그래픽 윈도우내에 디스플레이되고 있는 것으로 가정한다. 단계(201)에서, 사용자는 입/출력장치(108)를 통해 텍스트를 입력하거나 혹은 편집하며, 입/출력장치(108)는 윈도우 매니저(120)에 의해 디스플레이 장치(118)의 주석 윈도우(annotation window)내에 디스플레이된다. 사용자는 키보드 또는 특수한 음성 커맨드(specific voice commands)를 통해 음성 인식 시스템(speech recognition system)에 텍스트를 입력할 수도 있다. 주석 윈도우는 나란히 존재하거나 혹은 그래픽 윈도우를 오버레이할 수도 있다. 단계(203)에서, 텍스트 처리 서브 시스템(114)은 텍스트의 일부가 핫링크를 나타내는지를 결정한다. 종래, 엔트리 및 편집동안, 텍스트는 일련의 ASCII 코드로써 표시된다. 이러한 경우에 있어서, 특정 ASCII 코드 또는 ASCII 코드의 세트는 텍스트 문서(text document)내에 핫링크가 존재한다는 것을 표시하는데 사용될 수 있다. 예를 들면, 텍스트 문자열(text string)(즉, <<V3>>) 내에 포함된 “<<” 및 “>>”에 대한 ASCII 코드는 핫링크의 존재를 가리킬 수도 있다. 따라서, 텍스트의 일부가 핫링크를 나타내는지를 결정하기 위해, 텍스트 처리 서브 시스템(114)은 텍스트의 ASCII 코드를 분석하여 매칭을 탐색한다. 핫링크를 인코드 및 디코드하기 위해 National Center for Supercomputing Applications에 의해 1993년 개설된 인터넷상의 marca@ncsa.uiuc.edu로부터 이용할 수 있는 “A Beginner’s Guide to HTML”에 설명되어 있는 바와 같이 HyperText Markup Language(HTML) standard와 같은 다른 시맨틱스(semantics)가 이용될 수 있다.
단계(203)에서, 텍스트 처리 서브 시스템(114)이 텍스트의 일부가 핫링크라고 판정하면, 단계(205)에서, 텍스트 처리 서브 시스템(114)은 핫링크를 나타내는 텍스트의 부분을 밝게 표시할 수 있으며, 그런 다음 단계(207)를 수행한다. 그렇지 않으면, 텍스트 처리 서브 시스템(114)은 단계(205)를 우회하여 단계(207)를 바로 수행할 수 있다. 단계(207)에서, 텍스트 처리 서브 시스템(114)은 사용자가 핫링크를 선택하였는지를 결정한다. 예를 들면, 사용자는 관련 텍스트(relevant text)를 클릭하고, 특정 키보드 커맨드를 호출하고, 음성 활성 커맨드(voice activated commands)에 대해 음성 입력을 사용함으로써 핫링크를 선택할 수도 있다. 이러한 경우에 있어서, 사용자 입력을 통해 선택된 텍스트 문자열은 텍스트 처리 서브 시스템(114)으로 전송되며, 이 서브시스템(114)에서 텍스트 문자열은 문자열이 핫링크를 나타내는지를 결정하기 위해 파싱(parse)된다. 파싱은 단계(203)에 관해서는 전술한 바와 같이 성취될 수도 있다. 다른 실시예에서, 통산의 텍스트 트래버스 기법은 특정 핫링크를 스텝 스루(step through)하고 호출하는 데 이용될 수 있다(예를 들면, F1 키의 순차적인 누름은 <<M#>> 핫링크를 전부 스텝 스루하고, 한편 F2 키는 <<M#>> 핫링크를 전부 스텝 스루한다. 핫링크 표시 <<V#>> 및 <<M#>>는 이후 보다 상세히 설명된다).
단계(207)에서, 텍스트 처리 서브 시스템(114)이 선택된 텍스트 문자열이 핫링크를 나타낸다고 판단하면, 선택된 텍스트 문자열은 주제어 엔진(110)으로 출력되어 제5도에 관해서는 이하 설명될 바와 같이 커맨드 파싱 루틴을 수행한다. 그러나, 단계(207)에서, 텍스트 처리 서브 시스템(114)이 선택된 텍스트가 핫링크가 아니라고 판단하면, 단계(209)의 동작이 계속되고, 단계(209)에서 텍스트 처리 서브 시스템(114)은 입력 커맨드의 끝(end)이 수신되었는지를 체크한다. 수신되었다면, 주석 윈도우는 폐쇄되고 텍스트 처리 서브 시스템(114)의 동작이 끝난다. 수신되지 않았다면, 동작은 단계(201)로 다시 복귀된다.
제5도는 본 발명에 따른 커맨드 파싱 루틴을 수행하는데 있어서 주제어 엔진(110)의 동작을 예시한다. 바람직하게, 제3도에 예시된 핫링크 커맨드를 나타내는 텍스트 문자열은 시스템 메모리(104)내에 기억된 사전정의된 뷰 포인트와 연관된 핫링크 커맨드가 <<V#>>의 형태로서 #는 사전정의된 뷰 포인트를 식별하는 것, 시스템 메모리(104)내에 기억된 사전정의된 애니메이션 포인트와 연관된 핫링크 커맨드가 <<A#>>의 형태로서 #는 사전정의된 애니메이션을 식별하는 것, 시스템 메모리(104)내에 기억된 3차원 마크업과 연관된 핫링크 커맨드가 <<M#>>의 형태로서 #는 마크업을 식별하는 것, 그리고 3차원 장면의 하나 이상의 객체와 연관된 핫링크 커맨드로서 #는 객체의 시트를 식별하는 것과 같은 포맷을 이용한다. 텍스트 처리 서브 시스템(114)으로부터 전송되는 선택된 핫링크 텍스트를 수신하자마자, 주제어 엔진(110)은 단계(301)에서 선택된 핫링크 텍스트 문자열이 사전정의된 뷰 포인트와 연관되는지를 판단한다. 예를 들면, 바람직한 실시예에 있어서, 이것은 사전선택된 텍스트 문자열이 포맷<<V#>>을 갖는지를 체크하기 위해 사전 선택된 텍스트 문자열을 파싱함으로써 달성될 수 있다. 단계(301)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 사전정의된 뷰 포인트와 연관된다고 판단하면, 단계(303)의 동작이 계속적으로 수행되고, 이 단계(303)에서 주제어 엔진(110)은 그래픽 서브시스템(112)을 제어하여 선택된 핫링크 텍스트 문자열에 의해 표시되는 사전정의된 뷰 포인트에 대응하도록 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이되는 바와 같이 장면(모델)의 뷰 포인트를 갱신하거나, 혹은 사전선택된 핫링크 텍스트 문자열과 연관된 증가에 기초하여 새로운 뷰 포인트를 계산한다. 그러나, 단계(301)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 사전정의된 뷰 포인트와 연관되지 않는다고 판단하면, 단계(305)에서의 동작이 계속적으로 수행되고 주제어 엔진(110)은 선택된 핫링크 텍스트 문자열이 사전정의된 애니메이션과 연관되는지를 판단한다. 단계(305)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 사전정의된 애니메이션과 연관된다고 판단하면, 단계(307)에서의 동작이 계속적으로 수행되고 주제어 엔진(110)은 그래픽 서브시스템(112)을 제어하여 사전선택된 핫링크 텍스트 문자열에 의해 표시되는 사전정의된 애니메이션 디스플레이 장치(118)의 그래픽 윈도우내에서 수행되도록 한다. 그러나, 단계(301)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 사전정의된 애니메이션과 연관되지 않는다고 판단하면, 단계(309)에서의 동작이 계속적으로 수행된다.
단계(309)에서, 주제어 엔진(110)은 사전정의된 핫링크 텍스트 문자열이 하나 이상의 3차원 장면(모델)의 객체와 연관되는지를 판단한다. 단계(309)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 하나 이상의 객체와 연관된다고 판단하면, 하나 이상의 단계(311 내지 315)에서의 동작이 계속적으로 수행된 후 끝난다.
단계(311)에서, 주제어 엔진(110)은 디스플레이 파라미터 및/또는 장면의 객체와 연관된 속성을 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 선택된 핫링크 텍스트 문자열과 연관되지 않은 모든 객체의 킬러와 같은 디스플레이 속성을 갱신하여 이들의 속성이 드러나지 않도록 하고, 디스플레이 장치(118)의 그래픽 윈도우내에 사전선택된 핫링크 텍스트 문자열과 연관된 객체만을 디스플레이하도록 그래픽 서브시스템(112)을 제어한다. 더욱이, 주제어 엔진(110)은 선택된 핫링크 텍스트 문자열과 연관된 객체에 대응하도록 디스플레이 파라미터를 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 순차적인 처리를 위해 사전선택된 핫링크 텍스트 문자열과 연관된 객체의 기하학적 중심에 대응하도록 장면(모델)의 회전 중심을 갱신하거나, 혹은 바람직한 방향으로 사전선택된 핫링크 텍스트 문자열과 연관된 객체의 수직축을 정렬할 수도 있다.
단계(313)에서, 주제어 엔진(110)은 그래픽 서브시스템(112)을 제어하여 사전선택된 핫링크 텍스트 문자열과 연관된 하나 이상의 객체와 연결된 사전정의된 뷰 포인트에 대응하도록 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이되는 바와 같이 장면(모델)의 뷰 포인트를 갱신하거나, 혹은 사전선택된 핫링크 텍스트 문자열과 연관된 하나 이상의 객체와 연결된 증가에 기초하여 새로운 뷰 포인트를 계산하도록 한다.
단계(315)에서, 주제어 엔진(110)은 디스플레이 장치(118)의 그래픽 윈도우내에서 사전선택된 핫링크 텍스트 문자열과 연관된 하나 이상의 객체와 연결된 사전정의된 애니메이션을 수행하기 위해 그래픽 서브시스템(112)을 제어할 수도 있다.
단계(309)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 하나 이상의 객체와 연관되지 않는다고 판단하면, 단계(317)에서의 동작을 지속적으로 수행하고 주제어 엔진(110)은 사전선택된 핫링크 텍스트 문자열이 3차원 마크업과 연관되는지를 판단한다. 단계(317)에서, 주제어 엔진(110)이 사전선택된 핫링크 텍스트 문자열이 3차원 마크업과 연관된다고 판단하면, 하나 이상의 단계(319 내지 325)의 동작을 지속적으로 수행한다.
단계(319)에서 주제어 엔진(110)은 디스플레이 파라미터 및/또는 3차원 장면(모델)의 객체와 연관된 속성을 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결되지 않는 모든 객체의 컬러와 같은 디스플레이 속성을 갱신하여 이들의 속성이 드러나지 않도록 하여, 디스플레이 장치(118)의 그래픽 윈도우내 사전선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결된 객체만을 디스플레이 하도록 그래픽 서브시스템(112)을 제어한다. 더욱이, 주제어 엔진(110)은 선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결된 객체에 대응하도록 디스플레이 파라미터를 갱신할 수도 있다.
예를 들면, 주제어 엔진(110)은 순차적인 처리를 위해 사전선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결된 객체의 기하학적 중심에 대응하도록 장면(모델)의 회전 중심을 갱신하거나, 혹은 바람직한 방향으로 사전 선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결된 객체의 수직축을 정렬할 수도 있다.
단계(321)에서, 주제어 엔진은 디스플레이 장치(118)의 그래픽 윈도우내에 마크업을 도시하기 위해 그래픽 서브시스템(112)을 제어할 수도 있다.
단계(323)에서, 주제어 엔진(110)은 그래픽 서브시스템(112)을 제어하여 사전선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결된 사전정의된 뷰 포인트에 대응하도록 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이되는 바와 같이 장면(모델)의 뷰 포인트를 갱신하거나, 혹은 사전선택된 핫링크 텍스트 문자열과 연관된 마크업에 연결된 증가에 기초하여 새로운 뷰 포인트를 계산하도록 한다.
단계(325)에서, 주제어 엔진(110)은 디스플레이 장치(118)의 그래픽 윈도우내에서 사전선택된 핫링크 텍스트 문자열과 연관된 마크업과 연결된 사전정의된 애니메이션을 수행하기 위해 그래픽 서브시스템(112)을 제어할 수도 있다.
단계(317)에서, 주제어 엔진(110)은 사전선택된 핫링크 텍스트 문자열이 하나 이상의 마크업과 연관되지 않는다고 판단하면, 다른 핫링크 커맨드를 파싱하기 위해 동작이 지속될 수도 있다. 예를 들면, 다른 핫링크 커맨드는 장면의 조명 상태(lighting conditions)를 변화시키고, 음영 파라미터를 변화시키고, 랜더링될 객체의 단순화(simplification)(즉, 상세의 레벨[level of detail]), 혹은 다른 그래픽 처리 기능을 변화시킬 수 있다. 다른 핫링크 커맨드는 연관된 정적 비트맵된 영상(associated static bitmapped images)의 디스플레이 또는 오디오 혹은 비디오 세그먼트의 재생을 포함할 수 있다. 단계(317)에서, 사전선택된 핫링크 텍스트 문자열이 어떠한 유효 커맨드(valid command)에도 대응하지 않는다면, 사용자는 무효커맨드를 통지받고 동작은 종료된다.
디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이되는 객체에 관한 그래픽 서브시스템(112)에 의해 수행되는 그래픽 기능에 주석 윈도우를 연결하는 핫링크 커맨드에 더하여, 주석 윈도우내에 디스플레이되는 텍스트상에 텍스트 처리 서브시스템(114)에 의해 수행되는 텍스트 처리 기능에 객체를 연결하도록 하는 커맨드가 생성될 수도 있다. 예를 들면, 제6도는 하나 이상의 선택된 객체와 연관된 디스플레이 장치(118)의 주석 윈도우내에 디스플레이되는 텍스트의 부분을 탐색하여 밝게 표시할 수 있도록 하는 능력을 사용자에게 제공하는데 있어서 그래픽 서브시스템(112), 주제어 엔진(110), 및 텍스트 처리 서브 시스템(114)의 동작을 예시한다. 단계(401)에서, 사용자는 종래의 픽킹 기법을 사용해 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이되는 하나 이상의 객체를 선택한다. 픽킹(picking)기법은 칼라한(Callahan) 등의 미합중국 특허 제 4,847,605 호, 에버스(Ebbers) 등의 미합중국 특허 제 5,255,359 호 및 로우리스(Lawless) 등의 미합중국 특허 제 5,373,514 호를 참조문헌내에 기술되어 있으며, 이들 특허 모두는 본 발명의 양수인에게 양도되었으며, 그 전체 내용은 이후 본 명세서에서 참조로서 인용된다. 단계(403)에서, 주제어 엔진(110)은 픽킹 동작에 의해 결정됨에 따라서 하나 이상의 선택된 객체에 대응하는 객체 식별자를 검색한다. 단계(405)에서, 주제어 엔진(110)은 사용자가 검색된 객체 식별자와 연관된 텍스트에 대해 주석 윈도우를 탐색하기 위해 커맨드를 발행하였는지를 체크한다. 사용자는 키보드상의 SPACEBAR를 누름으로써 커맨드를 발행할 수 있다. 커맨드를 발행하지 않았다면, 동작이 끝난다. 그러나, 단계(405)에서, 주제어 엔진(110)이 사용자가 검색된 객체 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 커맨드를 발행하였다고 판단하면, 단계(407)에서, 주제어 엔진(110)은 검색된 객체 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 텍스트 처리 서브 시스템(114)을 제어하며, 텍스트 처리 서브 시스템(114)은 디스플레이 장치(118)의 주석 윈도우내 혹은 디스플레이 장치(118)의 독립된 윈도우내에 검색된 객체 식별자와 관련된 텍스트를 밝게 표시하여 디스플레이 할 수도 있다. 예를 들면, 텍스트 처리 서브 시스템(114)은 인터페이스 엔진(interface engine)을 이용해 문맥(context)에 입각한 탐색을 수행하여 검색된 객체 식별자와 관련된 텍스트를 위치시킬 수도 있다.
전술한 바와 같이, 객체 선택 단계(401 및 403)은 사용자 커맨드 입력 단계(405)에 앞선다. 그러나, 이것은 객체 선택 단계(401 및 403)가 사용자 커맨드 입력 단계(405)에 뒤이어 수행되도록 수정될 수도 있다. 이러한 경우, 주제어 엔진(110)이 사용자가 선택된 객체와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 커맨드를 발행하였다고 판단하면, 주제어 엔진(110)은 검색된 객체 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 텍스트 처리 서브 시스템(114)을 후속적으로 제어할 수도 있으며, 텍스트 처리 서브 시스템(114)은 후속적으로 디스플레이 장치(118)의 주석 윈도우내 혹은 디스플레이 장치(118)의 독립된 윈도우내에 검색된 개체 식별자와 관련된 텍스트를 밝게 표시하여 디스플레이할 수도 있다.
또한, 마크업과 주석 윈도우내에 디스플레이되는 텍스트에 관해 텍스트 처리 서브 시스템(114)에 의해 수행되는 텍스트 처리 기능을 연결하도록 하는 커맨드가 생성될 수도 있다. 예를 들면, 제7도는 사용자에게 하나 이상의 선택된 마크업과 연관된 디스플레이 장치(118)의 주석 윈도우내에 디스플레이된 텍스트의 부분을 탐색하여 밝게 표시할 수 있는 능력을 제공하는 것에 있어서 그래픽 서브시스템(112), 주제어 엔진(110) 및 텍스트 처리 서브 시스템(114)의 동작을 예시한다. 단계(501)에서, 사용자는 전술한 바와 같이 종래의 픽킹 기법을 사용해 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이되는 하나 이상의 마크업을 선택한다. 이와 달리, 종래의 픽킹 기법에 약간의 수정이 가해질 수도 있다. 예를 들면, 그래픽 서브시스템(112)은 디스플레이 장치(118)의 그래픽 윈도우상의 투사가 픽크 개구에 가장 가까운 마크업을 픽크할 수도 있다. 단계(503)에서, 주제어 엔진(110)은 픽킹 동작에 의해 결정됨에 따라서 하나 이상의 선택된 마크업에 대응하는 마크업 식별자를 검색한다. 단계(505)에서, 주제어 엔진(110)은 사용자가 검색된 마크업 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 커맨드를 발행하였는지를 체크한다. 예를 들면, 사용자는 키보드상의 SPACEBAR를 누름으로써 커맨드를 발행할 수 있다. 커맨드를 발행하지 않았다면, 동작은 끝난다. 그러나, 단계(505)에서, 주제어 엔진(110)이 사용자가 검색된 마크업 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 커맨드를 발행하였다고 판단하면, 단계(507)에서, 주제어 엔진(110)은 검색된 마크업 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 텍스트 처리 서브 시스템(114)을 제어하며, 단계(509)에서, 텍스트 처리 서브 시스템(114)은 디스플레이 장치(118)의 주석 윈도우내 혹은 디스플레이 장치(118)의 독립된 윈도우내에 검색된 마크업 식별자와 관련된 텍스트를 밝게 표시하여 디스플레이할 수도 있다.
전술한 바와 같이, 마크업 선택 단계(501 및 503)는 사용자 커맨드 단계(505)에 앞선다. 그러나, 이것은 마크업 선택 단계(501 및 503)가 사용자 커맨드 입력 단계(505)에 후속하여 수행되도록 수정될 수도 있다. 이러한 경우, 주제어 엔진(110)은 사용자가 선택된 마크업과 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 커맨드를 발행하였다고 판단하면, 주제어 엔진(110)은 후속적으로 검색된 마크업 식별자와 관련된 텍스트에 대한 주석 윈도우를 탐색하기 위해 텍스트 처리 서브 시스템(114)을 제어할 수 있으며, 텍스트 처리 서브 시스템(114)은 후속적으로 디스플레이 장치(118)의 주석 윈도우내 혹은 디스플레이 장치(118)의 독립된 윈도우내에 검색된 마크업 식별자와 관련된 텍스트를 밝게 표시하여 디스플레이할 수도 있다. 예를 들면, 텍스트 처리 서브 시스템(114)은 인터페이스 엔진을 이용해 문맥에 입각한 탐색을 수행하여 검색된 마크업 식별자와 관련된 텍스트를 위치시킬 수도 있다. 텍스트 처리 서브 시스템(114)과 그래픽 서브시스템(112)을 결합하는 핫링크 및/또는 사용자 입력 커맨드가 기술되었다면, 객체 및 3차원 마크업과 각각 연관된 그래픽 기능을 결합하는 커맨드가 구현될 수도 있다. 예를 들면, 제8도는 사용자에게 하나 이상의 선택된 마크업과 연관된 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이된 하나 이상의 객체의 디스플레이 속성을 갱신할 수 있는 능력을 제공하는 것에 있어서 주제어 엔진(110) 및 그래픽 서브시스템(112)의 동작을 예시한다. 단계(601)에서, 사용자는 전술한 바와 같이 종래의 픽킹 기법을 사용해 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이된 하나 이상의 마크업을 선택한다. 이와 달리, 종래의 픽킹 기법에 대한 약간의 수정이 이루어질 수도 있다. 예를 들면, 그래픽 서브시스템(112)은 디스플레이 장치(118)의 그래픽 윈도우상의 투사가 픽크 개구와 가장 가까운 마크업을 픽크할 수도 있다. 단계(603)에서, 주제어 엔진(110)은 픽킹 동작에 의해 판단되는 바와 같이 하나 이상의 선택된 마크업에 대응하는 마크업 식별자를 검색한다. 단계(605)에서, 주제어 엔진(110)은 메모리 시스템(104)에 기억된 그래픽 윈도우를 생성하여, 선택된 마크업과 연관된 객체의 리스트(list)를 발생한다. 단계(607)에서, 주제어 엔진(110)은 3차원의 장면의 객체(모델)와 연관된 디스플레이 파라미터 및/또는 속성을 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 이들이 드러나지 않도록 하기 위해 마크업과 연결되지 않은 모든 객체의 디스플레이 속성, 예를 들어 컬러와 같은 속성을 갱신할 수 있으며, 따라서 그래픽 서브시스템(112)을 제어하여 마크업과 연결된 객체만을 디스플레이한다. 더욱이, 주제어 엔진(110)은 마크업과 연결된 객체에 대응하여 디스플레이 파라미터를 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 마크업에 연결된 객체의 기하학적 중심에 대응하여 장면(모델)의 회전 중심을 갱신하거나, 혹은 바람직한 방향으로 마크업과 연결된 객체의 수직축을 정렬할 수도 있다.
객체 및 3차원 마크업과 연관된 그래픽 기능을 연결하는 커맨드의 다른 실시예가 제9도에 도시된다. 특히, 제9도는 사용자에게 하나 이상의 마크업과 연관된 디스플레이 속성을 갱신하고/하거나 하나 이상의 선택된 객체와 연관된 마크업에 대한 디스플레이 장치(118)의 그래픽 윈도우내에 하나 이상의 마크업을 디스플레이할 수 있는 능력을 제공하는 것에 있어서 주제어 엔진(110) 및 그래픽 서브시스템(112)의 동작을 예시한다. 단계(701)에서, 사용자는 전술한 바와 같이 종래의 픽킹 기법을 사용해 디스플레이 장치(118)의 그래픽 윈도우내에 디스플레이된 하나 이상의 객체를 선택한다. 단계(703)에서, 주제어 엔진(110)은 픽킹 동작에 의해 결정되는 바와 같이 하나 이상의 선택된 객체에 대응하는 객체 식별자를 검색한다. 단계(705)에서, 메모리 시스템(104)내에 기억된 그래픽 데이터를 이용한 주제어 엔진(110)은 선택된 객체와 연관된 마크업의 리스트를 발생한다. 단계(707)에서, 주제어 엔진(110)은 단계(705)에서 발생된 리스트내에 식별된 마크업과 연관된 디스플레이 파라미터 및/또는 속성을 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 이들이 드러나지 않도록 하기 위해 선택된 객체에 연결되지 않은 모든 마크업의 디스플레이 속성, 예를 들어 컬러와 같은 속성을 갱신할 수 있으며, 따라서, 그래픽 서브시스템(112)을 제어하여 디스플레이 장치(118)의 그래픽 윈도우내의 사전선택된 객체에 연결된 마크업에 대응하여 디스플레이 파라미터를 갱신할 수도 있다. 예를 들면, 주제어 엔진(110)은 후속 처리를 위해 선택된 객체에 연결된 마크업의 기하학적 중심에 대응하여 장면(모델)의 회전 중심을 갱신하거나, 혹은 바람직한 방향으로 산전선택된 객체에 연결된 마크업의 수직축을 정렬할 수도 있다. 더욱이, 단계(709)에서, 주제어 엔진은 디스플레이 장치(118)의 그래픽 윈도우내의 사전선택된 객체에 연결된 마크업을 도시하기 위해 그래픽 서브시스템(112)을 제어할 수도 있다.
더욱이, 제3도에 도시한 바와 같이, 전용 텍스트(private text)는 하나 이상의 장면(모델)의 3차원 마크업과 연관될 수도 있다. 이러한 경우, 제4도 및 제5도에 관해서는 전술한 주석 윈도우와 유사한 제2주석 윈도우가 제공될 수도 있다. 그러나, 이러한 경우, 주석 텍스트의 내용은 하나의 마크업 또는 사전정의된 마크업의 군과 관련하여 제한될 수도 있다. 더욱이, 마크업과 제2주석 윈도우내에 디스플레이되는 텍스트에 관해 텍스트 처리 서브 시스템(114)에 의해 수행되는 텍스트 처리 기능을 연결하는 추가적인 커맨드가 생성될 수도 있다. 이러한 커맨드는 제7도와 관련하여 전술한 커맨드와 유사할 수도 있다.
전술한 바와 같이, 본 발명의 그래픽 처리는 주로 소프트웨어적으로 구현된다. 그러나, 본 발명은 이에 제한되지 않는다. 다른 실시예에 있어서, 그래픽 처리는 주로 하드웨어적으로 구현될 수도 있다. 제10도는 다른 실시예의 구조를 예시한다. 이러한 경우, 전술한 바와 같은 그래픽 시스템의 동작은 변함이 없지만, 그래픽 서브시스템(112)의 기능은 전용 하드웨어에 의해 수행된다.
본 발명의 그래픽 시스템은 3차원 장면(모델)과 관련된 기하학적 정보와 비기하학적 정보를 결합하기 위한 효율적인 수단을 제공한다. 특히, 그래픽 서브시스템은 주석 텍스트내의 핫링크를 호출하는 것에 의해 그래픽 기능을 수행할 수 있는 능력을 사용자에게 제공하며, 따라서 그래픽 시스템에 의해 표시되는 장면(모델)을 통해 네비게이션하기 위한 기법을 학습하는 시간을 최소화한다. 더욱이, 그래픽 시스템은 선택된 그래픽 요소(예를 들면, 객체 또는 마크업)와 관련된 주석 텍스트를 탐색하여 위치지정하는 능력을 사용자에게 제공한다. 중요한 것은 본 발명의 그래픽 시스템은 여러 응용 영역, 예를 들면, 엔지니어링 설계 및 구조, 구조 설계 및 리뷰, 플랜트 설계, 게임, 전자우편(email) 및 주석문(notes)과, 월드 와이드 웹 브라우징(world wide web browsing)에서 사용될 수 있다.
비록, 본 발명이 특정 실시예에 관해서 도시되고 설명되었지만, 본 발명의 사상 및 범주를 벗어남이 없이 형태에 있어서 각종 다른 변경, 생략 및 추가가 이루어질 수도 있다는 것을 당업자라면 이해할 것이다.

Claims (21)

  1. 디스플레이의 제1부분에 3차원 객체를 표시하는 그래픽 데이터를 처리하여 디스플레이하는 그래픽 처리 엔진(a graphic processing engine)과; 사용자 입력에 응답하여, 상기 디스플레이의 제2부분내에서 복수의 텍스트 스트링 및 상기 텍스트 스트링내에 내장된(embedded) 복수의 기호 - 여기서, 상기 기호는 상기 그래픽 처리 엔진의 동작을 제어하는 적어도 하나의 핫링크 커맨드(at least one hotlink command)를 표시함 - 를 입력하고 편집하고 디스플레이하는 수단과, 상기 디스플레이의 상기 제2부분내에 디스플레이된 제1데이터의 사용자 선택에 응답하여, 상기 제1데이터를 분석하여 상기 제1데이터가 적어도 하나의 기호를 포함하는지 여부를 판정하는 수단과, 상기 제1데이터가 적어도 하나의 기호를 포함한다고 판정되면, 상기 제1데이터내에 포함된 적어도 하나의 기호에 의해 표시된 제1 핫링크 커맨드(a first hotlink command)를 식별하고, 상기 제1 핫링크 커맨드에 따라 상기 그래픽 처리 엔진의 동작을 제어하여 적어도 하나의 그래픽 기능을 수행하는 수단을 포함하는 컴퓨터 그래픽 시스템.
  2. 제1항에 있어서, 상기 제1데이터는 적어도 하나의 텍스트 스트링을 포함하고, 상기 제1데이터는 상기 적어도 하나의 텍스트 스트링을 파싱하므로써 분석되는 컴퓨터 그래픽 시스템.
  3. 제1항에 있어서, 상기 사용자 선택은 단일의 사전결정된 사용자 I/O 이벤트에 의해 정의되는 컴퓨터 그래픽.
  4. 제3항에 있어서, 상기 단일의 사전결정된 사용자 I/O 이벤트는 상기 적어도 하나의 텍스트 스트링 상에서의 포인팅 장치(a pointing device)의 클릭(a click)인 컴퓨터 그래픽 시스템.
  5. 제1항에 있어서, 핫링크 커맨드를 표시하는 각각의 기호는 적어도 하나의 텍스트 스트링을 포함하는 컴퓨터 그래픽 시스템.
  6. 제1항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 3차원 객체들 중 하나와 연관되는 컴퓨터 그래픽 시스템.
  7. 제6항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 객체와 연관된 디스플레이 속성을 갱신하는 컴퓨터 그래픽 시스템.
  8. 제6항에 있어서, 상기 그래픽 처리 엔진은 뷰 포인트에 따라 상기 그래픽 데이터를 처리하고 디스플레이하며, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 객체와 연관된 사전 정의된 뷰 포인트에 대응하여 상기 뷰 포인트를 갱신하고 상기 적어도 하나의 객체와 연관된 소정의 증분(an increment)에 기초하여 새로운 뷰 포인트를 계산하는 컴퓨터 그래픽 시스템.
  9. 제6항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 객체와 연관된 사전정의된 애니메이션을 수행하는 컴퓨터 그래픽 시스템.
  10. 제1항에 있어서, 상기 그래픽 처리 엔진은 상기 디스플레이의 상기 제1부분내에서 적어도 하나의 3차원 마크업(markup)을 표시하는 그래픽 데이터를 처리하고 디스플레이하는 컴퓨터 그래픽 시스템.
  11. 제10항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 마크업과 연관된 디스플레이 속성을 갱신하는 컴퓨터 그래픽 시스템.
  12. 제10항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 마크업과 연관된 디스플레이 파라미터를 갱신하는 컴퓨터 그래픽 시스템.
  13. 제10항에 있어서, 상기 그래픽 처리 엔진은 뷰 포인트(a view point)에 따라 상기 그래픽 데이터를 처리하고 디스플레이하며, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 마크업과 연관된 사전정의된 뷰 포인트에 대응하여 상기 뷰 포인트를 갱신하고 상기 적어도 하나의 객체와 연관된 소정의 증분에 기초하여 새로운 뷰 포인트를 계산하는 컴퓨터 그래픽 시스템.
  14. 제10항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 적어도 하나의 마크업과 연관된 사전정의된 애니메이션을 수행하는 컴퓨터 그래픽 시스템.
  15. 제1항에 있어서, 상기 그래픽 처리 엔진은 뷰 포인트에 따라 상기 그래픽 데이터를 처리하고 디스플레이하며, 상기 적어도 하나의 그래픽 기능은 상기 제1 핫링크 커맨드와 연관된 사전정의된 뷰 포인트에 대응하여 상기 뷰 포인트를 갱신하는 컴퓨터 그래픽 시스템.
  16. 제1항에 있어서, 상기 적어도 하나의 그래픽 기능은 상기 제1 핫링크 커맨드와 연관된 사전 정의된 애니메이션을 수행하는 컴퓨터 그래픽 시스템.
  17. 상기 디스플레이의 상기 제2부분내에 디스플레이된 적어도 하나의 텍스트 스트링과 적어도 하나의 기호는 상기 디스플레이의 상기 제1부분내에 디스플레이된 상기 객체의 제1 객체와 관련되고, 사용자가 상기 제1 객체를 선택하면 상기 제1 객체와 관련된 상기 적어도 하나의 텍스트 스트링 및 상기 적어도 하나의 기호 중 하나를 식별하는 수단을 더 포함하는 컴퓨터 그래픽 시스템.
  18. 제17항에 있어서, 상기 그래픽 처리 엔진은 상기 디스플레이의 상기 제1부분내에서 3차원 마크업들을 표시하는 그래픽 데이터를 처리하고 디스플레이하며, 상기 디스플레이의 상기 제2부분내에 디스플레이된 상기 적어도 하나의 텍스트 스트링 및 상기 적어도 하나의 기호는 상기 디스플레이의 상기 제1부분내에 디스플레이된 상기 마크업들의 제1마크업과 관련되며, 사용자가 상기 제1마크업을 선택하면 상기 제1마크업과 관련된 상기 적어도 하나의 텍스트 스트링 및 상기 적어도 하나의 기호중 하나가 식별되는 컴퓨터 그래픽 시스템.
  19. 디스플레이의 제1부분에 3차원 객체를 나타내는 데이터를 처리하여 디스플레이하는 그래픽 처리 엔진을 포함하는 그래픽 시스템에서, 상기 그래픽 시스템의 동작을 제어하는 방법에 있어서, 사용자의 입력에 응답하여, 상기 디스플레이의 제2부분내에 데이터를 입력하고 디스플레이하는 단계 - 상기 데이터는 복수의 텍스트 스트링과 상기 텍스트 스트링내에 내장된 복수의 기호를 포함하고, 상기 기호는 상기 그래픽 처리 엔진의 동작을 제어하는 적어도 하나의 핫링크 커맨드를 표시함 - 와, 상기 디스플레이의 상기 제2부분내에 디스플레이된 제1데이터의 사용자 선택에 응답하여, 상기 제1데이터를 분석하여 상기 제1데이터가 적어도 하나의 기호를 포함하는지 여부를 판정하는 단계와, 상기 제1데이터가 적어도 하나의 기호를 포함한다고 판정되면, 상기 제1데이터내에 포함된 상기 적어도 하나의 기호에 의해 표시된 제1 핫링크 커맨드를 식별하고, 상기 제1 핫링크 커맨드에 따라 상기 그래픽 처리 엔진의 동작을 제어하여 적어도 하나의 그래픽 기능을 수행하는 단계를 포함하는 그래픽 시스템의 동작 제어 방법.
  20. 제19항에 있어서, 상기 디스플레이의 상기 제2부분내에 디스플레이된 적어도 하나의 텍스트 스트링과 적어도 하나의 기호는 상기 디스플레이의 상기 제1부분내에 디스플레이된 상기 객체의 제1 객체와 관련되고, 사용자가 상기 제1객체를 선택하면 상기 제1객체와 관련된 상기 적어도 하나의 텍스트 스트링 및 상기 적어도 하나의 기호 중 하나를 식별하는 단계를 더 포함하는 그래픽 시스템의 동작 제어 방법.
  21. 제20항에 있어서, 상기 그래픽 처리 엔진은 상기 디스플레이의 상기 제1부분내에서 3차원 마크업들을 표시하는 그래픽 데이터를 처리하고 디스플레이하며, 상기 디스플레이의 상기 제2부분내에 디스플레이된 상기 적어도 하나의 텍스트 스트링 및 상기 적어도 하나의 기호는 상기 디스플레이의 상기 제1부분내에 디스플레이된 상기 마크업들의 제1 마크업과 관련되며, 사용자가 상기 제1 마크업을 선택하면 상기 제1 마크업과 관련된 상기 적어도 하나의 텍스트 스트링 및 상기 적어도 하나의 기호중 하나가 식별되는 그래픽 시스템의 동작 제어 방법.
KR1019960006246A 1995-03-24 1996-03-09 컴퓨터 그래픽 시스템 및 그래픽 시스템 동작 제어 방법 KR100246066B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US41037095A 1995-03-24 1995-03-24
US08/410,370 1995-03-24
US8/410,370 1995-03-24

Publications (2)

Publication Number Publication Date
KR960035352A KR960035352A (ko) 1996-10-24
KR100246066B1 true KR100246066B1 (ko) 2000-03-15

Family

ID=23624432

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960006246A KR100246066B1 (ko) 1995-03-24 1996-03-09 컴퓨터 그래픽 시스템 및 그래픽 시스템 동작 제어 방법

Country Status (3)

Country Link
US (1) US5708764A (ko)
JP (1) JPH08287288A (ko)
KR (1) KR100246066B1 (ko)

Families Citing this family (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08272848A (ja) * 1995-03-31 1996-10-18 Fujitsu Ltd 物質構造の表示方法
US6308144B1 (en) * 1996-09-26 2001-10-23 Computervision Corporation Method and apparatus for providing three-dimensional model associativity
US6954906B1 (en) * 1996-09-30 2005-10-11 Sony Corporation Image display processing apparatus that automatically changes position of sub-window relative to main window depending on distance at watch sub window is commanded to be displayed
US6437777B1 (en) * 1996-09-30 2002-08-20 Sony Corporation Three-dimensional virtual reality space display processing apparatus, a three-dimensional virtual reality space display processing method, and an information providing medium
US6057856A (en) * 1996-09-30 2000-05-02 Sony Corporation 3D virtual reality multi-user interaction with superimposed positional information display for each user
US6154757A (en) * 1997-01-29 2000-11-28 Krause; Philip R. Electronic text reading environment enhancement method and apparatus
US6785865B1 (en) * 1997-03-06 2004-08-31 Microsoft Corporation Discoverability and navigation of hyperlinks via tabs
US6101472A (en) * 1997-04-16 2000-08-08 International Business Machines Corporation Data processing system and method for navigating a network using a voice command
KR100308265B1 (ko) * 1998-05-04 2001-10-19 구자홍 그래픽이미지처리장치및방법
US6285369B1 (en) * 1998-05-12 2001-09-04 Autodesk, Inc. Electronic notebook for maintaining design information
US6201546B1 (en) 1998-05-29 2001-03-13 Point Cloud, Inc. Systems and methods for generating three dimensional, textured models
US6731314B1 (en) 1998-08-17 2004-05-04 Muse Corporation Network-based three-dimensional multiple-user shared environment apparatus and method
US6853385B1 (en) * 1999-11-09 2005-02-08 Broadcom Corporation Video, audio and graphics decode, composite and display system
US7982740B2 (en) 1998-11-09 2011-07-19 Broadcom Corporation Low resolution graphics mode support using window descriptors
US6570579B1 (en) * 1998-11-09 2003-05-27 Broadcom Corporation Graphics display system
US6573905B1 (en) 1999-11-09 2003-06-03 Broadcom Corporation Video and graphics system with parallel processing of graphics windows
US7446774B1 (en) 1998-11-09 2008-11-04 Broadcom Corporation Video and graphics system with an integrated system bridge controller
US6798420B1 (en) 1998-11-09 2004-09-28 Broadcom Corporation Video and graphics system with a single-port RAM
US6636222B1 (en) 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
US6661422B1 (en) 1998-11-09 2003-12-09 Broadcom Corporation Video and graphics system with MPEG specific data transfer commands
US6768774B1 (en) * 1998-11-09 2004-07-27 Broadcom Corporation Video and graphics system with video scaling
US6314569B1 (en) 1998-11-25 2001-11-06 International Business Machines Corporation System for video, audio, and graphic presentation in tandem with video/audio play
US6918095B1 (en) * 1999-06-10 2005-07-12 Dassault Systemes Dimension generation filter and analysis
US6624908B1 (en) 1999-10-01 2003-09-23 Global Graphics Software Limited Method for arranging a prepress workflow
US6380951B1 (en) * 1999-10-01 2002-04-30 Global Graphics Software Limited Prepress workflow method and program
US6483524B1 (en) 1999-10-01 2002-11-19 Global Graphics Software Limited Prepress workflow method using raster image processor
US6538656B1 (en) 1999-11-09 2003-03-25 Broadcom Corporation Video and graphics system with a data transport processor
US8913667B2 (en) * 1999-11-09 2014-12-16 Broadcom Corporation Video decoding system having a programmable variable-length decoder
US9668011B2 (en) 2001-02-05 2017-05-30 Avago Technologies General Ip (Singapore) Pte. Ltd. Single chip set-top box system
US6975324B1 (en) 1999-11-09 2005-12-13 Broadcom Corporation Video and graphics system with a video transport processor
GB9930850D0 (en) * 1999-12-24 2000-02-16 Koninkl Philips Electronics Nv 3D environment labelling
US6724407B1 (en) 2000-02-07 2004-04-20 Muse Corporation Method and system for displaying conventional hypermedia files in a 3D viewing environment
US7522186B2 (en) * 2000-03-07 2009-04-21 L-3 Communications Corporation Method and apparatus for providing immersive surveillance
US6647305B1 (en) * 2000-06-19 2003-11-11 David H. Bigelow Product design system and method
US6636237B1 (en) * 2000-07-31 2003-10-21 James H. Murray Method for creating and synchronizing links to objects in a video
US20020099770A1 (en) * 2000-09-08 2002-07-25 Muse Corporation Hybrid communications and interest management system and method
US7222295B1 (en) 2000-12-22 2007-05-22 Autodesk, Inc. Method and apparatus for conveying design information of computer aided design (CAD) models
US6629093B1 (en) 2001-01-31 2003-09-30 Autodesk, Inc. Method and apparatus for simplified computer aided design (CAD) model search and retrieval
US20020171684A1 (en) * 2001-05-16 2002-11-21 Christianson Eric P. Using icon-based input cues
US20020099858A1 (en) * 2001-08-06 2002-07-25 Muse Corporation Network communications protocol
JP2003271892A (ja) * 2002-03-18 2003-09-26 Nippon Telegraph & Telephone East Corp シナリオ自動生成システム、シナリオ自動生成方法、コンピュータプログラムおよびそのプログラムを記録した記録媒体
US7305611B2 (en) * 2002-08-22 2007-12-04 Platform Digital Llc Authoring tool for remote experience lessons
US7667710B2 (en) * 2003-04-25 2010-02-23 Broadcom Corporation Graphics display system with line buffer control scheme
NZ544780A (en) * 2003-06-19 2008-05-30 L 3 Comm Corp Method and apparatus for providing a scalable multi-camera distributed video processing and visualization surveillance system
US8063916B2 (en) * 2003-10-22 2011-11-22 Broadcom Corporation Graphics layer reduction for video composition
US7424154B2 (en) * 2003-11-10 2008-09-09 Microsoft Corporation Boxed and lined input panel
US7352368B2 (en) * 2004-05-03 2008-04-01 Sas Institute Inc. Computer-implemented system and method for displaying three-dimensional images having associated metadata
US7546543B2 (en) * 2004-06-25 2009-06-09 Apple Inc. Widget authoring and editing environment
US8453065B2 (en) 2004-06-25 2013-05-28 Apple Inc. Preview and installation of user interface elements in a display environment
US8302020B2 (en) * 2004-06-25 2012-10-30 Apple Inc. Widget authoring and editing environment
US8566732B2 (en) * 2004-06-25 2013-10-22 Apple Inc. Synchronization of widgets and dashboards
US8239749B2 (en) * 2004-06-25 2012-08-07 Apple Inc. Procedurally expressing graphic objects for web pages
US7490295B2 (en) * 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
US8543931B2 (en) 2005-06-07 2013-09-24 Apple Inc. Preview including theme based installation of user interface elements in a display environment
US7743336B2 (en) * 2005-10-27 2010-06-22 Apple Inc. Widget security
US20070101279A1 (en) * 2005-10-27 2007-05-03 Chaudhri Imran A Selection of user interface elements for unified display in a display environment
US7752556B2 (en) 2005-10-27 2010-07-06 Apple Inc. Workflow widgets
US9104294B2 (en) * 2005-10-27 2015-08-11 Apple Inc. Linked widgets
US8543824B2 (en) * 2005-10-27 2013-09-24 Apple Inc. Safe distribution and use of content
US7954064B2 (en) * 2005-10-27 2011-05-31 Apple Inc. Multiple dashboards
US7707514B2 (en) * 2005-11-18 2010-04-27 Apple Inc. Management of user interface elements in a display environment
US20070162850A1 (en) * 2006-01-06 2007-07-12 Darin Adler Sports-related widgets
US20070240080A1 (en) * 2006-04-11 2007-10-11 Invensys Systems, Inc. Strategy editor for process control supporting drag and drop connections to declarations
US20080034309A1 (en) * 2006-08-01 2008-02-07 Louch John O Multimedia center including widgets
US8869027B2 (en) * 2006-08-04 2014-10-21 Apple Inc. Management and generation of dashboards
US8271962B2 (en) * 2006-09-12 2012-09-18 Brian Muller Scripted interactive screen media
US20100195878A1 (en) * 2007-06-22 2010-08-05 Koninklijke Philips Electronics N.V. Systems and methods for labeling 3-d volume images on a 2-d display of an ultrasonic imaging system
US20090005071A1 (en) * 2007-06-28 2009-01-01 Apple Inc. Event Triggered Content Presentation
US8954871B2 (en) 2007-07-18 2015-02-10 Apple Inc. User-centric widgets and dashboards
US8667415B2 (en) * 2007-08-06 2014-03-04 Apple Inc. Web widgets
US20090055756A1 (en) * 2007-08-24 2009-02-26 International Business Machines Corporation Doubly linked visual discussions for data visualization
US8127235B2 (en) 2007-11-30 2012-02-28 International Business Machines Corporation Automatic increasing of capacity of a virtual space in a virtual world
US9026417B2 (en) 2007-12-13 2015-05-05 Exxonmobil Upstream Research Company Iterative reservoir surveillance
US20090164919A1 (en) 2007-12-24 2009-06-25 Cary Lee Bates Generating data for managing encounters in a virtual world environment
JP5159375B2 (ja) 2008-03-07 2013-03-06 インターナショナル・ビジネス・マシーンズ・コーポレーション メタバースにおけるオブジェクトの真贋判断システム、方法及びそのコンピュータ・プログラム
US8884964B2 (en) * 2008-04-22 2014-11-11 Exxonmobil Upstream Research Company Functional-based knowledge analysis in a 2D and 3D visual environment
US20100169455A1 (en) * 2008-12-29 2010-07-01 Robert Stetson Gorham Embedded Persistent Message Management
US20110047614A1 (en) * 2009-08-19 2011-02-24 Chi-Feng Huang Permission management system for data accessing and method thereof
EP2531694B1 (en) 2010-02-03 2018-06-06 Exxonmobil Upstream Research Company Method for using dynamic target region for well path/drill center optimization
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
US9593558B2 (en) 2010-08-24 2017-03-14 Exxonmobil Upstream Research Company System and method for planning a well path
WO2012102784A1 (en) 2011-01-26 2012-08-02 Exxonmobil Upstream Research Company Method of reservoir compartment analysis using topological structure in 3d earth model
AU2011360212B2 (en) 2011-02-21 2017-02-02 Exxonmobil Upstream Research Company Reservoir connectivity analysis in a 3D earth model
WO2013006226A1 (en) 2011-07-01 2013-01-10 Exxonmobil Upstream Research Company Plug-in installer framework
US8823744B2 (en) * 2012-03-23 2014-09-02 Bluebeam Software, Inc. Method for indicating annotations associated with a particular display view of a three-dimensional model independent of any display view
WO2013169429A1 (en) 2012-05-08 2013-11-14 Exxonmobile Upstream Research Company Canvas control for 3d data volume processing
US10137376B2 (en) 2012-12-31 2018-11-27 Activision Publishing, Inc. System and method for creating and streaming augmented game sessions
US8671352B1 (en) 2013-05-07 2014-03-11 Axure Software Solutions, Inc. Variable dimension version editing for graphical designs
EP3008281A2 (en) 2013-06-10 2016-04-20 Exxonmobil Upstream Research Company Interactively planning a well site
US9864098B2 (en) 2013-09-30 2018-01-09 Exxonmobil Upstream Research Company Method and system of interactive drill center and well planning evaluation and optimization
US10286326B2 (en) 2014-07-03 2019-05-14 Activision Publishing, Inc. Soft reservation system and method for multiplayer video games
US11351466B2 (en) 2014-12-05 2022-06-07 Activision Publishing, Ing. System and method for customizing a replay of one or more game events in a video game
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
US10486068B2 (en) 2015-05-14 2019-11-26 Activision Publishing, Inc. System and method for providing dynamically variable maps in a video game
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US10286314B2 (en) 2015-05-14 2019-05-14 Activision Publishing, Inc. System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session
US10213682B2 (en) 2015-06-15 2019-02-26 Activision Publishing, Inc. System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
US10099140B2 (en) 2015-10-08 2018-10-16 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US11185784B2 (en) 2015-10-08 2021-11-30 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10245509B2 (en) 2015-10-21 2019-04-02 Activision Publishing, Inc. System and method of inferring user interest in different aspects of video game streams
US10376781B2 (en) 2015-10-21 2019-08-13 Activision Publishing, Inc. System and method of generating and distributing video game streams
US10232272B2 (en) 2015-10-21 2019-03-19 Activision Publishing, Inc. System and method for replaying video game streams
US10694352B2 (en) 2015-10-28 2020-06-23 Activision Publishing, Inc. System and method of using physical objects to control software access
US10226703B2 (en) 2016-04-01 2019-03-12 Activision Publishing, Inc. System and method of generating and providing interactive annotation items based on triggering events in a video game
US10226701B2 (en) 2016-04-29 2019-03-12 Activision Publishing, Inc. System and method for identifying spawn locations in a video game
US10179289B2 (en) 2016-06-21 2019-01-15 Activision Publishing, Inc. System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching
US10573065B2 (en) 2016-07-29 2020-02-25 Activision Publishing, Inc. Systems and methods for automating the personalization of blendshape rigs based on performance capture data
US10463964B2 (en) 2016-11-17 2019-11-05 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible heatmaps
US10709981B2 (en) 2016-11-17 2020-07-14 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible barrier-aware heatmaps
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US10055880B2 (en) 2016-12-06 2018-08-21 Activision Publishing, Inc. Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional
US10861079B2 (en) 2017-02-23 2020-12-08 Activision Publishing, Inc. Flexible online pre-ordering system for media
US10818060B2 (en) 2017-09-05 2020-10-27 Activision Publishing, Inc. Systems and methods for guiding motion capture actors using a motion reference system
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10463971B2 (en) 2017-12-06 2019-11-05 Activision Publishing, Inc. System and method for validating video gaming data
US10537809B2 (en) 2017-12-06 2020-01-21 Activision Publishing, Inc. System and method for validating video gaming data
US10981051B2 (en) 2017-12-19 2021-04-20 Activision Publishing, Inc. Synchronized, fully programmable game controllers
US10864443B2 (en) 2017-12-22 2020-12-15 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
US10596471B2 (en) 2017-12-22 2020-03-24 Activision Publishing, Inc. Systems and methods for enabling audience participation in multi-player video game play sessions
US11278813B2 (en) 2017-12-22 2022-03-22 Activision Publishing, Inc. Systems and methods for enabling audience participation in bonus game play sessions
US10592589B1 (en) 2018-08-21 2020-03-17 Axure Software Solutions, Inc. Multi-view masters for graphical designs
US11263670B2 (en) 2018-11-19 2022-03-01 Activision Publishing, Inc. Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user
US11192028B2 (en) 2018-11-19 2021-12-07 Activision Publishing, Inc. Systems and methods for the real-time customization of video game content based on player data
US11115712B2 (en) 2018-12-15 2021-09-07 Activision Publishing, Inc. Systems and methods for indexing, searching for, and retrieving digital media
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
US11305191B2 (en) 2018-12-20 2022-04-19 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11344808B2 (en) 2019-06-28 2022-05-31 Activision Publishing, Inc. Systems and methods for dynamically generating and modulating music based on gaming events, player profiles and/or player reactions
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
US11423605B2 (en) 2019-11-01 2022-08-23 Activision Publishing, Inc. Systems and methods for remastering a game space while maintaining the underlying game simulation
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
US11537209B2 (en) 2019-12-17 2022-12-27 Activision Publishing, Inc. Systems and methods for guiding actors using a motion capture reference system
US11420122B2 (en) 2019-12-23 2022-08-23 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11563774B2 (en) 2019-12-27 2023-01-24 Activision Publishing, Inc. Systems and methods for tracking and identifying phishing website authors
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11351459B2 (en) 2020-08-18 2022-06-07 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values
US11833423B2 (en) 2020-09-29 2023-12-05 Activision Publishing, Inc. Methods and systems for generating level of detail visual assets in a video game
US11724188B2 (en) 2020-09-29 2023-08-15 Activision Publishing, Inc. Methods and systems for selecting a level of detail visual asset during the execution of a video game
US11717753B2 (en) 2020-09-29 2023-08-08 Activision Publishing, Inc. Methods and systems for generating modified level of detail visual assets in a video game
US11439904B2 (en) 2020-11-11 2022-09-13 Activision Publishing, Inc. Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games
US11853439B2 (en) 2020-12-30 2023-12-26 Activision Publishing, Inc. Distributed data storage system providing enhanced security
US11794107B2 (en) 2020-12-30 2023-10-24 Activision Publishing, Inc. Systems and methods for improved collision detection in video games

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0222387A2 (en) * 1985-11-14 1987-05-20 Hitachi, Ltd. Method for making of design reference and apparatus therefor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0222387A2 (en) * 1985-11-14 1987-05-20 Hitachi, Ltd. Method for making of design reference and apparatus therefor

Also Published As

Publication number Publication date
US5708764A (en) 1998-01-13
KR960035352A (ko) 1996-10-24
JPH08287288A (ja) 1996-11-01

Similar Documents

Publication Publication Date Title
KR100246066B1 (ko) 컴퓨터 그래픽 시스템 및 그래픽 시스템 동작 제어 방법
US5485600A (en) Computer modelling system and method for specifying the behavior of graphical operator interfaces
US5550967A (en) Method and apparatus for generating and displaying visual cues on a graphic user interface
US6356923B1 (en) Document information management system
US9836192B2 (en) Identifying and displaying overlay markers for voice command user interface
EP1491989B1 (en) Menus whose geometry is bounded by two radii and an arc
US20020011990A1 (en) User interface systems and methods for manipulating and viewing digital documents
US20070198638A1 (en) Conference support apparatus, information processor, teleconference system and computer product
Mankoff et al. OOPS: a toolkit supporting mediation techniques for resolving ambiguity in recognition-based interfaces
US6910184B1 (en) Document information management system
US8823738B1 (en) Merging electronic diagrams
JP2003303047A (ja) 画像入力及び表示システム、ユーザインタフェースの利用方法並びにコンピュータで使用可能な媒体を含む製品
JPH0756841A (ja) プロセッサーベースの装置の操作方法
JPH0756839A (ja) プロセッサーベースの装置の操作方法
CN113391871A (zh) 一种rpa元素智能融合拾取的方法与系统
CN1867894A (zh) 通过草拟自动生成用户界面描述
US8229735B2 (en) Grammar checker for visualization
US7184044B2 (en) Electronic drawing viewer
Fairchild et al. Dynamic fisheye information visualizations
Beaudouin-Lafon Human-computer interaction
Myers UIMSs, toolkits, interface builders
Conversy et al. Improving modularity of interactive software with the MDPC architecture
Bleher et al. A graphic interactive application monitor
Mäntylä et al. Interactive solid modeling in HutDesign
Lecolinet Designing guis by sketch drawing and visual programming

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: 20101109

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee