JP2014225292A - 情報処理装置、その制御方法、及びプログラム - Google Patents

情報処理装置、その制御方法、及びプログラム Download PDF

Info

Publication number
JP2014225292A
JP2014225292A JP2014160646A JP2014160646A JP2014225292A JP 2014225292 A JP2014225292 A JP 2014225292A JP 2014160646 A JP2014160646 A JP 2014160646A JP 2014160646 A JP2014160646 A JP 2014160646A JP 2014225292 A JP2014225292 A JP 2014225292A
Authority
JP
Japan
Prior art keywords
rotation axis
dimensional model
information processing
processing apparatus
touch
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.)
Granted
Application number
JP2014160646A
Other languages
English (en)
Other versions
JP5920417B2 (ja
JP2014225292A5 (ja
Inventor
恭平 森田
Kyohei Morita
恭平 森田
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.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
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 Canon Marketing Japan Inc, Canon IT Solutions Inc, Canon MJ IT Group Holdings Inc filed Critical Canon Marketing Japan Inc
Priority to JP2014160646A priority Critical patent/JP5920417B2/ja
Publication of JP2014225292A publication Critical patent/JP2014225292A/ja
Publication of JP2014225292A5 publication Critical patent/JP2014225292A5/ja
Application granted granted Critical
Publication of JP5920417B2 publication Critical patent/JP5920417B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Position Input By Displaying (AREA)

Abstract

【課題】タッチパネルを備えた情報処理装置において、直観的に回転軸を設定し3次元モデルを回転することの可能な仕組みを提供すること。
【解決手段】3次元モデルを表示し、マルチタッチを検知可能なタブレット端末101は、ユーザからタッチパネル209にタッチされた複数の点を検知し、当該複数の点のうち、少なくとも二点の位置を用いてタブレット端末101に表示された3次元モデルの回転軸を設定する。そして、設定された回転軸に基づいて、3次元モデルを回転させる。
【選択図】図12

Description

本発明は、3次元モデルの表示方法に関し、特にタッチパネルに表示された3次元モデルを、直観的に操作することの可能な情報処理装置、その制御方法、及びプログラムに関する。
従来、3次元CADアプリケーション等で製品の3次元モデルが設計されている。設計された3次元モデルは、製品を製造するためだけではなく、製造後の製品保守等で活用される。例えば、製品が故障した場合に、ユーザは当該製品の3次元モデルをタブレット端末に表示させる。そして、ユーザは表示された3次元モデルを見ながら、製品の内部構造を確認して、当該製品の修理を行っていく。
タブレット端末に製品の3次元モデルを表示させる場合、ユーザはタブレット端末に備えられたタッチパネルに対して所定の操作を行うことで、3次元モデルを見やすく調整する。例えば、3次元モデルの拡大や縮小、3次元モデルの移動、そして3次元モデルの回転である。
タブレット端末は、当該タブレット端末に備えられたディスプレイがタッチパネルになっており、当該タッチパネルに対してユーザがタッチすることで、所定の操作が行える。例えば、タッチパネルに表示された3次元モデルの回転を行うボタンの位置が、タッチパネル上でタッチされた場合には、3次元モデルを所定の角度分回転させる仕組みが存在する。
このような仕組みとして、下記の特許文献1には、表示された対象物に対して回転操作を指示可能な第1指定領域と、平行移動操作を指示可能な第2指定領域と、拡大または縮小操作を指示可能な第3指定領域が予め設定されており、それぞれの領域をタッチしてスライドさせることで、3次元モデルの回転、平行移動、拡大縮小を行うことの可能な仕組みが開示されている。
特開2007−087324号公報
3次元モデルの移動と回転をタッチパネルで行う場合には、特許文献1にもあるように、所定のユーザインタフェースを設ける必要がある。特許文献1では、ユーザからの入力でスライド操作が行われた場合に、スライド移動の開始点がどの位置なのかによって移動と回転を判別していた。しかしながら、ユーザはこのような領域を常に意識しながら操作を行う必要がある。
また従来、タブレット端末が3次元モデルを回転させる場合には、あらかじめ決められた回転軸に基づいて、当該3次元モデルを回転させている。多くの場合は、3次元モデルの中心点を通る直線を回転軸とし、当該回転軸に沿って回転する。つまり、3次元モデルはその場から動かずに、回転することになる。よって、タブレット端末に車のドア部分の3次元モデルを表示し、ドアの蝶番部分を回転軸として回転させたい場合であっても、中心点が回転軸に設定されていると、蝶番部分を回転軸として回転できない問題がある。
また、中心点に基づいて3次元モデルを回転させる従来の仕組みでは、回転軸の奥行き方向も調整することができない。これは、入力デバイスであるタッチパネルが平面であり、3次元空間上の奥行き方向(Z軸)の指定がしにくいためである。そのため、回転軸は3次元モデルの中心点を通る直線に限定されている場合が多い。仮に、タッチパネルで奥行き方向を指定しようとすると、3次元空間自体を回転させて回転軸を指定したり、回転軸の座標を入力したりする必要が発生するため、ユーザにとっては操作性が悪く、直観的に使用することができない問題があった。
本発明は上記の課題を鑑みてなされたもので、タッチパネルを備えた情報処理装置において、直感的に回転軸を設定して3次元モデルを回転することの可能な仕組みを提供することを目的とする。
上記の目的を達成するために、本発明の情報処理装置は、3次元モデルを表示し、マルチタッチを検知可能なタッチパネルを備える情報処理装置であって、前記タッチパネルに対するユーザからのタッチ操作を検知する操作検知手段と、前記操作検知手段で検知した前記タッチパネルの複数のタッチ操作の少なくとも二点の位置を用いて、前記3次元モデルの回転軸を設定する回転軸設定手段と、前記3次元モデルの回転指示がなされた場合に、前記回転軸設定手段で設定された回転軸に基づいて、前記タッチパネルに表示された3次元モデルが回転されるように制御する回転手段とを備えることを特徴とする。
本発明によれば、タッチパネルを備える情報処理装置において、ユーザからのタッチ操作の入力を検知すると、検知された少なくとも二点の位置を用いて回転軸を設定し、当該回転軸で3次元モデルを回転させることが可能となるので、タッチパネルを備えた情報処理装置において、直観的に回転軸を設定して3次元モデルを回転することのできる効果を奏する。
本発明の実施形態におけるタブレット端末101のハードウェア構成の一例を示す構成図である。 タブレット端末101のモジュール構成の一例を示す構成図である。 本発明の実施形態における一連の処理の流れを示すフローチャートである。 設計図選択画面401の一例を示す構成図である。 タブレット端末101に記憶された設計図テーブル501、部品テーブル511、回転パラメータテーブル521の一例を示す構成図である。 設計図閲覧画面601の一例を示す構成図である。 指1本入力処理の詳細を示すフローチャートである。 設計図を構成する部品を選択した場合の一例を示す模式図である。 指1本でタッチした後、移動した場合の一例を示す模式図である。 指n本入力処理の詳細を示すフローチャートである。 タッチされた2点の間隔が変更された場合に、回転軸の奥行き方向を変更する一例を示す模式図である。 3本目の指でスライド操作がなされた場合に、選択された部品を回転させる一例を示す模式図である。 3本目の指と4本目の指でスライド操作がなされた場合に、選択された部品を含む親部品も合わせて回転させる一例を示す模式図である。 3本目の指と4本目の指と5本目の指でスライド操作がなされた場合に、設計図全体を回転させる一例を示す模式図である。 第2の実施形態におけるタブレット端末101のモジュール構成の一例を示す構成図である。 第2の実施形態における指n本入力処理の詳細を示すフローチャートである。 第2の実施形態における指n本入力処理の概要を示す模式図である。
以下、図面を参照して、本発明の実施の形態の一例について説明する。
図1は、本発明の実施形態におけるタブレット端末101のハードウェア構成を示す図である。タブレット端末101(情報処理装置)は、ディスプレイにタッチパネルを備えた装置である。3次元モデルで表現された設計図をタブレット端末101に記憶しており、ユーザからの要求に応じて、表示させる。
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。RAM203は、CPU201の主メモリ、ワークエリア等として機能する。
CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。
また、入力コントローラ(入力C)205は、タッチパネル209からの入力を制御する。タッチパネル209は、どのような動作原理でもよい。感圧式でもよいし、静電容量方式でもよい。複数のタッチ操作を検知できれば、どのような方式でもよい。
ビデオコントローラ(VC)206は、CRTディスプレイ(ディスプレイ、表示手段)210等の表示器への表示を制御する。表示器はCRTだけでなく、液晶ディスプレイでも構わない。
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ211へのアクセスを制御する。
通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上での表示を可能としている。また、CPU201は、ディスプレイ210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明のタブレット端末101が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ211に格納されている。
次に、タブレット端末101のモジュール構成を示す機能構成図について、図2を用いて説明する。尚、図2のタブレット端末101のモジュール構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
タブレット端末101は、タッチ操作検知モジュール221、画面表示モジュール222、3次元モデル回転モジュール223、回転軸設定モジュール224を備える。
タッチ操作検知モジュール221(操作検知手段)は、タッチパネル209に対するユーザからの入力(タッチ操作)を検知するためのモジュールである。タッチ操作検知モジュール221は、マルチタッチの検知が可能である。よって、タッチパネル209上でタッチされている点の数を検知できる。また、タッチパネル209においてタッチしたまま移動させる操作(以下、スライド操作)も検知する。スライド操作は、いわゆるフリックと同じ操作である。また、複数の点がタッチされた状態で、当該複数の点を移動させる操作(以下、ピンチイン操作またはピンチアウト操作)も検知することができる。この他にもタッチパネル上のマルチタッチを検知することができる。
画面表示モジュール222は、ディスプレイ210に3次元モデルに関する情報や、3次元モデルを表示させるためのモジュールである。
3次元モデル回転モジュール223は、画面表示モジュール222で表示された3次元モデルを回転させるためのモジュールである。後述する回転軸設定モジュール224で設定された回転軸に基づいて、3次元モデルを回転させる。
回転軸設定モジュール224は、タッチ操作検知モジュール221で複数の点がタッチされた場合に、当該複数の点を3次元空間上で接続した直線を3次元モデルの回転軸とするためのモジュールである。また、回転軸設定モジュール224は、タッチ操作検知モジュール221で複数の点でピンチイン操作またはピンチアウト操作がなされると、設定した回転軸の奥行き方向を変更する。
次に、本発明の実施形態におけるタブレット端末101によって行われる一連の処理について、図3に示すフローチャートを用いて説明する。
尚、この処理をタブレット端末101に実行させるためのプログラムは、タブレット端末101にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、当該アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
ステップS301では、タブレット端末101は、ユーザからの指示に応じて、タブレット端末101の外部メモリ211等に記憶された設計図閲覧アプリケーションを起動する。設計図閲覧アプリケーションは、3次元モデルで作成された製品の設計図を閲覧するためのアプリケーションである。設計図閲覧アプリケーションで表示された3次元モデルは、タブレット端末101のタッチパネル209を通じて自由に閲覧することができる。
ステップS302では、タブレット端末101は、タブレット端末101の外部メモリ211等に記憶された図5に示す設計図テーブル501を取得する。設計図テーブル501には、タブレット端末101に記憶された設計図の一覧が格納されている。
設計図テーブル501(図5参照)は、型番502、製品名503、ファイル名504から構成される。型番502は、設計図が示す製品の型番を示す情報である。製品名503は、設計図が示す製品の名称を示す情報である。ファイル名504は、設計図のファイル名を示す情報である。ファイル名504が示すファイル名に基づいて、後述するステップS305で3次元モデルの設計図を取得する。設計図テーブル501は、タブレット端末101の外部メモリ211等の記憶領域に保存されている。
ステップS303では、タブレット端末101は、ステップS302で取得した設計図テーブル501に基づいて、図4に示す設計図選択画面401を生成し、当該設計図選択画面401をタブレット端末101のディスプレイ210に表示させる。設計図選択画面401は、表示する設計図をユーザに選択させるための画面である。設計図一覧402には、ステップS302で取得した設計図テーブル501の型番502、製品名503を表示させる。設計図一覧402に表示された設計図の一覧はそれぞれ選択可能である。
ステップS304では、タブレット端末101は、設計図選択画面401で設計図が選択され、設計図選択画面401に備えられたOKボタンが押下されたか否かを判定する。OKボタンが押下されたと判定された場合には、ステップS305に処理を進める。OKボタンが押下されなかったと判定された場合や、設計図が選択されていなかった場合には、設計図が選択され、OKボタンが押下されるまで待機する。
ステップS305では、タブレット端末101は、ステップS303で表示された設計図選択画面401の設計図一覧402で選択された設計図を取得する。より具体的には、選択された設計図のファイル名504を参照し、当該設計図のファイル名を特定する。そして、当該ファイル名を持つ3次元モデルのファイルをタブレット端末101から検索し、ヒットしたファイルを取得する。尚、設計図テーブル501に設計図に対する絶対パスを記憶しておき、当該絶対パスに基づいて、3次元モデルのファイルを取得してもよい。
ステップS306では、タブレット端末101は、ステップS305で取得した設計図を、図6に示す設計図閲覧画面601に表示させる。設計図閲覧画面601は、3次元空間に、ステップS305で取得したファイルが持つ3次元モデル(設計図モデル602)を表示させる画面である。3次元モデルは、所定の座標に表示させる。
ステップS307では、タブレット端末101は、設計図閲覧画面601に備えられたEXITボタン603が押下されるまで、ステップS308乃至ステップS313の処理を繰り返す。EXITボタン603が押下されたら、ステップS314に処理を進める。
ステップS308では、タブレット端末101は、タッチパネル209に対する入力を検知したか否かを判定する。タッチパネル209に対する入力を検知したと判定された場合には、ステップS309に処理を進める。そうでない場合、例えばタッチパネル209に対する入力を検知していない場合には、タッチパネル209に対する入力を検知するまで待機する。
ステップS309では、タブレット端末101は、検知した入力がEXITボタン603に対する選択であったか否かを判定する。より具体的には、タッチパネル209が検知したタッチの位置が、EXITボタン603のある位置かどうかを判定する。EXITボタン603に対する選択であると判定した場合には、ループを抜けて、ステップS314に処理を進める。そうでない場合、例えば、EXITボタン603以外の位置にタッチされたと判定した場合には、ステップS310に処理を進める。
ステップS310では、タブレット端末101は、検知した入力が指1本でタッチされたものであったか否かを判定する。より具体的には、タッチパネル209が検知したタッチが1点であったか否かを判定する。指1本でタッチされたと判定した場合には、ステップS311に処理を進める。そうでない場合、例えば、指2本以上でタッチされたと判定した場合には、ステップS312に処理を進める。
ステップS311では、タブレット端末101は、指1本でタッチされたと判定したので、その指1本のタッチに応じた処理を実行する。本実施形態では、指1本でタッチされた場合には、ディスプレイ210に表示された設計図を構成する部品の選択と、3次元空間上において設計図の移動を行う。指1本入力処理の詳細は、後述する図7に示す。
ステップS312では、タブレット端末101は、検知した入力が指2本以上でタッチされたものであったか否かを判定する。より具体的には、タッチパネル209が検知したタッチが2点以上であったか否かを判定する。指2本以上でタッチされたと判定した場合には、ステップS313に処理を進める。そうでない場合には、ステップS307に処理を戻す。
ステップS313では、タブレット端末101は、指2本以上でタッチされたと判定したいので、そのタッチされた指の本数や動きに応じた処理を実行する。本実施形態では、タッチされた2点を接続する直線を回転軸とし、当該2点の間隔が広まったり、狭まったりした場合に回転軸の奥行き方向を変更する。また、2点がタッチされた状態で他の点でスライド操作がなされると、3次元モデルを回転させる。指n本入力処理の詳細は、後述する図10に示す。
ステップS314では、タブレット端末101は、ユーザからの入力によりEXITボタン603が押下されたので、ステップS301で起動した設計図閲覧アプリケーションを終了させ、本一連の処理を終了する。
次に、タブレット端末101によって行われる指1本入力処理について、図7に示すフローチャートを用いて説明する。
尚、この処理をタブレット端末101に実行させるためのプログラムは、タブレット端末101にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、当該アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
まず、ステップS701では、タブレット端末101は、タッチパネル209にタッチされた位置を取得する。より具体的には、タッチ操作検知モジュール221がタッチされた位置をディスプレイ210における座標値(X座標とY座標)として取得する。そして、取得した座標値を3次元空間上における座標値に変換する。こうすることで、ステップS306で表示された画面のどの部分がタッチされたのかを特定する。
ステップS702では、タブレット端末101は、ステップS701で取得した位置に設計図を構成する部品の3次元モデルが存在するか否かを判定する。3次元モデルで表示された設計図は、複数の部品から構成されている。つまり、当該複数の部品の3次元モデルを所定の座標位置に配置することで、設計図を構成している。この部品がタッチによって選択されたのかどうかを判定する。部品がタッチされたと検知する仕組みは、従来技術を用いるものとする。ステップS701で取得した位置に設計図を構成する部品が存在すると判定した場合には、ステップS703に処理を進める。ステップS701で取得した位置に設計図を構成する部品が存在しないと判定した場合には、ステップS704に処理を進める。
ステップS703では、タブレット端末101は、タッチされた位置に存在する部品を選択状態にする。どの部品が選択されたのかを特定する仕組みは、従来技術を用いるものとする。尚、既に他の部品が選択状態であった場合、タブレット端末101はそれまで選択していた部品の選択状態を解除してから、新しく選択された部品を選択状態に変更する。図8に示すように、ユーザから部品802に対するタッチ操作をタッチパネル209を通じて検知すると、部品802を選択状態にする。
ステップS704では、タブレット端末101は、終了要求が発生するまでステップS705乃至ステップS706を繰り返す。終了要求は、ユーザの指がタッチパネル209から離れるか、2本目以上の指がタッチされると発生する。
ステップS705では、タブレット端末101は、タッチされた点がスライド操作により移動したか否かを判定する。すなわち、ユーザがタッチパネル209にタッチしたまま、移動させたか否か(タッチされた点の座標値が変化したか否か)を判定する。タッチ操作検知モジュール221で検知するようにすればよい。タッチされた点がスライド操作により移動したと判定した場合には、ステップS706に処理を進める。タッチされた点がスライド操作により移動したと判定した場合には、ステップS704に処理を戻す。
ステップS706では、タブレット端末101は、3次元空間上において、ステップS306で表示された設計図の3次元モデルをスライド操作された方向に移動させる(移動手段)。例えば、図9に示すように、タッチパネル209に対して903に示すような軌跡でユーザからのスライド操作を検知する。すると、そのスライド操作がなされた方向やスライドされた距離を特定し、それらの方向や距離に応じて、設計図モデル602を904に示すような軌跡で移動させる。このように、指1本でタッチがなされた場合には、部品の選択や設計図の移動を行うことができる。
次に、タブレット端末101によって行われる指n本入力処理について、図10に示すフローチャートを用いて説明する。
尚、この処理をタブレット端末101に実行させるためのプログラムは、タブレット端末101にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、当該アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
まず、ステップS1001では、タブレット端末101は、ステップS703で選択された部品の3次元モデルの中心点の座標値を取得する。取得した中心点は、図5に示す回転パラメータテーブル521の部品中心点522に格納する。本実施形態では、中心点としたが、当該部品の3次元モデルの重心点であってもよい。中心点は3次元モデルごとに存在しているので、これを従来技術によって特定して取得する。
回転パラメータテーブル521は、部品中心点522、回転軸523から構成される。部品中心点522は、ユーザから選択された部品の中心点の3次元空間における座標値を示す情報である。回転軸523は、3次元空間に設定された回転軸の座標値を示す情報である。回転パラメータテーブル521は、タブレット端末101の外部メモリ211等の記憶領域に保存されている。
ステップS1002では、タブレット端末101は、タッチされた2点の座標値を取得する。より具体的には、タッチ操作検知モジュール221がタッチされた位置をディスプレイ210における座標値(X座標とY座標)として取得する。そして、取得した座標値を3次元空間上における座標値に変換し、これを取得する。
ステップS1003では、タブレット端末101は、ステップS1001で取得した中心点の座標値と、ステップS1002で取得したタッチされた2点の座標値に基づいて、3次元空間における3次元モデルの回転軸を設定する(回転軸設定手段)。より具体的には、ステップS1002で取得したタッチされた2点のX座標とY座標を接続し、ステップS1001で取得した中心点のZ座標で奥行きを設定する。つまり、タッチされた点のX座標とY座標、そして中心点のZ座標を持つ、3次元空間上の2点を結ぶ直線を回転軸とする。当該2点の座標値、すなわち回転軸の座標値は、回転パラメータテーブル521の回転軸523に格納する。当該2点を通っていれば回転軸の長さは特に問わない。尚、本実施形態では、タッチされた2点の座標値に基づいて回転軸を設定しているが、2点以上であればよい。2点以上の複数点を検出している場合には、1点と他の点の中間点に基づいて回転軸を設定してもよいし、その他の方法でもよい。このように、タッチ操作された少なくとも2点の位置を用いて、3次元モデルの回転軸を設定することができる。
ステップS1004では、タブレット端末101は、タッチされている指が1本以下になるまで、つまり、タッチを検知している点が1点以下になるまで、ステップS1005乃至ステップS1016を繰り返す。ユーザは、2本の指でタッチしたまま当該2本の指の間隔を変えたり、2本の指でタッチしたまま新たな指でスライドさせたりすることで、これをタブレット端末101が検知し、回転軸の調整と3次元モデルの回転を行っていく。すなわち、後述するステップS1005乃至ステップS1016は、2点のタッチがなされたまま、各処理がなされる。
ステップS1005では、タブレット端末101は、タッチされた2点の位置が変化したか否かを判定する。より具体的には、タッチ操作検知モジュール221で2点の位置が変化したか否かを検知し、それに基づいて判定する。タッチされた2点の位置が変化したと判定した場合には、ステップS1006に処理を進める。タッチされた2点の位置が変化していないと判定された場合には、ステップS1009に処理を進める。
ステップS1006では、タブレット端末101は、位置が変化した2点の間隔が広がったのか、狭まったのかを判定する。つまり、ピンチアウト操作がなされたのか、ピンチイン操作がなされたのかを判定する。2点の間隔が広がったと判定した場合には、ステップS1008に処理を進める。2点の間隔が狭まったと判定した場合には、ステップS1007に処理を進める。
ステップS1007では、タブレット端末101は、設定されている回転軸のZ座標を加算する(回転軸設定手段)。つまり、3次元空間において回転軸をより手前に移動させる。加算した結果は、回転軸523に格納する。一方、ステップS1008では、タブレット端末101は、設定されている回転軸のZ座標を減算する(回転軸設定手段)。つまり、3次元空間において回転軸をより奥に移動させる(奥行き方向を変更する)。減算した結果は、回転軸523に格納する。2点の間隔が広がった場合と、狭まった場合に加算または減算される動作は逆でもよい。広がった場合にZ座標を減算し、狭まった場合にZ座標を加算してもよい。
このようにすることで、後述するステップS1009乃至ステップS1016における3次元モデルの回転と共に、回転軸の調整をおこなうことができる。従来であれば、回転軸の設定及び調整と3次元モデルの回転は、別々の操作であった。つまり、回転軸の設定及び調整をするメニューを選択すると回転軸の設定ができ、当該設定が終了した後にユーザから回転の指示があると、3次元モデルを設定した回転軸に基づいて回転するという流れだった。しかしながら、回転した後に回転軸の設定が間違っていることに気づき、また回転軸の設定及び調整を行うメニューを開く必要があり、その操作の往復が手間となっていた。本発明では、回転軸の設定及び調整と3次元モデルの回転を、タッチされた2点の位置の変化と、当該2点とは異なる点のスライド操作に応じて行うことができる。すなわち、回転に必要な回転軸の設定及び調整と、その回転指示を両立させているので、ユーザは、直観的に操作することができる。また、従来のような操作の往復をすることなく、容易に回転軸の設定及び調整と3次元モデルの回転を行うことができる。更には、タブレット端末101を片手に持ち、もう片方の手だけで回転軸の設定及び調整と3次元モデルの回転を行うことができる。すなわち、ユーザは2本の指で回転軸の設定及び調整を行い、2本の指でタッチしたまま更にもう1本の指でスライド操作を受け付けると、3次元モデルを回転させることができる。最低でも3本の指があればよいので、タブレット端末101を片手で持っている場合でも、容易に操作できる。また、2本の指がタッチされていない状態で1本の指でスライド操作を受け付けると、3次元モデルの回転ではなく、3次元モデルの移動となる。回転と移動についても、タッチされた点の数に応じて変更することができる。
図11では、回転軸の設定及び調整の概要を示している。ユーザがタッチパネル209で2点(1102と1103)のタッチを行うとタッチパネル209が検知する。すると、部品の中心点の座標値1107と、タッチされた2点に対応する3次元空間上の座標値に基づいて、1104に示すような回転軸を設定する。例えばこの回転軸を(X,Y,Z),(X,Y,Z)=(5,−5,0),(3,5,0)とする。そして、1102と1103の間隔が変化した場合には、その変化に応じて回転軸を1105や1106のように手前や奥に移動させる。例えば2点の間隔が狭まった場合には前述した例からZ座標を「10」加算して、(X,Y,Z),(X,Y,Z)=(5,−5,10),(3,5,10)というようにする。このようにして、回転軸の調整を行う。
ステップS1009では、タブレット端末101は、検知している2点がタッチされたまま、新たに別の点がタッチされ、当該タッチされた点の位置が移動したか(スライドされたか)否かを判定する。2点がタッチされたままなのは、ステップS705で判定した移動と区別するためである。つまり、2点がタッチされた状態で新たに別の点がスライドされた場合には、回転、2点がタッチされていない状態で点がスライドされた場合には、移動となる。尚、2点がタッチされた状態で当該2点のうち1点がスライドされた場合には、前述したステップS1006の判定で、2点の間隔が判定される(回転軸の調整と判定される)。検知している2点がタッチされたまま、新たに別の点がタッチされ、当該タッチされた点の位置が移動したと判定された場合には、ステップS1010に処理を進め、それ以外の操作であると判定された場合には、ステップS1004に処理を戻す。尚、新たにタッチされた点は、1点以上であればよい。本実施形態では、新たにタッチされた点の数に応じて、回転させる対象を変更する。そのため、ステップS1009では、検知している2点とは異なる複数の点が検知され、移動したか否かを判定してもよい。
ステップS1010では、タブレット端末101は、設定された回転軸を取得する。より具体的には、回転パラメータテーブル521の回転軸523に格納された回転軸の座標値を取得する。
ステップS1011では、タブレット端末101は、検知している2点とは異なる点のスライド方向と、当該異なる点の数(指の数)を取得する。これらは、タッチ操作検知モジュール221で取得する。
ステップS1012では、タブレット端末101は、ステップS1011で取得した情報に基づいて、2点を検知している状態でスライドされた新たな点の数(指の数)を判定する。つまり、ステップS1011で取得した点の数がいくつかを判定する。1点(1本)であると判定された場合には、ステップS1013に処理を進める。2点(2本)であると判定された場合には、ステップS1014に処理を進める。3点(3本)であると判定された場合には、ステップS1016に処理を進める。
ステップS1013では、タブレット端末101は、ステップS1010で取得した回転軸に基づいて、ステップS703で選択された部品が回転されるように制御する(回転手段)。回転軸を中心として、ステップS1011で取得したスライド方向に回転させる。スライド方向が回転軸と直交するような方向であれば、当該スライド方向に回転させればよいが、スライド方向が回転軸と平行するような方向であれば、回転させなくてもよい。回転軸に基づいた回転の方法は、従来技術を用いるものとする。図12は、少なくとも2点を検知している状態で、当該2点とは異なる他の1点がスライドされた時の概要を示す。ユーザが1202と1203に示す2本の指でタッチした状態で1204に示す指でスライドさせると、タブレット端末101がこれを検知し、選択された部品である802が1104に示す回転軸に基づいて回転する。
ステップS1014では、タブレット端末101は、ステップS703で選択された部品の親部品を特定する。指2本で回転軸を設定したまま、他の指2本でスライド操作がなされたので、選択された部品ではなく、当該部品が属する親部品を回転させる。そこで、図5に示す部品テーブル511に基づいて、選択された部品の親部品を特定する。図5に示す部品テーブル511は、部品の親子関係を示したテーブルである。例えば、図5の部品テーブル511の2レコード目には、部品ID513に「BHN−011」、親部品ID514に「BHN−001」が格納されている。つまり、2レコード目の部品は、「BHN−001」という部品を構成していることを示す。よって、選択された部品が「BHN−011」であれば、親部品は「BHN−001」であることがわかるので、これを特定すればよい。
部品テーブル511(図5参照)は、型番512、部品ID513、親部品ID514、部品名515から構成される。型番512は、部品が構成する製品の型番502を示す情報である。部品ID513は、部品ごとに割り振られた識別情報である。親部品ID514は、当該部品の親部品である部品の部品ID513を示す情報である。部品名515は、当該部品の名称を示す情報である。設計図テーブル501は、タブレット端末101の外部メモリ211等の記憶領域に保存されている。
尚、親部品は3次元CADにおけるアセンブリファイルのような部品であってもよいし、それ以外でもよい。
ステップS1015では、タブレット端末101は、ステップS1010で取得した回転軸に基づいて、ステップS1014で特定された親部品を回転させる(回転手段)。回転方法の詳細は、ステップS1013と同様であるので説明を省略する。尚、複数の指でスライドさせることになるので、当該複数の指でスライドされたスライド方向をそれぞれ検知し、当該それぞれのスライド方向が示すベクトルの和をスライド方向としてもよいし、どれか1つの点のスライド方向を採用してもよい。図13は、2点を検知している状態で他の2点がスライドされた時の概要を示す。ユーザが1302と1303に示す2本の指でタッチした状態で1304と1305に示す2本の指でスライドさせると、タブレット端末101がこれを検知し、選択された部品の親部品である1307が1104に示す回転軸に基づいて回転する。
ステップS1016では、タブレット端末101は、ステップS1010で取得した回転軸に基づいて、ステップS306で表示した設計図全体を回転させる(回転手段)。回転軸を中心として、ステップS1011で取得したスライド方向に回転させる。指2本で回転軸を設定したまま、他の指3本でスライド操作がなされたので、選択された部品ではなく、当該部品が属する設計図全体を回転させる。回転方法の詳細は、前述したステップS1013とステップS1015と同様であるので説明を省略する。図14は、2点を検知している状態で他の3点がスライドされた時の概要を示す。ユーザが1402と1403に示す2本の指でタッチした状態で1404、1405、1406に示す指でスライドさせると、タブレット端末101がこれを検知し、設計図全体である1408が1104に示す回転軸に基づいて回転する。
タッチしている指が1本以下になったと検知したら、ステップS1004乃至ステップS1016のループ処理を終了させ、指n本入力処理を終了する。
以上説明したように、本実施形態によれば、タッチパネルを備える情報処理装置において、複数の入力を検知すると、当該複数の入力に基づいて回転軸を設定し、当該回転軸で3次元モデルを回転させることが可能となるので、タッチパネルを備えた情報処理装置において、直観的に3次元モデルを操作することのできる効果を奏する。
次に、第2の実施形態について説明を行う。前述した実施形態では、タッチパネル上で2点の位置がタッチされた状態で、もう1点でスライド操作がなされた場合には、当該2点の位置を接続する直線を回転軸として設定し、3次元モデルを回転させる仕組みであった。第2の実施形態では、タッチパネル上で1点がタッチされた状態で、もう1点でスライド操作がなされた場合には、タッチされた1点から、スライド操作されたベクトル方向に対して直交する直線を回転軸として設定し、3次元モデルを回転させる仕組みを説明する。前述した実施形態では、最低でも合計3本の指でタッチ操作をする必要がある。しかし、第2の実施形態では最低でも合計2本の指でタッチ操作するだけで、3次元モデルの回転軸を設定して回転させることができる。以下、この説明を行う。
第2の実施形態でも、前述した実施形態と同様のタブレット端末101を用いる。そのため、タブレット端末101のハードウェア構成は、図1で前述したものと同様であるので、説明を省略する。
次に、第2の実施形態におけるタブレット端末101のモジュール構成を示す機能構成図について、図15を用いて説明する。尚、図15のタブレット端末101のモジュール構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。また、前述した実施形態と同様のモジュール構成であっても、実現可能である。
タブレット端末101は、オペレーティングシステム1500、3次元CADアプリケーション1510を備える。
オペレーティングシステム1500は、いわゆるOS(Operating System)である。タブレット端末101を動作させるための基本的な機能を提供する。特に、第2の実施形態では、オペレーティングシステム1500は、タッチ操作検知モジュール1501、画面表示モジュール1502を備える。このタッチ操作検知モジュール1501と画面表示モジュール1502は、前述したタッチ操作検知モジュール221と画面表示モジュール222と同様であるので説明を省略する。オペレーティングシステム1500は、これ以外にもアプリケーションやプログラムを動作させるために必要な基本機能を提供する。
3次元CADアプリケーション1510は、タブレット端末101で動作するアプリケーションである。3次元CADアプリケーション1510は、いわゆるCAD(Computer Aided Design)のアプリケーションである。3次元CADアプリケーション1510では、3次元モデルを作り上げることで、製品の設計を行える。特に、第2の実施形態では、作成した3次元モデルを表示するビューワーとしての役割を担う。3次元CADアプリケーション1510は、3次元モデル回転モジュール1511、回転軸設定モジュール1512、アドオンプログラム1520を備える。
3次元モデル回転モジュール1511は、3次元モデルを回転させるためのモジュールである。後述する回転軸設定モジュール1512で設定された回転軸に基づいて、3次元モデルを回転させる。特に、第2の実施形態では、後述する3次元モデル回転指示モジュール1521からの指示に応じて、3次元モデルを回転させる。すなわち、3次元モデル回転モジュール1511は、いわゆるAPI(Application Programming Interface)である。
回転軸設定モジュール1512は、3次元モデルの回転軸を設定するためのモジュールである。特に、第2の実施形態では、後述する回転軸設定指示モジュール1522からの指示に応じて、3次元モデルを回転させる。すなわち、回転軸設定モジュール1512もいわゆるAPIである。
アドオンプログラム1520は、3次元CADアプリケーション1510のアドオン(add−on)である。アドイン(add−in)やプラグイン(plug−in)と同様である。3次元CADアプリケーション1510では不足する機能を補うためのプログラムである。アドオンプログラム1520では、3次元モデル回転指示モジュール1521と、回転軸設定指示モジュール1522を備える。
3次元モデル回転指示モジュール1521は、前述した3次元モデル回転モジュール1511に対して3次元モデルの回転指示を与えるためのモジュールである。タッチ操作検知モジュール1501で検知した操作に応じて、回転指示を出す。回転指示を出す際には、回転対象の3次元モデルと、回転指示であるスライド操作の勢いや速度等のパラメータを3次元モデル回転モジュール1511に渡す。
回転軸設定指示モジュール1522は、前述した回転軸設定モジュール1512に対して回転軸を設定する指示を与えるためのモジュールである。第2の実施形態では、タッチ操作検知モジュール1501で複数の点のタッチ操作を検知した場合に、検知した少なくとも一点の位置から、スライド操作された点のベクトル方向に対して直交する直線を3次元モデルの回転軸とする。そのため、当該直線を回転軸設定指示モジュール1522で特定し、特定した直線を示すパラメータを回転軸設定モジュール1512に渡す。以上の、モジュール構成により、第2の実施形態を実現する。
次に、第2の実施形態における各処理について説明を行う。第2の実施形態では、前述した図3のステップS313に対応する図10の各処理が前述した実施形態とは異なる。そのため、図3及び図7の各処理は、第2の実施形態についても同様であるので、説明を省略する。
第2の実施形態におけるタブレット端末101によって行われる指n本入力処理について、図16に示すフローチャートを用いて説明する。
尚、この処理をタブレット端末101に実行させるためのプログラムは、タブレット端末101にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、当該アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
まず、ステップS1601では、タブレット端末101のアドオンプログラム1520は、前述したステップS703で選択された部品の3次元モデルの中心点の座標値の取得を3次元CADアプリケーション1510に依頼し、その依頼に応じて3次元CADアプリケーション1510が取得した中心点の座標値を取得する。取得した中心点の座標値は、図5に示す回転パラメータテーブル521の部品中心点522に格納する。第2の実施形態においても、中心点としたが、当該部品の3次元モデルの重心点であってもよい。中心点は3次元モデルごとに存在しているので、これを従来技術によって特定して取得する。
ステップS1602では、タブレット端末101は、タッチされている指が1本以下になるまで、つまり、タッチを検知している点が1点以下になるまで、ステップS1603乃至ステップS1612を繰り返す。第2の実施形態では、ユーザは少なくとも1本の指でタッチしたまま、他の指でスライド操作をすることにより、これらのタッチ操作をタブレット端末101が検知し、回転軸の設定と3次元モデルの回転を行うため、このような終了条件となっている。
ステップS1603では、タブレット端末101のアドオンプログラム1520は、タッチ操作検知モジュール1501で検知した情報に基づいて、少なくとも1点がタッチされたまま、当該1点とは異なる点の位置が移動したか(スライド操作されたか)否かを判定する。少なくとも1点がタッチされたまま、当該1点とは異なる点の位置が移動したと判定された場合には、ステップS1604に処理を進める。そうでない場合には、ステップS1602に処理を戻す。
ステップS1604では、タブレット端末101のアドオンプログラム1520は、タッチ操作検知モジュール1501で検知している、スライド操作をされていない点の座標値を取得する。より具体的には、タッチ操作検知モジュール1501がタッチされた位置をディスプレイ210における座標値(X座標とY座標)として取得する。そして、取得した座標値を3次元空間上における座標値に変換し、これを取得する。
ステップS1605では、タブレット端末101のアドオンプログラム1520は、タッチ操作検知モジュール1501で検知した、スライド操作のスライド方向を取得する。より具体的には、図17に示すように、タッチ操作検知モジュール1501でスライド操作が開始された点である開始点1703と、スライド操作が終了された点である終了点1704を特定し、その2点を結んだベクトル方向を取得する。スライド方向の取得方法については、これに限らない。点が移動した軌跡を逐一取得し、取得した軌跡を解析した結果、出力されたベクトル方向をスライド方向としてもよいし、他の方法でもよい。
ステップS1606では、タブレット端末101のアドオンプログラム1520は、ステップS1604で取得した座標値と、ステップS1605で取得したスライド方向に基づいて、回転軸を設定する。図17を用いて、詳細に説明をする。図17の固定点1702が、ステップS1604で座標値を取得した点である。アドオンプログラム1520は、この固定点1702から、ステップS1605で取得したスライド方向(ベクトル方向)に対して直交する直線1708を特定する。この特定された直線1708の3次元空間上のX座標と、ステップS1601で取得した中心点1707のZ座標とから、回転軸1709を特定する。Y座標は無限でも固定的に座標値を持ってもよい。回転軸の長さは特に問わない。そして、特定された回転軸の各座標値を、回転パラメータテーブル521の回転軸523に格納し、この格納された回転軸523のパラメータを回転軸設定モジュール1512に渡すと、当該モジュールが受け取ったパラメータに応じて、3次元空間に回転軸を設定する。更に、スライド方向及びスライドの勢い等のパラメータを3次元モデル回転モジュール1511に渡すと、当該モジュールが受け取ったパラメータに応じて、3次元モデル1705を回転させる。
このように、少なくとも1点の位置から、スライド操作されたベクトル方向に対して直交する直線を3次元モデルの回転軸として設定することができるので、少なくとも2本の指で回転軸の設定と回転指示を与えることが可能となる。尚、第2の実施形態では、少なくとも1点の位置から、スライド操作されたベクトル方向に対して直交する直線を3次元モデルの回転軸として設定しているが、厳密に直交でなくてもよい。少なくとも1点の位置から、スライド操作されたベクトル方向に対して交差する直線であればよい。
ステップS1607では、タブレット端末101のアドオンプログラム1520は、タッチ操作検知モジュール1501で検知したスライド操作の点(指)の数を取得する。スライド操作された指の数は1本に限らない。複数本でスライド操作することにより、前述した実施形態と同様に、3次元モデルを回転する際、当該3次元モデルと関連する他の3次元モデルも合わせて回転させることが可能となる。
ステップS1608では、タブレット端末101のアドオンプログラム1520は、ステップS1607で取得した情報に基づいて、少なくとも1点を検知している状態でスライド操作された点の数を判定する。つまり、ステップS1607で取得した点の数がいくつかを判定する。1点(1本)であると判定された場合には、ステップS1609に処理を進める。2点(2本)であると判定された場合には、ステップS1610に処理を進める。3点(3本)であると判定された場合には、ステップS1612に処理を進める。
ステップS1609では、タブレット端末101のアドオンプログラム1520は、3次元モデル回転指示モジュール1521から3次元モデル回転モジュール1511に対してスライド操作されたスライド方向やスライドの勢い等のパラメータを渡すことで、ステップS1606で設定された回転軸に基づいて、前述したステップS703で選択された部品を回転させる(回転手段)。回転軸に基づいた回転の方法は、従来技術を用いるものとする。
ステップS1610では、タブレット端末101のアドオンプログラム1520は、ステップS703で選択された部品の親部品を特定する。指2本でスライド操作がなされたので、選択された部品ではなく、当該部品が属する親部品を回転させる。そこで、前述した図5に示す部品テーブル511に基づいて、選択された部品の親部品を特定する。特定の詳細については、前述したステップS1014と同様であるので、説明を省略する。
ステップS1611では、タブレット端末101のアドオンプログラム1520は、3次元モデル回転指示モジュール1521から3次元モデル回転モジュール1511に対してスライド操作されたスライド方向やスライドの勢い、そして、ステップS1610で特定された親部品の情報等のパラメータを渡すことで、ステップS1606で設定された回転軸に基づいて、前述したステップS703で選択された部品とその親部品を回転させる(回転手段)。回転軸に基づいた回転の方法は、従来技術を用いるものとする。尚、複数の指でスライドさせることになるので、当該複数の指でスライドされたスライド方向をそれぞれ検知し、当該それぞれのスライド方向が示すベクトルの和をスライド方向としてもよいし、どれか1つの点のスライド方向を採用してもよい。回転方法の詳細は、前述したステップS1015と同様であるので説明を省略する。
ステップS1612では、タブレット端末101のアドオンプログラム1520は、3次元モデル回転指示モジュール1521から3次元モデル回転モジュール1511に対してスライド操作されたスライド方向やスライドの勢い、そして設計図全体を示す情報等のパラメータを渡すことで、ステップS1606で設定された回転軸に基づいて、設計図全体を回転させる(回転手段)。回転軸に基づいた回転の方法は、従来技術を用いるものとする。指3本でスライド操作がなされたので、選択された部品ではなく、当該部品が属する設計図全体を回転させる。回転方法の詳細は、前述したステップS1016と同様であるので説明を省略する。
そして、アドオンプログラム1520は、タッチしている指が1本以下になったことをタッチ操作検知モジュール1501からの情報により検知したら、ステップS1604乃至ステップS1612のループ処理を終了させ、指n本入力処理を終了する。
以上説明したように、第2の実施形態によれば、マルチタッチを検知可能なタッチパネルを備える情報処理装置において、少なくとも一点の位置と、スライド操作された位置とを用いて、タッチパネルに表示された3次元モデルの回転軸を設定し、当該回転軸に基づいて当該3次元モデルの回転をさせることが可能となるので、タッチパネルを備えた情報処理装置において、直感的に回転軸を設定し3次元モデルを回転することのできる効果を奏する。
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
101 タブレット端末
201 CPU
202 RAM
203 ROM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信I/F(インターフェース)コントローラ
209 入力装置
210 ディスプレイ装置
211 外部メモリ

Claims (12)

  1. 3次元モデルを表示し、マルチタッチを検知可能なタッチパネルを備える情報処理装置であって、
    前記タッチパネルに対するユーザからのタッチ操作を検知する操作検知手段と、
    前記操作検知手段で検知した前記タッチパネルの複数のタッチ操作の少なくとも二点の位置を用いて、前記3次元モデルの回転軸を設定する回転軸設定手段と、
    前記3次元モデルの回転指示がなされた場合に、前記回転軸設定手段で設定された回転軸に基づいて、前記タッチパネルに表示された3次元モデルが回転されるように制御する回転手段と
    を備えることを特徴とする情報処理装置。
  2. 前記回転手段は、前記操作検知手段で前記少なくとも二点の位置を検知した状態で、当該二点の位置とは異なる位置のタッチ操作を検知した場合に、前記回転軸設定手段で設定された回転軸に基づいて、前記タッチパネルに表示された3次元モデルが回転されるように制御することを特徴とする請求項1に記載の情報処理装置。
  3. 前記異なる位置のタッチ操作は、前記操作検知手段で前記少なくとも二点の位置とは異なる位置におけるスライド操作であることを特徴とする請求項2に記載の情報処理装置。
  4. 前記回転手段は、前記異なる位置の複数のタッチ操作を検知した場合に、前記回転軸設定手段で設定された回転軸に基づいて、前記3次元モデルと関連する3次元モデルが合わせて回転されるように制御することを特徴とする請求項2または3に記載の情報処理装置。
  5. 前記回転軸設定手段は、前記操作検知手段で検知した前記タッチパネルの複数のタッチ操作の少なくとも二点の位置が変化した場合に、前記回転軸の奥行き方向を変更することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記回転軸設定手段は、前記操作検知手段で検知した前記タッチパネルの複数のタッチ操作の少なくとも二点の位置を結ぶ直線を前記3次元モデルの回転軸として設定することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 前記回転軸設定手段は、前記操作検知手段で検知した少なくとも一点の位置と、前記操作検知手段で検知した、スライド操作された位置とを用いて、前記3次元モデルの回転軸を設定することを特徴とする請求項1に記載の情報処理装置。
  8. 前記回転軸設定手段は、前記操作検知手段で検知した少なくとも一点の位置から、前記スライド操作されたベクトル方向に対して直交する直線を、前記3次元モデルの回転軸として設定することを特徴とする請求項7に記載の情報処理装置。
  9. 前記回転手段は、前記スライド操作された複数の位置を検知した場合に、前記回転軸設定手段で設定された回転軸に基づいて、前記3次元モデルと関連する3次元モデルが合わせて回転されるように制御することを特徴とする請求項7または8に記載の情報処理装置。
  10. 前記情報処理装置は、
    前記操作検知手段でユーザからの一点のタッチ操作を検知した場合に、前記3次元モデルを三次元空間上において移動させる移動手段を更に備えることを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。
  11. 3次元モデルを表示し、マルチタッチを検知可能なタッチパネルを備える情報処理装置の制御方法であって、
    前記情報処理装置の操作検知手段が、前記タッチパネルに対するユーザからのタッチ操作を検知する操作検知ステップと、
    前記情報処理装置の回転軸設定手段が、前記操作検知ステップで検知した前記タッチパネルの複数のタッチ操作の少なくとも二点の位置を用いて、前記3次元モデルの回転軸を設定する回転軸設定ステップと、
    前記情報処理装置の回転手段が、前記3次元モデルの回転指示がなされた場合に、前記回転軸設定ステップで設定された回転軸に基づいて、前記タッチパネルに表示された3次元モデルが回転されるように制御する回転ステップと
    を備えることを特徴とする情報処理装置の制御方法。
  12. 3次元モデルを表示し、マルチタッチを検知可能なタッチパネルを備える情報処理装置の制御方法を実行可能なプログラムであって、
    前記情報処理装置を、
    前記タッチパネルに対するユーザからのタッチ操作を検知する操作検知手段と、
    前記操作検知手段で検知した前記タッチパネルの複数のタッチ操作の少なくとも二点の位置を用いて、前記3次元モデルの回転軸を設定する回転軸設定手段と、
    前記3次元モデルの回転指示がなされた場合に、前記回転軸設定手段で設定された回転軸に基づいて、前記タッチパネルに表示された3次元モデルが回転されるように制御する回転手段
    として機能させることを特徴とするプログラム。
JP2014160646A 2012-12-20 2014-08-06 情報処理装置、その制御方法、及びプログラム Expired - Fee Related JP5920417B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014160646A JP5920417B2 (ja) 2012-12-20 2014-08-06 情報処理装置、その制御方法、及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012278747 2012-12-20
JP2012278747 2012-12-20
JP2014160646A JP5920417B2 (ja) 2012-12-20 2014-08-06 情報処理装置、その制御方法、及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013135977A Division JP5594402B2 (ja) 2012-12-20 2013-06-28 情報処理装置、その制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2014225292A true JP2014225292A (ja) 2014-12-04
JP2014225292A5 JP2014225292A5 (ja) 2015-04-23
JP5920417B2 JP5920417B2 (ja) 2016-05-18

Family

ID=51416444

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2013135977A Expired - Fee Related JP5594402B2 (ja) 2012-12-20 2013-06-28 情報処理装置、その制御方法、及びプログラム
JP2014160646A Expired - Fee Related JP5920417B2 (ja) 2012-12-20 2014-08-06 情報処理装置、その制御方法、及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2013135977A Expired - Fee Related JP5594402B2 (ja) 2012-12-20 2013-06-28 情報処理装置、その制御方法、及びプログラム

Country Status (1)

Country Link
JP (2) JP5594402B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190036061A (ko) * 2017-09-27 2019-04-04 삼성중공업 주식회사 3d 객체의 터치 방식 회전 제어 장치 및 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5887310B2 (ja) * 2013-07-29 2016-03-16 京セラドキュメントソリューションズ株式会社 表示操作装置
JP6373710B2 (ja) * 2014-10-03 2018-08-15 株式会社東芝 図形処理装置および図形処理プログラム
JP2017004338A (ja) * 2015-06-12 2017-01-05 クラリオン株式会社 表示装置
JP6563596B2 (ja) * 2016-05-25 2019-08-21 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置、画像処理方法およびプログラム
JP6526851B2 (ja) * 2018-01-29 2019-06-05 株式会社東芝 図形処理装置および図形処理プログラム
KR102477556B1 (ko) * 2018-08-29 2022-12-13 삼성중공업 주식회사 3차원 이미지 뷰어 및 모델 회전 방법
JP2020053088A (ja) * 2019-12-11 2020-04-02 キヤノン株式会社 制御装置、制御方法、及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07230352A (ja) * 1993-09-16 1995-08-29 Hitachi Ltd タッチ位置検出装置及びタッチ指示処理装置
JP2001290585A (ja) * 2000-01-31 2001-10-19 Canon Inc 位置情報処理装置及びその方法及びそのプログラム、操作装置及びその方法及びそのプログラム
WO2011025845A1 (en) * 2009-08-27 2011-03-03 Symbol Technologies, Inc. Methods and apparatus for pressure-based manipulation of content on a touch screen
WO2011062919A1 (en) * 2009-11-17 2011-05-26 Qualcomm Incorporated System and method of controlling three dimensional virtual objects on a portable computing device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007041726A (ja) * 2005-08-01 2007-02-15 Ricoh Co Ltd 表示処理装置、表示処理方法及び表示処理プログラム
US9753623B2 (en) * 2011-10-03 2017-09-05 Furuno Electric Co., Ltd. Device having touch panel, radar apparatus, plotter apparatus, ship network system, viewpoint changing method and viewpoint changing program
JP2013117770A (ja) * 2011-12-01 2013-06-13 Clarion Co Ltd 画像表示装置およびナビゲーション装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07230352A (ja) * 1993-09-16 1995-08-29 Hitachi Ltd タッチ位置検出装置及びタッチ指示処理装置
JP2001290585A (ja) * 2000-01-31 2001-10-19 Canon Inc 位置情報処理装置及びその方法及びそのプログラム、操作装置及びその方法及びそのプログラム
WO2011025845A1 (en) * 2009-08-27 2011-03-03 Symbol Technologies, Inc. Methods and apparatus for pressure-based manipulation of content on a touch screen
WO2011062919A1 (en) * 2009-11-17 2011-05-26 Qualcomm Incorporated System and method of controlling three dimensional virtual objects on a portable computing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190036061A (ko) * 2017-09-27 2019-04-04 삼성중공업 주식회사 3d 객체의 터치 방식 회전 제어 장치 및 방법
KR101994683B1 (ko) * 2017-09-27 2019-07-02 삼성중공업 주식회사 3d 객체의 터치 방식 회전 제어 장치 및 방법

Also Published As

Publication number Publication date
JP5920417B2 (ja) 2016-05-18
JP5594402B2 (ja) 2014-09-24
JP2014139767A (ja) 2014-07-31

Similar Documents

Publication Publication Date Title
JP5920417B2 (ja) 情報処理装置、その制御方法、及びプログラム
US11169705B2 (en) Configuration of application execution spaces and sub-spaces for sharing data on a mobile touch screen device
CN109643210B (zh) 使用悬停的设备操纵
JP6141300B2 (ja) ユーザ・インターフェースの間接的対話
US20220057932A1 (en) Configuration of application execution spaces and sub-spaces for sharing data on a mobile touch screen device
CN103502917A (zh) 用于启用触摸的命令执行的紧凑控件菜单
KR20130105879A (ko) 사용자 인터페이스에서의 작업 공간 관리
JP2021002381A (ja) タッチ感知面−ディスプレイによる入力方法、電子装置、触覚−視覚技術による入力制御方法及びシステム
KR102470651B1 (ko) 새로운 사용자 경험의 정보 제공 인터페이스 방법 및 그 시스템
JP6379816B2 (ja) 情報処理装置、その制御方法、及びプログラム
JP2014238700A (ja) 情報処理装置、表示制御方法、及びコンピュータプログラム
US11232237B2 (en) System and method for perception-based selection of features in a geometric model of a part
JP2015022675A (ja) 電子機器、インターフェース制御方法、および、プログラム
JP2015007844A (ja) ユーザインタフェース装置、ユーザインタフェース方法およびプログラム
JP6048450B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP6341171B2 (ja) 電子端末、及びその制御方法とプログラム
JP6344355B2 (ja) 電子端末、及びその制御方法とプログラム
JP2018097439A (ja) 情報処理装置、その制御方法、及びプログラム
Nishimoto Multi-User Interface for Scalable Resolution Touch Walls

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150309

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150410

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151019

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160328

R150 Certificate of patent or registration of utility model

Ref document number: 5920417

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees