JP5248958B2 - Three-dimensional position designation device, three-dimensional position designation program, voxel modeling device, and voxel modeling program - Google Patents
Three-dimensional position designation device, three-dimensional position designation program, voxel modeling device, and voxel modeling program Download PDFInfo
- Publication number
- JP5248958B2 JP5248958B2 JP2008231398A JP2008231398A JP5248958B2 JP 5248958 B2 JP5248958 B2 JP 5248958B2 JP 2008231398 A JP2008231398 A JP 2008231398A JP 2008231398 A JP2008231398 A JP 2008231398A JP 5248958 B2 JP5248958 B2 JP 5248958B2
- Authority
- JP
- Japan
- Prior art keywords
- dimensional
- voxel
- dimensional position
- space
- carpet
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
- Position Input By Displaying (AREA)
Description
本発明は、3次元空間における3次元位置を指定するための3次元位置指定装置、3次元位置指定方法および3次元位置指定用プログラム、ならびに3次元形状をボクセルの集合として表現するためのボクセルモデリング装置、ボクセルモデリング方法およびボクセルモデリング用プログラムに関する。 The present invention relates to a three-dimensional position specifying device for specifying a three-dimensional position in a three-dimensional space, a three-dimensional position specifying method, a program for specifying a three-dimensional position, and voxel modeling for expressing a three-dimensional shape as a set of voxels. The present invention relates to a device, a voxel modeling method, and a voxel modeling program.
コンピュータの演算性能やグラフィック性能の向上に伴い、3次元CAD(Computer Aided Design)を用いた設計や3次元CG(Computer Graphics)等が広く普及しており、近年では、3次元表示空間における情報の表示や操作を可能とする3次元CGをベースとした3次元GUI(Graphical User Interface)等も提案されている。そして、従来から、DFD(Depth-fused 3D)表示装置に表現された3次元空間内の所望の点をポインティングする技術として、検出面上を入力ペンのペン先で指し示したときの指示位置の2次元座標と、入力ペンのペン先にかかる圧力である筆圧もしくは指示し続けた時間または入力ペンが備える操作手段の操作とに基づいて3次元空間内の所望の点をポインティングする手法や、入力ペンの筆圧もしくは指示し続けた時間または入力ペンが備える操作手段の操作に応じて、DFD表示装置に表現された3次元空間に表示させる3次元ポインタの奥行き方向の座標を変化させる手法が提案されている(例えば、特許文献1参照)。
上述のように、3次元空間における3次元座標や3次元形状を取り扱うためには、2次元空間におけるX軸方向およびY軸方向に加えてZ軸方向(奥行方向)における絶対座標または相対座標を指定することが必要となる。しかしながら、2次元空間すなわち2次元ディスプレイ上で奥行方向の位置を正確に指定することは容易ではない。また、3次元空間における3次元座標等の取り扱いに際して、DFD表示装置といった3次元ディスプレイや特殊な入力装置を用いるのは、コスト面で問題がある。 As described above, in order to handle three-dimensional coordinates and three-dimensional shapes in the three-dimensional space, in addition to the X-axis direction and the Y-axis direction in the two-dimensional space, absolute coordinates or relative coordinates in the Z-axis direction (depth direction) are set. It is necessary to specify. However, it is not easy to accurately specify the position in the depth direction on a two-dimensional space, that is, a two-dimensional display. Further, when handling three-dimensional coordinates or the like in a three-dimensional space, using a three-dimensional display such as a DFD display device or a special input device is problematic in terms of cost.
そこで、本発明は、2次元空間上での2次元位置の指定により3次元空間における3次元位置を容易かつ精度よく指定可能とすることを目的の一つとする。また、本発明は、2次元空間上での2次元位置の指定により3次元形状を容易に表現可能とすることを目的の一つとする。 Therefore, an object of the present invention is to make it possible to easily and accurately specify a three-dimensional position in a three-dimensional space by specifying a two-dimensional position in the two-dimensional space. Another object of the present invention is to easily represent a three-dimensional shape by specifying a two-dimensional position in a two-dimensional space.
本発明による3次元位置指定装置、3次元位置指定方法および3次元位置指定用プログラム、ならびにボクセルモデリング装置、ボクセルモデリング方法およびボクセルモデリング用プログラムは、上述の目的を達成するために以下の手段を採っている。 The three-dimensional position designation device, the three-dimensional position designation method, the three-dimensional position designation program, the voxel modeling apparatus, the voxel modeling method, and the voxel modeling program according to the present invention employ the following means to achieve the above-described object. ing.
本発明による3次元位置指定装置は、
3次元空間における3次元位置を指定するための3次元位置指定装置であって、
2次元空間上で2次元位置を指定するための2次元位置指定手段と、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記2次元位置指定手段を用いて指定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置に基づいて前記3次元空間における3次元位置を取得する演算手段と、
を備えるものである。
The three-dimensional position designation device according to the present invention is:
A three-dimensional position designation device for designating a three-dimensional position in a three-dimensional space,
Two-dimensional position specifying means for specifying a two-dimensional position in a two-dimensional space;
A two-dimensional position designated by the two-dimensional position designation means of the Nth stage Sherpinski carpet having an array of 8 N squares (where “N” is an integer equal to or greater than 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region Computing means for obtaining a three-dimensional position in the three-dimensional space based on a position of the voxel in the voxel space;
Is provided.
本発明者らは、3次元空間における3次元位置を容易かつ精度よく指定可能とするために鋭意研究を行い、その結果、フラクタルの一つであるシェルピンスキー・カーペットと、複数のボクセルの集合であるボクセル空間とに着目するに至った。シェルピンスキー・カーペットは、1つの正方形領域を9等分すると共に中央の正方形領域をブランク領域として8個の正方形領域の配列を発生させる処理(フラクタル展開)をブランク領域である正方形領域を除いた正方形領域について順次適用することにより得られる自己相似性をもったフラクタルである。すなわち、イニシエータである1個(80個)の正方形領域に対して上記フラクタル展開(第1段階のフラクタル展開)が施されると1個のブランク領域と8個(81個)の正方形領域の配列とが発生し、ブランク領域を除く8個の正方形領域それぞれに対して上記フラクタル展開(第2段階のフラクタル展開)が施されると64個(82個)の正方形領域の配列(および新たな81個のブランク領域)が発生し、更に、ブランク領域を除く64個の正方形領域それぞれに対して上記フラクタル展開(第3段階のフラクタル展開)が施されると512個(83個)の正方形領域の配列(および新たな82個のブランク領域)が発生することになる。つまり、1つの正方形領域を9等分すると共に中央の正方形領域をブランク領域として8個の正方形領域の配列を発生させるフラクタル展開がN回実行されると、自己相似性をもった8N個の正方形領域の配列とΣ8n-1個(1≦n≦N)のブランク領域とを有するシェルピンスキー・カーペットが得られることになる。本明細書では、このように8N個の正方形領域の配列とΣ8n-1個(1≦n≦N)のブランク領域とを有するシェルピンスキー・カーペットを「第N段階のシェルピンスキー・カーペット」という。また、イニシエータである1個(80個)の正方形領域を「第0段階のシェルピンスキー・カーペット」という。一方、ボクセル空間について考察すると、理論上の最小単位である1個(20×20×20=80個)のボクセルを3次元に分割すればボクセルの総数は21×21×21=81個となり、これら8個のボクセルのそれぞれを3次元に分割すればボクセルの総数は22×22×22=82個となり、更に、これら64個のボクセルのそれぞれを3次元に分割すればボクセルの総数は23×23×23=83個となる。つまり、ボクセルの3次元における分割(高解像度化)をN回実行すれば、ボリュームデータにおけるボクセルの総数は2N×2N×2N個=8N個となり、これは、第N段階のシェルピンスキー・カーペットにおける正方形領域の総数と一致する。
The present inventors have intensively studied to make it possible to specify a three-dimensional position in a three-dimensional space easily and accurately, and as a result, a Sherpinsky carpet, which is one of fractals, and a set of a plurality of voxels. I came to pay attention to the voxel space. The Sherpinski carpet divides one square area into nine equal parts, and the process of generating an array of eight square areas using the central square area as a blank area (fractal expansion) excludes square areas that are blank areas. It is a fractal with self-similarity obtained by sequentially applying to a square region. That is, the square area of 1 is the initiator (8 0) the fractal expand one blank area and 8 the (first stage of the fractal development) is performed on the square area (8 1) sequence is generated in eight When the fractal deployed for each square area (second stage of the fractal development) is performed 64 (8 2) sequences of the square area of excluding the blank area (and one blank area new 8) is generated, further, when the fractal expansion for each 64 square area except for the blank region (third stage of the fractal development) is performed 512 (8 3 ) sequence of the square area (and new 8 two blank areas) will occur in the. In other words, when fractal expansion is performed N times by dividing a square area into 9 equal parts and generating an array of 8 square areas with the central square area as a blank area, 8 N pieces having self-similarity A Sherpinsky carpet having an array of square areas and Σ8 n−1 (1 ≦ n ≦ N) blank areas is obtained. In this specification, a Shelpinsky carpet having an array of 8 N square regions and Σ8 n-1 (1 ≦ n ≦ N) blank regions is referred to as “the Nth stage Sherpinski Carpet. In addition, one is an initiator of the square area of (8 0) referred to as "the 0-th stage of the Sierpinski Carpet". On the other hand, considering the voxel space, one (2 0 × 2 0 × 2 0 = 8 0 pieces) Total number of voxels if divided into three-
このように、本発明者らは、上記シェルピンスキー・カーペットの特性と、複数のボクセルからなるボクセル空間の特性との共通性を見出し、その共通性を利用して3次元空間における3次元位置を指定することとしている。すなわち、本発明による3次元位置指定装置は、8N個の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの2次元空間上で指定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、正方形領域に対応付けられた1個のボクセルのボクセル空間における位置に基づいて3次元空間における3次元位置を取得するのである。これにより、2次元空間(例えば2次元座標系)において2次元位置(例えば2次元座標)を指定すれば、奥行きを指定しなくても、単純な配置計算により2次元空間において指定された2次元位置に対応する1個のボクセルのボクセル空間における位置が取得され、当該1個のボクセルのボクセル空間における位置から3次元空間(例えば3次元座標系)における3次元位置(例えば3次元座標)が取得されることになる。従って、本発明による3次元位置指定装置によれば、2次元空間上での2次元位置の指定により、演算負荷を軽減しながら3次元空間における3次元位置を容易かつ精度よく指定することが可能となる。なお、「ボクセル」は、基本的には、いわゆるボクセル値をもたない単なる立方体等であればよい。ただし、ボクセルにボクセル値が付与されてもよく、この場合には、2次元空間において2次元位置を指定することにより、当該2次元位置に対応した3次元位置にあるボクセル値にアクセスすることが可能となる。また、第N段階のシェルピンスキー・カーペットは、2次元空間に直接対応付けられてもよく、所定の変換を介して間接的に対応付けられてもよい。 Thus, the present inventors have found commonality between the characteristics of the Shelpinsky carpet and the characteristics of a voxel space composed of a plurality of voxels, and using the commonality, the three-dimensional position in the three-dimensional space is found. Is to be specified. That is, the three-dimensional position specifying apparatus according to the present invention predetermines a square area corresponding to the two-dimensional position specified on the two-dimensional space of the Nth stage Sherpinski carpet having an array of 8 N square areas. Is associated with any one of 2 N × 2 N × 2 N voxels constituting the voxel space in accordance with the correspondence rule of and based on the position in the voxel space of one voxel associated with the square region A three-dimensional position in the three-dimensional space is acquired. Thus, if a two-dimensional position (for example, a two-dimensional coordinate) is specified in a two-dimensional space (for example, a two-dimensional coordinate system), the two-dimensional specified in the two-dimensional space by a simple arrangement calculation without specifying a depth. A position in the voxel space of one voxel corresponding to the position is acquired, and a three-dimensional position (for example, three-dimensional coordinates) in a three-dimensional space (for example, a three-dimensional coordinate system) is acquired from the position in the voxel space of the one voxel. Will be. Therefore, according to the three-dimensional position specifying apparatus according to the present invention, it is possible to easily and accurately specify a three-dimensional position in the three-dimensional space while reducing the calculation load by specifying the two-dimensional position in the two-dimensional space. It becomes. The “voxel” may basically be a simple cube having no so-called voxel value. However, a voxel value may be given to the voxel. In this case, by specifying a two-dimensional position in the two-dimensional space, a voxel value at a three-dimensional position corresponding to the two-dimensional position can be accessed. It becomes possible. Further, the N-th stage Sherpinski carpet may be directly associated with the two-dimensional space, or indirectly associated with a predetermined transformation.
また、前記対応規則は、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域と1つのボリュームを構成する2×2×2個のボクセルとの対応関係を規定するものであってもよく、前記演算手段は、第n段階(ただし、“n”は1≦n≦Nを満たす整数である。)のシェルピンスキー・カーペットの前記指定された2次元位置に対応する正方形領域の第n−1段階のシェルピンスキー・カーペットの前記指定された2次元位置に対応する正方形領域における位置と前記対応規則とに基づいて2n×2n×2n個のボクセルからなるボクセル空間内で前記指定された2次元位置に対応するボクセルの2n-1×2n-1×2n-1個のボクセルからなるボクセル空間内で前記指定された2次元位置に対応するボクセルにおける位置を取得し、取得したn個のボクセルの位置に基づいて前記3次元空間における3次元位置を取得するものであってもよい。このように、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域と1つのボリュームを構成する2×2×2個のボクセルとの対応関係を予め定めておけば、フラクタルであるシェルピンスキー・カーペットの自己相似性を利用した繰り返し計算を実行することで、より少ない演算負荷で高速に3次元空間における3次元位置を指定することが可能となる。 The correspondence rule defines the correspondence between the eight square areas constituting the first Shelpinski carpet and the 2 × 2 × 2 voxels constituting one volume. Alternatively, the computing means may calculate a square area corresponding to the designated two-dimensional position of the Sherpinsky carpet in the nth stage (where “n” is an integer satisfying 1 ≦ n ≦ N). In a voxel space composed of 2 n × 2 n × 2 n voxels based on the position in the square area corresponding to the designated two-dimensional position of the n-1th Sherpinski carpet and the corresponding rule. The position in the voxel corresponding to the specified two-dimensional position in the voxel space composed of 2 n-1 × 2 n-1 × 2 n-1 voxels of the voxel corresponding to the specified two-dimensional position Acquired, A three-dimensional position in the three-dimensional space may be acquired based on the acquired positions of n voxels. As described above, if the correspondence relationship between the eight square regions constituting the first stage Sherpinski carpet and the 2 × 2 × 2 voxels constituting one volume is determined in advance, it is a fractal. By performing iterative calculation using the self-similarity of the Sherpinski carpet, it is possible to designate a three-dimensional position in a three-dimensional space at a high speed with a smaller calculation load.
更に、前記対応規則は、前記第1段階のシェルピンスキー・カーペットの8個の正方形領域をこれらに対して定められた一筆書きの経路上での順番に従って2×2×2個のボクセルに対して一筆書きの経路を辿るように割り当てる規則であってもよい。これにより、第N段階のシェルピンスキー・カーペットにおける少なくとも2つの正方形領域の隣接関係をボクセル空間(3次元空間)において保持することが可能となり、2次元空間での2次元位置の近接関係を3次元空間においても比較的良好に保つことができる。 Further, the correspondence rule is that the eight square areas of the first-stage Sherpinski carpet are assigned to 2 × 2 × 2 voxels according to the order of the one-stroke path defined for them. The rule may be assigned so as to follow a one-stroke path. As a result, the adjacency relationship between at least two square regions in the N-th stage Sherpinski carpet can be maintained in the voxel space (three-dimensional space), and the proximity relationship of the two-dimensional positions in the two-dimensional space is 3. It can be kept relatively good even in a dimensional space.
また、前記演算手段は、前記3次元空間に複数の3次元位置が指定されているときに、前記複数の3次元位置を通る直線または折れ線を設定可能なものであってもよい。更に、前記演算手段は、前記3次元空間に3箇所以上の3次元位置が指定されているときに、前記3箇所以上の3次元位置から定まる曲線を設定可能なものであってもよい。また、前記演算手段は、前記3次元空間に3箇所以上の3次元位置が指定されているときに、前記3箇所以上の3次元位置から定まる平面を設定可能なものであってもよい。更に、前記演算手段は、前記3次元空間に4箇所以上の3次元位置が指定されているときに、前記4箇所以上の3次元位置から定まる曲面を設定可能なものであってもよい。また、前記演算手段は、前記3次元空間に2箇所の3次元位置が指定されているときに、前記2箇所の3次元位置に基づく円または球を設定可能なものであってもよい。これにより、本発明による3次元位置指定装置を用いて様々な3次元形状を描画したり、デザインしたりすることが可能となる。 Further, the calculation means may be capable of setting a straight line or a broken line passing through the plurality of three-dimensional positions when a plurality of three-dimensional positions are designated in the three-dimensional space. Furthermore, the calculation means may be capable of setting curves determined from the three or more three-dimensional positions when three or more three-dimensional positions are designated in the three-dimensional space. The computing means may be capable of setting a plane determined from the three or more three-dimensional positions when three or more three-dimensional positions are designated in the three-dimensional space. Furthermore, the calculation means may be capable of setting curved surfaces determined from the four or more three-dimensional positions when four or more three-dimensional positions are designated in the three-dimensional space. The computing means may be capable of setting a circle or a sphere based on the two-dimensional three-dimensional positions when two three-dimensional positions are designated in the three-dimensional space. This makes it possible to draw and design various three-dimensional shapes using the three-dimensional position specifying apparatus according to the present invention.
そして、前記3次元位置指定装置は、表示画面上に画像を表示可能な表示手段と、前記表示画面上に前記第N段階のシェルピンスキー・カーペットに基づく画像を表示させると共に、前記演算手段により取得された3次元位置を示す3次元座標を前記表示画面上にプロット表示させる表示制御手段とを備えてもよい。これにより、表示画面上の3次元座標を示す点等を参照しながら、2次元位置すなわち第N段階のシェルピンスキー・カーペットの正方形領域を指定することができるので、3次元空間における所望の3次元位置を容易に指定することが可能となる。 The three-dimensional position specifying device displays a display unit capable of displaying an image on a display screen, and displays an image based on the Nth stage Sherpinski carpet on the display screen, and the calculation unit Display control means for plotting and displaying three-dimensional coordinates indicating the acquired three-dimensional position on the display screen may be provided. This makes it possible to designate a two-dimensional position, that is, a square region of the Nth stage Sherpinski carpet while referring to a point indicating three-dimensional coordinates on the display screen. The dimension position can be easily specified.
また、前記表示制御手段は、前記演算手段により取得された3次元位置を示す3次元座標を前記表示画面上にプロット表示させると共に、前記3次元位置の周囲に所定サイズのボクセルに基づく画像を表示させるものであってもよい。これにより、2次元位置指定手段を用いて指定した2次元位置に対応する3次元位置が3次元空間内のどの辺りにあるかを容易に把握可能となる。 The display control unit plots and displays the three-dimensional coordinates indicating the three-dimensional position acquired by the calculation unit on the display screen, and displays an image based on a voxel having a predetermined size around the three-dimensional position. It may be allowed. As a result, it is possible to easily grasp where in the three-dimensional space the three-dimensional position corresponding to the two-dimensional position designated using the two-dimensional position designation means is located.
本発明による3次元位置指定方法は、
3次元空間における3次元位置を指定するための3次元位置指定方法であって、
(a)2次元空間上で指定された2次元位置を特定するステップと、
(b)8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットのステップ(a)にて特定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置に基づいて前記3次元空間における3次元位置を取得するステップと、
を含むものである。
The three-dimensional position designation method according to the present invention includes:
A three-dimensional position designation method for designating a three-dimensional position in a three-dimensional space,
(A) identifying a specified two-dimensional position in a two-dimensional space;
(B) The two-dimensional position specified in step (a) of the N-th stage Sherpinski carpet having an array of 8 N square areas (where “N” is an integer greater than or equal to 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region Obtaining a three-dimensional position in the three-dimensional space based on a position of the voxel in the voxel space;
Is included.
この方法では、2次元空間において2次元位置が指定されると、奥行きが指定されなくても、単純な配置計算により2次元空間において指定された2次元位置に対応する1個のボクセルのボクセル空間における位置が取得され、当該1個のボクセルのボクセル空間における位置から3次元空間における3次元位置が取得される。従って、この方法によれば、2次元空間上での2次元位置の指定により、演算負荷を軽減しながら3次元空間における3次元位置を容易かつ精度よく指定することが可能となる。 In this method, when a two-dimensional position is specified in the two-dimensional space, even if the depth is not specified, a voxel space of one voxel corresponding to the two-dimensional position specified in the two-dimensional space by simple arrangement calculation. Is obtained, and the three-dimensional position in the three-dimensional space is obtained from the position of the one voxel in the voxel space. Therefore, according to this method, by specifying the two-dimensional position in the two-dimensional space, the three-dimensional position in the three-dimensional space can be specified easily and accurately while reducing the calculation load.
本発明による3次元位置指定用プログラムは、
コンピュータを3次元空間における3次元位置を指定するための装置として機能させる3次元位置指定用プログラムであって、
2次元空間上で指定された2次元位置を特定する2次元位置特定モジュールと、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記特定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置に基づいて前記3次元空間における3次元位置を取得する演算モジュールと、
を備えるものである。
The three-dimensional position designation program according to the present invention is:
A three-dimensional position designation program that causes a computer to function as a device for designating a three-dimensional position in a three-dimensional space,
A two-dimensional position specifying module for specifying a two-dimensional position specified in a two-dimensional space;
A square area corresponding to the specified two-dimensional position of the N-th stage Sherpinski carpet having an array of 8 N square areas (where “N” is an integer equal to or greater than 1) Corresponding to any one of 2 N × 2 N × 2 N voxels constituting the voxel space according to the correspondence rule, and at the position of the one voxel associated with the square region in the voxel space An arithmetic module that obtains a three-dimensional position in the three-dimensional space based on;
Is provided.
このプログラムがインストールされたコンピュータでは、2次元空間において2次元位置(例えばxy座標)を指定すれば、奥行きを指定しなくても、単純な配置計算により2次元空間において指定された2次元位置に対応する1個のボクセルのボクセル空間における位置が取得され、当該1個のボクセルのボクセル空間における位置から3次元空間における3次元位置が取得される。従って、このプログラムによれば、2次元空間上での2次元位置の指定により、演算負荷を軽減しながら3次元空間における3次元位置を容易かつ精度よく指定することが可能となる。 In a computer in which this program is installed, if a two-dimensional position (for example, xy coordinates) is specified in the two-dimensional space, the two-dimensional position specified in the two-dimensional space can be obtained by simple arrangement calculation without specifying the depth. The position of the corresponding one voxel in the voxel space is acquired, and the three-dimensional position in the three-dimensional space is acquired from the position of the one voxel in the voxel space. Therefore, according to this program, by specifying the two-dimensional position in the two-dimensional space, it is possible to easily and accurately specify the three-dimensional position in the three-dimensional space while reducing the calculation load.
本発明によるボクセルモデリング装置は、
3次元形状をボクセルの集合として表現可能なボクセルモデリング装置であって、
2次元空間上で2次元位置を指定するための2次元位置指定手段と、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記2次元位置指定手段を用いて指定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置を取得する位置取得手段と、
前記位置取得手段により取得された位置のボクセルに基づいて3次元形状を設定する形状設定手段と、
を備えるものである。
The voxel modeling apparatus according to the present invention is:
A voxel modeling device capable of expressing a three-dimensional shape as a set of voxels,
Two-dimensional position specifying means for specifying a two-dimensional position in a two-dimensional space;
A two-dimensional position designated by the two-dimensional position designation means of the Nth stage Sherpinski carpet having an array of 8 N squares (where “N” is an integer equal to or greater than 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region Position acquisition means for acquiring a position of the voxel in the voxel space;
Shape setting means for setting a three-dimensional shape based on voxels at positions acquired by the position acquisition means;
Is provided.
このボクセルモデリング装置では、2次元空間において2次元位置を指定すると、単純な配置計算により2次元空間において指定された2次元位置に対応する1個のボクセルのボクセル空間における位置が取得されると共に、取得された位置のボクセルをボクセル空間から消去したり、取得された位置のボクセルを3次元空間に配列したりすることにより3次元形状が設定される。従って、このボクセルモデリング装置によれば、2次元空間上での2次元位置の指定により3次元形状を容易に表現することが可能となる。 In this voxel modeling apparatus, when a two-dimensional position is specified in a two-dimensional space, the position in the voxel space of one voxel corresponding to the two-dimensional position specified in the two-dimensional space is acquired by simple arrangement calculation, The three-dimensional shape is set by erasing the voxel at the acquired position from the voxel space or arranging the voxels at the acquired position in the three-dimensional space. Therefore, according to this voxel modeling apparatus, a three-dimensional shape can be easily expressed by specifying a two-dimensional position in a two-dimensional space.
本発明によるボクセルモデリング方法は、
3次元形状をボクセルの集合として表現するためのボクセルモデリング方法であって、
(a)2次元空間上で指定された2次元位置を特定するステップと、
(b)8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットのステップ(a)にて特定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置を取得するステップと、
(c)ステップ(b)にて取得された位置のボクセルに基づいて3次元形状を設定するステップと、
を含むものである。
The voxel modeling method according to the present invention includes:
A voxel modeling method for expressing a three-dimensional shape as a set of voxels,
(A) identifying a specified two-dimensional position in a two-dimensional space;
(B) The two-dimensional position specified in step (a) of the N-th stage Sherpinski carpet having an array of 8 N square areas (where “N” is an integer greater than or equal to 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region Obtaining a position of the voxel in the voxel space;
(C) setting a three-dimensional shape based on the voxels at the position acquired in step (b);
Is included.
この方法では、2次元空間において2次元位置が指定されると、単純な配置計算により2次元空間において指定された2次元位置に対応する1個のボクセルのボクセル空間における位置が取得されると共に、取得された位置のボクセルをボクセル空間から消去したり、取得された位置のボクセルを3次元空間に配列したりすることにより3次元形状が設定される。従って、この方法によれば、2次元空間上での2次元位置の指定により3次元形状を容易に表現することが可能となる。 In this method, when a two-dimensional position is specified in the two-dimensional space, a position in the voxel space of one voxel corresponding to the two-dimensional position specified in the two-dimensional space is acquired by simple arrangement calculation, The three-dimensional shape is set by erasing the voxel at the acquired position from the voxel space or arranging the voxels at the acquired position in the three-dimensional space. Therefore, according to this method, a three-dimensional shape can be easily expressed by specifying a two-dimensional position in a two-dimensional space.
本発明によるボクセルモデリング用プログラムは、
3次元形状をボクセルの集合として表現するための装置としてコンピュータを機能させるボクセルモデリング用プログラムであって、
2次元空間上で指定された2次元位置を特定する2次元位置特定モジュールと、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記2次元位置指定手段を用いて指定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置を取得する位置取得モジュールと、 前記位置取得モジュールにより取得された位置のボクセルに基づいて3次元形状を設定する形状設定モジュールと、
備えるものである。
The program for voxel modeling according to the present invention is:
A voxel modeling program for causing a computer to function as a device for expressing a three-dimensional shape as a set of voxels,
A two-dimensional position specifying module for specifying a two-dimensional position specified in a two-dimensional space;
A two-dimensional position designated by the two-dimensional position designation means of the Nth stage Sherpinski carpet having an array of 8 N squares (where “N” is an integer equal to or greater than 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region A position acquisition module that acquires a position of the voxel in the voxel space; a shape setting module that sets a three-dimensional shape based on the voxel at the position acquired by the position acquisition module;
It is to be prepared.
このプログラムがインストールされたコンピュータでは、2次元空間において2次元位置が指定すると、単純な配置計算により2次元空間において指定された2次元位置に対応する1個のボクセルのボクセル空間における位置が取得されると共に、取得された位置のボクセルをボクセル空間から消去したり、取得された位置のボクセルを3次元空間に配列したりすることにより3次元形状が設定される。従って、このプログラムによれば、2次元空間上での2次元位置の指定により3次元形状を容易に表現することが可能となる。 In a computer in which this program is installed, when a two-dimensional position is specified in a two-dimensional space, the position in the voxel space of one voxel corresponding to the two-dimensional position specified in the two-dimensional space is acquired by simple arrangement calculation. In addition, the three-dimensional shape is set by erasing the voxel at the acquired position from the voxel space or arranging the voxels at the acquired position in the three-dimensional space. Therefore, according to this program, it is possible to easily represent a three-dimensional shape by specifying a two-dimensional position in a two-dimensional space.
次に、実施例を参照しながら本発明を実施するための最良の形態について説明する。 Next, the best mode for carrying out the present invention will be described with reference to examples.
図1は、本発明の実施例に係る3次元位置指定装置としてのコンピュータ20の概略構成図である。同図に示すように、実施例のコンピュータ20は、図示しないCPU,ROM,RAM、グラフィックプロセッサ(GPU)、グラフィックメモリ(VRAM)、システムバス、各種インターフェース、ハードディスクドライブやフラッシュメモリドライブ(SSD)といった外部記憶装置等を含む汎用のコンピュータとして構成されており、一般的な2次元ディスプレイである液晶ディスプレイといった表示装置30や入力装置としてのキーボード40やマウス50等と接続されて使用される。そして、このコンピュータ20には、表示装置30の表示画面31に現された2次元空間(2次元座標系)における2次元位置(2次元座標)を指定して3次元空間(3次元座標系)における3次元位置(3次元座標)を指定可能とする3次元位置指定用プログラムがインストールされている。なお、以下の説明において、適宜「2次元」を「2D」といい、「3次元」を「3D」という。
FIG. 1 is a schematic configuration diagram of a
コンピュータ20において3次元位置指定用プログラムが起動されると、表示装置30の表示画面31には、図1および図2に示すようにウィンドウ90が表示される。ウィンドウ90は、2D座標指定領域92と3D画像表示領域93とを含む。2次元空間としての2D座標指定領域92には、1つの正方形領域を9等分すると共に中央の正方形領域をブランク領域として8個の正方形領域の配列を生成するフラクタル展開をN回(ただし、“N”は、値1以上の整数であり、実施例では例えばN=5である。)適用することにより得られるフラクタルである第N段階のシェルピンスキー・カーペット100が表示される。また、3D画像表示領域93には、3次元空間を示す立方体状の3次元フレームXYZが表示される。
When the three-dimensional position designation program is started in the
コンピュータ20のユーザがマウス50あるいはキーボード40を用いて2D座標指定領域92に表示されたシェルピンスキー・カーペット100上の正方形領域(図中、黒く塗りつぶされていない領域)にカーソルを置くと、3D画像表示領域93の3次元フレームXYZ内にカーソル位置に対応した3次元座標を示す点Pが表示されると共に、当該3次元座標を示す点Pの周囲に立方体状のフレームFが表示される。また、ユーザがシェルピンスキー・カーペット100上でカーソルを移動させると、点PとフレームFとが3次元フレームXYZ内でカーソルの位置に応じて移動するように表示される。そして、シェルピンスキー・カーペット100上の正方形領域にカーソルを置いた状態でユーザが例えばマウス50のクリックといった2D位置の確定処理を行うと、シェルピンスキー・カーペット100上のカーソル位置に対応した箇所(図2において矢印で示す箇所参照)に点がプロット表示されると共に、3次元フレームXYZ内にカーソル位置に対応した3次元座標を示す点(以下、「確定点」という。)Pcが固定表示され、フレームFが消去される。なお、3次元フレームXYZや確定点Pc等は、ユーザの操作により3D画像表示領域93内で移動可能とされる。
When the user of the
また、ウィンドウ90には、“LINE”,“CURVE”,“PLANE”,“CURVED SURFACE”,“CIRCLE”,“SPHERE”,“delete”,“copy”,“tool”,“save”といったボタン95が配置されている。“LINE”ボタンは、3次元フレームXYZ内に存在する複数の確定点Pcを通る直線あるいは折れ線の設定を指示するためのものである。“CURVE”ボタンは、3次元フレームXYZ内に存在する3点以上の確定点Pcから定まる曲線の設定を指示するためのものである。“PLANE”ボタンは、3次元フレームXYZ内に存在する3点以上の確定点Pcから定まる平面の設定を指示するためのものである。“CURVED SURFACE”ボタンは、3次元フレームXYZ内に存在する4点以上の確定点Pcから定まる曲面の設定を指示するためのものである。“CIRCLE”ボタンは、3次元フレームXYZ内に存在する2点の確定点Pcの一方を中心とすると共に他方を円周上の1点とする円(平面)の設定を指示するためのものである。“SPHERE”ボタンは、3次元フレームXYZ内に存在する2点の確定点Pcの一方を中心とすると共に他方を球面上の1点とする球面の設定を指示するためのものである。“delete”ボタンは、3次元フレームXYZ内に存在する確定点Pcや線、面等の消去を指示するためのものである。“copy”ボタンは、3次元フレームXYZ内に存在する線や面等といった図形のコピーを指示するためのものである。“tool”ボタンは、予め用意されたオプション(例えば後述するベクトル場の設定等)の実行を指示可能とするものである。“save”ボタンは、3次元フレームXYZ内に表示された3次元形状の保存を指示するためのものである。
The
そして、3次元位置指定用プログラムが起動されている際、コンピュータ20には、図1に示すように、CPUやROM,RAM,GPU、各種インターフェース、外部記憶装置といったハードウエアと、インストールされた3次元位置指定用プログラムとの一方または双方の協働により入力受付部21や情報記憶部(RAMおよび外部記憶装置)22、モデリング部23、表示制御部24等が機能ブロックとして構築される。入力受付部21は、ユーザにより指定された2D位置すなわち2D座標指定領域92におけるカーソル位置(表示画面31に設定された2次元絶対座標系におけるピクセル単位のxy座標)といったマウス50やキーボード40からの情報の入力を受け付け、受け付けた情報を情報記憶部(RAM)22に格納する。モデリング部23は、ユーザにより指定された2D座標指定領域92におけるカーソル位置に基づいて当該カーソル位置に対応した3次元フレームXYZにおける3D座標を算出したり、上述のウィンドウ90上のボタン95の操作に応じて線や面等を設定したりする。表示制御部24は、2D座標指定領域92や3D画像表示領域93におけるユーザの操作に応じた画像表示処理(レンダリングを含む)を実行する。
When the three-dimensional position designation program is activated, the
次に、3次元位置指定用プログラムがインストールされたコンピュータ20を用いて3次元空間としての3次元フレームXYZ内に点Pを表示させたり、確定点Pcを設定したりする手順について説明する。図3は、実施例のコンピュータ20において実行される3D座標設定ルーチンの一例を示すフローチャートである。この3D座標設定ルーチンは、3次元位置指定用プログラムが起動され、例えば2D座標指定領域92に表示されたシェルピンスキー・カーペット100上の正方形領域にカーソルが置かれると、コンピュータ20のモデリング部23により繰り返し実行される。
Next, a procedure for displaying the point P in the three-dimensional frame XYZ as a three-dimensional space and setting the fixed point Pc using the
図3の3D座標設定ルーチンの開始に際して、モデリング部23は、ユーザにより指定された2D座標指定領域92におけるカーソル位置(表示画面31におけるピクセル単位のxy座標)を座標変換することにより2D座標指定領域92に設定されている2次元絶対座標系における2D座標(x,y)を取得する(ステップS100)。ステップS100の処理の後、モデリング部23は、所定の座標(x(n),y(n))、座標(x″(n),y″(n))および座標(X′(n),Y′(n),Z′(n))をそれぞれ次式(1)〜(3)に従って初期化する(ステップS110)。ただし、“n”は制御用の変数である。そして、モデリング部23は、予め定められた対応規則に基づくテーブルを用いて2D座標(x,y)を3次元フレームXYZにおける3D座標(X,Y,Z)に変換する座標変換処理を実行する(ステップS120)。
At the start of the 3D coordinate setting routine of FIG. 3, the
(x(0), y(0)) = (x, y) …(1)
(x″(0), y″(0)) = (0, 0) …(2)
(X′(0), Y′(0), Z′(0))=(0, 0, 0) …(3)
(x (0), y (0)) = (x, y) (1)
(x ″ (0), y ″ (0)) = (0, 0)… (2)
(X '(0), Y' (0), Z '(0)) = (0, 0, 0) ... (3)
ステップS120の座標変換処理に用いられる対応規則は、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域と1つのボリュームを構成する2×2×2=8個のボクセルとの対応関係を規定するものである。すなわち、実施例では、図4に示すように、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域に対して、所定の基点(例えば、図中左下の頂点)からX方向→Y方向→−X方向→−Y方向に進行する2次元の一筆書きの経路(周回経路)が予め定められると共に、2×2×2個のボクセルに対して、所定の基点(例えば、図中左手前下側の頂点)からx方向→z方向→−x方向→y方向→x方向→−z方向→−x方向→−y方向に進行する3次元の一筆書き経路が予め定められており、対応規則は、第1段階のシェルピンスキー・カーペットの8個の正方形領域を当該2次元の一筆書きの経路上での順番に従って2×2×2個のボクセルに対して当該3次元の一筆書きの経路を辿るように割り当てるものとされている。そして、実施例では、かかる対応規則を座標変換処理に適用すべく、図5に示すテーブルが用意されている。このテーブルでは、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域の2D位置として各正方形領域の図5における左下側の頂点(以下、正方形領域の「原点」という。)に(0,0)、(1,0)、(2,0)、(2,1)、(2,2)、(1,2)、(0,2)、(0,1)という2次元の相対座標が付与されると共に、2×2×2=8個のボクセルの3D位置として各ボクセルの図5における左手前下側の頂点(以下、ボクセルの「原点」という)に(0,0,0)、(1,0,0)、(1,0,1)、(0,0,1)、(0,1,1)、(1,1,1)、(1,1,0)、(0,1,0)という3次元の相対座標が付与されており、シェルピンスキー・カーペットの正方形領域の2D位置(相対座標)と8個のボクセルの3D位置(相対座標)とが図5に示すように対応付けられている。
The correspondence rule used in the coordinate transformation process in step S120 is the correspondence between the eight square areas constituting the first Shelpinsky carpet and the 2 × 2 × 2 = 8 voxels constituting one volume. It defines the relationship. That is, in the embodiment, as shown in FIG. 4, the X direction from a predetermined base point (for example, the vertex at the lower left in the figure) with respect to the eight square regions constituting the first stage Sherpinski carpet → A two-dimensional one-stroke path (circular path) traveling in the Y direction, −X direction, and −Y direction is determined in advance, and a predetermined base point (for example, in the figure) is set for 2 × 2 × 2 voxels. A three-dimensional one-stroke path that proceeds in the x direction → z direction → −x direction → y direction → x direction → −z direction → −x direction → −y direction is determined in advance. The correspondence rule is that the eight-dimensional area of the Sherpinski carpet in the first stage is applied to the 3D stroke for 2 × 2 × 2 voxels according to the order in the path of the 2D stroke stroke. It is supposed to be assigned so as to follow the path of writing. In the embodiment, the table shown in FIG. 5 is prepared in order to apply the correspondence rule to the coordinate conversion process. In this table, as the 2D positions of the eight square areas constituting the first stage Sherpinski carpet, each square area has a left top vertex (hereinafter referred to as “origin” of the square area) in FIG. (0,0), (1,0), (2,0), (2,1), (2,2), (1,2), (0,2), (0,1) Relative coordinates are given, and 2 × 2 × 2 = 8
図5に示すテーブルを用いることにより、図6および図7に示すようにして2D座標(x,y)に対応した第N段階のシェルピンスキー・カーペットの正方形領域をボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすることができる。なお、以下の説明において、値Nを適宜シェルピンスキー・カーペットやボクセル空間の「解像度」という。また、図6および図7は、2D座標指定領域92に表示されたシェルピンスキー・カーペット100の解像度Nが値3である場合を例示するものであり、カーソルは図6に示す位置にあるものとする。この場合、2D座標指定領域92に第1段階のシェルピンスキー・カーペットが表示されていると仮定すれば、図6からわかるように、2D座標(x,y)は図4に示す対応規則より第1段階のシェルピンスキー・カーペットにおける6番目の正方形領域に含まれていることになる。従って、当該6番目の正方形領域の原点O1のイニシエータである1個(80個)の正方形領域(第0段階のシェルピンスキー・カーペット)における相対座標(原点O0を(0,0)とする)を求めれば、図5のテーブルを用いて、21×21×21個=8個のボクセルからなるボクセル空間(解像度N=1のボクセル空間)内で2D座標(x,y)に対応するボクセルの20×20×20=1個のボクセルからなるボクセル空間内で2D座標(x,y)に対応するボクセルにおける相対座標を得ることができる(図7(a)参照)。
By using the table shown in FIG. 5, 2 N constituting the voxel space square region Sierpinski Carpet of the N stage corresponding to the 2D coordinates (x, y) as shown in FIGS. 6 and 7 It can be associated with any one of × 2 N × 2 N voxels. In the following description, the value N is appropriately referred to as “resolution” of the Sherpinski carpet or voxel space. 6 and 7 exemplify the case where the resolution N of the
更に、2D座標指定領域92に第2段階のシェルピンスキー・カーペットが表示されていると仮定すれば、図6からわかるように、2D座標(x,y)は図4に示す対応規則より上記第1段階のシェルピンスキー・カーペットにおける上記6番目の正方形領域を構成する8個の正方形領域のうち、7番目の正方形領域に含まれることになる。従って、当該7番目の正方形領域の原点O2の上記第1段階のシェルピンスキー・カーペットの上記6番目の正方形領域における相対座標(原点O1を(0,0)とする)を求めれば、図5のテーブルを用いて、22×22×22個=64個のボクセルからなるボクセル空間(解像度N=2のボクセル空間)内で2D座標(x,y)に対応する解像度N=1のボクセル空間内で2D座標(x,y)に対応するボクセルにおける相対座標を得ることができる(図7(b)参照)。
Further, assuming that the second-stage Shelpinsky carpet is displayed in the 2D coordinate
以下、同様にして、第n段階のシェルピンスキー・カーペットの2D座標(x,y)に対応した正方形領域の第n−1段階のシェルピンスキー・カーペットの2D座標(x,y)に対応した正方形領域における相対座標(位置)を求めれば、この正方形領域の相対座標を図5のテーブルを用いて解像度N=nのボクセル空間内で2D座標(x,y)に対応するボクセルの解像度N=n−1のボクセル空間内で2D座標(x,y)に対応するボクセルにおける相対座標へと変換することができる(図7(c)参照)。そして、3次元空間としての3次元フレームXYZに解像度Nのボクセル空間が対応付けられており、3次元フレームXYZが2N×2N×2N個のボクセルに分割されているとすれば、上述の各段階におけるボクセルの相対座標を加算することにより、2D座標(x,y)に対応した3次元フレームXYZにおける3D座標(X,Y,Z)を得ることができる。 The same applies to the 2D coordinates (x, y) of the (n-1) th stage Sherpinski carpet corresponding to the 2D coordinates (x, y) of the nth stage Sherpinski carpet. When the relative coordinates (position) in the square area are obtained, the relative coordinates of the square area are determined using the table of FIG. 5 in the voxel resolution N = n and the voxel resolution N corresponding to the 2D coordinates (x, y). Can be converted into relative coordinates in the voxel corresponding to the 2D coordinate (x, y) in the n-1 voxel space (see FIG. 7C). If a three-dimensional frame XYZ as a three-dimensional space is associated with a voxel space of resolution N and the three-dimensional frame XYZ is divided into 2 N × 2 N × 2 N voxels, 3D coordinates (X, Y, Z) in the three-dimensional frame XYZ corresponding to the 2D coordinates (x, y) can be obtained by adding the relative coordinates of the voxels in the respective steps.
図8は、上述の手順により2D座標(x,y)を3次元フレームXYZにおける3D座標(X,Y,Z)に変換するステップS120における座標変換処理の一例を示すフローチャートである。図8に示すように、座標変換処理の開始に際して、モデリング部23は、変数nを値1に設定した上で(ステップS1200)、座標(x(n),y(n))を次式(4)および(5)に従って設定する(ステップS1210)。ただし、式(4)および(5)において“s”は、2D座標指定領域92に表示されたシェルピンスキー・カーペット100の一辺の長さ(画素数)を示す(図2参照)。次いで、設定した座標(x(n),y(n))を用いて次式(6)および(7)から値x′(n)およびy′(n)を計算し(ステップS1220)、値x′(n)およびy′(n)の小数点以下をそれぞれ切り捨てることにより座標(x″(n),y″(n))を設定する(ステップS1230)。ここで、座標(x(n),y(n))は、第n段階のシェルピンスキー・カーペットの2D座標(x,y)に対応した正方形領域の原点Onに対する2D座標(x,y)に対応した点の絶対座標である。また、ステップS1210およびS1220の処理を経て得られる座標(x″(n),y″(n))は、第n段階のシェルピンスキー・カーペットの2D座標(x,y)に対応した正方形領域の原点Onの第n−1段階のシェルピンスキー・カーペットの2D座標(x,y)に対応した正方形領域における相対座標を示す。
FIG. 8 is a flowchart showing an example of the coordinate conversion process in step S120 for converting 2D coordinates (x, y) into 3D coordinates (X, Y, Z) in the three-dimensional frame XYZ by the above-described procedure. As shown in FIG. 8, at the start of the coordinate conversion process, the
x(n)= x(n-1)-3n-1/s・x″(n-1) …(4)
y(n)= y(n-1)-3n-1/s・y″(n-1) …(5)
x′(n)= 3n/s・x(n) …(6)
y′(n)= 3n/s・y(n) …(7)
x (n) = x (n-1) -3 n-1 / s · x ″ (n-1) (4)
y (n) = y (n-1) -3 n-1 / s · y ″ (n-1) (5)
x ′ (n) = 3 n / s · x (n) (6)
y ′ (n) = 3 n / s · y (n) (7)
ステップS1230の処理により、座標(x″(n),y″(n))が図5のテーブルにおける2次元の相対座標の何れかとして得られるので、当該テーブルを用いて座標(x″(n),y″(n))に対応する3次元の相対座標(X″(n),Y″(n),Z″(n))すなわち解像度nのボクセル空間内で2D座標(x,y)に対応するボクセルの解像度n−1のボクセル空間内で2D座標(x,y)に対応するボクセルにおける相対座標を導出することができる(ステップS1240)。こうして座標(X″(n),Y″(n),Z″(n))を求めたならば、次式(8)〜(10)に従って2n×2n×2n個のボクセルからなるボクセル空間内で2D座標(x,y)に対応するボクセルの原点の座標(X′,Y′,Z′)を導出する(ステップS1250)。ステップS1250の処理の後、変数nが値N(シェルピンスキー・カーペット100の解像度)に一致したか否かを判定し(ステップS1260)、変数nが値N未満であれば、当該変数nをインクリメントして(ステップS1270)、再度ステップS1210〜S1250の処理を実行する。そして、ステップS1260にて変数nが値Nに一致した段階で、座標(X′,Y′,Z′)に基づいて2D座標(x,y)に対応した3D座標(X,Y,Z)を設定すると共に情報記憶部22(RAM)に格納する(ステップS1280)。実施例のステップS1280では、座標(X′,Y′,Z′)から次式(11)〜(13)に従って得られる2N×2N×2N個のボクセルからなるボクセル空間内で2D座標(x,y)に対応するボクセルの中心の座標を3D座標(X,Y,Z)として設定する。ただし、式(11)〜(13)において、“S”は、3D画像表示領域93に表示された3次元フレームXYZの一辺の長さ(画素数)を示す(図2参照)。 By the processing in step S1230, the coordinates (x ″ (n), y ″ (n)) are obtained as any of the two-dimensional relative coordinates in the table of FIG. 5, and therefore the coordinates (x ″ (n ), Y ″ (n)) corresponding to the three-dimensional relative coordinates (X ″ (n), Y ″ (n), Z ″ (n)), that is, 2D coordinates (x, y) in the voxel space of resolution n. The relative coordinates in the voxel corresponding to the 2D coordinate (x, y) in the voxel space with the resolution n−1 of the voxel corresponding to can be derived (step S1240). When (n), Z ″ (n)) is obtained, 2D coordinates (x, y) are obtained in a voxel space composed of 2 n × 2 n × 2 n voxels according to the following equations (8) to (10). The coordinates (X ', Y', Z ') of the origin of the voxel corresponding to Step S1250). After the process of step S1250, it is determined whether or not the variable n matches the value N (the resolution of the Sherpinski carpet 100) (step S1260). If the variable n is less than the value N, the variable n is set. Increment (step S1270), the processing of steps S1210 to S1250 is executed again. In step S1260, when the variable n matches the value N, the 3D coordinates (X, Y, Z) corresponding to the 2D coordinates (x, y) based on the coordinates (X ′, Y ′, Z ′). And is stored in the information storage unit 22 (RAM) (step S1280). In step S1280 of the embodiment, 2D coordinates are obtained in a voxel space composed of 2 N × 2 N × 2 N voxels obtained from coordinates (X ′, Y ′, Z ′) according to the following equations (11) to (13). The coordinates of the center of the voxel corresponding to (x, y) are set as 3D coordinates (X, Y, Z). However, in equations (11) to (13), “S” indicates the length (number of pixels) of one side of the three-dimensional frame XYZ displayed in the 3D image display area 93 (see FIG. 2).
X′= X′+ 2N-n・X(n) …(8)
Y′= Y′+ 2N-n・Y(n) …(9)
Z′= Z′+ 2N-n・Z(n) …(10)
X = X′+ S/2N+1 …(11)
Y = Y′+ S/2N+1 …(12)
Z = Z′+ S/2N+1 …(13)
X ′ = X ′ + 2 Nn · X (n) (8)
Y ′ = Y ′ + 2 Nn・ Y (n) (9)
Z ′ = Z ′ + 2 Nn・ Z (n) (10)
X = X ′ + S / 2 N + 1 (11)
Y = Y '+ S / 2 N + 1 (12)
Z = Z '+ S / 2 N + 1 (13)
上述のようにして3D座標(X,Y,Z)を設定すると、モデリング部23は、3D座標(X,Y,Z)を中心とした所定サイズの立方体状のフレームF(8つの頂点および頂点同士を結ぶ12本の直線)を設定すると共に設定した情報を情報記憶部22(RAM)に格納し(ステップS130)、設定した3D座標(X,Y,Z)に対応する点PとフレームFの画像表示を表示制御部24に指示する(ステップS140)。実施例において、ステップS130にて設定されるフレームFのサイズは、3次元フレームXYZを2m×2m×2m個(ただし、m<Nであり、例えばm=2)のボクセルに分割したときの1個のボクセルのサイズに一致する。また、モデリング部23からの画像表示指令を受け取った表示制御部24は、情報記憶部22から3D座標(X,Y,Z)やフレームF等に関する情報を読み出して、点PやフレームFが3次元フレームXYZや既存の確定点Pc等と共に3D画像表示領域93に投影表示されるように画像表示処理を実行する。ステップS140の処理の後、モデリング部23は、ユーザにより2D位置の確定処理が実行されたか否かを判定し(ステップS150)、2D位置の確定処理が実行されていない場合には、再度ステップS100以降の処理を実行する。
When the 3D coordinates (X, Y, Z) are set as described above, the
また、ユーザにより2D位置の確定処理が実行されている場合、モデリング部23は、ステップS120(S1280)にて設定された3D座標(X,Y,Z)を新たな確定点Pcの座標として情報記憶部22(RAM)に格納した上で(ステップS160)、確定点Pc等の画像表示を表示制御部24に指示し(ステップS170)、再度ステップS100以降の処理を実行する。モデリング部23からの画像表示指令を受け取った表示制御部24は、情報記憶部22から確定点Pcの3D座標(X,Y,Z)等を読み出して、新たな確定点Pcが3次元フレームXYZや既存の確定点Pc等と共に3D画像表示領域93に投影表示されるように画像表示処理を実行する。なお、確定前の点Pと確定点Pcとは、識別性を考慮して色や形などを変えて3D画像表示領域93に表示されてもよい。
When the 2D position determination process is executed by the user, the
続いて、図9を参照しながら、3次元位置指定用プログラムがインストールされたコンピュータ20を用いて3次元空間としての3次元フレームXYZ内に線や面等を設定する手順について説明する。図9は、実施例のコンピュータ20において実行される3D描画ルーチンの一例を示すフローチャートである。かかる3D描画ルーチンは、3次元位置指定用プログラムが起動された状態で、ウィンドウ90上の“LINE”,“CURVE”,“PLANE”,“CURVED SURFACE”,“CIRCLE”および“SPHERE”といったボタン95の何れかクリックされると、コンピュータ20のモデリング部23により実行される。
Next, a procedure for setting lines, planes, and the like in the three-dimensional frame XYZ as a three-dimensional space using the
図9の3D描画ルーチンの開始に際して、モデリング部23は、ユーザによりクリックされたボタン95が“LINE”,“CURVE”,“PLANE”,“CURVED SURFACE”,“CIRCLE”および“SPHERE”の何れかであるかを調べることにより、ユーザによりクリックされたボタン95に対応した描画対象を特定する(ステップS200)。次いで、情報記憶部22からすべての確定点Pcの3D座標(X,Y,Z)を読み出し(ステップS210)、ユーザにより指定された描画対象を描画可能であるか否かを判定する(ステップS220)。ステップS220では、基本的に、描画対象ごとに定められている確定点Pcの最小数と既存の確定点Pcの数とを比較することにより描画対象を描画可能であるか否かが判定される。そして、例えば確定点Pcが2個しか存在していないにも拘わらず曲面の描画が指定されたような場合には、ステップS220にて否定判断がなされ、モデリング部23は、例えば「3D位置を指定してください。」といった“ERROR”メッセージを表示画面31上に現すように表示制御部24に指示する(ステップS250)。
At the start of the 3D drawing routine of FIG. 9, the
一方、ステップS220にてユーザにより指定された描画対象を描画可能であると判断すると、モデリング部23は、確定点Pcの3D座標(X,Y,Z)に基づいてユーザにより指定された直線、折れ線、曲線、平面、曲面、円および球の何れかを設定し、設定した情報を情報記憶部22に格納する(ステップS230)。そして、モデリング部23は、設定した線や面の画像表示を表示制御部24に指示し(ステップS240)、本ルーチンを終了させる。モデリング部23からの画像表示指令を受け取った表示制御部24は、設定された線や面が3次元フレームXYZや既存の確定点Pc等と共に3D画像表示領域93に投影表示されるように画像表示処理を実行する。
On the other hand, if it is determined in step S220 that the drawing target specified by the user can be drawn, the
なお、ステップS240の処理に関して、確定点Pcが2個存在するときに、2個の確定点Pcをそれぞれ(X0,Y0,Z0),(X1,Y1,Z1)と表せば、これら2個の確定点Pcを通る直線を次式(14)のように定義することができる。また、3個以上の確定点Pcから定まる曲線としては、ベジェ曲線やNURBS曲線といったパラメトリック等を利用することができる。ここで、N個の確定点Pcが存在しているときに、パラメータをtとし、曲線の次数をnとすれば、ベジェ曲線上の3D座標P(t)を次式(15)のように定義することができる。また、N個の確定点Pcが存在しているときに、fi,k(t)をBスプライン基底関数とし、wiを重みとし、曲線の次数をnとすれば、NURBS曲線上の3D座標P(t)を次式(16)のように定義することができる。更に、確定点Pcが3個存在するときに、3個の確定点Pcの何れかを(X0,Y0,Z0)とし、当該3個の確定点Pcから定まる法線ベクトルを(a,b,c)とすれば、当該3個の確定点Pcから定める平面を次式(17)のように定義することができる。また、4個以上の確定点Pcから定まる曲面としては、次式(18)により定義されるベジェ曲面や次式(19)により定義されるNURBS曲面といったパラメトリック曲面等を利用することができる(ただし、式(18)および(19)において“u”、“v”はパラメータである。)。
以上説明したように、実施例の3次元位置指定用プログラムがインストールされたコンピュータ20は、表示画面31上に画像を表示可能な表示装置30と接続され、3次元位置指定用プログラムが起動されると、表示制御部24により表示画面31上の2次元空間としての2D座標指定領域92に第N段階のシェルピンスキー・カーペット100が表示させられる。こうして2D座標指定領域92に表示された第N段階のシェルピンスキー・カーペット100上で2D位置(ピクセル単位のxy座標)すなわち何れかの正方形領域が指定されると、奥行きが指定されなくても、単純な配置計算によりシェルピンスキー・カーペット100上で指定された2D位置(2D座標(x,y))に対応する1個のボクセルの解像度Nのボクセル空間における位置が取得される。そして、当該1個のボクセルのボクセル空間における位置から3次元空間としての3次元フレームXYZにおける3次元位置である3D座標(X,Y,Z)が取得され、当該3次元座標(X,Y,Z)を示す点Pが表示画面31上の3D画像表示領域93にプロット表示される。
As described above, the
このように、3次元位置指定用プログラムがインストールされたコンピュータ20を用いれば、2D座標指定領域92での2D位置の指定により、演算負荷を軽減しながら3次元フレームXYZにおける3D座標(3D位置)を容易かつ精度よく指定することが可能となる。また、コンピュータ20では、3D画像表示領域93にプロット表示された点Pを参照しながら、2D位置すなわち第N段階のシェルピンスキー・カーペット100の正方形領域を指定することができるので、3次元フレームXYZにおける所望の3D座標を容易に指定することが可能となる。更に、3D画像表示領域93には、2D位置の確定処理が実行されるまで、3D座標に対応した点Pの周囲に所定サイズのボクセルに基づく立方体状のフレームFが表示されることから、2D座標指定領域92において指定した2D位置に対応した3D座標(点P)が3次元フレームXYZ内のどの辺りにあるかを容易に把握可能となる。
As described above, if the
また、実施例のコンピュータ20に適用された対応規則は、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域と1つのボリュームを構成する2×2×2個のボクセルとの対応関係を規定するものである。これにより、第n段階(1≦n≦N)のシェルピンスキー・カーペットの2D座標(x,y)に対応する正方形領域の第n−1段階のシェルピンスキー・カーペットの2D座標(x,y)に対応する正方形領域における相対座標(x″(n),y″(n))と上記対応規則に基づく図5のテーブルとから、解像度N=nのボクセル空間内で2D座標(x,y)に対応するボクセルの解像度N=n−1のボクセル空間内で2D座標(x,y)に対応するボクセルにおける相対座標(X″(n),Y″(n),Z″(n))を取得することができる。そして、取得したn個の相対座標(X″(n),Y″(n),Z″(n))を用いれば、2D座標(x,y)に対応した3次元フレームXYZにおける3D座標(X,Y,Z)を取得することが可能となる。このように、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域と1つのボリュームを構成する2×2×2個のボクセルとの対応関係を予め定めておけば、フラクタルであるシェルピンスキー・カーペットの自己相似性を利用した繰り返し計算を実行することで、より少ない演算負荷で高速に3次元フレームXYZにおける3D座標(X,Y,Z)を指定することが可能となる。
Further, the correspondence rule applied to the
ただし、シェルピンスキー・カーペットの自己相似性を利用すれば、必ずしもN=5といったような比較的解像度の高いシェルピンスキー・カーペット100を2D座標指定領域92に表示させる必要はない。すなわち、比較的小さな解像度(例えばN=1〜3程度)のシェルピンスキー・カーペット100を2D座標指定領域92に表示させ、2D位置すなわち正方形領域が指定されるたびに、新たなシェルピンスキー・カーペット100を当該指定された正方形領域にフラクタル展開を施したものとして2D座標指定領域92に表示させることにより、ユーザに3次元フレームXYZにおける所望の3D座標(X,Y,Z)を段階的に指定させることが可能となる。また、テーブルとしては、第N段階のシェルピンスキー・カーペットの全正方形領域とボクセル空間を構成する2N×2N×2N個のボクセルとを対応付けするものを予め用意しておいてもよい。
However, if the self-similarity of the Sherpinski carpet is used, it is not always necessary to display the
更に、実施例のコンピュータ20に適用された対応規則は、第1段階のシェルピンスキー・カーペットの8個の正方形領域をこれらに対して定められた一筆書きの経路上での順番に従って2×2×2個のボクセルに対して一筆書きの経路を辿るように割り当てる規則である。これにより、第N段階のシェルピンスキー・カーペット100における少なくとも2つの正方形領域の隣接関係を2N×2N×2N個のボクセルからなるボクセル空間(3次元フレームXYZ)において保持することが可能となるので、シェルピンスキー・カーペット100上における正方形領域の近接関係を3次元フレームXYZにおいても比較的良好に保つことができる。ただし、対応規則は、1つのボリュームを構成する2×2×2個のボクセルの3次元空間における位置と第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域の2次元空間における位置との対応関係を規定するものであれば、どのような対応関係を規定するものであっても構わない。
Furthermore, the correspondence rule applied to the
また、実施例のコンピュータ20に構築されるモデリング部23は、3次元フレームXYZ内に複数の3D座標が指定されているときに、“LINE”ボタンのクリックに応じて当該複数の3D座標を通る直線または折れ線を設定可能である。更に、モデリング部23は、3次元フレームXYZに3箇所以上の3D座標が指定されているときに、“CURVE”ボタンのクリックに応じて当該3箇所以上の3D座標から定まる曲線を設定可能である。また、モデリング部23は、3次元フレームXYZに3箇所以上の3D座標が指定されているときに、“PLANE”のクリックに応じて当該3箇所以上の3D座標から定まる平面を設定可能である。更に、モデリング部23は、3次元フレームXYZに4箇所以上の3D座標が指定されているときに、“CURVED SURFACE”ボタンのクリックに応じて当該4箇所以上の3D座標から定まる曲面を設定可能である。また、モデリング部23は、3次元フレームXYZに2箇所の3D座標が指定されているときに、“CIRCLE”ボタンまたは“SPHERE”ボタンのクリックに応じて当該2箇所の3D座標に基づく円または球を設定可能である。従って、実施例の3次元位置指定用プログラムがインストールされたコンピュータ20を用いれば、様々な3次元形状を描画したり、デザインしたりすることが可能となる。ただし、線や面の設定手順は、図9に示す手順に限られるものではなく、ユーザによりボタン95がクリックされた後、必要数の3D位置(シェルピンスキー・カーペット100の正方形領域)の指定がなされてから線や面の設定が実行されてもよい。
The
なお、上記実施例において、表示装置30は、図示しないスタイラスにより指定された表示画面31上の絶対座標を検出可能なタブレットを含む、いわゆる液晶タブレット等として構成されてもよい。また、表示装置30として、いわゆるデュアルモニタを用いてもよく、2台の表示装置30の一方に2D座標指定領域92を表示させると共に他方に3D画像表示領域93を表示させてもよい。更に、上記実施例では、第N段階のシェルピンスキー・カーペット100が2次元空間としての2D座標指定領域92に直接対応付けられているが、これに限られるものではない。すなわち、第N段階のシェルピンスキー・カーペット100は、2D座標指定領域92と3次元フレーム93との対応がより直感的にわかりやすいものとなるように更なる2D座標の変換処理を介して間接的に対応付けられてもよい。また、ユーザがシェルピンスキー・カーペット100のブランク領域にカーソルを置いたときに、当該ブランク領域が所属する正方形領域に対応したボクセルに基づくフレーム(画像)を3D画像表示領域93に表示させたり、当該ブランク領域が所属する正方形領域に関連した情報を2D座標指定領域92や3D画像表示領域93に表示させてもよい。
In the above embodiment, the
引き続き、本発明による3次元位置指定装置および方法ならびに3次元位置指定用プログラムの応用例や、本発明によるボクセルモデリング装置、ボクセルモデリング方法およびボクセルモデリング用プログラムについて説明する。 Next, an application example of the three-dimensional position designation apparatus and method and the three-dimensional position designation program according to the present invention, and the voxel modeling apparatus, voxel modeling method and voxel modeling program according to the present invention will be described.
上記実施例における「ボクセル」は、基本的には、いわゆるボクセル値をもたない単なる立方体を意味しているが、3次元空間に対応付けられるボクセル空間の各ボクセルにはボクセル値が付与されてもよい。これにより、2次元空間において2次元位置を指定することにより、当該2次元位置に対応した3次元位置にあるボクセル値にアクセスすることが可能となる。このようにボクセルに対してボクセル値を付与する応用例としては、写真加工ソフトやペイントソフト等においてユーザーに任意の色の選択を許容するインターフェースであるカラーピッカーが挙げられる。すなわち、コンピュータ上で、色はR(赤),G(緑),B(青)の3成分によって表現され,例えば、(R,G,B)=(0,0,0)は黒、(R,G,B)=(255,0,0)は赤、(R,G,B)=(255,255,255)は白、といったように各色成分の強度は256階調のパラメータとして表されるのが一般的である。従って、コンピュータ上では、色空間をRGB3軸からなる3次元空間とみなすことができる。 “Voxel” in the above embodiment basically means a simple cube having no so-called voxel value, but a voxel value is assigned to each voxel in a voxel space associated with a three-dimensional space. Also good. Thus, by specifying a two-dimensional position in the two-dimensional space, it becomes possible to access a voxel value at a three-dimensional position corresponding to the two-dimensional position. As an application example for giving a voxel value to a voxel in this way, there is a color picker that is an interface that allows a user to select an arbitrary color in photo processing software, paint software, or the like. That is, on the computer, the color is expressed by three components of R (red), G (green), and B (blue). For example, (R, G, B) = (0, 0, 0) is black, ( R, G, B) = (255, 0, 0) is red, (R, G, B) = (255, 255, 255) is white, and the intensity of each color component is expressed as a parameter of 256 gradations. It is common to be done. Therefore, on the computer, the color space can be regarded as a three-dimensional space composed of RGB three axes.
これを踏まえて、予め解像度N=8(第8段階)のシェルピンスキー・カーペットの正方形領域とボクセル空間を構成する28×28×28個のボクセル(それぞれRGBの色情報を格納しているもの)とを対応付けたり、あるいは上述のような対応規則を用いたりすれば、解像度N=8のシェルピンスキー・カーペットの何れかの正方形領域を指定することにより、3次元空間としての色空間においてRGBの色情報を指定(取得)することが可能となる。なお、色成分を256階調の代わりに浮動小数を用いて表現するHDR(High Dynamic Range)フォーマットについても、本発明を用いてRGBフォーマットの場合と同様のカラーピッカーを構成することができる。更に、輝度信号(Y)、輝度信号と青色成分の差(U)および輝度信号と赤色成分の差(V)という3つの情報で色を表すYUVフォーマットや、輝度(明るさ:Y)および色相(色合い:CrCb)という情報で色を表すYCrCbフォーマットについても、本発明を用いてRGBフォーマットの場合と同様のカラーピッカーを構成することができる。 Based on this, 2 8 × 2 8 × 2 8 voxels (each storing RGB color information respectively) constituting the square region and voxel space of the Sherpinsky carpet with resolution N = 8 (8th stage). 3), or by using one of the correspondence rules as described above, by designating any square area of the Shelpinsky carpet with resolution N = 8, It is possible to specify (acquire) RGB color information in the color space. Note that the same color picker as in the RGB format can be configured using the present invention for an HDR (High Dynamic Range) format that expresses color components using floating-point numbers instead of 256 gradations. Furthermore, the YUV format that expresses the color by the three information of the luminance signal (Y), the difference between the luminance signal and the blue component (U), and the difference between the luminance signal and the red component (V), the luminance (brightness: Y), and the hue With respect to the YCrCb format that expresses a color with the information (color shade: CrCb), a color picker similar to that in the RGB format can be configured using the present invention.
また、例えば、いわゆるネットショピングの商品指定画面等に商品情報等を3次元的に配列することが考えられる。このような場合に、予め所定解像度のシェルピンスキー・カーペットの正方形領域とボクセル空間を構成するボクセル(商品情報を格納しているもの)とを対応付けたり、あるいは上述のような対応規則を用いたりすれば、シェルピンスキー・カーペットの何れかの正方形領域を指定することにより、3次元的に配列された商品情報に(隠れて見えなくなっているものにも)容易にアクセスすることが可能となる。同様に、例えば立体倉庫や立体駐車場の管理ソフト等において、管理画面等に在庫情報や入庫状況を3次元的に配列することが考えられる。このような場合にも、予め所定解像度のシェルピンスキー・カーペットの正方形領域とボクセル空間を構成するボクセル(在庫情報や入庫情報を格納しているもの)とを対応付けたり、あるいは上述のような対応規則を用いたりすれば、シェルピンスキー・カーペットの何れかの正方形領域を指定することにより、3次元的に配列された情報に(隠れて見えなくなっているものにも)容易にアクセスすることが可能となる。 Further, for example, it is conceivable to arrange product information and the like three-dimensionally on a so-called net shopping product designation screen. In such a case, the square area of the Sherpinski carpet with a predetermined resolution is associated with the voxels (stored product information) constituting the voxel space in advance, or the correspondence rules as described above are used. For example, by designating any square area of the Sherpinski carpet, it is possible to easily access product information arranged three-dimensionally (even if it is hidden and not visible). Become. Similarly, for example, in the management software of a three-dimensional warehouse or a three-dimensional parking lot, it is conceivable to arrange the inventory information and the warehousing situation in a three-dimensional manner on the management screen. Even in such a case, the square area of the Sherpinsky carpet having a predetermined resolution is associated with the voxels (which store inventory information and warehousing information) constituting the voxel space in advance, or as described above. By using a correspondence rule, you can easily access information arranged in three dimensions (even if it is hidden and hidden) by specifying any square area on the Shelpinsky carpet. Is possible.
更に、上述のような3D座標の設定機能と直線や曲線の設定機能とを利用すれば、オブジェクト移動アニメーション用の軌跡をデザインすることも可能となり、例えば、3Dのキャラクターがパス(道)に沿って進行するアニメーション等を作成する際に有効なものとなるであろう。また、上述の3D座標の設定機能と曲線の設定機能とを利用して3次元空間(3次元座標系)に設定された曲線に沿ったベクトル場を計算すると共にパーティクルシステムを用いることで、流れ場のデザインと可視化とを実行することができる。 Furthermore, by using the 3D coordinate setting function and the straight line / curve setting function as described above, it is possible to design a trajectory for object movement animation. For example, a 3D character follows a path. It will be useful when creating animations that progress in the future. Further, by using the above-described 3D coordinate setting function and curve setting function, a vector field along a curve set in a three-dimensional space (three-dimensional coordinate system) is calculated and a particle system is used. You can perform field design and visualization.
図10は、本発明に係るボクセルモデリング用プログラムがインストールされたボクセルモデリング装置としてのコンピュータ20Aの概略構成図である。なお、以下の説明において、ここまでに説明した要素等と同一の要素等には同一の参照符号を付し、重複する説明を省略する。
FIG. 10 is a schematic configuration diagram of a
図10に示すように、コンピュータ20Aにおいてボクセルモデリング用プログラムが起動されると、表示装置30の表示画面31にウィンドウ90Aが表示される。ウィンドウ90Aは、2D座標指定領域92Aと3D画像表示領域93Aとを含む。2次元空間としての2D座標指定領域92Aには、第N段階のシェルピンスキー・カーペット100Aが表示され、ユーザによりシェルピンスキー・カーペット100Aの何れかの正方形領域が選択されると、例えば当該正方形領域が塗りつぶされたように表示される。また、3D画像表示領域93Aには、2D座標指定領域92Aに表示されたシェルピンスキー・カーペット100A上でユーザにより指定(選択)された2D位置(ピクセル単位のxy座標)すなわち何れかの正方形領域に対応したボクセルに基づいてモデリング部23Aにより設定された3次元形状を示す3D画像300が表示される。図10の例において、モデリング部23は、上述の対応規則(テーブル)を用いて、シェルピンスキー・カーペット100上で指定された正方形領域に対応する1個のボクセルの2N×2N×2N個のボクセルからなるボクセル空間における位置を取得し、取得した位置のボクセルを消去することにより立方体を削り出すようにして3次元形状を設定する。
As shown in FIG. 10, when the voxel modeling program is started in the
このように、解像度N(第N段階)のシェルピンスキー・カーペットとボクセル空間とを対応付けると共に、2次元空間上での2次元位置の指定により3次元空間における3次元位置の指定を可能とすれば、3次元形状をボクセルの集合として表現するボクセルモデリングをも容易に実行可能となる。また、このようにして解像度Nのシェルピンスキー・カーペットを用いて立体形状をモデリングした場合、必然的に値Nよりも小さい解像度に対応したボクセルモデルデータを得ることができる。そして、ボクセルモデリング用プログラムがインストールされたコンピュータ20Aによれば、各ボクセルにボクセル値を付与しておくことで、ポリゴンモデリングとは異なり、3次元形状の表面のみならず形状内部の密度といったような内部データまでモデリングすることが可能となる。なお、このようなボクセルモデリングにより得らえる3次元形状は滑らかな表面を有するものではないが、例えばマーチングキューブ法(Lorensen W.E., Cline H.E., "Marching Cubes: A High Resolution 3D Surface Construction Algorithm"等参照)といった手法を用いることで3次元形状の表面を滑らかなものに近似することができる。また、図10の例では、シェルピンスキー・カーペット100上で指定された正方形領域に対応するボクセルをボクセル空間から消去することにより3次元形状を設定しているが、これに限られるものではない。すなわち、シェルピンスキー・カーペット100上で指定された正方形領域に対応するボクセルを積み上げるように、すなわち、指定された正方形領域に対応するボクセルの集合として3次元形状を設定してもよい。
In this way, it is possible to associate the Shelpinsky carpet of resolution N (Nth stage) with the voxel space and specify the three-dimensional position in the three-dimensional space by specifying the two-dimensional position on the two-dimensional space. For example, voxel modeling that expresses a three-dimensional shape as a set of voxels can be easily executed. In addition, when a three-dimensional shape is modeled using a Shelpinsky carpet having a resolution N in this manner, voxel model data corresponding to a resolution smaller than the value N can be obtained. Then, according to the
以上、実施例を用いて本発明の実施の形態について説明したが、本発明は上記実施例に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において、様々な変更をなし得ることはいうまでもない。 The embodiments of the present invention have been described above using the embodiments. However, the present invention is not limited to the above embodiments, and various modifications can be made without departing from the scope of the present invention. Needless to say.
本発明は、3次元空間における3次元位置の指定や3次元形状表現を必要とする情報処理分野において利用可能である。 The present invention can be used in the information processing field that requires designation of a three-dimensional position in a three-dimensional space and three-dimensional shape expression.
20,20A コンピュータ、21 入力受付部、22 情報記憶部、23,23A モデリング部、24 表示制御部、30 表示装置、31 表示画面、40 キーボード、50 マウス、90,90A ウィンドウ、92,92A 2D座標指定領域、93,93A 3D画像表示領域、95 ボタン、100、100A シェルピンスキー・カーペット、300 3D画像。
20, 20A computer, 21 input reception unit, 22 information storage unit, 23, 23A modeling unit, 24 display control unit, 30 display device, 31 display screen, 40 keyboard, 50 mouse, 90, 90A window, 92,
Claims (8)
2次元空間上で2次元位置を指定するための2次元位置指定手段と、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記2次元位置指定手段を用いて指定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置に基づいて前記3次元空間における3次元位置を取得する演算手段と、
を備える3次元位置指定装置。 A three-dimensional position designation device for designating a three-dimensional position in a three-dimensional space,
Two-dimensional position specifying means for specifying a two-dimensional position in a two-dimensional space;
A two-dimensional position designated by the two-dimensional position designation means of the Nth stage Sherpinski carpet having an array of 8 N squares (where “N” is an integer equal to or greater than 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region Computing means for obtaining a three-dimensional position in the three-dimensional space based on a position of the voxel in the voxel space;
A three-dimensional position specifying device.
前記対応規則は、第1段階のシェルピンスキー・カーペットを構成する8個の正方形領域と1つのボリュームを構成する2×2×2個のボクセルとの対応関係を規定しており、
前記演算手段は、第n段階(ただし、“n”は1≦n≦Nを満たす整数である。)のシェルピンスキー・カーペットの前記指定された2次元位置に対応する正方形領域の第n−1段階のシェルピンスキー・カーペットの前記指定された2次元位置に対応する正方形領域における位置と前記対応規則とに基づいて2n×2n×2n個のボクセルからなるボクセル空間内で前記指定された2次元位置に対応するボクセルの2n-1×2n-1×2n-1個のボクセルからなるボクセル空間内で前記指定された2次元位置に対応するボクセルにおける位置を取得し、取得したn個のボクセルの位置に基づいて前記3次元空間における3次元位置を取得する3次元位置指定装置。 The three-dimensional position specifying device according to claim 1,
The correspondence rule stipulates the correspondence between the 8 square regions constituting the first Sherpinski carpet and the 2 × 2 × 2 voxels constituting one volume,
The computing means is the n-th square area corresponding to the designated two-dimensional position of the Sherpinsky carpet in the n-th stage (where “n” is an integer satisfying 1 ≦ n ≦ N). The designation in a voxel space composed of 2 n × 2 n × 2 n voxels based on the position in the square area corresponding to the designated two-dimensional position of the one-step Sherpinski carpet and the correspondence rule. Obtaining a position in the voxel corresponding to the specified two-dimensional position in a voxel space composed of 2 n-1 × 2 n-1 × 2 n-1 voxels of the voxel corresponding to the specified two-dimensional position; A three-dimensional position designation device that acquires a three-dimensional position in the three-dimensional space based on the acquired positions of n voxels.
前記変換規則は、前記第1段階のシェルピンスキー・カーペットの8個の正方形領域をこれらに対して定められた一筆書きの経路上での順番に従って2×2×2個のボクセルに対して一筆書きの経路を辿るように割り当てる規則である3次元位置指定装置。 The three-dimensional position specifying device according to claim 1 or 2,
The conversion rule is to draw eight square areas of the first-stage Sherpinski carpet according to the order on the one-stroke path determined for them, with respect to 2 × 2 × 2 voxels. A three-dimensional position specifying device which is a rule assigned to follow a writing path.
表示画面上に画像を表示可能な表示手段と、
前記表示画面上に前記第N段階のシェルピンスキー・カーペットに基づく画像を表示させると共に、前記演算手段により取得された3次元位置を示す3次元座標を前記表示画面上にプロット表示させる表示制御手段と、
を更に備える3次元位置指定装置。 In the three-dimensional position designation device according to any one of claims 1 to 3 ,
Display means capable of displaying an image on the display screen;
Display control means for displaying an image based on the N-th stage Shelpinski carpet on the display screen and plotting the three-dimensional coordinates indicating the three-dimensional position acquired by the computing means on the display screen. When,
A three-dimensional position specifying device further comprising:
前記表示制御手段は、前記演算手段により取得された3次元位置を示す3次元座標を前記表示画面上にプロット表示させると共に、前記3次元位置の周囲に所定サイズのボクセルに基づく画像を表示させる3次元位置指定装置。 The three-dimensional position specifying device according to claim 4 ,
The display control means plots the three-dimensional coordinates indicating the three-dimensional position acquired by the computing means on the display screen, and displays an image based on a voxel having a predetermined size around the three-dimensional position. Dimensional positioning device.
2次元空間上で指定された2次元位置を特定する2次元位置特定モジュールと、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記特定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置に基づいて前記3次元空間における3次元位置を取得する演算モジュールと、
を備える3次元位置指定用プログラム。 A three-dimensional position designation program that causes a computer to function as a device for designating a three-dimensional position in a three-dimensional space,
A two-dimensional position specifying module for specifying a two-dimensional position specified in a two-dimensional space;
A square area corresponding to the specified two-dimensional position of the N-th stage Sherpinski carpet having an array of 8 N square areas (where “N” is an integer equal to or greater than 1) Corresponding to any one of 2 N × 2 N × 2 N voxels constituting the voxel space according to the correspondence rule, and at the position of the one voxel associated with the square region in the voxel space An arithmetic module that obtains a three-dimensional position in the three-dimensional space based on;
A three-dimensional position designation program comprising:
2次元空間上で2次元位置を指定するための2次元位置指定手段と、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記2次元位置指定手段を用いて指定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置を取得する位置取得手段と、
前記位置取得手段により取得された位置のボクセルに基づいて3次元形状を設定する形状設定手段と、
を備えるボクセルモデリング装置。 A voxel modeling device capable of expressing a three-dimensional shape as a set of voxels,
Two-dimensional position specifying means for specifying a two-dimensional position in a two-dimensional space;
A two-dimensional position designated by the two-dimensional position designation means of the Nth stage Sherpinski carpet having an array of 8 N squares (where “N” is an integer equal to or greater than 1). Are associated with any one of 2 N × 2 N × 2 N voxels constituting a voxel space according to a predetermined correspondence rule, and the one region associated with the square region Position acquisition means for acquiring a position of the voxel in the voxel space;
Shape setting means for setting a three-dimensional shape based on voxels at positions acquired by the position acquisition means;
A voxel modeling device.
2次元空間上で指定された2次元位置を特定する2次元位置特定モジュールと、
8N個(ただし“N”は値1以上の整数である。)の正方形領域の配列を有する第N段階のシェルピンスキー・カーペットの前記特定された2次元位置に対応する正方形領域を所定の対応規則に従ってボクセル空間を構成する2N×2N×2N個のボクセルの何れか1個に対応付けすると共に、前記正方形領域に対応付けられた前記1個のボクセルの前記ボクセル空間における位置を取得する位置取得モジュールと、前記取得された位置のボクセルに基づいて3次元形状を設定する形状設定モジュールと、
備えるボクセルモデリング用プログラム。 A voxel modeling program for causing a computer to function as a device for expressing a three-dimensional shape as a set of voxels,
A two-dimensional position specifying module for specifying a two-dimensional position specified in a two-dimensional space;
A square area corresponding to the specified two-dimensional position of the N-th stage Sherpinski carpet having an array of 8 N square areas (where “N” is an integer equal to or greater than 1) Corresponding to any one of 2 N × 2 N × 2 N voxels constituting the voxel space according to the correspondence rule, and the position of the one voxel associated with the square region in the voxel space A position acquisition module to acquire, a shape setting module to set a three-dimensional shape based on the voxel of the acquired position,
Voxel modeling program provided.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008231398A JP5248958B2 (en) | 2008-09-09 | 2008-09-09 | Three-dimensional position designation device, three-dimensional position designation program, voxel modeling device, and voxel modeling program |
| PCT/JP2009/065770 WO2010029953A1 (en) | 2008-09-09 | 2009-09-09 | 3d position specification device, 3d position specification method, and 3d position specification program, voxel modeling device, voxel modeling method, and voxel modeling program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008231398A JP5248958B2 (en) | 2008-09-09 | 2008-09-09 | Three-dimensional position designation device, three-dimensional position designation program, voxel modeling device, and voxel modeling program |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2010066920A JP2010066920A (en) | 2010-03-25 |
| JP2010066920A5 JP2010066920A5 (en) | 2011-11-17 |
| JP5248958B2 true JP5248958B2 (en) | 2013-07-31 |
Family
ID=42005206
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008231398A Expired - Fee Related JP5248958B2 (en) | 2008-09-09 | 2008-09-09 | Three-dimensional position designation device, three-dimensional position designation program, voxel modeling device, and voxel modeling program |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP5248958B2 (en) |
| WO (1) | WO2010029953A1 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6852298B2 (en) * | 2015-08-21 | 2021-03-31 | 東亞合成株式会社 | Curable composition for inkjet ink |
| CN110009729B (en) * | 2019-03-21 | 2023-07-07 | 深圳点猫科技有限公司 | Three-dimensional voxel modeling method and system based on artificial intelligence |
| CN110021058B (en) * | 2019-03-21 | 2023-09-26 | 深圳点猫科技有限公司 | Three-dimensional voxel modeling method and system convenient for child operation |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61169927A (en) * | 1985-01-23 | 1986-07-31 | Hitachi Ltd | Input method of three-dimensional coordinate |
-
2008
- 2008-09-09 JP JP2008231398A patent/JP5248958B2/en not_active Expired - Fee Related
-
2009
- 2009-09-09 WO PCT/JP2009/065770 patent/WO2010029953A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2010029953A1 (en) | 2010-03-18 |
| JP2010066920A (en) | 2010-03-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10817132B2 (en) | Three-dimensional digital models in two-dimensional digital canvases | |
| JP7004645B2 (en) | Foveal geometry tessellation | |
| US9600929B1 (en) | System, computer-readable medium and method for 3D-differencing of 3D voxel models | |
| US8914259B2 (en) | Passive associativity in three-dimensional (3D) modeling | |
| US20130300740A1 (en) | System and Method for Displaying Data Having Spatial Coordinates | |
| CN114375464B (en) | Ray tracing of dynamic cells in virtual space using bounding volume representation | |
| US9269195B2 (en) | Methods and apparatus for generating curved extrusions | |
| KR101507776B1 (en) | methof for rendering outline in three dimesion map | |
| JPH07200218A (en) | Method and equipment for interlocking of graphical object | |
| JP2006107093A (en) | Image processor and program | |
| JP5248958B2 (en) | Three-dimensional position designation device, three-dimensional position designation program, voxel modeling device, and voxel modeling program | |
| US8334869B1 (en) | Method and apparatus for modeling 3-D shapes from a user drawn curve | |
| CN111932689B (en) | Three-dimensional object quick selection method adopting ID pixel graph | |
| JP3522505B2 (en) | Window display | |
| US20220334707A1 (en) | Computer-implemented method and SDK for rapid rendering of object-oriented environments with enhanced interaction | |
| JP7455546B2 (en) | Image processing device, image processing method, and program | |
| JP2020013390A (en) | Information processing apparatus, information processing program, and information processing method | |
| AU2023274149B2 (en) | Method for 3D visualization of sensor data | |
| KR100848687B1 (en) | 3D graphics processing device and its operation method | |
| KR102818814B1 (en) | Interactive image segmentation method and apparatus thereof | |
| JP4585298B2 (en) | Drawing method and apparatus | |
| JP6516690B2 (en) | Analyzer and analysis program | |
| CN120495554A (en) | Three-dimensional model contour drawing method, device, equipment and medium | |
| JP2001188922A (en) | Three-dimensional shape processing system, three-dimensional shape processing method, and storage medium storing program for executing the processing method | |
| Reed | Development of an Interactive Ray Trace Display for MGED |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110908 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110908 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20110908 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20110909 |
|
| 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: 20130312 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130411 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5248958 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20190419 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |