JPH0944701A - Object data conversion method in three-dimensional space - Google Patents

Object data conversion method in three-dimensional space

Info

Publication number
JPH0944701A
JPH0944701A JP7196310A JP19631095A JPH0944701A JP H0944701 A JPH0944701 A JP H0944701A JP 7196310 A JP7196310 A JP 7196310A JP 19631095 A JP19631095 A JP 19631095A JP H0944701 A JPH0944701 A JP H0944701A
Authority
JP
Japan
Prior art keywords
data
dimensional
divided
spaces
object data
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.)
Pending
Application number
JP7196310A
Other languages
Japanese (ja)
Inventor
Nobuko Kato
伸子 加藤
Miwako Doi
美和子 土井
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP7196310A priority Critical patent/JPH0944701A/en
Publication of JPH0944701A publication Critical patent/JPH0944701A/en
Pending legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

PROBLEM TO BE SOLVED: To operate only a part of an object in a three-dimensional CG space by converting the data of a flat structure having no hierarchical structure into the data having a hierarchical structure. SOLUTION: An object reading means 2 reads the desired object data out of an object storage means 1, and a histogram generation means 4 generates the histograms projected for every coordinate axis based on the parameter that is set by a parameter setting means 3 for division. An object division means 5 divides a three-dimensional space including the object data at every area where the prescribed grade value is set. If a plane forming the object data is included in plural divided three-dimensional spaces, these spaces are regarded as one of divided three-dimensional spaces. Then the divided three- dimensional spaces and the three-dimensional space regarded as one of divided three-dimensional spaces are outputted after a verification means 6 checked the presence or absence of the operating interference among the parts included in the object data.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、階層構造を持たないオ
ブジェクトデータを部品毎に分割する3次元空間内のオ
ブジェクトデータの変換方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for converting object data in a three-dimensional space for dividing object data having no hierarchical structure into parts.

【0002】[0002]

【従来の技術】建造物や機器の配置などを実際のものが
出来る前に、3次元コンピュータグラフィックスを用い
て、検証するウォークスルーシステムが多く開発され、
設計に用いられるようになってきている。
2. Description of the Related Art Many walk-through systems have been developed for verifying the layout of buildings and equipment by using three-dimensional computer graphics before they can be actually used.
It is being used for design.

【0003】これらのウォークスルーに用いるデータ
は、専用のモデラーを使って作られることが多い。しか
し、現実に近い物にするためには、細かくデータを作り
直す必要があること、手間暇かけて作成したデータが設
計の後工程に再利用できないなど、データ入力にかかる
コストが高い点が問題になってきている。
The data used for these walkthroughs is often created using a dedicated modeler. However, in order to make it close to reality, it is necessary to recreate the data in detail, and the cost of data entry is high, such as the fact that the data created with time and effort cannot be reused in the post-design process, which is a problem. It has become to.

【0004】これを改善するために、3次元CADで作
られたデータをCG用に変換して用いる方法が検討され
ている。これらの変換方法では、それぞれの3次元CA
Dデータに特有のコマンドを、物体の表面を構成する面
(ポリゴン)に変換する。3次元CADデータに法線ベ
クトルなどの情報が欠けている場合には、面(ポリゴ
ン)を構成する頂点座標の並びから面の裏表を推定し、
法線ベクトルを付加する必要がある。
In order to improve this, a method of converting data created by three-dimensional CAD for CG and using it is being studied. In these conversion methods, each three-dimensional CA
A command peculiar to the D data is converted into a surface (polygon) forming the surface of the object. When information such as a normal vector is missing in the three-dimensional CAD data, the front and back of the surface are estimated from the arrangement of the vertex coordinates forming the surface (polygon),
It is necessary to add a normal vector.

【0005】このような変換により作成された3次元C
Gのデータは、物体全体がまとまったデータになってい
る。例えば、椅子という物体のデータの背もたれや高さ
等は変化しない動きのないデータである。この動きのな
い物体を表示する場合には、全体がまとまっていてもと
くに問題はない。言い換えると、障害物として存在する
場合は問題がない。
Three-dimensional C created by such conversion
The data of G is data in which the entire object is collected. For example, the data of an object such as a chair is static data in which the backrest, height, etc. do not change. When displaying an object that does not move, there is no particular problem even if the whole object is put together. In other words, there is no problem if it exists as an obstacle.

【0006】しかし、人体を歩かせるとか、回転椅子の
座の部分を回転させるというように、可動部分を有する
3次元物体の一部に指示を与えて、動かすような場合に
は、物体全体がまとまったデータになっていると対処で
きないという問題がある。
However, when an instruction is given to a part of a three-dimensional object having a movable part such as walking a human body or rotating a seat part of a swivel chair, the whole object is moved. There is a problem that it can not be dealt with if the data is organized.

【0007】3次元物体の一部を操作するためには、あ
らかじめ個々の部品毎に階層構造を持った物体を作成し
なければならない。この階層構造にあわせて、3次元C
ADデータとの間で、各階層の部品毎にデータをやり取
りするような方法をとっている。あるいは、一体化され
ている3次元CADデータを分割し階層構造を組み上げ
る作業をCGデザイナが手作業で行ったりしている。こ
のような手作業は非常に煩雑になることがある。
In order to operate a part of a three-dimensional object, an object having a hierarchical structure must be created for each individual part in advance. Three-dimensional C according to this hierarchical structure
Data is exchanged with the AD data for each part of each layer. Alternatively, the CG designer manually performs the work of dividing the integrated three-dimensional CAD data and assembling the hierarchical structure. Such manual work can be very complicated.

【0008】つまり、従来の方法では、あらかじめ意図
せず作成した3次元CADデータを用いるのでは、機能
的な動きをさせることができなかったわけである。これ
が3次元CADを再利用するときの障壁になっている。
That is, in the conventional method, it was not possible to make a functional movement by using the three-dimensional CAD data which was unintentionally created in advance. This is a barrier when reusing the three-dimensional CAD.

【0009】さらに、階層構造を持った物体を用いて、
アニメーションを作成するには、各階層に動きを与える
必要がある。この動きは他の階層の部品に衝突(干渉)
したりしないように、適切な可動範囲を与えねばならな
い。これを行うのに、(1)CGデザイナが整合性をチ
ェックし設定を行なうか、(2)表示の際に、干渉チェ
ックを行ない不整合を防ぐ方法が行なわれてきた。
Further, by using an object having a hierarchical structure,
In order to create animation, it is necessary to give motion to each layer. This movement collides with the parts of other layers (interference)
It must be given a suitable range of motion so that it will not fall. In order to do this, (1) the CG designer checks the consistency and sets it, or (2) the method of performing the interference check at the time of display to prevent the mismatch.

【0010】(1)の方法は、人間が行うので、手間が
かかる。一方(2)の方法は干渉チェックの計算負荷が
高いため、計算機コストがかかるというように、それぞ
れ、問題を抱えている。
Since the method (1) is performed by a human, it is troublesome. On the other hand, the method (2) has a problem in that the calculation cost of the interference check is high and thus the computer cost is high.

【0011】[0011]

【発明が解決しようとする問題点】上述の従来の方法で
は、階層構造をあらかじめ設定せずにデータを作成する
ので、部分的に動かすなどの処理をおこなうことが難し
かった。さらに、可動の範囲も手作業で与えるか、計算
機コストをかけて計算するかで、手間がかかった。
In the above-mentioned conventional method, since data is created without setting the hierarchical structure in advance, it is difficult to carry out processing such as partial movement. Furthermore, it took time to give the movable range by hand or to calculate it with a computer cost.

【0012】これに対し、本発明では、階層構造を持た
ないデータを解析し、階層構造をもつデータに自動的に
変換することを目的とする。更に、変換されたデータに
対し、あらかじめ干渉チェックを行うことで、自動的に
可動範囲を決定することを目的とする。
On the other hand, the object of the present invention is to analyze data having no hierarchical structure and automatically convert it into data having a hierarchical structure. Furthermore, it is an object to automatically determine the movable range by performing interference check on the converted data in advance.

【0013】[0013]

【課題を解決するための手段】上記問題点を解決するた
めに本願発明は、複数の平面で構成された3次元空間内
のオブジェクトデータを、各座標軸ごとに射影しヒスト
グラムを生成し、生成した前記ヒストグラムが所定の勾
配値となる箇所で前記オブジェクトデータを含む3次元
空間を分割し、分割した前記3次元空間のうち、オブジ
ェクトデータを構成する平面が分割した複数の3次元空
間に含まれる場合、この複数の3次元空間を分割した1
つの3次元空間とみなし、分割した前記3次元空間およ
び分割した1つの空間とみなした前記3次元空間を前記
オブジェクトデータの部品として出力することを特徴と
する。
In order to solve the above problems, the invention of the present application generates object histograms by projecting object data in a three-dimensional space composed of a plurality of planes for each coordinate axis. When the three-dimensional space containing the object data is divided at a position where the histogram has a predetermined gradient value, and among the divided three-dimensional spaces, the planes forming the object data are included in a plurality of divided three-dimensional spaces. , 1 that is obtained by dividing this 3D space
It is characterized in that it is regarded as one three-dimensional space, and the divided three-dimensional space and the three-dimensional space regarded as one divided space are output as parts of the object data.

【0014】[0014]

【作用】階層構造を持たないフラットな構造のデータ
を、階層構造を持つデータに変換することで、3次元C
G空間内において物体の一部のみを操作することが可能
となる。
[Function] By converting flat data having no hierarchical structure into data having a hierarchical structure, three-dimensional C
It is possible to operate only a part of the object in the G space.

【0015】このようなデータ変換が自動的に行なわれ
るため、階層データ作成の手間を大幅に軽減することが
できる。また、各部位の可動範囲が自動設定されるため
に、CGデザイナが特に設定を行なわなくとも、表示の
際に干渉チェックを行なうことなく、整合性のある動き
が保証されるので、手作業あるいは計算機処理を大幅に
削減することができる。
Since such data conversion is automatically performed, the labor of creating hierarchical data can be greatly reduced. In addition, since the movable range of each part is automatically set, even if the CG designer does not make any particular setting, consistent movement is guaranteed without performing interference check at the time of display. Computer processing can be significantly reduced.

【0016】[0016]

【実施例】以下、本発明の実施例を図面に従い説明す
る。図1は同実施例の概略構成を示すものである。ま
ず、オブジェクト記憶手段1に記憶されている複数の平
面で構成された所望のオブジェクトデータを、オブジェ
クト読込手段2が読み込む。オブジェクト読込手段2に
よって読み込まれたオブジェクトデータを、パラメータ
設定手段3によって設定された分割のためのパラメータ
をもとに、ヒストグラム生成手段4は各座標軸ごとに射
影しヒストグラムを生成する。ヒストグラム生成手段4
によって生成された前記ヒストグラムをもとに、オブジ
ェクト分割手段5は、所定の勾配値となる箇所で前記オ
ブジェクトデータを含む3次元空間を分割し、分割した
前記3次元空間のうち、オブジェクトデータを構成する
平面が分割した複数の3次元空間に含まれる場合、この
複数の3次元空間を分割した1つの3次元空間とみな
し、分割した前記3次元空間および分割した1つの空間
とみなした前記3次元空間を前記オブジェクトデータの
部品の動作の干渉の有無を検証手段6でチェックして出
力する次に、本願発明で行う自動階層構造作成方法につ
いて説明する。CGで用いられる3次元物体として、オ
フィス用椅子データを例にとり、階層構造のないフラッ
トな椅子データの変換を行う自動階層構造作成方法につ
いて説明する。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows a schematic configuration of the same embodiment. First, the object reading unit 2 reads desired object data composed of a plurality of planes stored in the object storage unit 1. The histogram generating means 4 projects the object data read by the object reading means 2 for each coordinate axis based on the parameters for division set by the parameter setting means 3 to generate a histogram. Histogram generating means 4
Based on the histogram generated by the above, the object dividing unit 5 divides the three-dimensional space including the object data at a position having a predetermined gradient value, and configures the object data in the divided three-dimensional space. When the plane to be included is included in a plurality of divided three-dimensional spaces, the plurality of three-dimensional spaces are regarded as one divided three-dimensional space, and the divided three-dimensional space and the three-dimensional divided spaces are regarded as the three-dimensional space. The verification means 6 checks the presence or absence of interference in the operation of the parts of the object data in the space and outputs the space. Next, an automatic hierarchical structure creating method according to the present invention will be described. As an example of office chair data as a three-dimensional object used in CG, an automatic hierarchical structure creating method for converting flat chair data having no hierarchical structure will be described.

【0017】図2および図3に自動階層構造作成方法の
処理の流れ図を示す。以下、この流れ図に沿って説明す
る。ステップ1ではデータをディスクからメモリへとロ
ードする。このデータは図4に示すような、ポリゴン物
体であり、データは各面の座標と色により構成されてい
る。
2 and 3 show flow charts of the process of the automatic hierarchical structure creating method. Hereinafter, description will be given along this flow chart. In step 1, data is loaded from disk into memory. This data is a polygonal object as shown in FIG. 4, and the data is composed of the coordinates and color of each surface.

【0018】ステップ2では、以下に示す初期パラメー
タを設定する。構造解析方法としては、投影法を用い
る。これは、物体をある面に投影させた結果をヒストグ
ラムで処理し、これを解析するものであり、パラメータ
として、投影平面、ヒストグラム分割幅が必要となる。
In step 2, the following initial parameters are set. The projection method is used as the structural analysis method. In this method, a result of projecting an object on a certain surface is processed by a histogram and analyzed, and a projection plane and a histogram division width are required as parameters.

【0019】ここでは、y軸を基本軸と仮定し、x軸,
z軸, y軸の順に投影することにする。また、ヒストグ
ラムの初期幅は、全てのポリゴンの対角線の長さの平均
とする。
Here, assuming that the y-axis is the basic axis, the x-axis,
The z-axis and the y-axis are projected in this order. The initial width of the histogram is the average of the diagonal lengths of all polygons.

【0020】具体的には、あるポリゴンの頂点が(x
0、y0、z0)、(x1、y1、z1)、(x2、y
2、z2)だったときに、x軸では、x0、x1、x3
の座標にあたるところにそれぞれ、度数(ヒストグラ
ム)が1ずつ、加算される。y軸、z軸に関しても同様
である。このような作業をすべてのポリゴンに対して行
う訳である。その結果、ポリゴンがたくさんある部分の
ヒストグラムが高くなる。
Specifically, if the vertex of a polygon is (x
0, y0, z0), (x1, y1, z1), (x2, y
2, z2), x0, x1, x3 on the x-axis
The frequency (histogram) is incremented by 1 at each of the coordinates. The same applies to the y-axis and the z-axis. This kind of work is performed on all polygons. As a result, the histogram of a portion having many polygons becomes high.

【0021】椅子などのような什器は、人間が使うため
に、主要な面、例えば、座面、背面などは、水平/垂直
面から構成されている。このような場合には、y軸を基
本とした方が、階層化するのに適した投影結果を得る事
ができる。階層化に十分な結果が得られない場合には、
次のステップ3で、パラメータの変更を行う。
Furniture such as chairs has horizontal / vertical planes for its main surfaces, for example, a seating surface and a back surface, for human use. In such a case, it is possible to obtain a projection result suitable for hierarchization by using the y axis as a basis. If you don't get enough results for stratification,
In the next step 3, the parameters are changed.

【0022】ステップ3では、2回目以降の計算の際
に、投影平面の変更、ヒストグラム幅の変更を行なう。
ステップ4では、物体の投影を行ない、作成されたヒス
トグラムに対しフィッティング処理を行なうことで、分
割面を決定する。分割は勾配値が最も急な箇所でおこな
う。
In step 3, the projection plane and the histogram width are changed in the second and subsequent calculations.
In step 4, the object is projected, and fitting processing is performed on the created histogram to determine the division plane. The division is performed at the point where the gradient value is the steepest.

【0023】椅子の例に対して行った結果を図6に示
す。図6では、3次元CADで作られた椅子のデータを
x軸、y軸に対して、投影した結果にフィッティング処
理を行った結果である。
The results performed on the example chair are shown in FIG. FIG. 6 shows the result of fitting processing performed on the result of projection of chair data made by three-dimensional CAD on the x-axis and the y-axis.

【0024】x軸に対する投影では、椅子の支柱の部分
のポリゴン数が多いので、中央のヒストグラムが高くな
っている。これに対して、分割面を決定すると、ヒスト
グラムの両端と勾配が最も急な中央付近が、分割の候補
となる。分割の箇所は図6では、点線で示されている。
In the projection on the x-axis, since the number of polygons in the column of the chair is large, the histogram at the center is high. On the other hand, when the division plane is determined, both ends of the histogram and the vicinity of the center where the gradient is steep are candidates for division. The division points are indicated by dotted lines in FIG.

【0025】y軸に対する投影では、椅子の背、座、キ
ャスタの部分のポリゴン数が多いので、この3箇所にピ
ークをもつヒストグラムとなる。従って、分割の箇所は
両端と、勾配が急な4箇所になる。これらは図6では、
点線で示されている。
In the projection on the y-axis, the number of polygons at the back of the chair, the seat, and the casters is large, so that a histogram having peaks at these three locations is obtained. Therefore, there are four dividing points at both ends and a steep gradient. These are
Indicated by dotted lines.

【0026】この結果、椅子は、15個の空間に分割さ
れた。ステップ5では、各ポリゴンの頂点座標を、ステ
ップ4で決定した単数または複数の分割面により分割さ
れた各空間に、分割する。一つのポリゴンが複数の分割
空間にまたがった場合は、これらの空間を1つの空間と
再定義する。
As a result, the chair was divided into 15 spaces. In step 5, the vertex coordinates of each polygon are divided into each space divided by the single or plural dividing surfaces determined in step 4. When one polygon spans a plurality of divided spaces, these spaces are redefined as one space.

【0027】図6の例では、椅子は15この空間に分割
された。が、椅子の背の部分を構成するポリゴンは空間
1、2、3の3つにまたがっているものがあるので、こ
の空間1、2、3は統合されて空間1となる。
In the example of FIG. 6, the chair is divided into 15 spaces. However, there are polygons forming the back part of the chair that extend over three spaces 1, 2, and 3, so that the spaces 1, 2, and 3 are integrated to form the space 1.

【0028】同様に空間7、8、9は統合されて空間7
に、空間13、14、15は統合されて空間13にな
る。逆に空間4と6、10と12にはポリゴンが存在し
ないので、このような空間は除かれる。
Similarly, the spaces 7, 8 and 9 are integrated into the space 7
Then, the spaces 13, 14, and 15 are integrated into the space 13. On the contrary, since there are no polygons in the spaces 4, 6, 10 and 12, such space is excluded.

【0029】また、図6では明確ではないが、椅子の支
柱が空間5から2に繋がっている場合がある。このよう
な場合は、z軸方向の投影で、支柱と背の部分が別れる
ので、背に関しては空間1、2、3を統合するが、支柱
に関して、空間2と5を統合する処理を行う。ステップ
6では、終了条件を調べる。終了条件としては、期待の
分割数に達したかどうかが考えられる。これを式に表す
と、次のようになる。
Although not clearly shown in FIG. 6, there are cases where the support columns of the chair are connected to the spaces 5 to 2. In such a case, since the column and the spine are separated by the projection in the z-axis direction, the spaces 1, 2, and 3 are integrated with respect to the spine, but the space 2 and the space 5 are integrated with respect to the column. In step 6, the termination condition is checked. As an end condition, it is possible to consider whether or not the expected number of divisions has been reached. This can be expressed as follows.

【0030】[0030]

【数1】 (D;期待分割数、d;分割数、α;収束範囲) 期待分割数Dは、現段階で分けたい部品数である。収束
範囲αは分割を期待分割数に対して、どの程度の増減で
やめるかのめやすである。αが小さければ、分割数dは
ほとんど期待分割数と同じ値でなければ、終了できな
い。
[Equation 1] (D: Expected number of divisions, d: Number of divisions, α: Convergence range) The expected number of divisions D is the number of parts to be divided at this stage. The convergence range α is a measure of how much the division is stopped with respect to the expected number of divisions. If α is small, the number of divisions d must be almost the same as the expected number of divisions to complete the process.

【0031】例えば、椅子の場合では、5つぐらいに分
割されることを期待しているとすると、期待分割数Dの
値に5がセットされる。αが10%であれば、分割数d
は5でなければ、収束できない。
For example, in the case of a chair, if it is expected that the chair will be divided into about 5, the expected division number D is set to 5. If α is 10%, the number of divisions d
If is not 5, it cannot converge.

【0032】図6の例では、うまく、分割数は5になっ
たでの、終了できる。終了できない場合にはステップ3
に戻って、投影幅などのパラメータを修正の上で、ステ
ップ4〜6を繰り返す。
In the example of FIG. 6, since the number of divisions has become 5 successfully, the process can be ended. If you cannot finish, step 3
Returning to step 1, the parameters such as the projection width are corrected, and steps 4 to 6 are repeated.

【0033】ステップ7では、分割階層化されデータの
各部分に対して、さらに階層化を行なうかどうかを決定
する。もしさらに階層化を行なう場合には、処理を行な
うデータをデータの分割部分に限定し、ステップ2〜6
を繰り返す。
In step 7, it is determined whether or not to further hierarchize each part of the divided and hierarchized data. If further hierarchization is performed, the data to be processed is limited to the divided parts of the data, and steps 2 to 6
repeat.

