[go: up one dir, main page]

JP7208549B2 - VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM - Google Patents

VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM Download PDF

Info

Publication number
JP7208549B2
JP7208549B2 JP2021053076A JP2021053076A JP7208549B2 JP 7208549 B2 JP7208549 B2 JP 7208549B2 JP 2021053076 A JP2021053076 A JP 2021053076A JP 2021053076 A JP2021053076 A JP 2021053076A JP 7208549 B2 JP7208549 B2 JP 7208549B2
Authority
JP
Japan
Prior art keywords
dimensional model
data
information processing
virtual space
processing apparatus
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
JP2021053076A
Other languages
Japanese (ja)
Other versions
JP2021108158A5 (en
JP2021108158A (en
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.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions 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 filed Critical Canon Marketing Japan Inc
Priority to JP2021053076A priority Critical patent/JP7208549B2/en
Publication of JP2021108158A publication Critical patent/JP2021108158A/en
Publication of JP2021108158A5 publication Critical patent/JP2021108158A5/ja
Application granted granted Critical
Publication of JP7208549B2 publication Critical patent/JP7208549B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

本発明は、設計変更された部品データが構成する三次元モデルを仮想空間上で操作することなく、当該部品データを仮想空間上で閲覧可能な仮想空間制御装置、その制御方法、及びプログラムに関する。 The present invention relates to a virtual space control device, a control method therefor, and a program that enable viewing of part data in a virtual space without manipulating a three-dimensional model composed of part data whose design has been changed in the virtual space.

従来、組立系製造業では業務のフロントローディングが行われている。フロントローディングは、後工程で発生する可能性のある問題を初期工程で検討することにより、品質向上を目指す取り組みである。例えば、設計部門で作成中のCADデータを三次元CADソフトウェアで表示し、組立部門や品質保証部門といった下流部門が部品の干渉チェックをシミュレーションしている。 Conventionally, front-loading of operations has been carried out in the assembly manufacturing industry. Front-loading is an approach that aims to improve quality by examining problems that may occur in later processes in the initial process. For example, CAD data being created in the design department is displayed by three-dimensional CAD software, and downstream departments such as the assembly department and the quality assurance department simulate interference checks of parts.

しかしながら、設計部門から取得するCADデータは未完成である。設計部門と下流部門とが協力して製品設計を進めていくため、設計部門と下流部門との間でCADデータのやり取りが何度も行われる。つまり、下流部門は設計部門が改善したCADデータを何度も取得し、その都度シミュレーション等を行う必要がある。 However, the CAD data obtained from the design department is incomplete. Since the design department and the downstream department cooperate to proceed with product design, CAD data is exchanged many times between the design department and the downstream department. In other words, the downstream department needs to acquire the CAD data improved by the design department many times and perform simulation each time.

その際に、設計部門から下流部門に対して設計変更の内容をきちんと伝えることが重要であるが、設計変更した箇所が多いと、設計変更箇所を伝え忘れてしまう可能性がある。そのため、下流部門は前回取得したCADデータから何がどのように変更されたのかを、設計変更前のCADデータと設計変更後のCADデータとを比較して、確認しなければならない。 In doing so, it is important for the design department to properly communicate the details of the design change to the downstream departments. Therefore, the downstream department must confirm what has been changed from the previously obtained CAD data by comparing the CAD data before the design change and the CAD data after the design change.

そこで特許文献1には、設計変更前のCADデータと設計変更後のCADデータとをそれぞれ一定形状の複数のエリアに分割し、そのエリアごとに体積を算出して設計変更前後で比較することにより、形状が変更された箇所を特定する仕組みが開示されている。 Therefore, in Patent Document 1, the CAD data before the design change and the CAD data after the design change are each divided into a plurality of areas with a certain shape, and the volume of each area is calculated and compared before and after the design change. , a mechanism for identifying a portion where the shape has been changed is disclosed.

特開平11-345256号公報JP-A-11-345256

特許文献1の仕組みや三次元CADソフトウェアの従来機能により、設計変更された箇所を自動的に特定する仕組みが存在するため、下流部門の作業者は容易に設計変更された箇所を確認することができる。 Since there is a mechanism for automatically identifying the design-changed part by the mechanism of Patent Document 1 and the conventional function of the three-dimensional CAD software, workers in the downstream department can easily confirm the design-changed part. can.

しかしながら、多数の部品から構成される組立品の場合、設計変更された箇所が組立品の内部に組み込まれていることがあるため、設計変更された箇所が判明したとしても、その箇所を三次元モデルとして確認することは手間がかかる。なぜなら、CADデータの三次元モデルを三次元CADソフトウェアで表示し、設計変更箇所だけが表示されるように設定しなければならないためである。 However, in the case of an assembly that consists of a large number of parts, the part where the design change was made may be incorporated inside the assembly. It takes time and effort to confirm as a model. This is because the three-dimensional model of the CAD data must be displayed by three-dimensional CAD software, and settings must be made so that only the design change points are displayed.

また、三次元モデルを含む画像を、現実空間を撮像した画像に重畳し、これを観察者のヘッドマウントディスプレイに提示する複合現実感(Mixed Reality、以下、MRという。)や拡張現実感と呼ばれている仕組みが存在する。この仕組みを用いて、組立品の三次元モデルを表示し、組立品の内部にある設計変更箇所を確認しようとしても、仮想空間に存在する三次元モデルを操作して部品ごとに分解しなければならないので、観察者にとって非常に手間である。 In addition, an image including a three-dimensional model is superimposed on an image of the real space and presented on the observer's head-mounted display, which is called mixed reality (MR) or augmented reality. There is a mechanism that is Using this mechanism to display the 3D model of the assembly and check the design changes inside the assembly, the 3D model that exists in the virtual space must be manipulated and disassembled into parts. Therefore, it is very troublesome for the observer.

本発明の目的は、設計変更された部品データが構成する三次元モデルを仮想空間上で操作することなく、当該部品データを仮想空間上で閲覧可能な仕組みを提供することである。 SUMMARY OF THE INVENTION An object of the present invention is to provide a mechanism that enables viewing of part data in a virtual space without manipulating a three-dimensional model configured by the part data whose design has been changed in the virtual space.

上記の目的を達成するために本発明の情報処理装置は、
第一の三次元モデルと、第二の三次元モデルとで差がある箇所を特定する特定手段と、
仮想空間上の、前記第一の三次元モデルと前記第二の三次元モデルとは独立した位置であって、現実空間における移動可能なターゲットに対応する位置に、前記差がある箇所の三次元モデルである第三の三次元モデルを表示すべく制御する表示制御手段と、
を備えることを特徴とする。
In order to achieve the above object, the information processing device of the present invention includes:
identifying means for identifying a portion where there is a difference between the first three-dimensional model and the second three-dimensional model;
The first three-dimensional model and the second three-dimensional model are independent positions in the virtual space, and the three-dimensional part where the difference exists in the position corresponding to the movable target in the real space display control means for controlling display of a third three-dimensional model, which is a model;
characterized by comprising

本発明によれば、設計変更された部品データが構成する三次元モデルを仮想空間上で操作することなく、当該部品データを仮想空間上で閲覧可能となる。 According to the present invention, the part data can be browsed in the virtual space without manipulating the three-dimensional model configured by the part data whose design has been changed in the virtual space.

本発明の実施形態における情報処理システムのシステム構成の一例を示す図である。It is a figure showing an example of the system configuration of the information processing system in the embodiment of the present invention. 情報処理装置101とHMD102のハードウェア構成の一例を示す図である。1 is a diagram showing an example of hardware configurations of an information processing apparatus 101 and an HMD 102; FIG. 情報処理装置101の機能構成の一例を示す図である。2 is a diagram illustrating an example of a functional configuration of an information processing apparatus 101; FIG. 全体的な処理の流れの一例を示すフローチャートである。4 is a flowchart showing an example of an overall processing flow; 差分特定処理の詳細な処理の流れの一例を示すフローチャートである。9 is a flowchart showing an example of a detailed processing flow of difference identification processing; 旧組立品データと新組立品データの参照構造と、比較表610のデータ構造の一例とを示す図である。6 is a diagram showing a reference structure of old assembly data and new assembly data, and an example of a data structure of a comparison table 610; FIG. 差分リスト700のテーブル構成の一例を示す図である。7 is a diagram illustrating an example of a table configuration of a difference list 700; FIG. 操作画面800の画面構成の一例を示す図である。8 is a diagram showing an example of a screen configuration of an operation screen 800; FIG. 差分データ配置処理の詳細な処理の流れの一例を示すフローチャートである。9 is a flowchart illustrating an example of a detailed processing flow of differential data arrangement processing; 図9Aに続き、差分データ配置処理の詳細な処理の流れの一例を示すフローチャートである。FIG. 9B is a flow chart following FIG. 9A showing an example of a detailed processing flow of difference data arrangement processing. ターゲットマーカにより操作画面800が操作されている様子を示す図である。FIG. 8 is a diagram showing a state in which an operation screen 800 is being operated by a target marker; 形状が変更された選択差分データが表示された様子を示す図である。FIG. 11 is a diagram showing a state in which selection difference data whose shape has been changed is displayed; 表示設定反映処理の詳細な処理の流れの一例を示すフローチャートである。FIG. 11 is a flowchart showing an example of a detailed processing flow of display setting reflection processing; FIG. 設計変更前の選択差分データが表示された様子を示す図である。It is a figure which shows a mode that the selection difference data before design change is displayed. 新たに追加された選択差分データが表示された様子を示す図である。FIG. 10 is a diagram showing how newly added selection difference data is displayed; 位置または姿勢が変更された選択差分データが識別表示された様子を示す図である。FIG. 10 is a diagram showing a state in which selection difference data whose position or orientation has been changed is identified and displayed; 削除された選択差分データが識別表示された様子を示す図である。FIG. 10 is a diagram showing a state in which deleted selected difference data is identified and displayed;

以下、図面を参照しながら、本発明の実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本実施形態における情報処理システムのシステム構成の一例を示す図である。図1に示す情報処理システムは、複合現実感技術(以下、MR技術という。)を用いた、ユーザに仮想空間を閲覧させるためのシステムである。情報処理システムは、情報処理装置101にHMD102が相互にデータ通信可能に接続されている。情報処理装置101とHMD102との接続は、有線接続であってもよいし、無線接続であってもよい。尚、図1のシステム上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例がある。 FIG. 1 is a diagram showing an example of the system configuration of an information processing system according to this embodiment. The information processing system shown in FIG. 1 is a system for allowing a user to browse a virtual space using mixed reality technology (hereinafter referred to as MR technology). In the information processing system, an HMD 102 is connected to an information processing apparatus 101 so as to be able to communicate data with each other. The connection between the information processing apparatus 101 and the HMD 102 may be wired connection or wireless connection. Note that the configuration of various terminals connected to the system in FIG. 1 is an example, and there are various configuration examples depending on the application and purpose.

情報処理装置101(仮想空間制御装置)は、汎用的なコンピュータである。情報処理装置101は、HMD102で撮影(撮像)された現実空間の画像(以下、現実空間画像という。)と、情報処理装置101で生成された仮想空間の画像(以下、仮想空間画像という。)とを重畳する。こうして生成された画像(以下、複合現実画像という。)を、HMD102に送信する。尚、MR技術に関しては従来技術を用いるため、詳細な説明は省略する。また、情報処理装置101は、パーソナルコンピュータであってもよいし、サーバのような大型のコンピュータであってもよい。更には、携帯電話やタブレット端末といった携帯端末であってもよい。コンピュータの種類は特に問わない。 The information processing device 101 (virtual space control device) is a general-purpose computer. The information processing apparatus 101 generates an image of a physical space captured (captured) by the HMD 102 (hereinafter referred to as a physical space image) and an image of a virtual space generated by the information processing apparatus 101 (hereinafter referred to as a virtual space image). and superimposed. An image thus generated (hereinafter referred to as a mixed reality image) is transmitted to the HMD 102 . As for the MR technique, a conventional technique is used, so a detailed explanation is omitted. Also, the information processing apparatus 101 may be a personal computer or a large computer such as a server. Furthermore, it may be a portable terminal such as a mobile phone or a tablet terminal. The type of computer is not particularly limited.

HMD102は、ヘッドマウントディスプレイである。HMD102は、ユーザの頭部に装着する装置であり、右目用と左目用のビデオカメラと、右目用と左目用のディスプレイを備えている。HMD102は、HMD102のビデオカメラで撮影された現実空間画像を情報処理装置101に送信する。そして、情報処理装置101から複合現実画像を受信し、ディスプレイに表示する。HMD102では、右目用と左目用のディスプレイを設けているので、視差によって立体感を得ることができる。尚、HMD102で撮影する現実空間画像とHMD102で表示する複合現実画像は、動画(映像)が望ましいが、所定の間隔で撮影された静止画であってもよい。また、スマートフォンのようにディスプレイとビデオカメラがハードウェアの前面と背面に設置されている装置を、ヘッドマウントディスプレイの代用としてもよい。 The HMD 102 is a head mounted display. The HMD 102 is a device worn on the user's head, and includes video cameras for right and left eyes and displays for right and left eyes. The HMD 102 transmits to the information processing apparatus 101 a physical space image captured by the video camera of the HMD 102 . Then, the mixed reality image is received from the information processing apparatus 101 and displayed on the display. Since the HMD 102 is provided with displays for the right eye and the left eye, a stereoscopic effect can be obtained by parallax. The physical space image captured by the HMD 102 and the mixed reality image displayed by the HMD 102 are preferably moving images (video), but may be still images captured at predetermined intervals. Also, a device such as a smartphone in which a display and a video camera are installed on the front and back of the hardware may be substituted for the head-mounted display.

本実施形態では、情報処理装置101とHMD102とを含むシステムとして説明を行うが、情報処理装置101とHMD102とが一体化したデバイス(仮想空間制御装置)であってもよい。すなわち、HMD102に情報処理装置101の各種ハードウェアを搭載し、HMD102だけで動作するようにしてもよい。 In this embodiment, a system including the information processing apparatus 101 and the HMD 102 is described, but a device (virtual space control apparatus) in which the information processing apparatus 101 and the HMD 102 are integrated may be used. That is, the various hardware of the information processing apparatus 101 may be installed in the HMD 102 so that the HMD 102 alone may operate.

また、情報処理装置101には赤外線カメラ104が接続されている。赤外線カメラ104は、赤外線を用いた光学式のセンサである。赤外線カメラ104は、現実空間に赤外線を照射し、現実空間の物体で反射した赤外線を撮影することにより、赤外線カメラ104が定義する座標系における、現実空間の物体の位置及び姿勢を特定する。この赤外線カメラ104を用いて、現実空間におけるHMD102(すなわちユーザ)の位置及び姿勢(向きや傾き、視線の方向等。以下、同じ。)を特定する。HMD102には、オプティカルマーカ103という赤外線を反射する物体を備えており、赤外線カメラ104はこのオプティカルマーカ103で反射した赤外線を撮影することで、HMD102の位置及び姿勢を特定できるようになっている。ユーザがどのような位置や姿勢であっても、当該ユーザが装着するHMD102のオプティカルマーカ103を撮影または検知できるように、情報処理システムでは赤外線カメラ104を複数台設置することが望ましい。また、位置及び姿勢を特定可能なHMD102は、赤外線カメラ104の撮影範囲に存在するものとして説明を行う。 An infrared camera 104 is also connected to the information processing apparatus 101 . The infrared camera 104 is an optical sensor using infrared rays. The infrared camera 104 irradiates the real space with infrared rays and photographs the infrared rays reflected by the objects in the real space, thereby specifying the position and orientation of the objects in the real space in the coordinate system defined by the infrared camera 104 . The infrared camera 104 is used to specify the position and orientation (orientation, inclination, line-of-sight direction, etc.; hereinafter the same) of the HMD 102 (that is, the user) in the physical space. The HMD 102 is equipped with an optical marker 103 , an object that reflects infrared rays, and an infrared camera 104 captures the infrared rays reflected by the optical marker 103 to identify the position and orientation of the HMD 102 . In the information processing system, it is desirable to install a plurality of infrared cameras 104 so that the optical markers 103 of the HMD 102 worn by the user can be photographed or detected regardless of the position or posture of the user. Also, the HMD 102 whose position and orientation can be specified is assumed to exist within the imaging range of the infrared camera 104 .

尚、本実施形態においては、現実空間におけるHMD102の位置及び姿勢を特定するために、赤外線カメラ104を用いるが、これらの現実空間における位置及び姿勢を特定できるのであれば、これに限らない。例えば、磁気センサを用いてもよいし、HMD102が撮影した画像を解析して位置及び姿勢を特定してもよい。 In the present embodiment, the infrared camera 104 is used to identify the position and orientation of the HMD 102 in the physical space, but the camera is not limited to this as long as the position and orientation in the physical space can be identified. For example, a magnetic sensor may be used, or an image captured by the HMD 102 may be analyzed to specify the position and orientation.

本実施形態においては、HMD102を装着したユーザは、ターゲットマーカ105を用いて各種操作を行う。ターゲットマーカ105は、二次元マーカから構成される。情報処理装置101はこの二次元マーカの傾きやHMD102との距離を画像認識により特定することにより、現実空間上のターゲットマーカ105が仮想空間上においてはどういった位置・姿勢であるのかを特定することができる。尚、二次元マーカの種類は特に問わないが、画像認識により二次元マーカの形状が取得しやすい種類である方が望ましい。 In this embodiment, the user wearing the HMD 102 uses the target marker 105 to perform various operations. The target marker 105 is composed of a two-dimensional marker. The information processing device 101 identifies the position and orientation of the target marker 105 in the physical space in the virtual space by identifying the inclination of the two-dimensional marker and the distance from the HMD 102 by image recognition. be able to. Although the type of the two-dimensional marker is not particularly limited, it is preferable that the two-dimensional marker is of a type that allows easy acquisition of the shape of the two-dimensional marker by image recognition.

図2は、情報処理装置101とHMD102の各ハードウェア構成の一例を示す図である。 FIG. 2 is a diagram showing an example of each hardware configuration of the information processing apparatus 101 and the HMD 102. As shown in FIG.

CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。 The CPU 201 comprehensively controls each device and controller connected to the system bus 204 .

また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムが記憶されている。更には、情報処理装置101の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。RAM203は、CPU201の主メモリ、ワークエリア等として機能する。 The ROM 202 or the external memory 211 also stores a BIOS (Basic Input/Output System), which is a control program for the CPU 201, and an operating system. Further, various programs, etc., which are necessary for realizing the functions executed by the information processing apparatus 101 and which will be described later, are stored. A RAM 203 functions as a main memory, a work area, and the like for the CPU 201 .

CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。 The CPU 201 implements various operations by loading programs and the like necessary for execution of processing into the RAM 203 and executing the programs.

また、入力コントローラ(入力C)205は、キーボードやマウス等のポインティングデバイス(入力デバイス210)からの入力を制御する。 An input controller (input C) 205 controls input from a pointing device (input device 210) such as a keyboard or mouse.

情報処理装置101のビデオコントローラ(VC)206は、HMD102が備える右目・左目ディスプレイ222やディスプレイ212等の表示器への表示を制御する。右目・左目ディスプレイ222に対しては、例えば外部出力端子(例えば、Digital Visual Interface)を用いて出力される。また、右目・左目ディスプレイ222は、右目用のディスプレイと左目用のディスプレイとから構成されている。また、ディスプレイ212は、液晶ディスプレイ等であり、右目・左目ディスプレイ222と同様の表示、または仮想空間を操作するためのGUI(Graphical User Interface)が表示される。 A video controller (VC) 206 of the information processing apparatus 101 controls display on displays such as the right-eye/left-eye display 222 and the display 212 provided in the HMD 102 . Output to the right-eye/left-eye display 222 is performed using, for example, an external output terminal (for example, Digital Visual Interface). The right-eye/left-eye display 222 is composed of a right-eye display and a left-eye display. The display 212 is a liquid crystal display or the like, and displays the same display as the right-eye/left-eye display 222 or a GUI (Graphical User Interface) for operating the virtual space.

メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部メモリ211(記憶手段)へのアクセスを制御する。外部メモリ211は、例えばハードディスク(HD)やフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等がある。 A memory controller (MC) 207 controls access to an external memory 211 (storage means) that stores a boot program, browser software, various applications, font data, user files, edit files, various data, and the like. The external memory 211 is, for example, a hard disk (HD), a flexible disk (FD), or a card-type memory connected to a PCMCIA card slot via an adapter.

通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。特に、情報処理装置101の通信I/Fコントローラ208は、赤外線カメラ104との通信も制御する。 A communication I/F controller (communication I/FC) 208 connects and communicates with an external device via a network, and executes communication control processing in the network. For example, Internet communication using TCP/IP is possible. In particular, the communication I/F controller 208 of the information processing apparatus 101 also controls communication with the infrared camera 104 .

情報処理装置101の汎用バス209は、情報処理装置101に接続されるHMD102の右目・左目ビデオカメラ221で撮影した画像を取り込むために使用される。右目・左目ビデオカメラ221からは、外部入力端子(例えば、IEEE1394端子)を用いて入力される。また、右目・左目ビデオカメラ221は、右目用のビデオカメラと左目用のビデオカメラとから構成されている。 The general-purpose bus 209 of the information processing apparatus 101 is used to capture images captured by the right-eye/left-eye video cameras 221 of the HMD 102 connected to the information processing apparatus 101 . Input from the right-eye/left-eye video camera 221 is performed using an external input terminal (for example, an IEEE1394 terminal). The right-eye/left-eye video camera 221 is composed of a right-eye video camera and a left-eye video camera.

尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ上での表示を可能としている。また、CPU201は、ディスプレイ上の不図示のマウスカーソル等でのユーザ指示を可能とする。 Note that the CPU 201 enables display on the display by, for example, rasterizing an outline font to a display information area in the RAM 203 . The CPU 201 also allows the user to issue instructions using a mouse cursor (not shown) on the display.

本発明の情報処理装置101が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ211に格納されている。 Various programs and the like used by the information processing apparatus 101 of the present invention to execute various processes to be described later are recorded in the external memory 211 and are executed by the CPU 201 by being loaded into the RAM 203 as necessary. be. Furthermore, the definition files and various information tables used by the program according to the present invention are stored in the external memory 211 .

図3は、情報処理装置101の機能構成を示す機能構成図である。尚、図3の情報処理装置101の機能構成は一例であり、用途や目的に応じて様々な構成例がある。 FIG. 3 is a functional configuration diagram showing the functional configuration of the information processing apparatus 101. As shown in FIG. It should be noted that the functional configuration of the information processing apparatus 101 in FIG. 3 is an example, and there are various configuration examples depending on the application and purpose.

情報処理装置101は機能部として、通信制御部301、位置・姿勢特定部302、現実空間画像取得部303、仮想空間生成部304、三次元モデル制御部305、仮想空間画像取得部306、複合現実画像生成部307を備える。更に情報処理装置101は機能部として、表示制御部308、データ管理部309、変数制御部310、データ比較部311、画面生成部312、操作受付部313、距離算出部314を備える。 The information processing apparatus 101 includes, as functional units, a communication control unit 301, a position/orientation identification unit 302, a real space image acquisition unit 303, a virtual space generation unit 304, a 3D model control unit 305, a virtual space image acquisition unit 306, a mixed reality An image generator 307 is provided. Further, the information processing apparatus 101 includes a display control unit 308, a data management unit 309, a variable control unit 310, a data comparison unit 311, a screen generation unit 312, an operation reception unit 313, and a distance calculation unit 314 as functional units.

通信制御部301は、情報処理装置101と通信可能なHMD102と赤外線カメラ104との各種情報の送受信を行う機能部である。通信制御部301は、前述したビデオコントローラ206、通信I/Fコントローラ208、汎用バス209等を通じてこれらの装置と情報の送受信を行う。 A communication control unit 301 is a functional unit that performs transmission and reception of various types of information between the HMD 102 and the infrared camera 104 that can communicate with the information processing apparatus 101 . The communication control unit 301 transmits and receives information to and from these devices through the aforementioned video controller 206, communication I/F controller 208, general-purpose bus 209, and the like.

位置・姿勢特定部302は、赤外線カメラ104から取得したHMD102の現実空間における位置及び姿勢(向き)を示す情報に基づいて、仮想空間における位置及び姿勢を特定するための機能部である。本実施形態では、HMD102にオプティカルマーカ103が装着されているため、現実空間におけるオプティカルマーカ103の位置及び姿勢をまず取得する。そして、現実空間の座標系(赤外線カメラ104の座標系)と仮想空間の座標系とはあらかじめキャリブレーション(位置合わせ)がなされているので、これに基づいて現実空間における位置及び姿勢に対応する仮想空間上の位置及び姿勢を特定する。尚、現実空間画像取得部303で右目・左目ビデオカメラ221から取得した右目用の現実空間画像と左目用の現実空間画像とを用いて、三角測量等の方法により、現実空間の物体の位置及び姿勢を特定してもよい。 The position/orientation identification unit 302 is a functional unit for identifying the position and orientation in the virtual space based on information indicating the position and orientation (orientation) of the HMD 102 in the real space acquired from the infrared camera 104 . In this embodiment, since the optical marker 103 is attached to the HMD 102, the position and orientation of the optical marker 103 in the physical space are acquired first. Since the coordinate system of the real space (the coordinate system of the infrared camera 104) and the coordinate system of the virtual space are calibrated (aligned) in advance, a virtual image corresponding to the position and orientation in the real space is based on this calibration. Identify position and orientation in space. Using the right-eye real-space image and the left-eye real-space image acquired from the right-eye/left-eye video camera 221 by the real-space image acquisition unit 303, the position and Posture may be specified.

また、位置・姿勢特定部302は、現実空間画像取得部303が取得した現実空間画像を解析して、現実空間画像に写る二次元マーカの位置や形状を特定し、現実空間におけるターゲットマーカの位置及び姿勢を特定することも可能である。また、位置・姿勢特定部302は、この現実空間画像におけるターゲットマーカの位置及び姿勢から、仮想空間における位置及び姿勢も特定する。 Further, the position/orientation identification unit 302 analyzes the physical space image acquired by the physical space image acquisition unit 303, identifies the position and shape of the two-dimensional marker appearing in the physical space image, and determines the position of the target marker in the physical space. And it is also possible to specify the posture. The position/orientation identifying unit 302 also identifies the position and orientation in the virtual space from the position and orientation of the target marker in the physical space image.

現実空間画像取得部303は、HMD102の右目・左目ビデオカメラ221で撮影された現実空間画像を取得する機能部である。 The physical space image acquisition unit 303 is a functional unit that acquires physical space images captured by the right-eye and left-eye video cameras 221 of the HMD 102 .

仮想空間生成部304は、情報処理装置101の外部メモリ211に記憶されている情報に基づいて仮想空間を生成する機能部である。仮想空間は情報処理装置101の内部に生成される仮想的な空間であるので、その空間の形や大きさに関する情報が外部メモリ211に記憶されており、これに基づいて仮想空間を生成する。仮想空間には三次元モデルを配置可能である。三次元モデルは三次元モデル制御部305によって配置される。 A virtual space generation unit 304 is a functional unit that generates a virtual space based on information stored in the external memory 211 of the information processing apparatus 101 . Since the virtual space is a virtual space generated inside the information processing apparatus 101, information regarding the shape and size of the space is stored in the external memory 211, based on which the virtual space is generated. A three-dimensional model can be placed in the virtual space. The 3D model is arranged by the 3D model control unit 305 .

三次元モデル制御部305は、三次元モデルを仮想空間に配置するための機能部である。仮想空間が生成された場合には、あらかじめ定義された位置及び姿勢で仮想空間上に三次元モデルを配置する。必要に応じて、配置された三次元モデルを異なる位置及び姿勢で再配置(移動)する。また、三次元モデル制御部305は、位置・姿勢特定部302で特定した、仮想空間におけるターゲットマーカの位置及び姿勢に基づいて、三次元モデルを仮想空間上に配置することができる。すなわち、複合現実画像を生成したときに、ターゲットマーカ105に重畳させるようにして三次元モデルを配置させることが可能である。更には、三次元モデル制御部305は、仮想空間に配置した三次元モデルの表示形態を変更することができる。例えば、三次元モデルの色を変更したり、形状を変更したりすることができる。 A three-dimensional model control unit 305 is a functional unit for placing a three-dimensional model in a virtual space. When the virtual space is generated, the 3D model is placed in the virtual space at a predefined position and orientation. If necessary, the arranged three-dimensional model is rearranged (moved) in a different position and orientation. Also, the 3D model control unit 305 can place the 3D model in the virtual space based on the position and orientation of the target marker in the virtual space specified by the position/orientation specifying unit 302 . That is, it is possible to arrange the three-dimensional model so as to be superimposed on the target marker 105 when the mixed reality image is generated. Furthermore, the 3D model control unit 305 can change the display form of the 3D model placed in the virtual space. For example, the color of the 3D model can be changed, or the shape can be changed.

仮想空間画像取得部306は、仮想空間生成部304で生成した仮想空間の画像を取得する機能部である。仮想空間画像取得部306が仮想空間の画像を取得する場合には、位置・姿勢特定部302で特定した仮想空間におけるHMD102の位置及び姿勢に基づいて仮想空間上に視点を設定する。そして、当該視点から見た場合の仮想空間画像を生成し、これを取得する。この視点に仮想的なカメラを設置し、仮想空間を撮像するようにすればよい。すなわちレンダリングするということである A virtual space image acquisition unit 306 is a functional unit that acquires an image of the virtual space generated by the virtual space generation unit 304 . When the virtual space image acquisition unit 306 acquires an image of the virtual space, the viewpoint is set in the virtual space based on the position and orientation of the HMD 102 in the virtual space specified by the position/orientation specifying unit 302 . Then, a virtual space image viewed from the viewpoint is generated and acquired. A virtual camera may be installed at this viewpoint to capture an image of the virtual space. i.e. rendering

複合現実画像生成部307は、現実空間画像取得部303で取得した現実空間画像に仮想空間画像取得部306で取得した仮想空間画像を重畳することにより、複合現実画像を生成する機能部である。 The mixed reality image generation unit 307 is a functional unit that generates a mixed reality image by superimposing the virtual space image acquired by the virtual space image acquisition unit 306 on the physical space image acquired by the physical space image acquisition unit 303 .

表示制御部308は、情報処理装置101に接続されたHMD102の右目・左目ディスプレイ222や情報処理装置101に接続されたディスプレイ212における各種情報の表示制御を行う機能部である。特に、複合現実画像生成部307で生成された複合現実画像をHMD102の右目・左目ディスプレイ222に表示させる機能を有する。 The display control unit 308 is a functional unit that controls display of various types of information on the right-eye/left-eye display 222 of the HMD 102 connected to the information processing apparatus 101 and the display 212 connected to the information processing apparatus 101 . In particular, it has a function of displaying the mixed reality image generated by the mixed reality image generation unit 307 on the right-eye/left-eye display 222 of the HMD 102 .

データ管理部309は、情報処理装置101のRAM203や外部メモリ211等の記憶部に記憶されるデータを管理するための機能部である。必要に応じて、データの追加・更新・削除等を行う。 A data management unit 309 is a functional unit for managing data stored in a storage unit such as the RAM 203 of the information processing apparatus 101 or the external memory 211 . Data is added, updated, deleted, etc., as necessary.

変数制御部310は、情報処理装置101が実行するプログラムで利用する変数の制御を行うための機能部である。変数の宣言や代入等の処理を実行する。 The variable control unit 310 is a functional unit for controlling variables used in programs executed by the information processing apparatus 101 . Execute processing such as declaration and assignment of variables.

データ比較部311は、外部メモリ211等に記憶された複数の三次元モデルを比較し、その差分を特定するための機能部である。三次元モデルは、自身のポリゴン数や位置・姿勢の情報を有しているので、この情報を用いて比較することにより差分があるか否かを特定する。また、従来技術の通り、体積や面積による比較や画像処理による比較であってもよい。 The data comparison unit 311 is a functional unit that compares a plurality of three-dimensional models stored in the external memory 211 or the like and specifies the difference between them. Since the three-dimensional model has information on its own polygon count and position/orientation, whether or not there is a difference is specified by comparing using this information. Further, as in the conventional technology, comparison based on volume or area, or comparison based on image processing may be used.

画面生成部312は、仮想空間上に表示する操作画面を生成するための機能部である。本実施形態においては、操作画面を仮想空間上に表示するため、生成される画面は三次元モデルである。 The screen generation unit 312 is a functional unit for generating an operation screen to be displayed in the virtual space. In this embodiment, since the operation screen is displayed in the virtual space, the generated screen is a three-dimensional model.

操作受付部313は、画面生成部312によって生成された操作画面に対する選択操作を受け付けるための機能部である。仮想空間上に表示された操作画面に対する操作は、ターゲットマーカ105を用いて行う。ターゲットマーカ105の仮想空間における位置及び姿勢が位置・姿勢特定部302によって特定されるので、この位置及び姿勢に基づいて、ターゲットマーカ105の上部にカーソルオブジェクトを配置する。このカーソルオブジェクトと操作画面上のボタンとが一定時間接触した場合に、ボタンが押下(選択)されたと判断する。操作画面に対する操作方法はこれに限らず、HMD102を装着するユーザの指によって操作されてもよいし、情報処理装置101のディスプレイ212に操作画面を表示して入力デバイス210によって操作を受け付けてもよい。 The operation reception unit 313 is a functional unit that receives selection operations on the operation screen generated by the screen generation unit 312 . An operation on the operation screen displayed in the virtual space is performed using the target marker 105 . Since the position and orientation of the target marker 105 in the virtual space are identified by the position/orientation identification unit 302, the cursor object is placed above the target marker 105 based on this position and orientation. When the cursor object and the button on the operation screen are in contact for a certain period of time, it is determined that the button has been pressed (selected). The operation method for the operation screen is not limited to this, and it may be operated by the finger of the user wearing the HMD 102, or the operation screen may be displayed on the display 212 of the information processing apparatus 101 and an operation may be accepted by the input device 210. .

距離算出部314は、仮想空間上の二点間の距離を算出するための機能部である。三平方の定理等を用いて、仮想空間上の座標系における二点間の距離を算出する。 A distance calculation unit 314 is a functional unit for calculating the distance between two points in the virtual space. Using the Pythagorean theorem or the like, the distance between two points in the coordinate system on the virtual space is calculated.

次に、本発明の実施形態における全体的な処理の流れの一例について、図4に示すフローチャートを用いて説明する。以下説明する、S401乃至S412の各ステップは、情報処理装置101のCPU201が各機能部を動作することにより実行される処理である。 Next, an example of the overall processing flow in the embodiment of the present invention will be described using the flowchart shown in FIG. Each step of S401 to S412 described below is a process executed by the CPU 201 of the information processing apparatus 101 operating each functional unit.

ステップS401では、情報処理装置101は、設計変更前の組立品と設計変更後の組立品との差分を特定するための処理を実行する。図5に差分特定処理の詳細な処理の流れを示す。 In step S401, the information processing apparatus 101 executes processing for identifying the difference between the assembly before the design change and the assembly after the design change. FIG. 5 shows a detailed processing flow of the difference identification processing.

図5は、差分特定処理の詳細な処理の流れの一例を示すフローチャートである。以下説明する、S501乃至S509の各ステップは、情報処理装置101のCPU201が各機能部を動作することにより実行される処理である。 FIG. 5 is a flowchart illustrating an example of a detailed processing flow of difference identification processing. Each step from S501 to S509 described below is a process executed by the CPU 201 of the information processing apparatus 101 operating each functional unit.

ステップS501では、情報処理装置101のデータ管理部309は、外部メモリ211に記憶されている設計変更前の組立品データ(以下、旧組立品データという。)と、設計変更後の組立品データ(以下、新組立品データという。)とを取得する(取得手段)。すなわち、設計変更前の第一の三次元モデルと、設計変更後の第二の三次元モデルとを取得するということである。ユーザはあらかじめこれらのデータを外部メモリ211に記憶しておく。そして、データ管理部309は、ユーザから指定された旧組立品データと新組立品データとを取得する。本実施形態において組立品データとは、CADデータのうちのアセンブリデータである。 In step S501, the data management unit 309 of the information processing apparatus 101 stores the assembly data before the design change (hereinafter referred to as old assembly data) stored in the external memory 211 and the assembly data after the design change (hereinafter referred to as "old assembly data"). hereinafter referred to as new assembly data) is acquired (acquisition means). That is, the first three-dimensional model before the design change and the second three-dimensional model after the design change are acquired. The user stores these data in the external memory 211 in advance. Then, the data management unit 309 acquires the old assembly data and the new assembly data specified by the user. Assembly data in this embodiment is assembly data of CAD data.

図6(a)では、旧組立品データと新組立品データ(以下、これらを新旧組立品データという。)の参照構造の一例を、それぞれ601と602に示す。新旧組立品データはトップアセンブリであるので、複数の部品やサブアセンブリから構成されている。例えば、旧組立品データAは、部品データBと部品データCとアセンブリデータDから構成されており、更にサブアセンブリであるアセンブリデータDは、部品データE・F・Gから構成されている。以下、アセンブリデータの参照先の部品やサブアセンブリを参照先データと称する。 In FIG. 6A, examples of reference structures of old assembly data and new assembly data (hereinafter referred to as old and new assembly data) are shown at 601 and 602, respectively. Since the old and new assembly data is the top assembly, it consists of multiple parts and subassemblies. For example, old assembly data A consists of parts data B, parts data C, and assembly data D, and assembly data D, which is a sub-assembly, consists of parts data E, F, and G. Parts and subassemblies to which assembly data refers are hereinafter referred to as reference data.

ステップS502では、情報処理装置101のデータ管理部309は、ステップS501で取得した新旧組立品データの参照先である参照先データに関する情報を取得し、図6(b)に示すような比較表610を作成する。比較表610は、旧参照先データ名611と新参照先データ名612を備えており、それぞれ比較元と比較先の参照先データの名称を示している。旧組立品データの参照先データに対応する新組立品データの参照先データがあれば同じ行に並べて格納し、どちらか一方にしかない参照先データの場合には、当該参照先データが存在しない組立品データの項目は空欄にする。このようにして、図6(a)に示す旧組立品データAと新組立品データAの比較表610を作成した結果が図6(b)である。 In step S502, the data management unit 309 of the information processing apparatus 101 acquires information about the reference destination data that is the reference destination of the old and new assembly data acquired in step S501, and compares the comparison table 610 as shown in FIG. to create The comparison table 610 has an old reference destination data name 611 and a new reference destination data name 612, which indicate the names of the reference destination data of the comparison source and the comparison destination, respectively. If there is reference data of the new assembly data corresponding to the reference data of the old assembly data, it is stored side by side in the same row. Leave the product data item blank. FIG. 6B is the result of creating a comparison table 610 of the old assembly data A and the new assembly data A shown in FIG. 6A in this way.

ステップS503では、情報処理装置101のデータ管理部309は、図7に示すような差分リスト700を生成する。ステップS503の処理では、空の状態の差分リスト700を生成する。 At step S503, the data management unit 309 of the information processing apparatus 101 generates a difference list 700 as shown in FIG. In the process of step S503, an empty difference list 700 is generated.

図7の差分リスト700は、設計変更前後でどのような差分があるのかを示すためのデータテーブルである。差分リスト700は、差分データ名701、追加フラグ702、形状変更フラグ703、位置姿勢変更フラグ704、削除フラグ705を備える。データテーブルのテーブル構成はこれに限らない。 A difference list 700 in FIG. 7 is a data table for indicating what kind of difference exists before and after the design change. The difference list 700 includes a difference data name 701 , an addition flag 702 , a shape change flag 703 , a position/orientation change flag 704 and a deletion flag 705 . The table configuration of the data table is not limited to this.

差分データ名701は、設計変更前後で差分のあった参照先データの名称が格納される項目である。本実施形態でいう差分とは、設計変更前後の相違点のことをいう。例えば、旧組立品データに対する新たな参照先データの追加、参照先データの形状変更、参照先データの位置または姿勢の変更、旧組立品データからの参照先データの削除を指す。追加フラグ702、形状変更フラグ703、位置姿勢変更フラグ704、削除フラグ705は、これらの差分があった場合にフラグが立てられる項目である。 The difference data name 701 is an item that stores the name of the referenced data that has a difference before and after the design change. The term "difference" as used in this embodiment refers to the difference between before and after the design change. For example, it refers to adding new reference data to old assembly data, changing the shape of reference data, changing the position or posture of reference data, and deleting reference data from old assembly data. An addition flag 702, a shape change flag 703, a position/orientation change flag 704, and a deletion flag 705 are items for which flags are set when there is a difference between them.

図5の説明に戻る。ステップS504では、情報処理装置101の変数制御部310は、カウンタの変数iを宣言し、初期値として0を代入する。そして、ステップS505では、情報処理装置101の変数制御部310は、変数iをインクリメントする。 Returning to the description of FIG. In step S504, the variable control unit 310 of the information processing apparatus 101 declares the variable i of the counter and substitutes 0 as the initial value. Then, in step S505, the variable control unit 310 of the information processing apparatus 101 increments the variable i.

ステップS506では、情報処理装置101のデータ管理部309は、比較表610のレコードのうち、i行目のレコード参照先データを外部メモリ211等から取得し、これを参照する。ここで取得するのは、旧参照先データ名611が示す、旧組立品データを構成する参照先データと、新参照先データ名612が示す、新組立品データを構成する参照先データである。旧参照先データ名611と新参照先データ名612のいずれかが空欄の場合には、名称が入力されている参照先データのみ取得する。 In step S<b>506 , the data management unit 309 of the information processing apparatus 101 acquires the i-th record reference destination data among the records of the comparison table 610 from the external memory 211 or the like, and refers to it. What is acquired here is the reference destination data constituting the old assembly data indicated by the old reference destination data name 611 and the reference destination data constituting the new assembly data indicated by the new reference destination data name 612 . If either the old referenced data name 611 or the new referenced data name 612 is blank, only the referenced data whose name is entered is acquired.

ステップS507では、情報処理装置101のデータ比較部311は、ステップS506で取得した、旧組立品データを構成する参照先データと、新組立品データを構成する参照先データとを比較する。ここでいう比較は、新たに参照先データが追加されたか、参照先データの形状が変更されたか、参照先データの位置または姿勢が変更されたか、参照先データが削除されたか等を、ステップS506で取得した参照先データ同士を比較することで特定する(特定手段)。 In step S507, the data comparison unit 311 of the information processing apparatus 101 compares the reference destination data constituting the old assembly data and the reference destination data constituting the new assembly data acquired in step S506. The comparison here refers to whether new reference destination data has been added, whether the shape of the reference destination data has been changed, whether the position or orientation of the reference destination data has been changed, whether the reference destination data has been deleted, and so on. is identified by comparing the reference data obtained in step (identifying means).

例えば、旧組立品データには存在しないが、新組立品データに存在する参照先データの場合(ステップS506で旧組立品データを構成する参照先データが取得できなかった場合)には、新たに追加された参照先データであると特定する。ステップS506で取得した旧組立品データの参照先データが有するポリゴン数と新組立品データの参照先データが有するポリゴン数とが一致しない場合には、形状変更がなされた参照先データであると特定する。一致不一致の判定はポリゴン数に限らず、体積や面積といった別の要素を用いた比較によってもよい。また、旧組立品データの参照先データの親であるアセンブリデータと新組立品データの参照先データの親であるアセンブリデータとが示すそれぞれの位置または姿勢を示す情報が一致しない場合、位置または姿勢が変更された参照先データであると特定する。旧組立品データには存在するが新組立品データには存在しない参照先データの場合(ステップS506で新組立品データを構成する参照先データが取得できなかった場合)には、削除された参照先データであると特定する。このいずれにも該当しないのであれば、取得した参照先データについては設計変更がなかったと特定する。 For example, in the case of reference destination data that does not exist in the old assembly data but exists in the new assembly data (when the reference destination data constituting the old assembly data could not be acquired in step S506), a new Identifies it as added referenced data. If the number of polygons included in the reference data of the old assembly data obtained in step S506 does not match the number of polygons included in the reference data of the new assembly data, it is determined that the reference data has been changed in shape. do. Match/mismatch determination is not limited to the number of polygons, and comparison using other factors such as volume and area may also be used. Also, if the information indicating the position or orientation indicated by the assembly data that is the parent of the referenced data of the old assembly data and the assembly data that is the parent of the referenced data of the new assembly data do not match, the position or orientation is the changed referenced data. In the case of reference destination data that exists in the old assembly data but does not exist in the new assembly data (when the reference destination data constituting the new assembly data could not be acquired in step S506), the deleted reference Identifies as prior data. If none of these conditions apply, it is determined that the acquired referenced data has not undergone a design change.

このように比較した結果、ステップS506で参照した、新旧組立品データにおける参照先データに設計変更があったか、すなわち差分があるか否かを判定する。差分がある(追加、形状変更、位置または姿勢変更、削除があった)と判定した場合には、ステップS508に処理を進める。差分がないと判定した場合には、ステップS509に処理を進める。 As a result of this comparison, it is determined whether or not there is a design change in the reference destination data in the old and new assembly data referred to in step S506, that is, whether or not there is a difference. If it is determined that there is a difference (addition, shape change, position or posture change, or deletion), the process proceeds to step S508. If it is determined that there is no difference, the process proceeds to step S509.

ステップS508では、情報処理装置101のデータ管理部309は、ステップS503で生成された差分リスト700に新たなレコードを追加し、ステップS506で参照した参照先データの名称を差分データ名701に追加する。そして、その差分内容に対応するフラグに“1”を格納する。つまりフラグを立てる。それ以外のフラグには“0”を格納する。このようにすることで、設計変更のあった参照先データに関する情報を差分リスト700に追加していく。すべての参照先データに対してステップS508を実行した結果が、図7に示す差分リスト700である。以下、設計変更のあった参照先データのことを、差分データと称する。 In step S508, the data management unit 309 of the information processing apparatus 101 adds a new record to the difference list 700 generated in step S503, and adds the name of the referenced data referenced in step S506 to the difference data name 701. . Then, "1" is stored in the flag corresponding to the content of the difference. In other words, flag it. "0" is stored in other flags. By doing so, the information about the reference destination data whose design has been changed is added to the difference list 700 . The difference list 700 shown in FIG. 7 is the result of executing step S508 on all the reference destination data. Hereinafter, the reference destination data whose design has been changed will be referred to as difference data.

ステップS509では、情報処理装置101のデータ管理部309は、比較表610のi行目が最終行(最終レコード)であるか否かを判定する。最終行であると判定した場合には、差分特定処理を終了し、ステップS401の次のステップに処理を進める。最終行でないと判定した場合には、ステップS505に処理を戻す。 In step S509, the data management unit 309 of the information processing apparatus 101 determines whether or not the i-th row of the comparison table 610 is the last row (last record). If it is determined that the line is the last line, the difference specifying process is terminated, and the process proceeds to the next step after step S401. If it is determined that the line is not the last line, the process returns to step S505.

このようにして、旧組立品データを構成する複数の参照先データと、新組立品データを構成する複数の参照先データとを比較し、設計変更がなされた参照先データとその変更内容を特定する。 In this way, a plurality of referenced data that constitutes the old assembly data and a plurality of referenced data that constitutes the new assembly data are compared to identify the referenced data whose design has been changed and the content of the change. do.

図4に説明を戻す。ステップS401が完了すると、ステップS402では、情報処理装置101の仮想空間生成部304は、外部メモリ211に記憶された仮想空間情報を取得する。仮想空間情報とは、仮想空間を生成するための各種情報のことである。具体的には、仮想空間の形やその大きさ、また配置する三次元モデルやその配置場所といった、仮想空間を形作るために必要な情報である。そして、仮想空間生成部304は、取得した仮想空間情報を用いて、仮想空間を生成する。生成される仮想空間は、仮想空間情報が示す形や大きさの仮想空間であり、更には仮想空間情報が示す三次元モデルが仮想空間上に配置される。本実施形態では、仮想空間生成部304は、ステップS501で取得した旧組立品データと新組立品データとを仮想空間上に配置する。新旧組立品データは、前述した通りアセンブリデータであるので、参照先データを三次元モデルとして表示し、当該アセンブリデータに定義された位置や姿勢で配置する。これにより新旧組立品データを示す三次元モデルが仮想空間上に配置される。 Returning to FIG. When step S401 is completed, the virtual space generation unit 304 of the information processing apparatus 101 acquires virtual space information stored in the external memory 211 in step S402. Virtual space information is various information for generating a virtual space. Specifically, it is the information necessary to form the virtual space, such as the shape and size of the virtual space, and the three-dimensional model to be placed and its placement location. Then, the virtual space generation unit 304 generates a virtual space using the acquired virtual space information. The generated virtual space is a virtual space having the shape and size indicated by the virtual space information, and a three-dimensional model indicated by the virtual space information is arranged in the virtual space. In this embodiment, the virtual space generation unit 304 arranges the old assembly data and the new assembly data acquired in step S501 in the virtual space. Since the old and new assembly data are assembly data as described above, the referenced data is displayed as a three-dimensional model and arranged in the position and orientation defined in the assembly data. As a result, a three-dimensional model showing new and old assembly data is arranged in the virtual space.

ステップS403では、情報処理装置101の現実空間画像取得部303は、HMD102の右目・左目ビデオカメラ221から現実空間画像を取得し、これらをRAM203に記憶する。 In step S<b>403 , the physical space image acquisition unit 303 of the information processing apparatus 101 acquires physical space images from the right-eye and left-eye video cameras 221 of the HMD 102 and stores them in the RAM 203 .

ステップS404では、情報処理装置101の位置・姿勢特定部302は、HMD102の現実空間における位置及び姿勢を示す情報を取得する。前述した通り、HMD102が備えるオプティカルマーカ103を赤外線カメラ104が検知することで特定した位置及び姿勢を示す情報を、赤外線カメラ104から取得する。そして、位置・姿勢特定部302は、取得した位置及び姿勢を示す情報から仮想空間における位置及び姿勢を特定する。特定した位置及び姿勢は、HMD位置・姿勢情報としてRAM203に記憶する。この情報は現在のフレームにおけるHMD102の位置及び姿勢であるので、フレームが切り替わるごとにこの情報が更新される。 In step S404, the position/orientation identification unit 302 of the information processing apparatus 101 acquires information indicating the position and orientation of the HMD 102 in the physical space. As described above, the infrared camera 104 acquires information indicating the position and orientation specified by detecting the optical marker 103 included in the HMD 102 from the infrared camera 104 . Then, the position/orientation identifying unit 302 identifies the position and orientation in the virtual space from the acquired information indicating the position and orientation. The specified position and orientation are stored in the RAM 203 as HMD position/orientation information. Since this information is the position and orientation of the HMD 102 in the current frame, this information is updated each time the frame is switched.

ステップS405では、情報処理装置101の位置・姿勢特定部302は、ターゲットマーカ105の現実空間における位置及び姿勢を示す情報を特定する(位置特定手段)。具体的には、前述した通り、ターゲットマーカ105をHMD102が撮影した現実空間画像から検出する。そして、その現実空間画像に写るターゲットマーカ105の形状や右目・左目ビデオカメラ221で取得した2枚の現実空間画像から特定される視差によって、ターゲットマーカ105の現実空間における位置及び姿勢を推定する。そして、この現実空間における位置及び姿勢から仮想空間における位置及び姿勢を特定する。換言すれば、現実空間においてHMD102を装着するユーザから指定された位置に対応する仮想空間上の位置を特定するということである。特定した位置及び姿勢は、ターゲットマーカ位置・姿勢情報としてRAM203に記憶する。この情報は現在のフレームにおけるHMD102の位置及び姿勢であるので、フレームが切り替わるごとにこの情報が更新される。 In step S405, the position/orientation identification unit 302 of the information processing apparatus 101 identifies information indicating the position and orientation of the target marker 105 in the physical space (position identification means). Specifically, as described above, the target marker 105 is detected from the physical space image captured by the HMD 102 . Then, the position and orientation of the target marker 105 in the physical space are estimated based on the shape of the target marker 105 captured in the physical space image and the parallax specified from the two physical space images acquired by the right-eye and left-eye video cameras 221 . Then, the position and orientation in the virtual space are specified from the position and orientation in the real space. In other words, the position in the virtual space corresponding to the position specified by the user wearing the HMD 102 in the real space is specified. The specified position and orientation are stored in the RAM 203 as target marker position/orientation information. Since this information is the position and orientation of the HMD 102 in the current frame, this information is updated each time the frame is switched.

ステップS406では、情報処理装置101の画面生成部312は、ステップS508で参照先データが追加された差分リスト700を取得し、差分データ名701の一覧を含む操作画面を生成する。操作画面の一例を図8に示す。 In step S<b>406 , the screen generation unit 312 of the information processing apparatus 101 acquires the difference list 700 to which the reference data is added in step S<b>508 , and generates an operation screen including a list of difference data names 701 . An example of the operation screen is shown in FIG.

操作画面800は、表示設定としてターゲットボタン801と表示階層ボタン802と表示対象ボタン803とを備えている。ターゲットボタン801は、ターゲットマーカ105に差分データとして部品データを重畳表示させるのか、当該部品データを含むアセンブリデータを重畳表示させるのかを選択するためのボタンである。表示階層ボタン802は、ターゲットボタン801でアセンブリデータを重畳表示すると選択された場合に、いくつ上の階層のアセンブリデータを重畳表示させるのかを選択するためのボタンである。例えば、“1”が選択されると差分データの親であるアセンブリデータ、“2”が選択されると差分データの親の親であるアセンブリデータがターゲットマーカ105に重畳表示されることになる。表示対象ボタン803は、旧組立品データにおける差分データをターゲットマーカ105に重畳表示させるのか、新組立品データにおける差分データをターゲットマーカ105に重畳表示させるのかを選択するためのボタンである。 The operation screen 800 includes a target button 801, a display hierarchy button 802, and a display object button 803 as display settings. A target button 801 is a button for selecting whether to superimpose part data as difference data on the target marker 105 or to superimpose assembly data including the part data. A display hierarchy button 802 is a button for selecting how many upper layers of assembly data are to be displayed in a superimposed manner when the target button 801 selects to display the assembly data in a superimposed manner. For example, if "1" is selected, the assembly data that is the parent of the difference data is superimposed on the target marker 105, and if "2" is selected, the assembly data that is the parent of the difference data is superimposed on the target marker 105. FIG. The display target button 803 is a button for selecting whether the difference data in the old assembly data is superimposed on the target marker 105 or the difference data in the new assembly data is superimposed on the target marker 105 .

また、操作画面800は差分データリスト804を備えている。差分データリスト804は、差分リスト700の差分データ名701に示す差分データの名称が一覧表示される領域である。それぞれ差分データの名称がボタン形式で表示される。選択されたボタンに対応する差分データが、表示設定に従ってターゲットマーカ105に重畳表示される。 The operation screen 800 also has a differential data list 804 . A difference data list 804 is an area in which the names of the difference data shown in the difference data name 701 of the difference list 700 are listed. The name of each difference data is displayed in the form of a button. Difference data corresponding to the selected button is superimposed and displayed on the target marker 105 according to display settings.

この操作画面800は、ステップS402で生成された仮想空間上に配置されるので、三次元モデルとして生成する。具体的には、画面生成部312は操作画面800を表す画像データを生成し、三次元モデル制御部305が生成する三次元モデルの面にテクスチャとして貼り付けることで、仮想空間上に配置する操作画面800の三次元モデルを生成する。操作画面800を配置する位置は、あらかじめ決められた位置であってもよいし、仮想空間に設定されるHMD102の視点から所定距離・方向だけ離れた位置に設置し、視点に追従して配置位置を移動するようにしてもよい。 Since this operation screen 800 is arranged in the virtual space generated in step S402, it is generated as a three-dimensional model. Specifically, the screen generation unit 312 generates image data representing the operation screen 800, and pastes it as a texture on the surface of the three-dimensional model generated by the three-dimensional model control unit 305, thereby arranging it in the virtual space. A three-dimensional model of screen 800 is generated. The position at which the operation screen 800 is arranged may be a predetermined position, or it may be arranged at a position a predetermined distance and direction away from the viewpoint of the HMD 102 set in the virtual space, and the arrangement position may follow the viewpoint. may be moved.

ステップS407では、情報処理装置101は、ユーザから指定された差分データを仮想空間上に配置するための処理を実行する。図9A及び図9Bに差分データ配置処理の詳細な処理の流れを示す。 In step S407, the information processing apparatus 101 executes processing for arranging the difference data specified by the user in the virtual space. 9A and 9B show the detailed processing flow of the differential data arrangement processing.

図9A及び図9Bは、差分データ配置処理の詳細な処理の流れの一例を示すフローチャートである。以下説明する、S901乃至S917の各ステップは、情報処理装置101のCPU201が各機能部を動作することにより実行される処理である。 9A and 9B are flowcharts showing an example of a detailed processing flow of differential data arrangement processing. Each step from S901 to S917 described below is a process executed by the CPU 201 of the information processing apparatus 101 operating each functional unit.

ステップS901では、情報処理装置101の操作受付部313は、仮想空間に配置された操作画面800に対する操作内容を特定する。本実施形態においては、操作画面800に対する操作はターゲットマーカ105を用いて行われる。ターゲットマーカ105が指し示す方向にカーソルオブジェクトが重畳表示され、このカーソルオブジェクトと操作画面800上のボタンとが一定時間接触した場合に、当該ボタンが押下されたと判定する。 In step S901, the operation reception unit 313 of the information processing apparatus 101 identifies the operation content for the operation screen 800 arranged in the virtual space. In this embodiment, the operation on the operation screen 800 is performed using the target marker 105 . A cursor object is superimposed and displayed in the direction indicated by the target marker 105, and when this cursor object and a button on the operation screen 800 are in contact for a certain period of time, it is determined that the button has been pressed.

図10は、ターゲットマーカ105により操作画面800が操作されている様子を示す図である。仮想空間には、ステップS501で取得した旧組立品データ1001と新組立品データ1002と、ステップS406で生成された操作画面800とが配置されている。このような仮想空間を示す仮想空間画像が、後述する処理において現実空間画像に重畳されてHMD102に表示されている。更に、仮想空間生成部304は、ターゲットマーカ105の仮想空間における位置及び姿勢に基づいて、ターゲットマーカ105が指し示す方向に対して、カーソルオブジェクト1003を仮想空間に配置する。このカーソルオブジェクト1003は、HMD102を装着するユーザが現実空間でターゲットマーカ105を移動させても、カーソルオブジェクト1003がターゲットマーカ105の指し示す方向に追従する。そして、ユーザは、差分データリスト804に表示された差分データのうち、ターゲットマーカ105に重畳表示させたい場合には、このターゲットマーカ105のカーソルオブジェクト1003を、表示したい差分データの名称に対して一定時間接触させる。これにより、ボタン押下が行われる。 FIG. 10 is a diagram showing how the operation screen 800 is operated by the target marker 105. As shown in FIG. In the virtual space, the old assembly data 1001 and the new assembly data 1002 acquired in step S501 and the operation screen 800 generated in step S406 are arranged. A virtual space image representing such a virtual space is superimposed on the physical space image and displayed on the HMD 102 in a process described later. Furthermore, the virtual space generator 304 places the cursor object 1003 in the virtual space in the direction indicated by the target marker 105 based on the position and orientation of the target marker 105 in the virtual space. This cursor object 1003 follows the direction indicated by the target marker 105 even if the user wearing the HMD 102 moves the target marker 105 in the real space. When the user wants to superimpose the target marker 105 on the difference data displayed in the difference data list 804, the user can set the cursor object 1003 of the target marker 105 to the name of the difference data to be displayed. time contact. As a result, the button is pressed.

ステップS902では、情報処理装置101の操作受付部313は、ステップS901で特定された操作内容が、現在、仮想空間上に配置している差分データとは異なる差分データに対応するボタンが選択されたか否かを判定する。例えば、現在仮想空間上に配置されている差分データが“部品データB”であり、新たに選択された差分データが“部品データC”である場合や、仮想空間上にどの差分データも配置されていない状態で、差分データに対応するボタンが押下された場合である。このような場合には、ステップS903に処理を進める。そうでない場合には、差分データ配置処理を終了し、ステップS407の次のステップに処理を進める。 In step S902, the operation reception unit 313 of the information processing apparatus 101 determines whether a button corresponding to difference data whose operation content specified in step S901 is different from the difference data currently arranged in the virtual space has been selected. determine whether or not For example, if the difference data currently arranged in the virtual space is "parts data B" and the newly selected difference data is "parts data C", or if any difference data is arranged in the virtual space. This is a case where the button corresponding to the difference data is pressed in a state in which the In such a case, the process proceeds to step S903. Otherwise, the difference data arrangement process is terminated, and the process proceeds to the next step after step S407.

ステップS903では、情報処理装置101のデータ管理部309は、カーソルオブジェクト1003によって押下されたボタンに対応する差分データの各種フラグ(追加フラグ702~削除フラグ705)を参照する。以下、カーソルオブジェクト1003によって押下されたボタンに対応する差分データを、選択差分データと称する。 In step S903, the data management unit 309 of the information processing apparatus 101 refers to various flags (addition flag 702 to deletion flag 705) of difference data corresponding to the button pressed by the cursor object 1003. FIG. Hereinafter, the difference data corresponding to the button pressed by the cursor object 1003 will be referred to as selected difference data.

ステップS904では、情報処理装置101のデータ管理部309は、選択差分データの追加フラグ702が“1”であるか否か、すなわち追加フラグ702が立っているか否かを判定する。選択差分データの追加フラグ702が“1”であると判定した場合には、ステップS905に処理を進める。選択差分データの追加フラグ702が“0”であると判定した場合には、ステップS908に処理を進める。 In step S904, the data management unit 309 of the information processing apparatus 101 determines whether or not the addition flag 702 of the selected difference data is "1", that is, whether or not the addition flag 702 is set. If it is determined that the addition flag 702 of the selected difference data is "1", the process proceeds to step S905. If it is determined that the addition flag 702 of the selected difference data is "0", the process proceeds to step S908.

ステップS905では、情報処理装置101のデータ管理部309は、新組立品データを構成する選択差分データを外部メモリ211から取得する。すなわち、旧組立品データに対して新たに追加された選択差分データを外部メモリ211から取得するということである。 In step S<b>905 , the data management unit 309 of the information processing apparatus 101 acquires from the external memory 211 the selection difference data constituting the new assembly data. That is, the selection difference data newly added to the old assembly data is obtained from the external memory 211 .

ステップS906では、情報処理装置101の三次元モデル制御部305は、仮想空間に配置されている新組立品データのうち、選択差分データの部分に対して色づけを行う。換言すれば、仮想空間に配置されている新組立品データにおいて選択差分データが識別可能な表示形態となるように設定を行う。そのため、表示形態としては色づけに限らず、選択差分データを点滅させたり、矢印等で識別表示したりしてもよい。 In step S906, the 3D model control unit 305 of the information processing apparatus 101 colors the selected difference data portion of the new assembly data arranged in the virtual space. In other words, the setting is made so that the selected difference data can be displayed in an identifiable form in the new assembly data arranged in the virtual space. Therefore, the display mode is not limited to coloring, and the selected difference data may be blinked, or may be identified by an arrow or the like.

ステップS907では、情報処理装置101の画面生成部312は、操作画面800の表示対象ボタン803を選択できない状態の画面として生成しなおし、仮想空間に再配置する。新たに追加された差分データであるということは、設計変更前は存在しなかったということなので、表示対象ボタン803で“OLD”が選択されたとしても表示するものがない。よって、表示対象ボタン803が押下できないようにしている。ステップS907が完了したらステップS911に処理を進める。 In step S907, the screen generation unit 312 of the information processing apparatus 101 regenerates a screen in which the display target button 803 of the operation screen 800 cannot be selected, and rearranges the screen in the virtual space. The newly added difference data means that it did not exist before the design change, so even if "OLD" is selected with the display object button 803, there is nothing to be displayed. Therefore, the display target button 803 is made incapable of being pressed. After step S907 is completed, the process proceeds to step S911.

一方、ステップS908では、情報処理装置101のデータ管理部309は、選択差分データの形状変更フラグ703が“1”であるか否か、すなわち形状変更フラグ703が立っているか否かを判定する。選択差分データの形状変更フラグ703が“1”であると判定した場合には、ステップS909に処理を進める。選択差分データの形状変更フラグ703が“0”であると判定した場合には、図9BのステップS913に処理を進める。 On the other hand, in step S908, the data management unit 309 of the information processing apparatus 101 determines whether the shape change flag 703 of the selected difference data is "1", that is, whether the shape change flag 703 is set. If it is determined that the shape change flag 703 of the selected difference data is "1", the process proceeds to step S909. If it is determined that the shape change flag 703 of the selected difference data is "0", the process proceeds to step S913 in FIG. 9B.

ステップS909では、情報処理装置101のデータ管理部309は、新組立品データを構成する選択差分データを外部メモリ211から取得する。すなわち、形状変更後の選択差分データを外部メモリ211から取得するということである。新たに追加された差分データとは異なり、設計変更前の選択差分データも存在するが、ユーザは設計変更された形状について確認をしたいため、設計変更後の選択差分データを取得している。尚、どちらの選択差分データを最初に表示するのかが設定できてもよい。すなわち、設計変更前の選択差分データを初期表示する設定だった場合には、ステップS909は設計変更前の選択差分データを取得する。 In step S<b>909 , the data management unit 309 of the information processing apparatus 101 acquires from the external memory 211 the selection difference data constituting the new assembly data. That is, the selection difference data after shape change is obtained from the external memory 211 . Different from the newly added difference data, the selection difference data before the design change also exists, but the user wants to check the shape after the design change, so the selection difference data after the design change is acquired. It should be noted that it may be possible to set which selection difference data is to be displayed first. That is, if the setting is to initially display the selected difference data before the design change, step S909 acquires the selected difference data before the design change.

ステップS910では、情報処理装置101の三次元モデル制御部305は、仮想空間に配置されている新旧組立品データのうち、選択差分データの部分に対して色づけを行う(表示形態変更手段)。換言すれば、仮想空間に配置されている新旧組立品データにおいて選択差分データが識別可能な表示形態となるように設定を行う。そのため、表示形態としては色づけに限らず、選択差分データを点滅させたり、矢印等で識別表示したりしてもよい。ステップS910は、ステップS907とは異なり、旧組立品データにおいても選択差分データの表示形態を変更する。 In step S910, the 3D model control unit 305 of the information processing apparatus 101 colors the selection difference data portion of the old and new assembly data arranged in the virtual space (display form changing means). In other words, the setting is made so that the selected difference data can be identified in the new and old assembly data arranged in the virtual space. Therefore, the display mode is not limited to coloring, and the selected difference data may be blinked, or may be identified by an arrow or the like. Unlike step S907, step S910 changes the display form of the selection difference data also in the old assembly data.

ステップS911では、情報処理装置101の距離算出部314は、ユーザの仮想空間における位置から、仮想空間に配置されている新組立品データの三次元モデルに含まれる選択差分データの三次元モデルの位置までの距離を算出する(距離取得手段)。選択差分データの位置は、選択差分データを示す三次元モデルの中心点の位置とするが、これに限らない。そして、算出された距離が所定距離以上(または所定距離より大きい)であるか否かを判定する。すなわち、算出された距離が所定の条件を満たすか否かを判定するということである。仮想空間に配置された新組立品データの三次元モデルの近くにユーザが存在するのであれば、ユーザは新組立品データに含まれる選択差分データの三次元モデルを直接確認すればよい。しかし、仮想空間に配置された新組立品データの三次元モデルから離れた位置にユーザが存在するのであれば、ユーザは新組立品データに近寄って確認しなければならない。よって、こうした場合にはターゲットマーカ105に選択差分データを重畳表示させることで、近寄る手間を軽減できる。そのため、ステップS911ではこれらの距離に関する判定を行っている。所定距離以上離れていると判定した場合には、ステップS912に処理を進める。そうでない場合には、差分データ配置処理を終了し、ステップS407の次のステップに処理を進める。 In step S911, the distance calculation unit 314 of the information processing apparatus 101 calculates the position of the 3D model of the selected difference data included in the 3D model of the new assembly data arranged in the virtual space from the user's position in the virtual space. Calculate the distance to (distance acquisition means). The position of the selected differential data is the position of the central point of the three-dimensional model indicating the selected differential data, but is not limited to this. Then, it is determined whether or not the calculated distance is equal to or greater than a predetermined distance (or larger than the predetermined distance). That is, it is determined whether or not the calculated distance satisfies a predetermined condition. If the user exists near the three-dimensional model of the new assembly data placed in the virtual space, the user can directly confirm the three-dimensional model of the selected difference data included in the new assembly data. However, if the user is at a position away from the three-dimensional model of the new assembly data placed in the virtual space, the user must approach the new assembly data and check it. Therefore, in such a case, by displaying the selected difference data superimposed on the target marker 105, it is possible to reduce the trouble of approaching. Therefore, in step S911, determination regarding these distances is performed. If it is determined that the distance is greater than or equal to the predetermined distance, the process proceeds to step S912. Otherwise, the difference data arrangement process is terminated, and the process proceeds to the next step after step S407.

尚、本実施形態ではステップS911を必ず実行する形態としているが、設定によりこれを実行しない形態であってもよい。すなわち、ステップS911で算出した距離に関わらず、取得した選択差分データの三次元モデルをターゲットマーカ105に重畳表示する形態であってもよい。 In this embodiment, step S911 is always executed, but it may be set so that it is not executed. That is, regardless of the distance calculated in step S911, the three-dimensional model of the acquired selection difference data may be superimposed on the target marker 105 and displayed.

ステップS912では、情報処理装置101の仮想空間生成部304は、ステップS405で特定したターゲットマーカ105の仮想空間における位置及び姿勢で、S905またはS909で取得した選択差分データの三次元モデルを配置する(配置手段)。こうすることで、現実空間画像に仮想空間画像を重畳した際に、ターゲットマーカ105の位置に選択差分データの三次元モデルが重畳されることになる。つまり、HMD102を装着するユーザは、あたかも現実空間のターゲットマーカ105に選択差分データの三次元モデルが貼り付いているかのように見える。ステップS912の処理が完了したら、差分データ配置処理を終了し、ステップS407の次のステップに処理を進める。 In step S912, the virtual space generation unit 304 of the information processing apparatus 101 arranges the 3D model of the selection difference data acquired in S905 or S909 at the position and orientation in the virtual space of the target marker 105 specified in step S405 ( placement means). By doing so, when the virtual space image is superimposed on the physical space image, the three-dimensional model of the selected difference data is superimposed on the position of the target marker 105 . In other words, the user wearing the HMD 102 looks as if the three-dimensional model of the selected difference data is attached to the target marker 105 in the real space. When the process of step S912 is completed, the difference data arrangement process is terminated, and the process proceeds to the next step after step S407.

図11は、形状変更がなされた選択差分データがターゲットマーカ105に表示された様子を示す図である。図10に示すように、表示対象の差分データとして“部品データB”が選択されると、この“部品データB”の変更内容を示すフラグを確認する。すると、図7に示す通り、“部品データB”は形状変更フラグ703にフラグが立っているので、形状変更がなされた選択差分データであることがわかる。よって、ステップS909で設計変更後の選択差分データを外部メモリ211から取得し、この取得した選択差分データの三次元モデルをターゲットマーカ105の位置及び姿勢で仮想空間上に配置する。また、新旧組立品データの三次元モデルにおいて、選択差分データの三次元モデルの表示形態を変更し、選択差分データを他の参照先データとは識別可能にする。 FIG. 11 is a diagram showing how the selected difference data whose shape has been changed is displayed on the target marker 105. As shown in FIG. As shown in FIG. 10, when "parts data B" is selected as difference data to be displayed, the flag indicating the changed contents of "parts data B" is checked. Then, as shown in FIG. 7, since the shape change flag 703 of "component data B" is flagged, it can be understood that it is the selection difference data whose shape has been changed. Therefore, in step S909, the selected difference data after the design change is acquired from the external memory 211, and the three-dimensional model of this acquired selected difference data is placed in the virtual space at the position and orientation of the target marker 105. FIG. In addition, in the three-dimensional model of the new and old assembly data, the display form of the three-dimensional model of the selected difference data is changed so that the selected difference data can be distinguished from other reference destination data.

そして、この仮想空間を示す仮想空間画像を生成して、現実空間画像に重畳した結果が図11である。図11に示す通り、ターゲットマーカ105の位置に設計変更後の選択差分データの三次元モデル(図11では、車のホイール)が重畳表示される。また、新旧組立品データの三次元モデルも表示されており、このうち選択差分データに対応する箇所が識別表示される。図11では、設計変更前の選択差分データが1101であり、設計変更後の選択差分データが1102である。いずれも新旧組立品データの三次元モデルを構成している選択差分データの三次元モデルである。このように新旧組立品データに組み込まれた状態の選択差分データとは別に、ユーザが有するターゲットマーカ105に選択差分データの三次元モデルを表示することで、設計変更がなされた選択差分データを手軽に確認することができる。 FIG. 11 shows the result of generating a virtual space image representing this virtual space and superimposing it on the physical space image. As shown in FIG. 11, a three-dimensional model (a car wheel in FIG. 11) of the selection difference data after the design change is displayed superimposed on the position of the target marker 105 . A three-dimensional model of the new and old assembly data is also displayed, and the portion corresponding to the selected difference data is identified and displayed. In FIG. 11, 1101 is the selection difference data before the design change, and 1102 is the selection difference data after the design change. Both are 3D models of selected differential data that constitute the 3D model of old and new assembly data. In this way, by displaying a three-dimensional model of the selected difference data on the target marker 105 held by the user, separately from the selected difference data incorporated in the new and old assembly data, it is possible to easily view the selected difference data whose design has been changed. can be verified.

図9Bに説明を移す。ステップS913では、情報処理装置101の画面生成部312は、操作画面800のターゲットボタン801と表示階層ボタン802と表示対象ボタン803とを選択できない状態の画面として生成しなおし、仮想空間に再配置する。後述する位置または姿勢が変更された選択差分データと削除された選択差分データについては、設計変更後の状態を手元のターゲットマーカ105において確認する必要性があまりない。そのため後述する処理において、これらの選択差分データの三次元モデルはターゲットマーカ105に重畳させないので、操作画面800の各種ボタンも選択できないように制御する。 The description moves to FIG. 9B. In step S913, the screen generation unit 312 of the information processing apparatus 101 regenerates a screen in which the target button 801, the display hierarchy button 802, and the display target button 803 of the operation screen 800 cannot be selected, and rearranges them in the virtual space. . With regard to selection difference data whose position or orientation has been changed and deleted selection difference data, which will be described later, there is little need to check the state after the design change with the target marker 105 at hand. Therefore, in the processing to be described later, since the three-dimensional model of these selected difference data is not superimposed on the target marker 105, various buttons on the operation screen 800 are also controlled so as not to be selectable.

ステップS914では、情報処理装置101のデータ管理部309は、選択差分データの位置姿勢変更フラグ704が“1”であるか否か、すなわち位置姿勢変更フラグ704が立っているか否かを判定する。選択差分データの位置姿勢変更フラグ704が“1”であると判定した場合には、ステップS915に処理を進める。選択差分データの位置姿勢変更フラグ704が“0”であると判定した場合には、ステップS916に処理を進める。 In step S914, the data management unit 309 of the information processing apparatus 101 determines whether the position/orientation change flag 704 of the selection difference data is "1", that is, whether or not the position/orientation change flag 704 is set. If it is determined that the position/orientation change flag 704 of the selected difference data is "1", the process proceeds to step S915. If it is determined that the position/orientation change flag 704 of the selected difference data is "0", the process proceeds to step S916.

ステップS915では、情報処理装置101の三次元モデル制御部305は、仮想空間に配置されている新旧組立品データのうち、選択差分データの部分に対して色づけを行う。換言すれば、仮想空間に配置されている新旧組立品データにおいて選択差分データが識別可能な表示形態となるように設定を行う。そのため、表示形態としては色づけに限らず、選択差分データを点滅させたり、矢印等で識別表示したりしてもよい。そして、ターゲットマーカ105に、位置または姿勢が変更された選択差分データの三次元モデルを重畳表示するための処理を行わずに差分データ配置処理を終了し、ステップS407の次のステップに処理を進める。 In step S915, the 3D model control unit 305 of the information processing apparatus 101 colors the selection difference data portion of the old and new assembly data arranged in the virtual space. In other words, the setting is made so that the selected difference data can be identified in the new and old assembly data arranged in the virtual space. Therefore, the display mode is not limited to coloring, and the selected difference data may be blinked, or may be identified by an arrow or the like. Then, the difference data placement process is terminated without superimposing the three-dimensional model of the selected difference data whose position or orientation has been changed on the target marker 105, and the process proceeds to the next step after step S407. .

一方、ステップS916では、情報処理装置101のデータ管理部309は、選択差分データの削除フラグ705が“1”であるか否か、すなわち削除フラグ705が立っているか否かを判定する。選択差分データの削除フラグ705が“1”であると判定した場合には、ステップS917に処理を進める。選択差分データの削除フラグ705が“0”であると判定した場合には、差分データ配置処理を終了し、ステップS407の次のステップに処理を進める。 On the other hand, in step S916, the data management unit 309 of the information processing apparatus 101 determines whether the deletion flag 705 of the selected difference data is "1", that is, whether the deletion flag 705 is set. If it is determined that the deletion flag 705 of the selected difference data is "1", the process proceeds to step S917. If it is determined that the deletion flag 705 of the selected difference data is "0", the difference data arrangement processing is terminated, and the processing proceeds to the next step after step S407.

ステップS917では、情報処理装置101の三次元モデル制御部305は、仮想空間に配置されている旧組立品データのうち、選択差分データの部分に対して色づけを行う。換言すれば、仮想空間に配置されている旧組立品データにおいて選択差分データが識別可能な表示形態となるように設定を行う。そのため、表示形態としては色づけに限らず、選択差分データを点滅させたり、矢印等で識別表示したりしてもよい。そして、ターゲットマーカ105に、削除された選択差分データの三次元モデルを重畳表示するための処理を行わずに差分データ配置処理を終了し、ステップS407の次のステップに処理を進める。 In step S917, the 3D model control unit 305 of the information processing apparatus 101 colors the selection difference data portion of the old assembly data arranged in the virtual space. In other words, the setting is made so that the selected difference data can be identified in the old assembly data arranged in the virtual space. Therefore, the display mode is not limited to coloring, and the selected difference data may be blinked, or may be identified by an arrow or the like. Then, the difference data placement process is terminated without superimposing and displaying the 3D model of the deleted selected difference data on the target marker 105, and the process proceeds to the next step after step S407.

尚、本実施形態においては、位置または姿勢が変更された選択差分データの三次元モデルはターゲットマーカ105に重畳表示させていないが、これらも重畳表示させてもよい。 In this embodiment, the three-dimensional model of the selected difference data whose position or orientation has been changed is not displayed superimposed on the target marker 105, but these may also be displayed superimposed.

図4に説明を戻す。ステップS407の処理が完了すると、ステップS408では、情報処理装置101は、操作画面800における表示設定の内容を反映するための処理を実行する。図12に表示設定反映処理の詳細な処理の流れを示す。 Returning to FIG. When the process of step S407 is completed, in step S408, the information processing apparatus 101 executes a process of reflecting the content of the display settings on the operation screen 800. FIG. FIG. 12 shows a detailed processing flow of display setting reflection processing.

図12は、表示設定反映処理の詳細な処理の流れの一例を示すフローチャートである。以下説明する、S1201乃至S1213の各ステップは、情報処理装置101のCPU201が各機能部を動作することにより実行される処理である。 FIG. 12 is a flowchart illustrating an example of a detailed processing flow of display setting reflection processing. Each step from S1201 to S1213 described below is a process executed by the CPU 201 of the information processing apparatus 101 operating each functional unit.

ステップS1201では、情報処理装置101の操作受付部313は、仮想空間に配置された操作画面800に対する操作内容を特定する。特定方法は、ステップS901と同様である。 In step S1201, the operation reception unit 313 of the information processing apparatus 101 identifies the operation content for the operation screen 800 arranged in the virtual space. The identification method is the same as in step S901.

ステップS1202では、情報処理装置101の操作受付部313は、表示階層ボタン802に対する押下を受け付けたか否かを判定する。表示階層ボタン802に対する押下を受け付けたと判定した場合には、ステップS1203に処理を進める。そうでない場合には、ステップS1204に処理を進める。 In step S<b>1202 , the operation reception unit 313 of the information processing apparatus 101 determines whether or not pressing of the display hierarchy button 802 has been received. If it is determined that the display layer button 802 has been pressed, the process advances to step S1203. Otherwise, the process advances to step S1204.

ステップS1203では、情報処理装置101のデータ管理部309は、表示階層ボタン802に対する押下に応じて決定される、表示階層に関する情報をRAM203に保存する。表示階層ボタン802は、左右の矢印が押下されることで、表示階層の増減を行うことができる。この情報を用いて、どの階層のアセンブリデータまでを表示すればよいのか決定する。ステップS1203の処理が完了したら、ステップS1209に処理を進める。 In step S<b>1203 , the data management unit 309 of the information processing apparatus 101 saves in the RAM 203 information about the display hierarchy determined by pressing the display hierarchy button 802 . The display hierarchy button 802 can increase/decrease the display hierarchy by pressing the left and right arrows. This information is used to determine up to which hierarchy of assembly data should be displayed. After the processing of step S1203 is completed, the processing advances to step S1209.

ステップS1204では、情報処理装置101の操作受付部313は、表示対象ボタン803に対する押下を受け付けたか否かを判定する。表示対象ボタン803に対する押下を受け付けたと判定した場合には、ステップS1205に処理を進める。そうでない場合には、ステップS1208に処理を進める。 In step S1204, the operation accepting unit 313 of the information processing apparatus 101 determines whether or not pressing of the display target button 803 has been accepted. If it is determined that the display target button 803 has been pressed, the process advances to step S1205. Otherwise, the process advances to step S1208.

ステップS1205では、情報処理装置101の操作受付部313は、表示対象ボタン803のうち、“NEW”のボタンが押下されたのか、“OLD”のボタンが押下されたのかを判定する。“NEW”のボタンが押下されたと判定した場合には、ステップS1206に処理を進める。“OLD”のボタンが押下されたと判定した場合には、ステップS1207に処理を進める。 In step S1205, the operation reception unit 313 of the information processing apparatus 101 determines whether the "NEW" button or the "OLD" button among the display target buttons 803 has been pressed. If it is determined that the "NEW" button has been pressed, the process advances to step S1206. If it is determined that the "OLD" button has been pressed, the process advances to step S1207.

ステップS1206では、情報処理装置101のデータ管理部309は、新組立品データを構成する選択差分データを外部メモリ211から取得する。一方、ステップS1207では、情報処理装置101のデータ管理部309は、旧組立品データを構成する選択差分データを外部メモリ211から取得する。本実施形態では、形状変更が行われた選択差分データ以外は、表示対象ボタン803の操作が行えないように制御しているが、この制御を行わない場合には、選択差分データが存在しないために取得できない。そのため、取得できなかった場合には、表示設定反映処理を終了する形態であってもよい。 In step S<b>1206 , the data management unit 309 of the information processing apparatus 101 acquires from the external memory 211 the selection difference data forming the new assembly data. On the other hand, in step S<b>1207 , the data management unit 309 of the information processing apparatus 101 acquires from the external memory 211 selection difference data forming the old assembly data. In this embodiment, control is performed so that the display target button 803 cannot be operated except for the selected differential data whose shape has been changed. cannot be obtained. Therefore, the display setting reflecting process may be ended when the information cannot be acquired.

ステップS1208では、情報処理装置101の操作受付部313は、ターゲットボタン801に対する押下を受け付けたか否かを判定する。ターゲットボタン801に対する押下を受け付けたと判定した場合には、ステップS1209に処理を進める。そうでない場合には、表示設定反映処理を終了し、ステップS408の次のステップに処理を進める。 In step S1208, the operation accepting unit 313 of the information processing apparatus 101 determines whether or not pressing of the target button 801 has been accepted. If it is determined that pressing of the target button 801 has been accepted, the process advances to step S1209. Otherwise, the display setting reflecting process is ended, and the process proceeds to the next step after step S408.

ステップS1209では、情報処理装置101の距離算出部314は、HMD102を装着するユーザの仮想空間における位置から、仮想空間に配置されている組立品データの三次元モデルに含まれる選択差分データの三次元モデルの位置までの距離を算出する。ここでいう選択差分データとは、ターゲットマーカ105に重畳表示する選択差分データに対応する、仮想空間上の組立品データ内の選択差分データである。例えば、新たに表示対象ボタン803で“OLD”が選択された場合には、旧組立品データの三次元モデルに含まれる、取得した設計変更前の選択差分データの三次元モデルの位置が基準となる。距離の算出は前述した通りである。そして、算出された距離が所定距離以上(または所定距離より大きい)であるか否かを判定する。所定距離以上離れていると判定した場合には、ステップS1210に処理を進める。そうでない場合には、表示設定反映処理を終了し、ステップS408の次のステップに処理を進める。 In step S<b>1209 , the distance calculation unit 314 of the information processing apparatus 101 calculates the three-dimensional distance of the selected difference data included in the three-dimensional model of the assembly data arranged in the virtual space from the position in the virtual space of the user wearing the HMD 102 . Calculate the distance to the position of the model. The selection difference data referred to here is the selection difference data in the assembly data in the virtual space corresponding to the selection difference data superimposed and displayed on the target marker 105 . For example, when "OLD" is selected by the new display object button 803, the position of the acquired three-dimensional model of the selected difference data before the design change, which is included in the three-dimensional model of the old assembly data, is used as the reference. Become. Calculation of the distance is as described above. Then, it is determined whether or not the calculated distance is equal to or greater than a predetermined distance (or larger than the predetermined distance). If it is determined that the distance is greater than or equal to the predetermined distance, the process proceeds to step S1210. Otherwise, the display setting reflecting process is ended, and the process proceeds to the next step after step S408.

尚、本実施形態ではステップS1209を必ず実行する形態としているが、設定によりこれを実行しない形態であってもよい。すなわち、ステップS1209で算出した距離に関わらず、取得した選択差分データの三次元モデルをターゲットマーカ105に重畳表示する形態であってもよい。 In this embodiment, step S1209 is always executed, but it may be set so that it is not executed. That is, regardless of the distance calculated in step S1209, the three-dimensional model of the acquired selection difference data may be superimposed on the target marker 105 and displayed.

ステップS1210では、情報処理装置101の操作受付部313は、ターゲットボタン801のうち、“アセンブリ”のボタンが押下されたのか、“部品”のボタンが押下されたのかを判定する。“アセンブリ”のボタンが押下されたと判定した場合には、ステップS1211に処理を進める。“部品”のボタンが押下されたと判定した場合には、ステップS1213に処理を進める。 In step S1210, the operation reception unit 313 of the information processing apparatus 101 determines whether the "assembly" button or the "component" button among the target buttons 801 has been pressed. If it is determined that the "Assembly" button has been pressed, the process proceeds to step S1211. If it is determined that the "component" button has been pressed, the process proceeds to step S1213.

ステップS1211では、情報処理装置101のデータ管理部309は、ステップS1203で保存された階層の情報を取得し、ターゲットマーカ105に重畳する選択差分データから当該情報が示す階層の分だけ遡ったアセンブリデータを特定する。例えば、図6(a)の参照構造で説明する。ターゲットマーカ105に重畳する選択差分データが“部品データE”で、階層の情報が“1”である場合には、“部品データE”の1階層上のアセンブリデータが特定されるので、この場合は、“アセンブリデータD”が特定されることになる。 In step S1211, the data management unit 309 of the information processing apparatus 101 acquires the information of the hierarchy saved in step S1203, and obtains the assembly data obtained by going back from the selection difference data superimposed on the target marker 105 by the amount of the hierarchy indicated by the information. identify. For example, the reference structure of FIG. 6A will be described. If the selected difference data superimposed on the target marker 105 is "parts data E" and the layer information is "1", the assembly data one level above "parts data E" is identified. will specify "assembly data D".

ステップS1212では、情報処理装置101の仮想空間生成部304は、ステップS405で特定したターゲットマーカ105の仮想空間における位置及び姿勢で、ステップS1211で取得したアセンブリデータの三次元モデルを配置する。すなわち、当該アセンブリデータを構成する参照先データを取得し、この参照先データの三次元モデルを当該アセンブリデータに設定された位置及び姿勢で配置して、アセンブリの三次元モデルを生成する。そして、この三次元モデルをターゲットマーカ105の位置及び姿勢で配置すればよい。 In step S1212, the virtual space generation unit 304 of the information processing apparatus 101 arranges the three-dimensional model of the assembly data acquired in step S1211 at the position and orientation in the virtual space of the target marker 105 specified in step S405. That is, the reference destination data constituting the assembly data is acquired, and the 3D model of the reference data is arranged in the position and orientation set in the assembly data to generate the 3D model of the assembly. Then, this three-dimensional model can be arranged at the position and orientation of the target marker 105 .

一方、ステップS1213では、情報処理装置101の仮想空間生成部304は、ステップS405で特定したターゲットマーカ105の仮想空間における位置及び姿勢で、ターゲットマーカ105に重畳表示する選択差分データの三次元モデルを配置する。 On the other hand, in step S1213, the virtual space generation unit 304 of the information processing apparatus 101 creates a three-dimensional model of the selected difference data to be superimposed and displayed on the target marker 105 at the position and orientation in the virtual space of the target marker 105 specified in step S405. Deploy.

こうすることで、現実空間画像に仮想空間画像を重畳した際に、ターゲットマーカ105の位置に選択差分データまたはその親であるアセンブリの三次元モデルが重畳されることになる。ステップS1212またはS1213の処理が完了したら、表示設定反映処理を終了し、ステップS408の次のステップに処理を進める。 By doing so, when the virtual space image is superimposed on the physical space image, the selected difference data or the three-dimensional model of the assembly that is the parent of the selected difference data is superimposed on the position of the target marker 105 . When the process of step S1212 or S1213 is completed, the display setting reflection process is terminated, and the process proceeds to the next step after step S408.

図4に説明を戻す。ステップS409では、情報処理装置101の仮想空間画像取得部306は、仮想空間上に設定された視点から仮想空間を撮像することにより仮想空間画像を取得し、これをRAM203等に記憶する(仮想空間画像生成手段)。尚、HMD102の右目・左目ディスプレイ222のそれぞれに表示するために右目用の仮想空間画像と左目用の仮想空間画像の2枚を取得する。 Returning to FIG. In step S409, the virtual space image acquisition unit 306 of the information processing apparatus 101 acquires a virtual space image by capturing an image of the virtual space from a viewpoint set in the virtual space, and stores it in the RAM 203 or the like (virtual space image acquisition unit 306). image generating means). Two virtual space images for the right eye and left eye are obtained to be displayed on the right-eye and left-eye displays 222 of the HMD 102, respectively.

ステップS410では、情報処理装置101の複合現実画像生成部307は、ステップS403で取得した現実空間画像とステップS409で取得した仮想空間画像とをRAM203等から読み出す。そして、当該現実空間画像に当該仮想空間画像を重畳し、複合現実画像を生成する。生成した複合現実画像はRAM203等に記憶する。尚、前述した通り、現実空間画像と仮想空間画像とは右目用と左目用の2枚ずつがRAM203等に記憶されているので、右目用の現実空間画像に右目用の仮想空間画像を重畳し、左目用の現実空間画像に左目用の仮想空間画像を重畳する。 In step S410, the mixed reality image generation unit 307 of the information processing apparatus 101 reads the physical space image acquired in step S403 and the virtual space image acquired in step S409 from the RAM 203 or the like. Then, the virtual space image is superimposed on the real space image to generate a mixed reality image. The generated mixed reality image is stored in the RAM 203 or the like. As described above, two physical space images and two virtual space images for the right eye and two virtual space images are stored in the RAM 203 or the like. , the virtual space image for the left eye is superimposed on the real space image for the left eye.

ステップS411では、情報処理装置101の表示制御部308は、ステップS410で生成した複合現実画像をRAM203等から読み出し、ビデオコントローラ206を通じてHMD102の右目・左目ディスプレイ222に表示する。RAM203等に記憶された複合現実画像は、右目用と左目用の2枚が存在する。そのため、右目用の複合現実画像を右目・左目ディスプレイ222の右目のディスプレイに表示するよう制御し、左目用の複合現実画像を右目・左目ディスプレイ222の左目のディスプレイに表示するよう制御する。 In step S<b>411 , the display control unit 308 of the information processing apparatus 101 reads the mixed reality image generated in step S<b>410 from the RAM 203 or the like, and displays it on the right-eye/left-eye display 222 of the HMD 102 via the video controller 206 . There are two mixed reality images stored in the RAM 203 or the like, one for the right eye and one for the left eye. Therefore, the mixed reality image for the right eye is controlled to be displayed on the right eye display of the right/left eye display 222, and the mixed reality image for the left eye is controlled to be displayed on the left eye display of the right/left eye display 222.例文帳に追加

