KR101278793B1 - 컴퓨터로 만든 드로잉(drawing) 환경에서의 객체 간 연관 - Google Patents

컴퓨터로 만든 드로잉(drawing) 환경에서의 객체 간 연관 Download PDF

Info

Publication number
KR101278793B1
KR101278793B1 KR1020087002071A KR20087002071A KR101278793B1 KR 101278793 B1 KR101278793 B1 KR 101278793B1 KR 1020087002071 A KR1020087002071 A KR 1020087002071A KR 20087002071 A KR20087002071 A KR 20087002071A KR 101278793 B1 KR101278793 B1 KR 101278793B1
Authority
KR
South Korea
Prior art keywords
target
displaying
recommended
drawing area
association
Prior art date
Application number
KR1020087002071A
Other languages
English (en)
Other versions
KR20080044827A (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 KR20080044827A publication Critical patent/KR20080044827A/ko
Application granted granted Critical
Publication of KR101278793B1 publication Critical patent/KR101278793B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

드로잉 프로그램 안에서 두 개의 객체를 서로 연관시키기 위한 방법과 시스템을 제시한다. 본 발명의 실시예는 대상 객체(target object)를 지정하는 명령을 수신하고 대상 객체를 지정하는 단계를 포함한 컴퓨팅 환경에서의 방법에 관한 것이다. 상기 방법은 주 객체(subject)를 식별하는 단계와, 대상 객체와 주 객체 간의 추천 연관관계(suggested association)를 제공하는 단계를 포함할 수 있다. 또한 상기 방법은 제안된 연관관계를 수락하는 명령을 수신하는 단계와, 추천받은 대로 주 객체를 대상 객체에 연관시키는 단계를 더 포함할 수도 있다.
드로잉(drawing), 추천 연관관계(suggested association), 고착 연결(glued connection)

Description

컴퓨터로 만든 드로잉(drawing) 환경에서의 객체 간 연관{OBJECT ASSOCIATION IN A COMPUTER GENERATED DRAWING ENVIRONMENT}
사용자가 컴퓨터를 사용하여 그림을 생성할 수 있도록 하는 다양한 종류의 컴퓨터 응용프로그램들을 이용할 수 있다. 하지만 대부분의 이들 응용프로그램들은 사용하기 복잡하고 까다롭다. 예를 들어, 사용자가 프로세스 흐름도나 계층도를 그리거나 수정할 때, 여러 가지의 드로잉 구성요소들이 생성되고, 다른 구성요소와 관계되어 배치되고, 전후 관계 및 의미를 제공하기 위하여 연결되어야 한다. 구성요소를 생성, 배치 및 연결하는 과정은 여러 단계의 수작업을 요할 수 있고, 어렵고 시간을 소요하며, 사용자를 실망시킬 수 있다.
또한, 어떤 환경에서는 사용자가 여러 종류의 연결 관계 중에서 직접 선택을 해야 하는 경우가 있는데, 이는 위와 같은 과정을 더 복잡하게 만든다. 예를 들어, 몇몇 응용프로그램들은 단순 연결(simple connection)과 고착 연결(glued connection)을 모두 제공한다. 단순 연결은 두 개의 구성요소 사이에(예를 들어 작업 공간에서의 특정 지점에) 연결선을 배치한다. 구성요소 중 하나가 이동하면, 연결선은 작업 공간에 그대로 남아있고, 두 구성요소를 더 이상 연결하지 않는다. 반대로, 고착 연결은 두 개의 구성요소 사이에 선을 배치하고, 하나의 구성요소가 이동하여도 두 구성요소가 연결 상태를 유지하도록 자동으로 연결선을 조정한다. 만약 만들고 있는 드로잉의 종류에 맞지 않는 연결 유형을 사용자가 선택한다면, 추후에 그 드로잉을 수정하기는 훨씬 더 어려워질 것이다.
구성요소를 생성하고 배치하는 과정을 단순화하기 위해서 여러 가지 방법이 사용되어 왔다. 예를 들어, 워싱턴 레드먼드에 위치한 마이크로소프트사의 Visio®는 사용자가 드로잉 구성요소들에 대해 잘라내기, 복사하기 또는 이동하기를 하는 기능 및/또는 마스터 셰이프 컨테이너(master shape container) 또는 윈도우로부터 구성요소를 선택할 수 있는 기능을 제공한다. 또한, Visio®는 형체(shape)를 선택한 후 포인터를 원하는 위치에 놓고 마우스 버튼을 클릭하여 드로잉 안의 여러 위치로 옮길 수 있도록 하는 도장 툴(stamping tool)을 제공한다. 하지만 도장 툴은 형체의 배치를 제안해 주지 않고, 드로잉에 새로 넣은 형체와 원래 있던 형체 사이의 연결 관계를 제공하지도 않는다. 따라서, 사용자는 구성요소를 어디에 배치할지 정확하게(정확한 위치 및 거리) 결정해야 하고, 필요에 따라 새로 넣은 형체를 기존 형체에 손수 연결해야 한다.
드로잉 응용프로그램에서 객체 간 연관관계(예를 들어 객체의 배치 및/또는 연결)에 관한 제안이나 힌트를 제공하기 위한 방법 및 시스템을 제시한다. 예를 들어, 컴퓨터 구현 방법은 드로잉 안에서 대상 객체나 형체를 지정하는 단계를 포함할 수 있다. 상기 방법은 대상 객체와 연관될 주 객체나 형체를 식별하는 단계 및 상기 주 객체와 상기 대상 객체 간의 추천 연관관계(배치 및/또는 연결)를 제공하는 단계를 더 포함할 수 있다. 또한 상기 방법은 상기 추천 연관관계를 수락하는 명령을 수신하는 단계 (및 추천받은 대로 상기 대상 객체와 상기 주 객체를 연관시키는 단계)를 더 포함할 수 있다. 어떤 환경에서는, 이와 같은 방법으로 상기 방법을 구현하는 컴퓨팅 환경이 추천한 내용을 단순히 수락함으로써, 빠르고 쉽게 객체를 배치하고 다른 객체와 연결할 수 있다.
이하의 실시예에서 더 자세히 설명할 개념 일부를 간단한 형태로 소개하기 위하여 이 설명을 제공한다. 이 설명은 청구 범위에 기재한 발명의 요지의 핵심적 특징 또는 필수적 특징을 확인하기 위함이 아니며, 청구 범위를 판단하기 위해 사용되어서도 안 된다.
도 1은 본 발명의 여러 실시예에 있어서, 드로잉 응용프로그램에서 두 개의 객체를 서로 연관시키는 과정을 구현하기에 적합한 컴퓨팅 환경을 보여주는 블록도이다.
도 2는 본 발명의 여러 실시예에 있어서, 드로잉 응용프로그램에서 두 개의 객체를 서로 연관시키는 과정을 보여주는 흐름도이다.
도 3은 본 발명의 어떤 실시예에 있어서, 주 객체와 대상 객체 간의 적어도 하나의 추천 연관관계를 보여주는 디스플레이를 부분적으로 도식화한 도면이다.
도 4는 사용자가 상기 추천 연관관계 중 어느 하나를 수락하는 명령을 내리고 있는, 도 3의 디스플레이를 부분적으로 도식화한 도면이다.
도 5는, 상기 주 객체가 상기 대상 객체에 추천받은 대로 연관된, 도 4의 디스플레이를 부분적으로 도식화한 도면이다.
도 6은 본 발명의 다른 실시예에 있어서, 사용자가 복수의 주 객체의 지정을 명령하고 있는 디스플레이를 부분적으로 도식화한 도면이다.
도 7은 사용자가 상기 주 객체들과 하나의 대상 객체 간의 추천 연관관계를 수락하는 명령을 내리고 있는, 도 6의 디스플레이를 부분적으로 도식화한 도면이다.
도 8은 상기 주 객체들이 상기 대상 객체와 추천받은 대로 연관된, 도 7의 디스플레이를 부분적으로 도식화한 도면이다.
도 9는 본 발명의 또 다른 실시예에 있어서, 제1 주 객체와 대상 객체 간의 적어도 하나의 추천 연관관계를 보여주는 디스플레이를 부분적으로 도식화한 도면이다.
도 10은 상기 제1 주 객체가 상기 대상 객체와 연관되고, 제2 주 객체와 대상 객체 간의 적어도 하나의 추천 연관관계가 디스플레이되고 있는, 도 9의 디스플레이를 부분적으로 도식화한 도면이다.
도 11은, 상기 제2 주 객체가 대상 객체에 추천받은 대로 연관된, 도 10의 디스플레이를 부분적으로 도식화한 도면이다.
도 12는 본 발명의 그 밖의 또 다른 실시예에 있어서, 주 객체와 대상 객체 간의 적어도 하나의 추천 연관관계를 보여주는 디스플레이를 부분적으로 도식화한 도면이다.
도 13은, 상기 주 객체가 상기 대상 객체에 추천받은 대로 연관된, 도 12의 디스플레이를 부분적으로 도식화한 도면이다.
도 14는 본 발명의 그 밖의 또 다른 실시예에 있어서, 대상 객체와 주 객체 간의 적어도 하나의 추천 연관관계를 보여주는 디스플레이를 부분적으로 도식화한 도면이다.
드로잉 프로그램(다이어그램 제작 프로그램 포함)에서 두 개의 객체를 서로 연관시키기 위한 방법과 시스템을 제시한다. 본 발명의 실시예는, 대상 객체(target object)를 지정하는 명령을 수신하는 단계 및 대상 객체를 지정하는 단계를 포함하는 컴퓨팅 환경에서의 방법에 관한 것이다. 상기 방법은 주 객체(subject)를 식별하는 단계와, 대상 객체와 주 객체 간의 추천 연관관계(suggested association)를 제공하는 단계를 포함할 수 있다. 또한 상기 방법은 추천받은 연관관계를 수락하는 명령을 수신하는 단계와, 추천받은 대로 주 객체를 대상 객체에 연관시키는 단계를 더 포함할 수도 있다.
본 발명의 다른 실시예는, 드로잉 응용프로그램 내의 두 개의 객체를 서로 연관시키기 위한 컴퓨팅 환경에서의 방법에 관한 것으로, 상기 방법에는 대상 객체를 지정하는 명령을 수신하는 단계와, 대상 객체를 지정하는 단계가 포함된다. 상기 방법은 대상 객체와의 상대적인 방향을 식별시키는 시각적 지시자를 디스플레이하는 단계, 및 주 객체를 식별하는 단계를 더 포함할 수 있다. 상기 방법은 상기 시각적 지시자에 의해 식별되는 상기 방향을 수락하는 명령을 수신하는 단계, 및 대상 객체로부터 상기 시각적 지시자에 의해 식별되는 방향에 상기 주 객체를 배치하는 단계를 더 포함할 수 있다. 상기 방법은 연결기 객체(connector object)를 사용하여 상기 대상 객체와 상기 주 객체를 연결시키는 단계를 더 포함할 수 있다. 또한 상기 방법은 상기 시각적 지시자를 제거하는 단계를 더 포함할 수 있다.
본 발명의 또 다른 실시예는, 대상 객체를 지정하는 명령을 수신하는 단계 및 대상 객체를 지정하는 단계를 포함하는 방법을 실행하는 컴퓨팅 환경을 제어하는 명령들을 포함하는 컴퓨터 판독 가능 매체에 관한 것이다. 상기 방법은 주 객체를 식별하는 단계 및 상기 대상 객체와 상기 주 객체 간의 추천 연관 관계를 제공하는 단계를 더 포함할 수 있다. 또한 상기 방법은 상기 추천 연관관계를 수락하는 명령을 수신하는 단계 및 상기 주 객체를 상기 대상 객체에 추천받은 대로 연관시키는 단계를 더 포함할 수 있다.
도 1은 본 발명의 실시예에 있어서, 드로잉 응용프로그램 안의 두 개의 객체를 서로 연관시키는 과정을 구현하기에 적합한 컴퓨팅 환경을 보여주는 블록도이다. 컴퓨팅 환경(100)은, 디스플레이(104) 및 키보드(106a)와, 포인팅 장치(106b)(마우스 등) 같은 하나 이상의 입력 장치를 사용 가능하게 연결 또는 결합될 수 있는 컴퓨팅 또는 컴퓨터 시스템(102)을 포함할 수 있다. 또한, 상기 컴퓨터 시스템(102)은 하나 이상의 저장 장치(예를 들어 하나 이상의 데이터베이스가 저장된 하드 드라이브(108)) 및 다른 종류의 컴퓨터 판독 가능 매체를 읽기 위한 하나 이상의 장치들(110)(예를 들어 디스크(111)을 읽기 위한 장치)과 통신할 수 있다. 또한 컴퓨터 시스템(102)은 네트워크(112)(예를 들어 인터넷)를 통하여 다른 장치나 시스템과 통신할 수도 있다. 예를 들어, 제시된 실시예에서 컴퓨터 시스템(102)은 네트워크(112)를 통해서 다른 컴퓨터 시스템(114) 및/또는 다른 데이터베이스(116)와 통신할 수 있다. 다른 실시예에서, 더 많은 구성요소, 더 적은 구성요소, 및/또는 다른 구성요소를 포함하는 다른 장치들이 상기 컴퓨팅 환경에 포함될 수 있다.
예를 들어, 상기 시스템이 구현되는 상기 컴퓨팅 장치 또는 환경은 중앙처리장치, 메모리, 입력 장치(키보드, 포인팅장치 등), 출력 장치(디스플레이 장치 등), 및 저장 장치(디스크 드라이브 등)를 포함할 수 있다. 메모리 및 저장 장치는 상기 시스템을 구현하는 명령들을 포함하는 컴퓨터 판독 가능 매체이다. 또한, 통신 링크(communication link)에 실린 신호와 같은 데이터 전송 매체를 통해서 데이터 구조와 메시지 구조가 저장되거나 전송될 수 있다. 인터넷, 근거리 통신망(LAN), 원거리 통신망(WAN), 포인트-투-포인트(point-to-point) 다이얼-업 연결, 휴대폰 네트워크 등 다양한 통신 링크가 사용될 수 있다.
상기 시스템의 실시예는 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 프로그램 가능한 가전제품, 디지털 카메라, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 그리고 상기 언급한 시스템 또는 장치를 포함하는 분산 컴퓨팅 환경 등의 다양한 운영 환경에서 구현될 수 있다. 상기 컴퓨터 시스템은 휴대폰, PDA(personal digital assistants), 스마트 폰, 퍼스널 컴퓨터, 프로그램 가능한 가전제품, 디지털 카메라 등일 수 있다.
상기 시스템은 하나 이상의 컴퓨터 또는 기타 장치에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어의 일반적인 맥락에서 기술될 것이다. 일 반적으로, 프로그램 모듈은 특정 작업을 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 다양한 실시예에서, 일반적으로 프로그램 모듈의 기능은 필요에 따라 결합되거나 분산될 수 있다.
도 2는 본 발명에 여러 실시예에 있어서, 드로잉 응용프로그램 안의 두 개의 객체를 서로 연관시키는 과정(200)을 보여주는 흐름도이다. 상기 과정은 컴퓨팅 환경에서 실행될 수 있으며, 대상 객체를 지정하는 명령을 수신하는 단계(202)와 대상 객체를 지정하는 단계(204)를 포함할 수 있다. 상기 방법은 주 객체를 식별하는 단계(206)를 더 포함할 수 있다. 몇몇 실시예에서, 주 객체를 식별하는 단계는, 드로잉 영역 및/또는 드로잉 영역과 분리된 어떤 영역에서 하나 이상의 주 객체를 지정하는 명령을 수신하는 단계 및 명령대로 주 객체를 지정하는 단계를 포함할 수 있다. 다른 실시예에서, 주 객체를 식별하는 단계는, 주 객체 지정을 추천하는 단계, 추천받은 주 객체에 대한 지정을 수락하는 명령을 수신하는 단계, 및 상기 주 객체를 지정하는 단계를 포함할 수 있다.
상기 방법은 또한 주 객체와 대상 객체의 추천 연관관계를 하나 이상 제공하는 단계(208), 추천 연관관계 중 하나를 수락하는 명령을 수신하는 단계(210), 및 수락한 추천 연관관계대로 주 객체를 대상 객체와 연관하는 단계(212)를 더 포함할 수 있다. 상기 방법은 하나 이상의 추천 연관관계를 삭제하는 단계를 더 포함할 수도 있다. 선택된 실시예에서, 이와 같은 과정은 사용자가 상기 컴퓨팅 환경에 의해서 생성된 추천을 수락함으로써 드로잉 안의 두 객체를 생성, 배치, 및/또는 연결시키는 빠르고 효과적이며 효율적인 프로세스를 제공한다. 상관 관계를 나타내는(relational) 모양 및/또는 (프로세스 흐름도, 논리적 네트워크 다이어그램, 물리적 네트워크 구성도, 조직도, 기타 계층도 등) 기호를 사용하는 드로잉 응용프로그램에서 이 기능은 특히 유용하다. 도 3 내지 도 14는 본 발명의 선택된 실시예를 도시한다.
도 3은 본 발명의 특정 실시예에 있어서, 주 객체(330)와 대상 객체(320) 간의 적어도 하나의 추천 연관관계(340)를 보여주는 디스플레이(304)를 부분적으로 도식화한 도면이다. 도 3에서, 점선으로 표시한 바와 같이, 윈도우 또는 영역 360안의 객체들(365) 중 하나가 주 객체(330)로 식별되었다. 예를 들어, 상기 컴퓨팅 환경은 상기 영역(330) 안의 상기 객체(들)(365)로부터 주 객체(330)를 지정하는 명령을 사용자로부터 수신할 수 있고, 명령대로 주 객체(330)를 지정함으로써 주 객체(330)를 식별할 수 있다. 제시된 실시예에서, 사용자는 선택된 객체(365)를 주 객체(330)로 지정하기 위해 마우스를 사용하여 커서(350)를 선택된 또는 원하는 객체(365) 근처에 위치시키고, 마우스 버튼을 "클릭"함으로써 주 객체(330)를 지정하였다. 다른 실시예에서는, 예를 들어 키보드의 탭(tab)키로 목록 사이를 이동하여 엔터 키(enter key)를 사용해 주 객체(330)를 지정하는 방법 등, 주 객체를 지정하는 데에 다른 방법들을 사용할 수도 있다. 또한, 주 객체(330)가 식별되었다는 사실은 다른 방식으로 표시될 수도 있다. 예를 들어, 다른 실시예에서는, 색상 변화, 그림자, 반전(reverse video), 하이라이팅(highlighting) 등을 통해 주 객체의 지정을 표시할 수도 있다.
제시된 실시예에서, 영역 360은 (상기 지정된 대상 객체(320)를 포함하거나 포함할) 대상 드로잉이 만들어지는 드로잉 영역(305)과 분리되어있고, 객체들(365)의 목록이 담긴 윈도우 또는 "컨테이너"를 포함한다. 이하에서 더 자세히 논하겠지만, 상기 주 객체(330)가 객체들(365)의 목록으로부터 식별되면, 해당 객체(365)는 대상 객체(320)와 연관될 수 있도록 드로잉 영역(305) 안에서 생성, 재생성, 복사, 이동, 또는 배치될 수 있다. 다른 실시예에서, 객체들(365)의 목록은 다른 방식으로 표현될 수 있는데, 예를 들면 하나 이상의 객체들(365)을 식별시키기 위해서 단어 목록을 사용할 수 있다. 또 다른 실시예에서, 상기 영역(360)은 다른 드로잉 또는 문서(현재 드로잉 응용프로그램과 연관 있거나 연관 없는)를 포함할 수 있고, 객체들의 "컨테이너"를 참고로 하여 전술한 것과 비슷한 방식으로 하나의 객체(365)가 주 객체(330)로 식별될 수 있다. 그 밖의 또 다른 실시예에서, 비슷한 과정을 통해 드로잉 영역(305) 안의 하나의 객체(365)가 주 객체(330)로서 식별할 수 있다.
제시된 실시예에서, 선택된 객체를 히트 테스팅(hit testing) 하거나, 드로잉 영역 안에서 커서(350)를 선택된 객체 가까이(객체 근처에 또는 객체 위에) 옮김으로써, 사용자가 대상 객체(320)의 지정을 명령하였다. 상기 컴퓨팅 환경은 상기 명령을 수신하고, 선택된 객체를 대상 객체로서 지정하였으며, 주 객체(330)와 대상 객체(320) 사이의 적어도 하나의 추천 연관관계(340)를 제공하였다. 도 3에서, 제1 추천 연관관계(340a), 제2 추천 연관관계(340b), 제3 추천 연관관계(340c), 및 제4 추천 연관관계(340d)로 표시된 네 개의 추천 연관관계(340)를 볼 수 있다.
제시된 실시예에서, 대상 객체(320)로부터의 상대적인 방향을 가리키는 시각적 지시자로써 상기 추천 연관관계(340)가 나타나거나 디스플레이된다. 어떤 실시예에서는, 상기 추천 연관관계(340) 또는 시각적 지시자는 주 객체(330)를 대상 객체(320)에 대하여 배치하기 위한 추천 방향, 및/또는 대상 객체로부터의 연결기(예를 들어 주 객체와 대상 객체를 연결하기 위한 것)를 연장하기 위한 추천 방향을 나타낼 수 있다. 또한 도 3에서는 상기 추천 연관관계(340)를 점선으로 또는 약하게 표시되었는데, 이는 사용자가 아직 어떤 추천 연관관계도 선택 또는 수락하지 않았다는 것을 나타낸다. 다른 실시예에서, 상기 방법은 더 많은 종류, 더 적은 종류, 또는 다른 종류의 추천 연관관계(340)를 제공할 수 있다. 어떤 실시예에서는, 드로잉 안의 모든 객체에 대해서 추천 연관관계(340)가 제공되지는 않는다. (예를 들어 특정 객체가 히트 테스팅 될 경우 추천 연관관계(340)는 제공되지 않는다.) 예를 들어, 선택된 실시예에서, 연결기에 대해서는 추천 연관관계(340)가 디스플레이되지 않고, 연결기는 대상 객체(320)로 지정될 수 없다.
도 4에서, 사용자는 제1 추천 연관관계(340a) 근처로 커서(350)를 이동시켰다. 제1 추천 연관관계(340a)가 더 이상 점선으로 표시되지 않았는데, 이는 사용자가 제1 추천 연관관계(340a)를 선택하였다는 것을 나타내며, 다만 제시된 실시예에서 사용자가 아직 추천을 수락하지는 않았다. 예를 들어 커서(350)가 제1 추천 연관관계(340a)의 근처에 있는 동안에 마우스 버튼을 클릭(예를 들어 "포인트 앤드 클릭" 방식)하는 등의 적절한 명령을 입력함으로써 선택된 추천 연관관계(340)를 사용자가 수락할 수 있다는 것을 커서(350) 근처의 연결기 부호(352)가 보여준다.
제시된 실시예에서, 추천 연관관계(340)를 수락하는 명령을 입력하지 않음으로써 사용자는 추천 연관관계(들)(340)를 무시하거나 수락하지 않을 수 있다. 그리고 나서 사용자는 상기 선택된 객체로부터 커서(350)를 멀리 이동하고, 상기 드로잉 응용프로그램 안의 다른 도구(tool)를 사용하는 등의 작업을 할 수 있다. 다른 실시예에서는, 상기 선택된 추천사항을 사용자가 수락할 수 있다는 것을 보이기 위해 다른 표시가 사용될 수 있다. 예를 들면, 선택된 실시예에서는, 연결기 부호(352)가 없고, 점선으로 희미하게 표시했던 추천 연관관계를 뚜렷하게 표시함으로써 사용자가 추천을 수락할 수 있다는 것을 나타낸다. 다른 실시예에서는, 다른 표시(사용자가 추천을 선택할 수 있을 때에, 상기 커서(350)의 모양 또는 색상을 바꾸는 등)가 사용될 수 있다. 또 다른 실시예에서는 아무 표시도 사용되지 않는다.
도 5에서, 사용자는 제1 추천 연관관계(340)를 수락하였고, 그와 같은 명령이 수신되자 상기 컴퓨팅 환경은 제1 추천 연관관계(340a)가 추천한 대로 상기 주 객체(330)를 상기 대상 객체(320)와 연관시켰다. 예를 들어 어떤 실시예에서, 주 객체(330)를 대상 객체(320)와 연관시키는 것은, 선택된 방향에 따라 주 객체(330)를 대상 객체(320)에 적절하게 배치하는 단계, 및/또는 연결기 객체 또는 연결기(370)(예를 들어 선, 방향을 가지는 선, 점선, 사각형 객체 등)로 대상 객체(320)를 주 객체(330)와 연결시키는 단계를 포함할 수 있다. 다른 실시예에서, 주 객체(330)와 대상 객체(320)는, 대상 객체로부터 제1 추천 연관관계(340a)에 의해 표시된 방향으로 연장되는 연결기에 의해 연결될 수 있다. 또 다른 실시예에서는, 다른 방법으로 및/또는 다른 목적으로 주 객체(330)가 대상 객체와 연관될 수 있다. 예를 들어 선택된 실시예에서, 주 객체(330)와 대상 객체(320)가 선택된 아이템 그룹의 일부임을 보이기 위해서, 주 객체와 대상 객체 주변에 원(circle) 또는 구(sphere)를 배치할 수도 있다.
또한, 도 5에서는 추천 연관관계(340)가 (예를 들어 드로잉을 깔끔하게 하기 위해서) 제거되었다. 또한, 도 5에 나타나듯이, 어떤 실시예에서는, 예를 들어 사용자에게 추가적인 피드백(feedback)을 제공하기 위해서 애니메이션(animation)을 사용할 수도 있다. 도 5에서는, (점선 부호로 표시된 것처럼) 주 객체(330)의 복사물이 윈도우 360으로부터 드로잉 안의 자기 위치로 이동하는 것을 보이기 위해서 애니메이션이 사용되었다. 상기 애니메이션은, 주 객체(330)가 윈도우 360으로부터 드로잉 안의 자기 위치로 이동하는 동안 주 객체 330의 크기가 변하는 것을 보여준 후 사라질 수 있다. 다른 실시예에서는 애니메이션이 다른 형태를 취할 수도 있다. 예를 들어 어떤 실시예에서, 애니메이션은 상기 윈도우 360의 위치로부터 드로잉 안의 주 객체(330)의 위치로 일련의 점들이 이동하는 것을 간단히 보여줄 수도 있다.
도 6은 본 발명의 다른 실시예에 있어서, 사용자가 복수의 주 객체(630)의 지정을 명령하고 있는 디스플레이(604)를 부분적으로 도식화한 도면이다. 도 6에서, 사용자는 영역 660안의 하나의 객체(665)를 주 객체(630)로 지정하였다. 사용자는 복수의(예를 들어 2개의) 주 객체(630)가 식별된다는 것을 가리키기 위하여 멀티플 라디오 버튼(multiple radio button)(662)을 선택하여 데이터 필드(data field)(663)에 숫자 2를 입력하였다. 제시된 실시예에서, 사용자는 객체 근처에 커서(650)를 위치시키고 마우스 버튼을 누르고 있는 방법으로 해당 객체(665)의 지정을 명령하였다. 그리고 나면 사용자는 드로잉 영역(605) 안의 객체 665를 향해 상기 주 객체(630)를 이동시키거나 (예를 들어 마우스 버튼을 누른 채로 커서를 이동함으로써) "드래그(drag)" 할 수 있다.
도 7에서, 드로잉 영역 안의 선택된 객체(665) 근처에 커서(650)가 놓였는데, 이는 선택된 객체(665)를 대상 객체(620)로 지정하는 것이다. 이에 따라, 상기 컴퓨팅 환경은 제1 추천 연관관계(640a), 제2 추천 연관관계(640b), 제3 추천 연관관계(640c), 및 제4 추천 연관관계(640d)로 표시된 네 개의 추천 연관관계(340)를 제공하였다. 사용자는 제1 추천 연관관계(640a) 근처에 커서(650)를 위치시킴으로써 제1 추천 연관관계(640a)를 선택하였다. 사용자가 주 객체들(630)을 대상 객체(620) 쪽으로 드래그했기 때문에, 주 객체들(630)은 제1 추천 연관관계(640a)와 가까이에 있다. 제시된 실시예에서, "+2"라는 작은 글자가 주 객체들(630) 근처에 디스플레이되었는데, 이는 사용자가 두 개의 주 객체를 지정하였다는 것을 가리킨다. 다른 실시예에서는, 주 객체가 복수라는 것을 보이기 위해서 다른 방법들(예를 들어 여러 개의 부호 및/또는 겹친 모양)이 사용될 수 있다.
제시된 실시예에서, 상기 컴퓨팅 환경은 대상 객체(620)와 주 객체(들)(630) 사이의 연관관계에 대한 미리 보기(preview)를 디스플레이 할 수 있다. 도 7에서, 미리 보기는 점선으로 표시된다. 대상 객체(620)로부터 제1 추천 연관관계(640a)와 같은 방향으로 연장되는 제1 연결기(670a)로 다른 객체(665)가 대상 객체(620)에 연결되어 있기 때문에, 미리 보기에서 제1 추천 연관관계(640a)가 표시하는 방향으로 주 객체(630)가 배치되는 것을 볼 수 있지만, 제2 연결기(670b)는 처음에 대상 객체(620)로부터 제2 추천 연관관계(640b)가 표시하는 방향으로 연장된다. 다른 실시예에서, 상기 컴퓨팅 환경은 다른 방식, 및/또는 다른 우선 순위를 사용하여 주 객체(들)(630)의 배치에 있어서의 충돌을 없앨 수 있다. 예를 들어, 다른 실시예에서는, 대상 객체(620)의 한 쪽 면에 여러 개의 연결기를 붙일 수 있다.
제시된 실시예에서, 커서(650)가 제1 추천 연관관계(640a)의 근처에 있는 동안 사용자는 마우스 버튼(주 객체(630)를 대상 객체(620)로 드래그하기 위해서 누르고 있던)을 놓음으로써(드래그 앤 드롭 방식), 제1 추천 연관관계(640a)의 수락을 명령한다. 제1 추천 연관관계(640a)가 수락되면, 제1 추천연관(640a)이 가리킨 대로, 상기 컴퓨팅 환경은 주 객체(630)를 대상 객체(620)와 연관시킬 수 있다. 도 8에서, 주 객체(630)가 대상 객체(620)와 연관되었고, 제2 연결기(670b)는 제1 주 객체(630a)를 대상 객체에 연결하며, 제3 연결기(670c)는 제1 주 객체(630a)와 제2 연결기(670b)를 관통하여 제2 주 객체(630b)를 대상 객체(620)에 연결한다. 다른 실시예에서는 여러 개의 주 객체들(630)이 대상 객체(620)에 다른 방법으로 연결될 수 있다. 예를 들면, 어떤 실시예에서 여러 개의 주 객체들(630) 각각은 (예를 들어 각각 별도의 전용 연결기(670)로) 중간에 끼어드는 주 객체(630) 없이 대상 객체(620)에 직접 연결될 수 있다.
다른 실시예에서는, 다른 방법으로 및/또는 다른 영역에서 여러 개의 주 객체들이 식별될 수 있다. 예를 들어, 다른 실시예에서 키보드를 사용(예를 들어 탭과 엔터 키 사용)하여 객체들이 식별될 수 있다. 또 다른 실시예에서, 포인트 앤드 클릭 방식(point and click scheme)을 사용하여 여러 개의 주 객체(630)들이 식별될 수 있다. 예를 들어, 여러 개의 주 객체들(630)을 식별시키기 위하여, 사용자는 쉬프트 키를 누른 상태로, 마우스를 사용하여 여러 개의 객체들(665) 각각을 가리킨 후 마우스 버튼을 클릭할 수 있다. 추천 연관관계(640)를 수락하기 위하여, 도 3 내지 도 5를 참조하여 이상에서 논의한 포인트 앤드 클릭 방식이 사용될 수 있고, 이로써 여러 개의 주 객체를 대상 객체와 연관시킨다. 그 밖의 또 다른 실시예에서, 주 객체들(630) 중에 적어도 몇몇은 드로잉 영역(605)으로부터 선택될 수 있다.
도 9는 본 발명의 또 다른 실시예에 있어서, 제1 주 객체(930a)와 대상 객체(920) 간의 적어도 하나의 추천 연관관계(940)를 보여주는 디스플레이(904)를 부분적으로 도식화한 도면이다. 도 9에서, 지정된 객체(965)를 둘러싼 점선을 통해 볼 수 있듯이, 제1 주 객체(930a)는 영역 960의 객체들(965)로부터 식별되었다. 다른 실시예에서, 주 객체(들)(930)는 디스플레이(904)의 드로잉 영역(905)으로부터 선택될 수 있다. 제시된 실시예에서, 사용자는 드로잉 영역(905)안의 어떤 객체 근처에 커서(950)를 위치시켰고, 이로써 해당 객체를 대상 객체(920)로 지정하였다. 이에 대응하여, 상기 컴퓨팅 환경은 제1 주 객체(930a)와 대상 객체(920) 간의 추천 연관관계(940)를 제공하였다.
제시된 실시예에서, 상기 추천 연관관계(940)는 네 개의 화살표로 둘러싸인 원을 포함하는데, 이는 주 객체(들)(930)가 상기 컴퓨팅 환경이 정하는 순서에 따라 대상 객체(920)와 연관될 것이라는 것을 나타낸다. 예를 들어, 일 실시예에서, 제1 주 객체는 오른쪽에 연결되고, 제2 주 객체는 왼쪽에 연결되는 식이다. 다른 실시예에서는 다른 디스플레이 및/또는 로직이 사용될 수 있다. 예를 들면, 다른 실시예에서, 한번에 오직 하나의 화살표만이 디스플레이되는데, 그 화살표는 다음 주 객체(930)가 놓이게 될 특정 방향을 가리킨다. 또한, 상기 로직은 주 객체(들)(930)가 대상 객체(920)와 다른 순서(예를 들면, 제1 주 객체(930)가 대상 객체(920)의 오른쪽이 아니라 밑에 놓일 수 있다)로 연관되도록 할 수도 있다.
도 10에서 사용자는 (예를 들어 마우스 버튼을 클릭하여) 추천 연관관계(940)를 수락하는 명령을 하였고, 제1 주 객체(930)가 제1 연결기(970a)로 대상 객체(920)의 오른쪽 면에 연결되었다. 제2 주 객체(930b)가 선택되었다. 어떤 객체 근처에 커서(950)가 놓여져 그 객체를 대상 객체(920)로 지정하였고, 상기 컴퓨팅 환경은 제2 주 객체(930b)와 대상 객체(920) 간의 추천 연관관계를 제공하였다. 도 11에서, 상기 추천 연관관계(940)가 수락되었고, 제2 주 객체(930b)는 제2 연결기(970b)로 대상 객체(920)의 제2 면에 연결되었다.
도 12는 본 발명의 그 밖의 또 다른 실시예에 있어서, 주 객체(1230)의 대상 객체(1220) 간의 적어도 하나의 추천 연관관계(1240)를 보여주는 디스플레이(1204)를 부분적으로 도식화한 도면이다. 도 12에서, 드로잉 영역(905) 안의 제1 객체 근처에 커서(1250)가 놓여져서, 제1 객체를 히트 테스팅(hit testing) 하고 있다. 제시된 실시예에서, 어떤 객체를 히트 테스팅하면, 상기 컴퓨팅 환경은 가장 가까운 제2 객체를 찾기 위해서 선택된 영역(사각형 점선으로 표시됨) 안을 탐색한다. 어떤 객체도 발견되지 않으면, 제1 객체는 대상 객체로 지정되지 않고, 추천 연관관계도 제공되지 않는다. 만약 하나 이상의 제2 객체가 발견되면, 상기 컴퓨팅 환경은 제1 객체를 대상 객체(1220)로 지정하고, 주 객체를 무엇으로 지정할 지 추천하며(예를 들어 가장 가까운 제2 객체를 주 객체(1230)로 지정하라고 추천), 상기 추천된 주 객체와 대상 객체(1220) 간의 추천 연관관계(1240)를 제공한다. 도 12에 있는 점선으로 된 원은 추천된 주 객체 지정을 나타낸다. 다른 실시예에서, 상기 탐색 영역의 크기와 모양은 다양할 수 있다. 예를 들어, 어떤 실시예에서, 상기 탐색 영역은 히트 테스팅 되는 객체의 폭/높이 보다 2배 내지 3배가 될 수 있다. 다른 실시예에서, 상기 탐색 영역은 디스플레이 전체 또는 문서 전체가 될 수도 있다.
도 13에서, 사용자는 추천된 주 객체 지정을 수락하는 명령을 내렸고, 상기 컴퓨팅 환경은 해당 객체를 주 객체(1230)로 지정하였으며, 이로써 주 객체(1230)를 식별하였다. 또한, 사용자는 추천 연관관계(1240)를 수락하는 명령을 내렸고, 주 객체(1230)는 연결기(1270)로 대상 객체(1220)와 연결되었다. 어떤 실시예에서는, 한 번의 사용자 입력으로 상기 추천된 주 객체 지정과 추천 연관관계를 수락하는 일을 달성할 수 있다. 예를 들어 일 실시예에서, 마우스 버튼을 단 한번 누름으로써 상기 추천된 주 객체 지정과 추천 연관관계를 모두 수락할 수 있다. 다른 실시예에서는, 추천된 주 객체 지정과 추천 연관관계를 수락하기 위해서 별도의 명령들이 사용될 수 있다. 또 다른 실시예에서는, 여러 개의 추천 연관관계가 디스플레이 될 수 있고, 주 객체가 식별되고 나면 그 중 하나가 선택될 수 있다.
또한 도 13에서는, 주 객체(1230)가 대상 객체(1220)와 연관된 후, 사용자는 커서(1250)를 사용하여 드로잉 영역(1205)의 새로운 위치(도 13에서 점선으로 표시된 부분)로 주 객체(1230)를 드래그하였다. 제시된 실시예에서, 연결 1270은 동적인 또는 "고착된" 연결이다. 따라서 주 객체(1230) 및/또는 대상 객체(1220)가 이동(예를 들어 상대방과의 상대적인 위치에서)되어도 대상 객체(1220)와 주 객체(1230)는 (예를 들어 연결기(1270)가 수정됨으로써) 연결된 상태를 유지한다. 다른 실시예에서는, 추천 연관관계를 수락함으로써 만들어진 연결들은 동적인 연결이 아니다. 또 다른 실시예에서, 사용자는 추천 연관관계의 수락에 응답하여, 동적인 연결을 만들 것인지 말 것인지를 선택할 수 있다.
도 3 내지 도 12가 2차원의 디스플레이를 제시하였으나, 본 발명의 특징들은 3차원 디스플레이에서도 동일하게 적용 가능하다. 예를 들어, 도 14는 본 발명의 그 밖의 또 다른 실시예에 있어서, 대상 객체(1420)와 주 객체(1430) 간의 적어도 하나의 추천 연관관계(1440)를 보여주는 디스플레이(1404)를 부분적으로 도식화한 도면이다. 도 14에서, 사용자는 영역(1460) 안의 어떤 객체를 주 객체(1430)로 식별하였다. 사용자는 커서(1450)를 사용하여 주 객체(1430)(예를 들어 영역 1460에서 선택된 객체의 복사물)를 드로잉 영역(1405) 안의 어떤 선택된 객체 근처의 위치로 이동시켰다. 커서(1450)를 드로잉 영역(1405) 안의 상기 선택된 객체 근처에 위치시킴으로써, 상기 선택된 객체를 대상 객체(1420)로 지정하도록 명령하였다. 그에 따라, 상기 컴퓨팅 환경은 대상 객체(1420)와 주 객체(1430) 간의 복수의 추천 연관관계(1240)를 3차원으로 제공하였다.
다른 실시예에서, 드로잉 응용프로그램 안에서 두 객체를 서로 연관시키는 방법은 더 많은 특징, 더 적은 특징, 및/또는 다른 특징을 포함한다. 예를 들어, 어떤 실시예에서는, 사용자 취향 또는 어떤 종류의 드로잉 또는 문서가 선택되었는지에 따라서(예를 들어 템플릿 선택에 따라), 여러 가지 기능이 선택되거나 배제될 수 있다. 다른 실시예에서, 시각적 지시자가 나타날 때, 드로잉 영역 내의 인접 객체와의 거리에 따라, 시각적 지시자의 크기, 모양, 지정된 대상으로부터의 상대적인 위치가 변하거나 변경될 수 있다.
전술한 바에 의하면, 본 명세서에서는 예를 들어 설명하기 위한 목적으로 본 발명의 구체적인 실시예를 설명하였으나, 본 발명을 벗어나지 않는 범위에서 다양한 변경이 가해질 수 있음을 이해할 것이다. 또한, 특정 실시예와의 관계에서 설명된 본 발명의 여러 특징들이, 다른 실시예에서는 서로 결합되거나 제거될 수 있다. 예를 들어, 본 발명의 특정 실시예에 관련된 이점들을 해당 실시예와의 관계에서 설명하였지만, 다른 실시예에도 그러한 이점들이 나타날 수 있다. 또한 본 발명의 범주에 들어가기 위해서 모든 실시예들이 그러한 이점들을 보여야 하는 것은 아니다. 그러므로, 본 발명은 청구항에서 특정한 바에 의하여 한정될 뿐이다.

Claims (20)

  1. 컴퓨팅 환경에서 드로잉(drawing) 응용프로그램의 두 개의 객체를 서로 연관시키는(associating) 방법으로서,
    상기 드로잉 응용프로그램의 드로잉 영역의 제1 객체(object)를 타깃(target)으로 지정하는 명령을 수신하는 단계;
    상기 드로잉 영역의 상기 제1 객체를 타깃으로 지정하는 단계;
    상기 제1 객체에 연결될 제2 객체를 식별하는 단계;
    상기 드로잉 영역의 상기 제1 객체 및 상기 제2 객체간의 추천 연관관계(suggested association)를 디스플레이하는 단계 - 상기 추천 연관관계는 상기 타깃에 관한 방향을 식별하는 시각적 표시(indication)임 - ;
    상기 제1 객체 및 상기 제2 객체간의 추천 연관관계를 수락하는 명령을 수신하는 단계; 및
    상기 제2 객체를 상기 타깃과 추천받은 대로 연관시키는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 제2 객체를 상기 타깃과 연관시키는 단계는,
    상기 타깃에 관하여 선택된 방향으로 상기 제2 객체를 배치하는 단계, 및
    연결기(connector)를 사용하여 상기 타깃을 상기 제2 객체에 연결하는 단계
    중에서 적어도 하나를 포함하는, 방법.
  3. 제1항에 있어서,
    상기 제2 객체를 상기 타깃과 연관시키는 단계는,
    상기 타깃에 관하여 선택된 방향으로 상기 제2 객체를 배치하는 단계; 및
    연결기(connector)를 사용하여 상기 타깃을 상기 제2 객체에 연결하는 단계를 포함하며,
    상기 타깃과 상기 제2 객체의 연결은, (a) 상기 타깃이 이동되는 경우, (b) 상기 제2 객체가 이동되는 경우, 또는 (c) 상기 타깃 및 상기 제2 객체가 모두 이동되는 경우에, 상기 타깃 및 상기 제2 객체가 상기 연결기에 의해 연결된 상태를 유지하게 하는 동적인 연결인, 방법.
  4. 제1항에 있어서,
    상기 제2 객체를 식별하는 단계는,
    드로잉 영역 및 상기 드로잉 영역으로부터 분리된 임의의 영역 중에서 적어도 하나의 영역 안에 있는 하나 이상의 객체들 중에서 제2 객체를 지정하는 명령을 수신하는 단계; 및
    상기 제2 객체를 명령받은 대로 지정하는 단계를 포함하는, 방법.
  5. 제1항에 있어서,
    상기 제2 객체를 식별하는 단계는,
    제2 객체 지정을 추천하는 단계;
    상기 추천된 제2 객체 지정을 수락하는 명령을 수신하는 단계; 및
    상기 제2 객체를 지정하는 단계를 포함하는, 방법.
  6. 제1항에 있어서,
    상기 타깃에 관한 방향을 식별하는 시각적 표시는, (a) 상기 타깃에 관하여 상기 제2 객체를 배치하기 위한 추천 방향, (b) 상기 타깃을 상기 제2 객체에 연결하는 연결기를 상기 타깃으로부터 연장하기 위한 추천 방향, 또는 (c) 상기 (a) 및 (b)의 추천 방향 모두를 가리키는, 방법.
  7. 제1항에 있어서,
    상기 타깃에 관한 방향을 식별하는 시각적 표시는, (a) 상기 타깃에 관하여 상기 제2 객체를 배치하기 위한 추천 방향, (b) 상기 타깃을 상기 제2 객체에 연결하는 연결기를 상기 타깃으로부터 연장하기 위한 추천 방향, 또는 (c) 상기 (a) 및 (b)의 추천 방향 모두를 가리키고,
    상기 방법은 상기 시각적 표시를 제거하는 단계를 더 포함하는, 방법.
  8. 제1항에 있어서,
    상기 제2 객체를 식별하는 단계는 복수의 제2 객체를 식별하는 단계를 포함하고,
    상기 드로잉 영역의 제1 객체와 제2 객체간의 추천 연관관계를 디스플레이하는 단계는 각각의 제2 객체와 상기 제1 객체의 추천 연관관계를 제공하는 단계를 포함하며,
    상기 추천 연관관계를 수락하는 명령을 수신하는 단계는 추천 연관관계들을 수락하는 명령을 수신하는 단계를 포함하고,
    상기 제2 객체를 상기 타깃과 연관시키는 단계는 상기 제2 객체들을 상기 타깃과 추천받은 대로 연관시키는 단계를 포함하는, 방법.
  9. 제1항에 있어서,
    상기 드로잉 영역의 제1 객체와 제2 객체간의 추천 연관관계를 디스플레이하는 단계는,
    상기 제2 객체와 상기 제1 객체 간의 제1 추천 연관관계와, 상기 제2 객체와 상기 제1 객체 간의 적어도 하나의 제2 추천 연관관계를 제공하는 단계를 포함하는, 방법.
  10. 드로잉(drawing) 응용프로그램의 제1 객체를 제2 객체와 연관시키기 위한 컴퓨터 구현 방법으로서,
    상기 드로잉 응용프로그램의 제1 드로잉 영역에 디스플레이된 제1 객체를 제2 객체가 연결될 타깃으로서 지정하는 지정(designation)을 수락하는 단계;
    상기 제1 드로잉 영역과 분리된 상기 드로잉 응용프로그램의 제2 드로잉 영역에 디스플레이된 복수의 객체들 중에서 제2 객체의 선택을 수락하는 단계;
    상기 제2 객체가 상기 제1 드로잉 영역에 디스플레이되기 전에 상기 제1 객체와 상기 제2 객체간의 적어도 하나의 추천 연결관계를 디스플레이하는 단계 - 상기 적어도 하나의 추천 연결관계는 상기 타깃이 지정되고 상기 제2 객체가 선택될 때까지 디스플레이되지 않으며, 상기 추천 연결관계는 상기 제1 객체에 관한 방향을 식별하는 시각적 표시임 - ;
    상기 제1 객체와 상기 제2 객체간의 적어도 하나의 추천 연결관계 중에서 하나의 연결관계를 수락하는 명령을 수신하는 단계; 및
    상기 적어도 하나의 추천 연결관계 중에서 수락된 하나의 연결관계에 근거하여 상기 제1 드로잉 영역의 제2 객체를 디스플레이하는 단계를 포함하는, 컴퓨터 구현 방법.
  11. 제10항에 있어서,
    상기 적어도 하나의 추천 연결관계를 디스플레이하는 단계는,
    상기 제1 드로잉 영역에 상기 제2 객체를 배치하기 위해 상기 타깃에 관한 방향을 식별하는 적어도 하나의 시각적 표시를 디스플레이하는 단계를 포함하는, 컴퓨터 구현 방법.
  12. 제10항에 있어서,
    상기 적어도 하나의 추천 연결관계를 디스플레이하는 단계는,
    상기 제1 드로잉 영역에 상기 제2 객체를 배치하기 위해 상기 타깃에 관한 방향을 식별하는 적어도 하나의 시각적 표시, 및 상기 제2 객체가 상기 제1 드로잉 영역에 디스플레이될 때 상기 제2 객체로 상기 제1 객체를 연결하기 위한 연결기(connector)를 디스플레이하는 단계를 포함하는, 컴퓨터 구현 방법.
  13. 제12항에 있어서,
    상기 제2 객체를 디스플레이하는 단계는,
    식별된 방향으로 상기 제1 드로잉 영역에 상기 제2 객체를 디스플레이하는 단계; 및
    상기 제1 객체와 상기 제2 객체 사이에 연결기를 디스플레이하는 단계를 포함하는, 컴퓨터 구현 방법.
  14. 제10항에 있어서,
    상기 적어도 하나의 추천 연결관계를 디스플레이하는 단계는,
    상기 제1 드로잉 영역에 상기 제2 객체를 배치하기 위해 상기 타깃에 관한 방향을 식별하는 적어도 하나의 시각적 표시를 디스플레이하는 단계를 포함하고,
    상기 시각적 표시는 희미하게 표시되는(ghosted), 컴퓨터 구현 방법.
  15. 제14항에 있어서,
    상기 적어도 하나의 추천 연결관계를 디스플레이하는 단계는,
    상기 제1 드로잉 영역에 상기 제2 객체를 배치하기 위해 상기 타깃에 관한 방향을 식별하는 적어도 하나의 시각적 표시를 디스플레이하는 단계를 포함하고,
    상기 적어도 하나의 추천 연결관계 중에서 하나의 연결관계를 수락하는 명령이 수신될 때, 상기 시각적 표시는 선명하게 표시되는(unghosted), 컴퓨터 구현 방법.
  16. 제10항에 따른 컴퓨터 구현 방법을 수행하기 위한 명령들을 저장하는, 컴퓨터 판독 가능 매체.
  17. 드로잉 응용프로그램의 제1 객체를 제2 객체와 연관시키기 위한 컴퓨터 구현 시스템으로서,
    상기 드로잉 응용프로그램의 제1 드로잉 영역에 디스플레이된 제1 객체를 제2 객체가 연결될 타깃으로서 지정하는 지정(designation)을 수락하는 단계;
    상기 제1 드로잉 영역과 분리된 상기 드로잉 응용프로그램의 제2 드로잉 영역에 디스플레이된 복수의 객체들 중에서 제2 객체의 선택을 수락하는 단계;
    상기 제2 객체가 상기 제1 드로잉 영역에 디스플레이되기 전에 상기 제1 객체와 상기 제2 객체간의 적어도 하나의 추천 연결관계를 디스플레이하는 단계 - 상기 적어도 하나의 추천 연결관계를 디스플레이하는 단계는 상기 타깃에 관한 방향을 식별하는 적어도 하나의 시각적 표시자를 디스플레이하는 단계를 포함하고, 상기 적어도 하나의 추천 연결관계는 상기 제1 객체의 지정이 수락되고 상기 제2 객체의 선택이 수락될 때까지 디스플레이되지 않음 - ;
    상기 제1 객체와 상기 제2 객체간의 적어도 하나의 추천 연결관계 중에서 하나의 연결관계를 수락하는 명령을 수신하는 단계; 및
    상기 적어도 하나의 추천 연결관계 중에서 수락된 하나 연결관계에 근거하여 상기 제1 드로잉 영역에 제2 객체를 디스플레이하는 단계
    를 포함하는 방법을 프로세서가 수행할 수 있게 하는 명령들을 저장하는 컴퓨터 저장 매체를 포함하는, 컴퓨터 구현 시스템.
  18. 제17항에 있어서,
    상기 타깃에 관한 방향을 식별하는 적어도 하나의 시각적 표시자는 상기 제1 드로잉 영역에 상기 제2 객체를 배치하기 위한 것이고,
    상기 적어도 하나의 추천 연결관계를 디스플레이하는 단계는, 상기 제2 객체가 상기 제1 드로잉 영역에 디스플레이될 때 상기 제2 객체로 상기 제1 객체를 연결하기 위한 연결기를 디스플레이하는 단계를 포함하는, 컴퓨터 구현 시스템.
  19. 제18항에 있어서,
    상기 제2 객체를 디스플레이하는 단계는,
    식별된 방향으로 상기 제1 드로잉 영역에 상기 제2 객체를 디스플레이하는 단계; 및
    상기 제1 객체와 상기 제2 객체 사이에 연결기를 디스플레이하는 단계를 포함하는, 컴퓨터 구현 시스템.
  20. 삭제
KR1020087002071A 2005-08-12 2006-08-11 컴퓨터로 만든 드로잉(drawing) 환경에서의 객체 간 연관 KR101278793B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/203,678 2005-08-12
US11/203,678 US7474310B2 (en) 2005-08-12 2005-08-12 Object association in a computer generated drawing environment
PCT/US2006/031540 WO2007022028A1 (en) 2005-08-12 2006-08-11 Object association in a computer generated drawing environment

Publications (2)

Publication Number Publication Date
KR20080044827A KR20080044827A (ko) 2008-05-21
KR101278793B1 true KR101278793B1 (ko) 2013-06-25

Family

ID=37742580

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087002071A KR101278793B1 (ko) 2005-08-12 2006-08-11 컴퓨터로 만든 드로잉(drawing) 환경에서의 객체 간 연관

Country Status (8)

Country Link
US (2) US7474310B2 (ko)
EP (1) EP1913493B1 (ko)
JP (1) JP4995200B2 (ko)
KR (1) KR101278793B1 (ko)
CN (1) CN101243429B (ko)
BR (1) BRPI0614687A2 (ko)
RU (1) RU2422887C2 (ko)
WO (1) WO2007022028A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7474310B2 (en) * 2005-08-12 2009-01-06 Microsoft Corporation Object association in a computer generated drawing environment
US8739068B2 (en) * 2007-06-15 2014-05-27 Microsoft Corporation Dynamic user interface for in-diagram shape selection
US8762871B2 (en) * 2008-02-03 2014-06-24 Microsoft Corporation Dynamic preview of diagram elements to be inserted into a diagram
US20090237363A1 (en) * 2008-03-20 2009-09-24 Microsoft Corporation Plural temporally overlapping drag and drop operations
US8826174B2 (en) 2008-06-27 2014-09-02 Microsoft Corporation Using visual landmarks to organize diagrams
US20100115471A1 (en) * 2008-11-04 2010-05-06 Apple Inc. Multidimensional widgets
US9471920B2 (en) 2009-05-15 2016-10-18 Idm Global, Inc. Transaction assessment and/or authentication
US8250482B2 (en) * 2009-06-03 2012-08-21 Smart Technologies Ulc Linking and managing mathematical objects
US9293117B2 (en) 2010-10-01 2016-03-22 Lucid Software, Inc Manipulating graphical objects
US9019275B2 (en) * 2010-10-01 2015-04-28 Lucid Software, Inc. Manipulating graphical objects
CN103530710A (zh) * 2012-07-03 2014-01-22 鸿富锦精密工业(深圳)有限公司 生产线模型构建系统及方法
US9152297B2 (en) * 2012-10-25 2015-10-06 Udacity, Inc. Interactive content creation system
US8918405B2 (en) * 2012-11-29 2014-12-23 International Business Machines Corporation Auto suggestion tool
US9940107B2 (en) 2013-03-15 2018-04-10 International Business Machines Corporation Object and connection organization in a diagram
US20150222498A1 (en) * 2014-02-03 2015-08-06 Invensys Systems, Inc. Faster flowsheet design by predictive connectivity
US10078411B2 (en) 2014-04-02 2018-09-18 Microsoft Technology Licensing, Llc Organization mode support mechanisms
US10867273B2 (en) * 2014-09-26 2020-12-15 Oracle International Corporation Interface for expanding logical combinations based on relative placement
US9852427B2 (en) 2015-11-11 2017-12-26 Idm Global, Inc. Systems and methods for sanction screening
US9888007B2 (en) 2016-05-13 2018-02-06 Idm Global, Inc. Systems and methods to authenticate users and/or control access made by users on a computer network using identity services
US10965668B2 (en) 2017-04-27 2021-03-30 Acuant, Inc. Systems and methods to authenticate users and/or control access made by users based on enhanced digital identity verification
US11714928B2 (en) * 2020-02-27 2023-08-01 Maxon Computer Gmbh Systems and methods for a self-adjusting node workspace
US11373369B2 (en) 2020-09-02 2022-06-28 Maxon Computer Gmbh Systems and methods for extraction of mesh geometry from straight skeleton for beveled shapes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511218A (en) 1991-02-13 1996-04-23 Hughes Aircraft Company Connectionist architecture for weapons assignment
US5898434A (en) 1991-05-15 1999-04-27 Apple Computer, Inc. User interface system having programmable user interface elements

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644339A (ja) * 1992-03-06 1994-02-18 Hewlett Packard Co <Hp> 図形オブジェクト操作システム及び方法
US5485600A (en) * 1992-11-09 1996-01-16 Virtual Prototypes, Inc. Computer modelling system and method for specifying the behavior of graphical operator interfaces
US5881230A (en) * 1996-06-24 1999-03-09 Microsoft Corporation Method and system for remote automation of object oriented applications
IL119914A (en) 1996-12-25 2000-06-29 Emultek Ltd Device for implementing hierarchical state charts and methods and apparatus useful therefor
US6065021A (en) * 1998-04-07 2000-05-16 Adobe Systems Incorporated Apparatus and method for alignment of graphical elements in electronic document
US7093192B2 (en) * 1999-07-30 2006-08-15 Microsoft Corporation Establishing and displaying dynamic grids
US7373592B2 (en) * 1999-07-30 2008-05-13 Microsoft Corporation Modeless child windows for application programs
JP2001100887A (ja) * 1999-09-30 2001-04-13 Casio Comput Co Ltd オブジェクト処理装置
US6268766B1 (en) * 1999-12-17 2001-07-31 Acoustic Technologies, Inc. Band pass filter from two notch filters
US6854107B2 (en) 1999-12-29 2005-02-08 Baker Hughes Incorporated Method of and system for designing an N-tier software architecture for use in generating software components
TW530248B (en) * 2000-08-09 2003-05-01 Hitachi Ltd Data transmission system of directional coupling type using forward wave and reflective wave
JP2003122567A (ja) * 2001-10-12 2003-04-25 Masateru Minemoto 多次元プログラミング装置及び多次元プログラミング方法。
JP2003264292A (ja) * 2002-03-11 2003-09-19 Fujitsu Display Technologies Corp シミュレーション方法
US7302650B1 (en) * 2003-10-31 2007-11-27 Microsoft Corporation Intuitive tools for manipulating objects in a display
US20050108620A1 (en) * 2003-11-19 2005-05-19 Microsoft Corporation Method and system for selecting and manipulating multiple objects
JP2005352787A (ja) * 2004-06-10 2005-12-22 Matsushita Electric Ind Co Ltd タイミング解析方法およびタイミング解析装置
US7855904B2 (en) * 2005-03-17 2010-12-21 Los Alamos National Security, Llc Apparatus for producing voltage and current pulses
US7474310B2 (en) * 2005-08-12 2009-01-06 Microsoft Corporation Object association in a computer generated drawing environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511218A (en) 1991-02-13 1996-04-23 Hughes Aircraft Company Connectionist architecture for weapons assignment
US5898434A (en) 1991-05-15 1999-04-27 Apple Computer, Inc. User interface system having programmable user interface elements

Also Published As

Publication number Publication date
JP4995200B2 (ja) 2012-08-08
CN101243429B (zh) 2010-12-29
WO2007022028A1 (en) 2007-02-22
RU2008105039A (ru) 2009-08-20
RU2422887C2 (ru) 2011-06-27
BRPI0614687A2 (pt) 2011-04-12
EP1913493B1 (en) 2019-09-25
KR20080044827A (ko) 2008-05-21
US7474310B2 (en) 2009-01-06
JP2009505242A (ja) 2009-02-05
CN101243429A (zh) 2008-08-13
US20090079742A1 (en) 2009-03-26
EP1913493A1 (en) 2008-04-23
US20070036403A1 (en) 2007-02-15
EP1913493A4 (en) 2014-12-31
US7719534B2 (en) 2010-05-18

Similar Documents

Publication Publication Date Title
KR101278793B1 (ko) 컴퓨터로 만든 드로잉(drawing) 환경에서의 객체 간 연관
KR101794373B1 (ko) 선택된 데이터의 일시적인 포맷팅 및 도표화 기법
US6147683A (en) Graphical selection marker and method for lists that are larger than a display window
JP6448207B2 (ja) ビジュアル検索の構築、文書のトリアージおよびカバレッジの追跡
CN108292297A (zh) 用于在可视化优化期间选择性地保留图表元素的标记使用
Pleuss et al. Visualization of variability and configuration options
US8234591B1 (en) Undo and redo using thumbnails generated from a specific area of the image
US20180285965A1 (en) Multi-dimensional font space mapping and presentation
CA2823832C (en) A method for multiple pass symbol and components-based visual object searching of documents
Marks et al. ActiveGraph: A digital library visualization tool
JP2016505187A (ja) 文書の可視オブジェクト検索のためのプレフィルタリング
US9483852B2 (en) Method for displaying and manipulating genealogical data using a full family graph
US10911386B1 (en) Thread visualization tool for electronic communication documents
US20120141972A1 (en) Untangled Euler Diagrams
EP3227767B1 (en) Hierarchical navigation apparatus and method
US20240153169A1 (en) Changing coordinate systems for data bound objects
Lee Support zooming tools for mobile devices

Legal Events

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

Payment date: 20160517

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180516

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 7