【0034】つまり、図6の例では、ステップ6まで
で、5つの部品に分割できた。が、キャスターなどは、
まだ、脚の部分から分割されていない。これを分割する
には、空間13(図6の空間13、14、15が統合さ
れて出来た空間)の中を、ステップ2〜6の手順で、再
度分割する必要がある。
That is, in the example of FIG. 6, the process could be divided into five parts up to step 6. However, casters, etc.
Not yet split from the leg part. In order to divide this, it is necessary to divide the space 13 (the space formed by integrating the spaces 13, 14, and 15 in FIG. 6) again by the procedure of steps 2 to 6.

【0035】以上のようにして、図4のように、階層構
造を持たなかったデータが、図5のように、階層を持っ
たデータに変換される。さらに、アニメーションとして
物体を動かすためには、各部品がどの範囲ならば動ける
かの値が必要である。図7は、処理プロセッサ1におけ
る可動範囲算出の流れ図である。
As described above, the data having no hierarchical structure as shown in FIG. 4 is converted into the data having a hierarchical structure as shown in FIG. Furthermore, in order to move an object as an animation, it is necessary to have a value indicating in which range each part can move. FIG. 7 is a flowchart of the movable range calculation in the processor 1.

【0036】ステップ9で、まず部品番号iの初期化
(0にセット)と可動範囲αk、βk、γk(kは1か
らN、Nは全部品数)の初期化(十分大きな値たとえ
ば、10、000にセット)を行う。
In step 9, first, the part number i is initialized (set to 0) and the movable ranges αk, βk, γk (k is 1 to N, N is the total number of parts) (a sufficiently large value, for example, 10, 000).

【0037】ステップ10では、その値を1ずつ加算
し、可動範囲をすべての部品に対して算出したかをステ
ップ11により、判定する。また、それ以前のステップ
で他の部品との干渉チェックにより、可動範囲が0にセ
ットされている場合には、ステップ13以下を実行する
必要がないので、それをチェックする(ステップ1
2)。
In step 10, the value is incremented by 1 and it is determined in step 11 whether the movable range has been calculated for all parts. If the movable range is set to 0 by the interference check with other parts in the previous step, it is not necessary to execute step 13 and subsequent steps, so check it (step 1
2).

【0038】ステップ13では、対象の部品i以外の部
品番号jを設定する。まず、部品jが部品iの可動範囲
を左右するのに、十分近い範囲にあるかどうかを、両者
のバウンディングボックス(外接直方体)に関して干渉
チェックする事により判定する(ステップ14)。
In step 13, a part number j other than the target part i is set. First, it is determined whether or not the component j is within a range sufficiently close to the movable range of the component i by performing an interference check on the bounding boxes (circumscribing rectangular parallelepipeds) of both components (step 14).

【0039】干渉していない場合には、その部品jに関
して、検討する必要がないので、次の部品に移る(ステ
ップ15)。干渉していた場合には、双方の部品自身の
干渉チェックを行う(ステップ17)。干渉した場合に
は、部品iと部品jは可動できないということなので、
その値0をそれぞれの可動範囲αi、βi、γi、α
j、βj、γjにセットする(ステップ18)。部品j
に関してもセットすることで、以降のステップで部品j
に関して、可動範囲を算出する手間をはぶく(ステップ
12でその判定をおこなっている)。
If there is no interference, there is no need to consider the part j, and the process moves to the next part (step 15). If they interfere with each other, an interference check is performed on both components themselves (step 17). If they interfere, the parts i and j cannot move.
The value 0 is set to the respective movable range αi, βi, γi, α
It is set to j, βj, and γj (step 18). Part j
Is also set, so that in the subsequent steps, the part j
With regard to (2), it takes time and effort to calculate the movable range (the determination is made in step 12).

【0040】部品iと部品jが干渉していない場合に
は、部品iをx軸、y軸、z軸の廻りに回転させて、部
品jと干渉するようになったときの値を算出する(ステ
ップ19)。算出は1°ずつ加算していく方法や、10
°ずつ加算して、干渉した時点から、1°ずつ減算して
求める方法など、いろいろ可能である。
When the component i and the component j do not interfere with each other, the component i is rotated around the x-axis, the y-axis, and the z-axis to calculate the value when the component i interferes with the component j. (Step 19). The calculation is done by adding 1 °, or 10
Various methods are possible, such as a method of adding by each degree and subtracting by 1 degree from the time of interference, to obtain.

【0041】その値が、他の部品との干渉チェックによ
り算出された可動範囲より小さければ、その値をそれぞ
れ該当の値(αi、βi、γi)にセットする(ステッ
プ20)。αi、βi、γiの初期値はステップ9で、
十分大きな値にセットされているので、最初に算出され
た値で、まず置き換わる。
If the value is smaller than the movable range calculated by the interference check with other parts, the value is set to the corresponding value (αi, βi, γi) (step 20). The initial values of αi, βi, γi are step 9,
Since it is set to a sufficiently large value, the value calculated first replaces it.

【0042】同様の干渉チェックを部品jを次々に変え
て行う。最後まで残った可動範囲αi、βi、γiが部
品iの可動範囲となる。同様に他の部品に関しても、ス
テップ11から20をくりかえせばよい。 (変形例)第1の実施例では、ポリゴンの頂点データを
投影したヒストグラムを用いる方法を説明している。し
かし、ヒストグラムだけでは、十分に分割できない場合
も、考えられる。このような場合には、図4に示されて
いるように、3次元データに含まれるテクスチャや色な
どの属性情報も併せることで、より正確な分割をする方
法も考えられる。つまり、ステップ5でデータの分割を
行う時に、分割がはっきりしない時に、ポリゴンの属性
情報であるテクスチャや色が同一であれば、同じ部品と
みなして、分割するのである。
The same interference check is performed by changing the parts j one after another. The remaining movable ranges αi, βi, γi are the movable ranges of the part i. Similarly, for other parts, steps 11 to 20 may be repeated. (Modification) In the first embodiment, a method using a histogram obtained by projecting polygon vertex data has been described. However, there may be cases where the histogram alone cannot be sufficiently divided. In such a case, as shown in FIG. 4, a more accurate division method can be considered by combining attribute information such as texture and color included in the three-dimensional data. In other words, when the data is divided in step 5, if the division is not clear, if the texture and the color that are the attribute information of the polygon are the same, they are regarded as the same part and divided.

【0043】また、ステップ3でのパラメータの変更
は、ステップ5での分割結果である図6のようなヒスト
グラムをみながら、対話的に投影面、ヒストグラム幅な
どを変えられるようにし、収束を早めるなどの変形も可
能である。
Further, the parameter change in step 3 allows the projection plane, the histogram width, etc. to be changed interactively while observing the histogram as a result of the division in step 5 as shown in FIG. Modifications such as are also possible.

【0044】さらに、解析の結果得られた図5のような
階層構造に対して、各階層にラベル付けすることも可能
である。図5の階層構造は例えば、業界標準になりつつ
あるInvenvtor の形式などにあわせることも可能であ
る。
Further, it is possible to label each layer with respect to the layered structure as shown in FIG. 5 obtained as a result of the analysis. The hierarchical structure in FIG. 5 can be adapted to, for example, the Invenvtor format, which is becoming the industry standard.

【0045】[0045]

【発明の効果】本発明によれば、ユーザが特に手間をか
けることなく、3次元CG空間内でその一部分のみを操
作可能な物体に変換することができる。また、ユーザが
手間をかけることなく、部品の可動範囲も求める事がで
きるので、誰でも、3次元データを再利用して容易にア
ニメーションを生成できる。
According to the present invention, it is possible to convert only a part of the user into an operable object in the three-dimensional CG space without any particular effort by the user. In addition, since the user can also obtain the movable range of the part without much trouble, anyone can reuse the three-dimensional data and easily generate the animation.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明の一実施例に係わるハードウェアの構
成図である。
FIG. 1 is a block diagram of hardware according to an embodiment of the present invention.

【図2】 本発明の一実施例に係わる分割処理の流れ図
である。
FIG. 2 is a flow chart of division processing according to an embodiment of the present invention.

【図3】 本発明の一実施例に係わる分割処理の流れ図
である。
FIG. 3 is a flowchart of division processing according to an embodiment of the present invention.

【図4】 本発明の一実施例に係わる3次元物体データ
・ファイル図である。
FIG. 4 is a three-dimensional object data file diagram according to an embodiment of the present invention.

【図5】 本発明の一実施例に係わる階層を持つ3次元
物体データ・ファイル図である。
FIG. 5 is a three-dimensional object data file diagram having a hierarchy according to an embodiment of the present invention.

【図6】 本発明の一実施例に係わる分割方法を示した
概念図である。
FIG. 6 is a conceptual diagram showing a dividing method according to an embodiment of the present invention.

【図7】 本発明の一実施例に係わる可動範囲算出の流
れ図である。
FIG. 7 is a flowchart for calculating a movable range according to an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