ステップS412では、情報処理装置101の操作受付部313は、HMD102を装着しているユーザに複合現実感を提示する処理の終了指示があったか否かを判定する。例えば、前述したステップS403乃至ステップS411の処理を実行する情報処理装置101のアプリケーションの停止指示や終了指示があったか否かを判定する。終了指示があったと判定した場合には、本一連の処理を終了する。終了指示があったと判定しなかった場合、すなわち終了指示がなかった場合にはステップS403に処理を戻し、終了指示があるまでステップS403乃至ステップS412の処理を繰り返す。 In step S412, the operation reception unit 313 of the information processing apparatus 101 determines whether or not an instruction to end the process of presenting mixed reality to the user wearing the HMD 102 has been issued. For example, it is determined whether or not there is an instruction to stop or terminate the application of the information processing apparatus 101 that executes the processes of steps S403 to S411 described above. If it is determined that there is an end instruction, this series of processes is terminated. If it is not determined that there is an end instruction, that is, if there is no end instruction, the process returns to step S403, and the processes from step S403 to step S412 are repeated until an end instruction is given.

図13は、形状変更前の選択差分データがターゲットマーカ105に重畳表示された様子を示す図である。ターゲットマーカ105によって表示対象ボタン803の“OLD”が選択されると、形状変更前の選択差分データが取得され、ターゲットマーカ105に重畳表示される。1301は、図11に示す1103の形状変更後の選択差分データが、形状変更後の選択差分データに入れ替わった様子を示している。このように、設計変更前後の選択差分データを切り替えて表示させることができる。 FIG. 13 is a diagram showing a state in which the selection difference data before shape change is superimposed and displayed on the target marker 105. As shown in FIG. When "OLD" of the display object button 803 is selected by the target marker 105, the selection difference data before the shape change is obtained and superimposed on the target marker 105 and displayed. 1301 shows how the selection difference data after the shape change of 1103 shown in FIG. 11 is replaced with the selection difference data after the shape change. In this way, the selected difference data before and after the design change can be switched and displayed.

