JP7241462B2 - 3次元シーンにおけるオブジェクトの高速操作 - Google Patents

3次元シーンにおけるオブジェクトの高速操作 Download PDF

Info

Publication number
JP7241462B2
JP7241462B2 JP2017246763A JP2017246763A JP7241462B2 JP 7241462 B2 JP7241462 B2 JP 7241462B2 JP 2017246763 A JP2017246763 A JP 2017246763A JP 2017246763 A JP2017246763 A JP 2017246763A JP 7241462 B2 JP7241462 B2 JP 7241462B2
Authority
JP
Japan
Prior art keywords
computer
cursor
translation
axis
implemented method
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2017246763A
Other languages
English (en)
Other versions
JP2018106715A (ja
Inventor
ラム トマス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dassault Systemes SE
Original Assignee
Dassault Systemes SE
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 Dassault Systemes SE filed Critical Dassault Systemes SE
Publication of JP2018106715A publication Critical patent/JP2018106715A/ja
Application granted granted Critical
Publication of JP7241462B2 publication Critical patent/JP7241462B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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
    • 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/0486Drag-and-drop
    • 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
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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/2004Aligning objects, relative positioning of parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、コンピュータディスプレイ上に表示された3次元シーン内のオブジェクトを操作するためのコンピュータ実施方法に関する。それは、コンピュータグラフィックス、オーサリング、コンピュータ支援設計(CAD)、コンピュータ支援エンジニアリング(CAE)、およびコンピュータ支援製造(CAM)の分野に関しており、デジタルモデリングされたオブジェクトが3次元シーン内において操作(平行移動、回転、サイズ変更・・・)されなければならないすべての状況に適用される。
3次元モデリングは、3次元シーンの要素(オブジェクト)を、例えば、それらをシーン内において選択、拡大縮小、平行移動、回転することなどによって、操作する能力を必要とする。
3次元モデリングの初期には、これらのすべての変換は、パラメータによるものであり、すなわち、例えばキーボードを用いて、ユーザによって入力された数値入力によって定義されていた。この手法は、遅く、面倒で、明らかに直感的ではない。
すぐに研究者たちは、マウス、ジョイスティック、タッチパッドなどのポインティングデバイスを使用して、オブジェクトを操作するためのパラメータによらないユーザインターフェース(UI)を考案し始めた。しかしながら、そのようなポインティングデバイスは本質的に、2次元であり、例えば、マウスカーソルは、2次元のみで動かすことができ、したがって、3次元操作を定義するために直接使用することができない。この制限を克服するために、オブジェクトを操作するための初期のパラメータによらない方法は、いくつかのステップを、典型的にはオブジェクトの1または複数の点の選択と、それから上記点に適用されるアクションの選択とを含んでいた。この手法、それは「非没入型」と呼ばれることができる、は、点の選択、およびアクションの選択が、遅く面倒な操作であるので、依然として不満足なものである。3次元においてオブジェクトを操作するための初期の非没入型ユーザインターフェースの例は、非特許文献1、および非特許文献2によって説明されている。
3次元における3次元オブジェクトの操作を簡素化し、より直感的にするために、その後、「没入型」グラフィカルユーザインターフェース(GUI)が導入された。それらは、3次元シーンに導入されて、選択されたオブジェクトのより直接的な操作を可能にする、例えば、「インタラクタ」または「操作ツール」と呼ばれる-グラフィカルツールに依存する。
没入型GUIの初期の例は、非特許文献3において説明されている。
このGUIは、選択されたオブジェクトの周りに定義された、ハンドルを有する境界ボックスに基づいている。ハンドルに対する行為が、オブジェクトの操作を可能にする。
別の知られたインタラクタは、Dassault Systemesによって使用されたいわゆる「ロボット」であり、特許文献1において説明されている。「ロボット」は、異なる要素から構成され、各々は、異なる変形に関連付けられる。より具体的には、それは、各々が平行移動を表す3つの軸と、各々が回転を表す3つの弧と、それぞれの平面内における2D平行移動を表す3つの平面図形とを含む。「ロボット」は、操作されるオブジェクトに取り付けられ、次にオブジェクトの変換がインタラクタのそれぞれの要素上においてクリックを行うことによってトリガされる。
没入型GUIのまた別の例が、特許文献1によって提供されており、それは、3つの直角に交わる線分の形状を有するインタラクタであって、各々が、両端に球を有するデカルト軸を定義し、さらなる球が、インタラクタの中心に配置される、インタラクタを開示している。ユーザは、例えばマウスによって制御されるカーソルを用いて、球をドラッグすることによって、球と対話する。中心の球をドラッグすることは、インタラクタが取り付けられているオブジェクトの平行移動を可能にする。他の任意の球を対応する線分の方向にドラッグすることは、線分の方向における拡大縮小を定義する。中心のもの以外の球を対応する線分の方向に対して直角の方向にドラッグすることは、回転を定義する。
没入型UIは、非没入型のものよりもはるかに直感的である。それにもかかわらず、それらは、以下の著しい難点も有する。
- インタラクタは、操作されるオブジェクトの視覚的遮蔽を引き起こすことが多い。
- インタラクタの使用は、複雑なことがある。
- ユーザは、インタラクタの特定の部分を選択する必要があり、それは、時間がかかり、インタラクタが小さい場合(それは視覚的遮蔽を最低限に抑えるために必要とされることがある)、難しいことがある。
完全に異なる手法は、3D変換を直接的に定義するために、3D入力デバイス、例えば3Dマウスを使用することにある。しかしながら、この手法は、高価になりがちで、広く普及していない特定のハードウェアに依存しているので、あまり柔軟ではない。マルチボタンマウスが、単純な3D入力デバイスを構成してよいが、その使用は、あまり直感的ではなく、トレーニングを必要とする。
欧州特許第0824247号明細書
Eric A. Bier "Skitters and jacks: interactive 3D positioning tools", in Proceedings of the 1986 Workshop on Interactive 3D Graphics, pages 183- 196. ACM: New York, October 1986 Eric A. Bier "Snap-dragging: Interactive geometric design in two and three dimensions" Report. University of California, Berkeley. Computer Science Division 1988 Stephanie Houde, "Iterative design of an interface for easy 3-D direct manipulation", Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, p.135-142, May 03-07, 1992, Monterey, California, USA
本発明は、先行技術の難点を克服することを目標とする。より具体的には、それは、困難が引き起こされることを最低限にし、使用するのが簡単で直感的でありながら、高速な対話を提供するオブジェクトの3D操作のためのグラフィカルユーザインターフェースを提供することを目標とする。
これらの目標を達成することを可能にする本発明の目的は、コンピュータディスプレイ上に表示された3次元シーン内の少なくとも1つの3次元モデリングされたオブジェクトを操作するためのコンピュータ実施方法であり、方法は、
a)3次元シーンにおいて、ポインティングデバイスによって制御されるカーソルを表示するステップであって、カーソルは、座標系の3つの軸を表す形状を有する、ステップと、
b)3次元シーンのオブジェクトを選択するステップと、
c)前記ポインティングデバイスを使用して、ユーザによって実行された、ドラッグ操作を検出するステップであって、前記ドラッグ操作は、カーソルの平行移動を含む、ステップ、およびカーソルの前記平行移動に応じて、座標系の軸を選択するステップと、
d)選択されたオブジェクトの操作を実行するステップであって、前記操作は、選択された軸、および選択された軸に沿ったカーソルの平行移動の長さに依存する、ステップと
を含む。
本発明の特定の実施形態によれば、
- ステップc)は、カーソルの前記平行移動の先頭部線分に最も近い方向を有する座標系の軸を選択するステップを含んでよい。
- 前記先頭部線分の後、カーソルの平行移動は好ましくは、選択された軸に沿ってのみ実行される。
- ステップb)は、カーソルに最も近い3次元シーンのオブジェクトを自動的に選択するステップを含んでよい。あるいは、ステップb)は、ユーザからのコマンドに従って、3次元シーンのオブジェクトを選択するステップを含んでよい。
- ステップd)において実行される操作は、選択された軸に沿ったカーソルの平行移動の長さに比例した距離だけ、選択された軸に沿った選択されたオブジェクトの平行移動、選択された軸に沿ったカーソルの平行移動の長さに比例した角度だけ、選択された軸の周りの選択されたオブジェクトの回転、および選択された軸に沿ったカーソルの平行移動の長さに比例した距離だけ、選択された軸に沿った選択されたオブジェクトのアフィン変換を含むグループの中から選択されてよい。
- 座標系は、シーンのビューポイントに依存した向きを有するデカルト座標系であってよい。あるいは、座標系は、3次元シーン内に表示された操作ツールによって決定された向きを有するデカルト座標系であってよい。
- ステップc)は、カーソルの形状を、それが選択された軸だけを表すように、変化させるステップをさらに含んでよい。
- 選択されたオブジェクトは、メッシュのノードであってよい。
本発明の別の目的は、非一時的コンピュータ可読データ記憶媒体上に記憶され、コンピュータシステムにそのような方法を実施させるコンピュータ実行可能命令を含むコンピュータプログラム製品である。
本発明のさらなる目的は、コンピュータシステムにそのような方法を実施させるコンピュータ実行可能命令を含む非一時的コンピュータ可読データ記憶媒体である。
本発明のまた別の目的は、メモリおよびグラフィカルユーザインターフェースに結合されたプロセッサを備えるコンピュータシステムであり、メモリは、コンピュータシステムに、そのような方法を実施させるコンピュータ実行可能命令を格納する。
本発明のさらなる特徴および利点は、添付の図面と併せて解釈される以下の説明から明らかになる。
本発明の方法において使用されるカーソルの可能な形状を示す図である。 本発明の異なる実施形態に従って操作されるオブジェクトの「明示的」選択を示す図である。 本発明の異なる実施形態に従って操作されるオブジェクトの「暗黙的」選択を示す図である。 本発明の実施形態によるドラッグ操作を示す図である。 本発明の実施形態によるドラッグ操作を示す図である。 本発明の実施形態による方法のフローチャートである。 「暗黙的」オブジェクト選択を実施する本発明の実施形態の、3次元グリッドの変形に対する適用を示す図である。 「暗黙的」オブジェクト選択を実施する本発明の実施形態の、3次元グリッドの変形に対する適用を示す図である。 「明示的」オブジェクト選択を実施する本発明の異なる実施形態の、3次元グリッドの変形に対する適用を示す図である。 本発明の異なる実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。 本発明の異なる実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。
以下において、「3次元」(または「3D」)モデリングされたオブジェクトは、3次元(3D)グラフィカル表現を可能にするオブジェクト、より正確には、コンピュータシステム内におけるそのデジタル表現である。3D表現は、すべての角度(ビューポイント)からパーツを見ることを可能にする。例えば、3Dモデリングされたオブジェクトは、3D表現されたとき、表現が表示された画面内において扱われてよく、その軸のいずれかの周り、または任意の軸の周りで回転させられてよい。3次元シーンは、3D空間内に配置された複数の3Dモデリングされたオブジェクトによって構成される。
本発明の基礎にあるアイデアは、その形状がインタラクタとして適切に変更されたカーソル自体を使用することである。これは、インタラクタをオブジェクトに関連付け、次に変換を選択するためにインタラクタの要素上においてクリックするという時間のかかる操作を排除する。さらに、いずれのケースにおいても必然的に存在するカーソルによって引き起こされる小さいものを除いて、視覚的妨害が存在しない。
図1は、3つの同一平面内にない軸X、Y、Zをシンボリカルに表した形状を有する本発明の実施形態による可能なカーソル/インタラクタCを示している。都合のよいことに、これらの軸は、相互に直交しており、デカルト座標系を形成する。それらは、向きがビューポイントとともに変化するシーンの「内在的」座標系に対応してもよく、またはそれは、後で説明されるように、それに関して自由な向きを向いていてよい。「通常の」カーソルの、本発明によるカーソル/インタラクタへの変換は、例えばキーボードを使用して入力されたコマンドによって、またはメニューから項目を選択することによってトリガされてよい。
カーソルCは、シーン上に配置され、適切なポインティングデバイス、例えばマウスを使用して動かされる。カーソルが普通そうであるように、それは、シーンのオブジェクトを選択するために使用されてよい。選択は、明示的または暗黙的のいずれかでよい。明示的な選択は、例えばカーソルをシーンのオブジェクト上に位置付け、例えばマウスボタンを使用して、その上でクリックすることによって実行される。通常、選択されたオブジェクトは強調表示され、カーソルが他に移動したときでさえも、例えばカーソルがその上にないときに再びクリックすることによってそれが選択解除されるまでは、それは、選択されたままである。図2においては、例えば、シーン3DSのオブジェクトO1が選択されており、カーソルCがもはやその上に位置していない場合でさえも、そのままである。しかしながら、本発明の好ましい実施形態によれば、選択も暗黙的であってよい。これは、シーンのオブジェクトが明示的に選択されなかったとき、フォーカスが、カーソルに最も近いオブジェクト上にあることを意味する。例えば、図2Aの状況から始めて、オブジェクトO1が選択解除された場合、次にオブジェクトO2が暗黙的に選択される(図2B)。暗黙的な選択は、カーソルが別のオブジェクトに近づくと直ちに、それは失われるので、一過的な感がある。
明示的または暗黙的に選択されたオブジェクトは、単にカーソルを用いて「ドラッグ」を実行することによって操作されてよい。「ドラッグ」は、異なる特定のアクションが入力デバイスを使用して実行されている間に実行されるカーソルを平行移動することにあり、このアクションは典型的には、カーソルを制御するために使用されるマウス、タッチパッド、またはジョイスティックのボタンの押下である。図3Aは、ドラッグ操作中のカーソルCの平行移動を示している。一般に、(例えば、マウスパッド上を動くマウスの軌跡に対応する)ドラッグ操作によって定義される経路DPは、完全には直線的ではないが、しかしながら、例えば、数ミリメートル、例えば5mm延びる、経路の先頭部線分ISは、近似的に直線であると見なされ得る。本発明の実施形態によれば、経路の先頭部線分は、カーソルの動きの初期方向を識別するために使用される。次に、その方向が動きの初期方向に最も近いカーソルによって表される座標系の軸が選択される。図3Aの例においては、経路の先頭部線分ISは、カーソルのX軸にほぼ沿った向きを向いており、したがって、この軸が選択され、変換の軸を構成する。都合のよいことに、画面上に表示されたカーソルは、ドラッグによって定義された経路DPではなく、図3Bに示されるように、選択された軸へのそれの射影PPを辿る。これは、必須ではないが、ユーザが、どの軸が選択されたかを理解する助けとなる。任意選択で、カーソルの形状も、選択された軸を明瞭に識別するために、変化してよい(下記参照、図5B)。
変換は、選択された軸によって、および経路PPの長さLに対応する数値、すなわち、選択された軸の方向におけるカーソルの変位の数値によって定義される。変換のタイプは、あらかじめ決定されており、ユーザによって選択されることができない。すなわち、本発明のカーソル/インタラクタは、単一のあらかじめ決定された種類の操作、例えば、選択された軸に沿った平行移動、または上記軸の方向におけるアフィン変換(再拡大再縮小)、またはその周りの回転を実行することだけが可能である。したがって、それは、例えば、いくつかの異なる種類の操作を実行することを可能にする特許文献1の「ロボット」よりも柔軟性が低い。しかしながら、いくつかの用途においては、単一の種類の操作は、意味があり、その場合、本発明のGUIは、完全に適している。他のいくつかの用途においては、一種類の操作(多くは平行移動)が飛び抜けて頻繁に使用され、これらの場合、本発明のGUIをデフォルトで使用し、必要とされたときに「汎用的な」もの(例えば、「ロボット」)に切り換えることが可能である。切り換えは、例えばマウスを使用した右ボタンのクリックを実行して、メニューを出現させ、次にメニューの適切な項目を選択することによって実行されてよい。
それが使用されることができる場合、本発明のGUIは、先行技術によるよりもかなり速くかつより容易に、オブジェクトを操作することが可能である。特に、暗黙的な選択が使用されるとき、操作されるオブジェクト上におけるクリックは必要ではなく、カーソルをその近くに位置付けることで十分である。さらに、インタラクタ上においてクリックを行って、操作軸を選択することは必要ではない。簡単な「ジェスチャ」(ドラッグ操作)で十分である。
また、カーソルは、シーンに重ね合わされるだけで、その位置は重大ではないので、最低限の視覚的妨害だけが存在する。
図4は、本発明の方法のフローチャートである。最初に、(i)において、操作されることができるオブジェクトを含む3次元シーンが画面上に表示される。次に、図1のものなど、変更されたカーソルCがシーン上に重ね合わされる(ii)。ユーザがドラッグ操作を開始したとき(iii)、コンピュータシステムは、シーンの選択されたオブジェクトを探す。オブジェクトは、従来の方法で、カーソルを使用して明示的に選択されてよく、さもなければ、カーソルに最も近いオブジェクトが、暗黙的に選択されたと見なされる(iv)。次に、初期ドラッグ方向が検出され、この方向に最も近い(すなわち、それと成す角度が最も小さい)カーソルの軸が、識別される(v)。次に、識別された軸に沿った、その軸に沿ったカーソルの平行移動の長さに比例した大きさを有する操作が実行される(vi)。
本発明の方法の特定の用途は、例えば、サーフェスの形状を自由に定義するために、メッシュのノードを動かすことにある。ノードは、点であるので、それらの平行移動自由度だけが意味を持ち、したがって、本発明のGUIは、それらに対するすべての可能な操作を実行することができる。
図5Aは、エッジによって接続された複数のノードN1、N2、N3...を含むメッシュMHを示している。暗黙的に選択されたノードN1は、強調表示されている。本質的にカーソルの「Z」軸に沿った初期方向を有するドラッグ操作が実行される。この初期方向が検出され、結果として、
- カーソルは、排他的にその方向に沿って動き、
- 選択されたノードN1は、これと同じ方向に沿って、カーソルの平行移動の長さに比例した量だけ変位させられ、それが、今度はメッシュを変形させる(図5B)。
図5Aおよび図5Bの実施形態においては、選択されている軸についてユーザに通知するために、ドラッグ操作中、カーソルの形状が変化する。より具体的には、図5Bに見られるように、ドラッグ操作中、カーソルは、選択された軸Zだけを表示する。
今までは、カーソルの軸の向きが、固定されていることが仮定されていた。必ずしもそうである必要はない。例えば、図6は、ユーザが「ロボット」インタラクタRTを出現させ、それをメッシュの明示的に選択されたノードN1に関連付けることが可能な実施形態を示している。カーソルCの軸は、「ロボット」のそれらに結び付けられ、したがって、シーンに関して自由な向きに向けられることができる。ノードN1が明示的に選択されたので、残りのノード(N2、N3、N4...)は、カーソルの位置によって影響されない。
本発明の方法はおそらくは、コンピュータネットワークを含み、ハードディスク、ソリッドステートディスク、またはCD-ROMなどのコンピュータ可読媒体上に不揮発性形式で適切なプログラムを記憶し、そのプログラムをマイクロプロセッサおよびメモリを使用して実行する適切にプログラムされた汎用コンピュータまたはコンピュータシステムによって実行されることができる。
本発明の例示的な実施形態に従った方法を実施するのに適したコンピュータ-より詳細には、コンピュータ支援設計システムまたはステーション-が、図7を参照して説明される。図7においては、コンピュータは、上述したプロセスを実行する中央処理装置CPUを含む。プロセスは、実行可能プログラム、すなわち、コンピュータ可読命令のセットとして、RAM M1もしくはROM M2などのメモリ内に、またはハードディスクドライブ(HDD)M3、DVD/CDドライブM4上に、またはリモートに記憶されることができる。さらに、複数のオブジェクトを含む3次元シーンを定義する1または複数のコンピュータファイルも、1もしくは複数のメモリデバイスM1からM4上に、またはリモートに記憶されてよい。
特許請求される本発明は、本発明のプロセスのコンピュータ可読命令および/またはデジタルファイルが記憶されるコンピュータ可読媒体の形態によって限定されない。例えば、命令およびファイルは、CD、DVD上に、フラッシュメモリ、RAM、ROM、PROM、EPROM、EEPROM、ハードディスク、またはサーバもしくはコンピュータなど、コンピュータ支援設計もしくはイラストレーションオーサリングステーションが通信する他の任意の情報処理デバイス内に記憶されることができる。プログラムおよびファイルは、同じメモリデバイス上に、または異なるメモリデバイス上に記憶されることができる。
さらに、本発明の方法を実施するのに適したコンピュータプログラムは、CPU800、ならびにMicrosoft VISTA、Microsoft Windows 8または10、UNIX、Solaris、LINUX、Apple MAC-OS、および当業者に知られた他のシステムなどのオペレーティングシステムと連携して動作する、ユーティリティアプリケーション、バックグラウンドデーモン、もしくはオペレーティングシステムのコンポーネント、またはそれらの組み合わせとして提供されることができる。
中央処理装置CPUは、米国のIntel製のXenonプロセッサ、もしくは米国のAMD製のOpteronプロセッサとすることができ、または米国のFreescale Corporation製のFreescale ColdFire、IMX、もしくはARMプロセッサなどの他のプロセッサタイプとすることができる。あるいは、中央処理装置は、米国のIntel Corporation製のSkylakeなどのプロセッサとすることができ、または当業者が認識するように、FPGA、ASIC、PLD上に、もしくは個別論理回路を使用して実施されることができる。さらに、中央処理装置は、上で説明された本発明のプロセスのコンピュータ可読命令を実行するために協働して作業する、複数のプロセッサとして実施されることができる。
図7におけるコンピュータ支援設計ステーションは、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、およびインターネットなどのネットワークとインターフェースを取るための、米国のIntel Corporation製のIntel Ethernet PROネットワークインターフェースカードなどのネットワークインターフェースNIも含む。コンピュータ支援設計ステーションは、Hewlett Packard HPL2445w LCDモニタなどのディスプレイDYとインターフェースを取るための、米国のNVIDIA Corporation製のNVIDIA GeForce GTXグラフィックスアダプタなどのディスプレイコントローラDCをさらに含む。汎用I/OインターフェースIFは、キーボードKB、ならびにローラボール、マウス、およびタッチパッドなどのポインティングデバイスPDとインターフェースを取る。ディスプレイ、キーボード、およびポインティングデバイスは、ディスプレイコントローラおよびI/Oインターフェースと一緒に、ユーザが、3次元シーンを表示するために、コンピュータ支援設計ステーションによって、入力コマンドを提供すること-例えば、カーソルを動かすこと-を可能にする。
ディスクコントローラDKCは、HDD M3およびDVD/CD M4を、通信バスCBSと接続し、通信バスCBSは、コンピュータ支援設計ステーションのコンポーネントのすべてを相互接続するための、ISA、EISA、VESA、またはPCIなどとすることができる。
ディスプレイ、キーボード、ポインティングデバイス、ならびにディスプレイコントローラ、ディスクコントローラ、ネットワークインターフェース、およびI/Oインターフェースの一般的な特徴および機能性についての説明は、これらの特徴は知られているので、簡潔にするために、本明細書においては省略される。
図8は、本発明の異なる例示的な実施形態に従った方法を実施するのに適したコンピュータシステムのブロック図である。
図8においては、実行可能プログラムEXP、および3次元を定義するコンピュータファイルは、サーバSCに接続されたメモリデバイス上に格納される。メモリデバイス、およびサーバの全体的なアーキテクチャは、ディスプレイコントローラ、ディスプレイ、キーボード、および/またはポインティングデバイスが、サーバにはなくてよいことを除いて、図7を参照して上で説明されたものと同じであってよい。
サーバSCは、その場合、ネットワークNWを介して、アドミニストレータシステムADSおよびエンドユーザコンピュータEUCに接続される。
アドミニストレータシステムおよびエンドユーザコンピュータの全体的なアーキテクチャは、アドミニストレータシステムおよびエンドユーザコンピュータのメモリデバイスが、実行可能プログラムEXP、および/または3次元シーンを定義するコンピュータファイルを記憶しないことを除いて、図7を参照して上で説明されたものと同じであってよい。しかしながら、エンドユーザコンピュータは、以下で説明されるように、サーバの実行可能プログラムと協働するように設計されたクライアントプログラムを記憶する。
理解されることができるように、ネットワークNWは、インターネットなどのパブリックネットワーク、またはLANもしくはWANネットワークなどのプライベートネットワーク、またはそれらの任意の組み合わせとすることができ、PSTNまたはISDNサブネットワークも含むことができる。ネットワークNWは、Ethernetネットワークなどの有線とすることもでき、またはEDGE、3Gおよび4G無線セルラシステムを含む、セルラネットワークなどの無線とすることができる。無線ネットワークは、Wi-Fi、Bluetooth、または知られた他の任意の無線形態の通信とすることもできる。したがって、ネットワークNWは、例示的であるにすぎず、本進歩の範囲を決して限定しない。
エンドユーザコンピュータのメモリデバイス内に記憶され、エンドユーザコンピュータのCPUによって実行されるクライアントプログラムは、サーバSCによって記憶され、3次元シーンまたはそれの要素を定義するファイルを格納したデータベースDBに、ネットワークNWを介してアクセスする。これは、エンドユーザが、例えば、シーンの1または複数のオブジェクトを操作することによって、そのようなファイルをオープンし、おそらくは変更することを可能にする。サーバは、上で説明されたような処理を実行し、シーンの所望の表現に対応する画像ファイルを、やはりネットワークNWを使用して、エンドユーザコンピュータに送信する。
ただ1つのアドミニストレーションシステムADSおよび1つのエンドユーザシステムEUXしか、示されていないが、システムは、制限なしに、任意の数のアドミニストレーションシステムADSおよび/またはエンドユーザシステムをサポートすることができる。同様に、本発明の範囲から逸脱することなく、複数のサーバが、システム内において実施されることもできる。
本明細書において説明されたいずれのプロセスも、プロセス内の特定の論理機能またはステップを実施するための1または複数の実行可能命令を含む、モジュール、セグメント、またはコードの一部を表すと理解されるべきであり、代替的な実施は、本発明の例示的な実施形態の範囲内に含まれる。