オブジェクト記憶手段 1 オブジェクト読込手段 2 パラメータ設定手段 3 ヒストグラム生成手段 4 オブジェクト分割手段 5 検証手段 6 Object storage means 1 Object reading means 2 Parameter setting means 3 Histogram generating means 4 Object dividing means 5 Verification means 6

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数の平面で構成された3次元空間内のオ
ブジェクトデータを、各座標軸ごとに射影しヒストグラ
ムを生成し、 生成した前記ヒストグラムが所定の勾配値となる箇所で
前記オブジェクトデータを含む3次元空間を分割し、 分割した前記3次元空間のうち、オブジェクトデータを
構成する平面が分割した複数の3次元空間に含まれる場
合、この複数の3次元空間を分割した1つの3次元空間
とみなし、 分割した前記3次元空間および分割した1つの空間とみ
なした前記3次元空間を前記オブジェクトデータの部品
として出力することを特徴とする3次元空間内のオブジ
ェクトデータの変換方法。
1. A histogram is generated by projecting object data in a three-dimensional space composed of a plurality of planes for each coordinate axis, and the generated histogram includes the object data at a position where a predetermined gradient value is obtained. If a plane forming object data is included in a plurality of divided three-dimensional spaces among the divided three-dimensional spaces, one of the divided three-dimensional spaces is defined as one divided three-dimensional space. A method for converting object data in a three-dimensional space, characterized in that the divided three-dimensional space and the three-dimensional space regarded as one divided space are output as parts of the object data.
JP7196310A 1995-08-01 1995-08-01 Object data conversion method in three-dimensional space Pending JPH0944701A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7196310A JPH0944701A (en) 1995-08-01 1995-08-01 Object data conversion method in three-dimensional space

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7196310A JPH0944701A (en) 1995-08-01 1995-08-01 Object data conversion method in three-dimensional space

Publications (1)

Publication Number Publication Date
JPH0944701A true JPH0944701A (en) 1997-02-14

Family

ID=16355687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7196310A Pending JPH0944701A (en) 1995-08-01 1995-08-01 Object data conversion method in three-dimensional space

Country Status (1)

Country Link
JP (1) JPH0944701A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7215336B2 (en) 1999-12-27 2007-05-08 Minolta Co., Ltd. Method for generating surface data to be added to three dimensional shape data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7215336B2 (en) 1999-12-27 2007-05-08 Minolta Co., Ltd. Method for generating surface data to be added to three dimensional shape data

Similar Documents

Publication Publication Date Title
US6307554B1 (en) Apparatus and method for generating progressive polygon data, and apparatus and method for generating three-dimensional real-time graphics using the same
JP6787661B2 (en) Simulation of machining of workpieces
JP3184327B2 (en) Three-dimensional graphics processing method and apparatus
US9122270B2 (en) Hybrid adaptively sampled distance fields
Ilushin et al. Precise global collision detection in multi-axis NC-machining
JPH05266212A (en) Method for generating object
US20070229544A1 (en) Nurbs surface deformation apparatus and the method using 3d target curve
JP2010272110A (en) Method for simulating numerically controlled milling using adaptively sampled distance field
Yang et al. An improved algorithm for collision detection in cloth animation with human body
JPH09319896A (en) Three-dimensional image generating device
JPH10111953A (en) Image processing method, device therefor and recording medium
JPH07306888A (en) Method for execution of boolean operation regarding geometric graphic object in cad system
Johnson et al. The use of the voxmap pointshell method of collision detection in virtual assembly methods planning
Moustakides et al. 3D image acquisition and NURBS based geometry modelling of natural objects
JP2837584B2 (en) How to create terrain data
JP3950376B2 (en) Shape model generation method and apparatus from three-dimensional point group, shape model generation program from three-dimensional point group, and recording medium recording the program
Tzafestas et al. Real-time collision detection using spherical octrees: virtual reality application
WO2020120698A1 (en) A system for optimizing a 3d mesh
JPH0944701A (en) Object data conversion method in three-dimensional space
JP2832463B2 (en) 3D model reconstruction method and display method
US9582247B1 (en) Preserving data correlation in asynchronous collaborative authoring systems
JP3642923B2 (en) Video generation processing apparatus and structured data creation apparatus for creating structured data used in the apparatus
Savransky et al. Modeling and Rendering Escher‐Like Impossible Scenes
Zhu et al. A Visibility Sphere Marching algorithm of constructing polyhedral models for haptic sculpting and product prototyping
CA2509626A1 (en) Method and apparatus for generating m-degree forms in a n-dimension space