図14乃至図16は、形状変更以外の設計変更がなされた選択差分データの様子を示す。図14は、新たに追加された差分データが選択された場合を示している。新組立品データの1402に示すように、新しく差分データ(図14では車のウィング)が追加されていることがわかる。そのため、この選択差分データを新組立品データにおいて識別表示する。また、1401に示すように、ターゲットマーカ105に選択差分データの三次元モデルを重畳表示する。 FIGS. 14 to 16 show the selection difference data after design changes other than the shape change. FIG. 14 shows a case where newly added differential data is selected. As shown in 1402 of the new assembly data, it can be seen that new difference data (car wing in FIG. 14) has been added. Therefore, this selection difference data is identified and displayed in the new assembly data. In addition, as indicated by 1401, the three-dimensional model of the selected difference data is superimposed on the target marker 105 and displayed.

図15は、位置または姿勢が変更された差分データが選択された場合を示している。選択差分データの三次元モデル(図15では車のドアミラー)は、旧組立品データにおける1501と新組立品データにおける1502とに示すように、位置が変更されている。そのため、この選択差分データを新旧組立品データにおいて識別表示する。また、位置または姿勢が変更された選択差分データの三次元モデルはターゲットマーカ105には重畳表示しないので、図15においても重畳表示されていないことがわかる。 FIG. 15 shows a case where difference data with changed position or orientation is selected. The three-dimensional model of the selected difference data (the door mirror of the car in FIG. 15) has been relocated as indicated by 1501 in the old assembly data and 1502 in the new assembly data. Therefore, this selected difference data is identified and displayed in the new and old assembly data. Also, since the three-dimensional model of the selected difference data whose position or orientation has been changed is not superimposed on the target marker 105, it can be seen that it is not superimposed on the target marker 105 either.