Claims (12)

  1. コンピュータディスプレイ上に表示された3次元シーン(3DS)において、少なくとも1つの3次元モデリングされたオブジェクト(O1、N1)を操作するためのコンピュータ実施方法であって、
    a)前記3次元シーンにおいて、ポインティングデバイス(PD)によって制御されるカーソル(C)を表示するステップであって、前記カーソルは、キーボードを使用して入力されるコマンドによって、またはメニューからの項目を選択することによって、座標系の3つの軸(X、Y、Z)を表す形状を有する、ステップと、
    b)前記3次元シーンのオブジェクト(O1、N1)を選択するステップであって、前記選択されるオブジェクトは、メッシュの中のノードであり、前記メッシュは、複数のノードを含む、ステップと、
    c)前記ポインティングデバイスを使用して、ユーザによって実行されたドラッグ操作を検出するステップであって、前記ドラッグ操作は、前記カーソルの平行移動を含む、ステップ、および前記カーソルの前記平行移動に応じて、前記座標系の軸(Z)を自動的に選択するステップと、
    d)前記メッシュの中の前記選択されているノードの操作を実行するステップであって、前記操作は、前記選択された軸に依存し、前記選択された軸に沿った前記カーソルの前記平行移動(PP)の長さ(L)によって決まり、前記メッシュの中の選択されていないノードの位置は、影響を受けないままである、ステップと
    を含むことを特徴とするコンピュータ実施方法。
  2. ステップc)は、前記カーソルの前記平行移動(DP)の先頭部線分(IS)に最も近い方向を有する前記座標系の軸を選択するステップを含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  3. 前記先頭部線分の後、前記カーソルの前記平行移動は、前記選択された軸に沿ってのみ実行されることを特徴とする請求項2に記載のコンピュータ実施方法。
  4. ステップb)は、前記カーソルに最も近い前記3次元シーンの前記オブジェクトを自動的に選択するステップを含むことを特徴とする請求項1ないし3のいずれかに記載のコンピュータ実施方法。
  5. ステップb)は、前記ユーザからのコマンドに従って、前記3次元シーンのオブジェクトを選択するステップを含むことを特徴とする請求項1ないし3のいずれかに記載のコンピュータ実施方法。
  6. ステップd)において実行される前記操作は、
    前記選択された軸に沿った前記カーソルの前記平行移動の前記長さに比例した距離だけ、前記選択された軸に沿った前記選択されたオブジェクトの平行移動、
    前記選択された軸に沿った前記カーソルの前記平行移動の前記長さに比例した角度だけ、前記選択された軸の周りの前記選択されたオブジェクトの回転、および
    前記選択された軸に沿った前記カーソルの前記平行移動の前記長さに比例した距離だけ、前記選択された軸に沿った前記選択されたオブジェクトのアフィン変換
    を含むグループの中から選択されることを特徴とする請求項1ないし5のいずれかに記載のコンピュータ実施方法。
  7. 前記座標系は、前記シーンのビューポイントに依存した向きを有するデカルト座標系であることを特徴とする請求項1ないし6のいずれかに記載のコンピュータ実施方法。
  8. 前記座標系は、前記3次元シーン内に表示された操作ツール(RT)によって決定された向きを有するデカルト座標系であることを特徴とする請求項1ないし6のいずれかに記載のコンピュータ実施方法。
  9. ステップc)は、前記カーソルの前記形状を、それが前記選択された軸だけを表すように、変化させるステップをさらに含むことを特徴とする請求項1ないし8のいずれかに記載のコンピュータ実施方法。
  10. 非一時的コンピュータ可読データ記憶媒体(M1~M4)上に記憶され、コンピュータシステムに、請求項1ないしのいずれかに記載の方法を実施させるコンピュータ実行可能命令を含むことを特徴とするコンピュータプログラム。
  11. コンピュータシステムに、請求項1ないしのいずれかに記載の方法を実施させるコンピュータ実行可能命令(EXP)を含むことを特徴とする非一時的コンピュータ可読データ記憶媒体(M1~M4)。
  12. メモリ(M1~M4)およびグラフィカルユーザインターフェース(KB、PD、DC、DY)に結合されたプロセッサ(P)を備えるコンピュータシステムであって、前記メモリは、前記コンピュータシステムに、請求項1ないしのいずれかに記載の方法を実施させるコンピュータ実行可能命令(EXP)を格納することを特徴とするコンピュータシステム。