図16は、削除された差分データが選択された場合を示している。旧組立品データの1601に示すように、選択差分データ(図16では車のマフラー)は旧組立品データの三次元モデルには存在していたが、新組立品データからは削除されている。そのため、旧組立品データにおいて選択差分データを識別表示する。また、削除された選択差分データの三次元モデルはターゲットマーカ105には重畳表示しないので、図16においても重畳表示されていないことがわかる。 FIG. 16 shows a case where deleted differential data is selected. As indicated by 1601 in the old assembly data, the selection difference data (car muffler in FIG. 16) existed in the three-dimensional model of the old assembly data, but has been deleted from the new assembly data. Therefore, the selected difference data is identified and displayed in the old assembly data. Also, since the three-dimensional model of the deleted selection difference data is not superimposed on the target marker 105, it can be seen that it is not superimposed on the target marker 105 either.

以上説明したように、設計変更された部品データが構成する三次元モデルを仮想空間上で操作することなく、当該部品データを仮想空間上で閲覧可能となる。 As described above, the part data can be browsed in the virtual space without operating the three-dimensional model configured by the part data whose design has been changed in the virtual space.

本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。 The present invention can also be embodied as, for example, a system, device, method, program, storage medium, etc. Specifically, it may be applied to a system composed of a plurality of devices, or It may be applied to an apparatus consisting of one device.

なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。 It should be noted that the present invention includes those that directly or remotely supply a software program that implements the functions of the above-described embodiments to a system or apparatus. The present invention also includes a case where the computer of the system or apparatus reads and executes the supplied program code.

したがって、本発明の機能処理をコンピュータで実現(実行可能と)するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。 Therefore, the program code itself installed in the computer to implement (execute) the functional processing of the present invention also implements the present invention. That is, the present invention also includes the computer program itself for realizing the functional processing of the present invention.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。 In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, or the like.

プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM,DVD-R)などもある。 Recording media for supplying programs include, for example, flexible disks, hard disks, optical disks, magneto-optical disks, MOs, CD-ROMs, CD-Rs, and CD-RWs. There are also magnetic tapes, non-volatile memory cards, ROMs, and DVDs (DVD-ROM, DVD-R).

その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。 Another method of supplying the program is to connect to a home page on the Internet using a browser on the client computer. It can also be supplied by downloading the computer program itself of the present invention or a compressed file including an automatic installation function from the home page to a recording medium such as a hard disk.

また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。 It is also possible to divide the program code constituting the program of the present invention into a plurality of files and download each file from a different home page. In other words, the present invention also includes a WWW server that allows a plurality of users to download program files for implementing the functional processing of the present invention on a computer.

また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. Let Then, by using the downloaded key information, the encrypted program can be executed and installed in the computer.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 Also, the functions of the above-described embodiments are realized by the computer executing the read program. In addition, based on the instructions of the program, the OS or the like running on the computer performs part or all of the actual processing, and the functions of the above-described embodiments can also be realized by the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。 Further, the program read from the recording medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. After that, based on the instruction of the program, the CPU or the like provided in the function expansion board or function expansion unit performs part or all of the actual processing, and the processing also realizes the functions of the above-described embodiments.

なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 It should be noted that the above-described embodiments merely show specific examples for carrying out the present invention, and the technical scope of the present invention should not be construed to be limited by these. That is, the present invention can be embodied in various forms without departing from its technical concept or main features.

101 情報処理装置
102 HMD
103 オプティカルマーカ
104 赤外線カメラ
105 ターゲットマーカ

101 information processing device 102 HMD
103 optical marker 104 infrared camera 105 target marker

Claims (13)

第一の三次元モデルと、第二の三次元モデルとで差がある箇所を特定する特定手段と、
仮想空間上の、前記第一の三次元モデルと前記第二の三次元モデルとは独立した位置であって、現実空間における移動可能なターゲットに対応する位置に、前記差がある箇所の三次元モデルである第三の三次元モデルを表示すべく制御する表示制御手段と、
を備えることを特徴とする情報処理装置。
identifying means for identifying a portion where there is a difference between the first three-dimensional model and the second three-dimensional model;
The first three-dimensional model and the second three-dimensional model are independent positions in the virtual space, and the three-dimensional part where the difference exists in the position corresponding to the movable target in the real space display control means for controlling display of a third three-dimensional model, which is a model;
An information processing device comprising:
前記表示制御手段は、
前記第三の三次元モデルを表示するとともに、
前記第一の三次元モデルと前記第二の三次元モデルとの少なくとも一方を表示すべく制御することを特徴とする請求項1に記載の情報処理装置。
The display control means is
Displaying the third three-dimensional model,
2. The information processing apparatus according to claim 1, wherein control is performed to display at least one of the first three-dimensional model and the second three-dimensional model.
前記表示制御手段は、
前記第一の三次元モデルと前記第二の三次元モデルとの少なくとも一方を表示した仮想空間上の前記独立した位置に前記第三の三次元モデルを表示すべく制御することを特徴とする請求項2に記載の情報処理装置。
The display control means is
The third three-dimensional model is controlled to be displayed at the independent position in the virtual space where at least one of the first three-dimensional model and the second three-dimensional model is displayed. Item 3. The information processing apparatus according to item 2.
前記表示制御手段は、
前記第一の三次元モデルと前記第二の三次元モデルの双方を表示した仮想空間上の前記独立した位置に前記第三の三次元モデルを表示すべく制御することを特徴とする請求項2に記載の情報処理装置。
The display control means is
2. Control is performed to display the third three-dimensional model at the independent position in the virtual space where both the first three-dimensional model and the second three-dimensional model are displayed. The information processing device according to .
前記表示制御手段は、
前記第三の三次元モデルを表示するとともに、
前記特定手段で特定された前記差がある箇所を識別表示した前記第一の三次元モデルと、
前記特定手段で特定された前記差がある箇所を識別表示した前記第二の三次元モデルと、
の少なくとも一方を表示すべく制御することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
The display control means is
Displaying the third three-dimensional model,
the first three-dimensional model that identifies and displays the location with the difference identified by the identifying means;
the second three-dimensional model that identifies and displays the location with the difference identified by the identifying means;
5. The information processing apparatus according to any one of claims 1 to 4, wherein control is performed so as to display at least one of .
前記第一の三次元モデルおよび前記第二の三次元モデルは、複数の部品から構成される三次元モデルであって
前記特定手段は、前記第一の三次元モデルと前記第二の三次元モデルとで差がある部品を特定し、
前記表示制御手段は、仮想空間上において、前記第三の三次元モデルとして、前記特定手段により特定された前記差がある部品の三次元モデルを表示すべく制御することを特徴とする請求項1または2に記載の情報処理装置。
The first three-dimensional model and the second three-dimensional model are three-dimensional models composed of a plurality of parts, and the identifying means comprises the first three-dimensional model and the second three-dimensional model. Identify the parts that differ between
2. The display control means performs control to display the three-dimensional model of the part having the difference specified by the specifying means as the third three-dimensional model in the virtual space. 3. The information processing device according to 2.
前記差がある箇所とは、前記第一の三次元モデルと前記第二の三次元モデルとの間で設計変更がなされた箇所であることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。 7. The portion having the difference is a portion where a design change has been made between the first three-dimensional model and the second three-dimensional model. The information processing device according to . 前記差がある箇所とは、前記第一の三次元モデルと前記第二の三次元モデルの一方にのみ存在す部位であることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。 8. The portion according to any one of claims 1 to 7, wherein the portion having the difference is a portion that exists only in one of the first three-dimensional model and the second three-dimensional model. information processing equipment. 前記差がある箇所とは、前記第一の三次元モデルと前記第二の三次元モデルとで位置姿勢が異なる部位であることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。 8. The method according to any one of claims 1 to 7, wherein the location having the difference is a portion having a different position and orientation between the first three-dimensional model and the second three-dimensional model. Information processing equipment. 前記ターゲットに対応する位置は、ユーザが手に持つことが出来る現実物体の位置に連動することを特徴とする請求項1に記載の情報処理装置。2. The information processing apparatus according to claim 1, wherein the position corresponding to the target is associated with the position of a physical object that the user can hold. 前記ターゲットに対応する位置は、マーカーで示されることを特徴とする請求項10に記載の情報処理装置。11. The information processing apparatus according to claim 10, wherein the position corresponding to said target is indicated by a marker. 情報処理装置の制御方法であって、
第一の三次元モデルと、第二の三次元モデルとで差がある箇所を特定する特定ステップと、
仮想空間上の、前記第一の三次元モデルと前記第二の三次元モデルとは独立した位置であって、現実空間における移動可能なターゲットに対応する位置に、前記差がある箇所の三次元モデルである第三の三次元モデルを表示すべく制御する表示制御ステップと、
を含む情報処理装置の制御方法。
A control method for an information processing device,
an identifying step of identifying a portion where there is a difference between the first three-dimensional model and the second three-dimensional model;
The first three-dimensional model and the second three-dimensional model are independent positions in the virtual space, and the three-dimensional part where the difference exists in the position corresponding to the movable target in the real space a display control step for controlling to display a third three-dimensional model, which is a model;
A control method for an information processing device including
コンピュータを、請求項1乃至1のいずれか1項に記載された情報処理装置の各手段として機能させることを特徴とするプログラム。
A program that causes a computer to function as each means of the information processing apparatus according to any one of claims 1 to 11.
JP2021053076A 2016-06-30 2021-03-26 VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM Active JP7208549B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021053076A JP7208549B2 (en) 2016-06-30 2021-03-26 VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016130476A JP6860776B2 (en) 2016-06-30 2016-06-30 Virtual space controller, its control method, and program
JP2021053076A JP7208549B2 (en) 2016-06-30 2021-03-26 VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016130476A Division JP6860776B2 (en) 2016-06-30 2016-06-30 Virtual space controller, its control method, and program