JP2017246763A 2016-12-22 2017-12-22 3次元シーンにおけるオブジェクトの高速操作 Active JP7241462B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP16306773.9A EP3340023B1 (en) 2016-12-22 2016-12-22 Fast manipulation of objects in a three-dimensional scene
EP16306773.9 2016-12-22

Publications (2)

Publication Number Publication Date
JP2018106715A JP2018106715A (ja) 2018-07-05
JP7241462B2 true JP7241462B2 (ja) 2023-03-17

Family

ID=57755135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017246763A Active JP7241462B2 (ja) 2016-12-22 2017-12-22 3次元シーンにおけるオブジェクトの高速操作

Country Status (4)

Country Link
US (1) US10839613B2 (ja)
EP (1) EP3340023B1 (ja)
JP (1) JP7241462B2 (ja)
CN (1) CN108228026B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3623969B1 (en) * 2018-09-12 2023-10-25 Dassault Systèmes Method for generating a movement comprising at least a rotation
CN109658524A (zh) * 2018-12-11 2019-04-19 浙江科澜信息技术有限公司 一种三维模型的编辑方法、***及相关装置
CN110559660B (zh) * 2019-08-02 2022-05-17 宝宝巴士股份有限公司 Unity3D场景中鼠标对物体的按面拖拽法及介质
CN111739171B (zh) * 2020-06-18 2024-04-12 北京百度网讯科技有限公司 三维场景编辑器的元素放置方法、装置、设备及存储介质
EP3940577A1 (en) 2020-07-15 2022-01-19 Dassault Systèmes Method for designing a three-dimensional mesh in a 3d scene
KR102431052B1 (ko) * 2020-08-18 2022-08-11 오스템임플란트 주식회사 매니퓰레이터 선택 방법 및 이를 위한 치과영상 처리 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003006678A (ja) 2001-06-18 2003-01-10 Hitachi Software Eng Co Ltd オブジェクトの選択制御方法
JP2003178330A (ja) 1994-04-25 2003-06-27 Fujitsu Ltd 3次元立体配置編集方法及び3次元立体配置編集装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0612219A (ja) * 1991-12-09 1994-01-21 Sony Tektronix Corp カーソル表示方法
DE19632223A1 (de) 1996-08-09 1998-02-12 Genius Cad Software Gmbh Verfahren zum Modifizieren dreidimensionaler Objekte
US7646394B1 (en) * 2004-03-05 2010-01-12 Hrl Laboratories, Llc System and method for operating in a virtual environment
JP5373612B2 (ja) * 2006-09-29 2013-12-18 コーニンクレッカ フィリップス エヌ ヴェ 3d連結シャドウ・マウス・ポインタ
US9937022B2 (en) * 2008-01-04 2018-04-10 3M Innovative Properties Company Navigating among images of an object in 3D space
US8539386B2 (en) * 2010-01-26 2013-09-17 Apple Inc. Device, method, and graphical user interface for selecting and moving objects
US8854357B2 (en) * 2011-01-27 2014-10-07 Microsoft Corporation Presenting selectors within three-dimensional graphical environments
US20120218395A1 (en) * 2011-02-25 2012-08-30 Microsoft Corporation User interface presentation and interactions
EP2523132A1 (en) * 2011-05-11 2012-11-14 Dassault Systèmes Designing a three-dimensional modeled assembly of objects in a three-dimensional scene
US20150113483A1 (en) * 2011-09-30 2015-04-23 Willem Morkel Van Der Westhuizen Method for Human-Computer Interaction on a Graphical User Interface (GUI)
CN102929407A (zh) * 2012-10-09 2013-02-13 中山大学 基于空间鼠标和菜单的三维光场空间内容操纵***及方法
US9082223B2 (en) * 2013-03-15 2015-07-14 Dreamworks Animation Llc Smooth manipulation of three-dimensional objects

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003178330A (ja) 1994-04-25 2003-06-27 Fujitsu Ltd 3次元立体配置編集方法及び3次元立体配置編集装置
JP2003006678A (ja) 2001-06-18 2003-01-10 Hitachi Software Eng Co Ltd オブジェクトの選択制御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Free CAD Draft Move,online,2016年04月29日,URL:http://web.archive.org/web/20160429201817/http://www.freecadweb.org/wiki/index.php?title=Draft_Move
コンノ ヒロム,CINEMA 4D 目的別ガイドブック PART1 初版 ,第1版,日本,株式会社ビー・エヌ・エヌ新社, 籔内 康一,2014年12月22日,p.14, 88, 99-102, 265-266

Also Published As

Publication number Publication date
CN108228026B (zh) 2023-06-09
US20180182177A1 (en) 2018-06-28
US10839613B2 (en) 2020-11-17
JP2018106715A (ja) 2018-07-05
EP3340023A1 (en) 2018-06-27
CN108228026A (zh) 2018-06-29
EP3340023B1 (en) 2020-02-12

Similar Documents

Publication Publication Date Title
JP7241462B2 (ja) 3次元シーンにおけるオブジェクトの高速操作
US10061496B2 (en) Snapping of object features via dragging
EP2333651B1 (en) Method and system for duplicating an object using a touch-sensitive display
US10761684B2 (en) Setting a parameter
JP7340927B2 (ja) 3dオブジェクトの設計のための描画平面を定義するための方法
JP7475120B2 (ja) 回転を少なくとも含む動きを生成するための方法
US10073612B1 (en) Fixed cursor input interface for a computer aided design application executing on a touch screen device
JP7343274B2 (ja) 回転用のジェスチャーベースのマニピュレータ
EP3040832A1 (en) Setting a parameter
CN104732007B (zh) 具有包括用于复制和操作建模对象的机制的触控式显示器的设备
US8359549B1 (en) Multiple-function user interactive tool for manipulating three-dimensional objects in a graphical user interface environment
US20190088031A1 (en) Computer-Implemented Method Of Displaying A Subset Of A Digitally Modeled Assembly Of Objects
US10386997B2 (en) Integrating functions for a user input device
KR102392675B1 (ko) 3차원 스케치를 위한 인터페이싱 방법 및 장치
EP4016465A1 (en) Method for designing a 3d object by using a virtual 3d grid and hand drawn sketches
EP3940577A1 (en) Method for designing a three-dimensional mesh in a 3d scene
JP2021051739A (ja) 3dシーンにおける3dオブジェクトの位置決めを支援するためのコンピュータで実施される方法
JP2021111377A (ja) 3dビューのロック解除
EP3040838A1 (en) Setting a parameter

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211102

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221221

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221221

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230104

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20230110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230307

R150 Certificate of patent or registration of utility model

Ref document number: 7241462

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150