Publications (3)

Publication Number Publication Date
JP2021108158A JP2021108158A (en) 2021-07-29
JP2021108158A5 JP2021108158A5 (en) 2021-10-14
JP7208549B2 true JP7208549B2 (en) 2023-01-19

Family

ID=60946316

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016130476A Active JP6860776B2 (en) 2016-06-30 2016-06-30 Virtual space controller, its control method, and program
JP2021053076A Active JP7208549B2 (en) 2016-06-30 2021-03-26 VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016130476A Active JP6860776B2 (en) 2016-06-30 2016-06-30 Virtual space controller, its control method, and program

Country Status (1)

Country Link
JP (2) JP6860776B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7095379B2 (en) * 2018-04-23 2022-07-05 富士フイルムビジネスイノベーション株式会社 Information processing equipment and programs
DE102018207987A1 (en) * 2018-05-22 2019-11-28 Siemens Aktiengesellschaft Method and system for displaying a 3D model
JP7275484B2 (en) * 2018-07-05 2023-05-18 凸版印刷株式会社 Object Placement Support System, Object Placement Support Method and Program
JP7443014B2 (en) * 2019-10-08 2024-03-05 大豊精機株式会社 robot arm testing equipment
JP7671859B2 (en) * 2021-11-01 2025-05-02 株式会社Nttドコモ Contents providing device
JP7311696B1 (en) 2022-10-18 2023-07-19 川田テクノシステム株式会社 MULTI-SCREEN DISPLAY SYSTEM, MULTI-SCREEN DISPLAY DEVICE, AND MULTI-SCREEN DISPLAY PROGRAM
JP7544909B1 (en) * 2023-03-31 2024-09-03 東京貿易テクノシステム株式会社 Image generating device, image generating program and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008176425A (en) 2007-01-16 2008-07-31 Ricoh Co Ltd Parts catalog creation system, parts catalog creation method, program and recording medium
JP2009070130A (en) 2007-09-13 2009-04-02 Ricoh Co Ltd Parts catalog generation device, parts catalog generation method, parts catalog generation program, and recording medium
JP2011141648A (en) 2010-01-06 2011-07-21 Fujitsu Ltd Design assistance device and design assistance program
WO2014091837A1 (en) 2012-12-11 2014-06-19 株式会社日立製作所 3d-model generation device, 3d-model generation method, and 3d-model generation program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004178222A (en) * 2002-11-26 2004-06-24 Matsushita Electric Works Ltd Method for evaluating assemblability and assemblability evaluation supporting device using the method
JP6242709B2 (en) * 2014-02-17 2017-12-06 株式会社日立製作所 Assembly sequence generation apparatus and assembly sequence generation method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008176425A (en) 2007-01-16 2008-07-31 Ricoh Co Ltd Parts catalog creation system, parts catalog creation method, program and recording medium
JP2009070130A (en) 2007-09-13 2009-04-02 Ricoh Co Ltd Parts catalog generation device, parts catalog generation method, parts catalog generation program, and recording medium
JP2011141648A (en) 2010-01-06 2011-07-21 Fujitsu Ltd Design assistance device and design assistance program
WO2014091837A1 (en) 2012-12-11 2014-06-19 株式会社日立製作所 3d-model generation device, 3d-model generation method, and 3d-model generation program

Also Published As

Publication number Publication date
JP6860776B2 (en) 2021-04-21
JP2021108158A (en) 2021-07-29
JP2018005499A (en) 2018-01-11

Similar Documents

Publication Publication Date Title
JP7208549B2 (en) VIRTUAL SPACE CONTROL DEVICE, CONTROL METHOD THEREOF, AND PROGRAM
US20230186199A1 (en) Project management system with client interaction
US11164381B2 (en) Clothing model generation and display system
CN112926428B (en) Method and system and storage medium for training object detection algorithms using synthetic images
US9734634B1 (en) Augmented reality product preview
US6025847A (en) Three dimensional modeling system with visual feedback
US8264488B2 (en) Information processing apparatus, information processing method, and program
KR102130709B1 (en) Method for providing digitial fashion based custom clothing making service using product preview
JP6677890B2 (en) Information processing system, its control method and program, and information processing apparatus, its control method and program
JP6920057B2 (en) Image processing equipment, image processing method, computer program
US11941763B2 (en) Viewing system, model creation apparatus, and control method
KR102031647B1 (en) System and Method for generating 3-Dimensional composited image of goods and packing box
KR101643917B1 (en) The smart fitting apparatus based real image
JP6357412B2 (en) Information processing apparatus, information processing system, information processing method, and program
JP6011567B2 (en) Information processing apparatus, control method thereof, and program
JP6152888B2 (en) Information processing apparatus, control method and program thereof, and information processing system, control method and program thereof
JP2017084215A (en) Information processing system, control method thereof, and program
JP2020074108A (en) Information processing system, control method thereof, and program
JP2019032713A5 (en)
EP3422294B1 (en) Traversal selection of components for a geometric model
JP6372131B2 (en) Information processing apparatus, control method thereof, and program
JP2020013390A (en) Information processing apparatus, information processing program, and information processing method
JP2018018362A (en) Virtual space control device, control method thereof, and program
JP6638326B2 (en) Information processing system, control method thereof, and program
JP2018109831A (en) Information processing system, control method thereof, and program, as well as information processing device, control method thereof, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210831

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221219

R151 Written notification of patent or utility model registration

Ref document number: 7208549

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250