JPH0330189B2 - - Google Patents

Info

Publication number
JPH0330189B2
JPH0330189B2 JP20312384A JP20312384A JPH0330189B2 JP H0330189 B2 JPH0330189 B2 JP H0330189B2 JP 20312384 A JP20312384 A JP 20312384A JP 20312384 A JP20312384 A JP 20312384A JP H0330189 B2 JPH0330189 B2 JP H0330189B2
Authority
JP
Japan
Prior art keywords
dimensional
processing
polygon
point
triangle
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 - Lifetime
Application number
JP20312384A
Other languages
Japanese (ja)
Other versions
JPS6180463A (en
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 filed Critical
Priority to JP20312384A priority Critical patent/JPS6180463A/en
Publication of JPS6180463A publication Critical patent/JPS6180463A/en
Publication of JPH0330189B2 publication Critical patent/JPH0330189B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】 [目次] 概 要 産業上の利用分野 従来の技術 発明が解決しようとする課題 課題を解決するための手段 作 用 実施例 実施例の構成(第2図) 二次元変換処理および稜線分割処理(第3図、第
4図) 鋭角処理(第5図) 斜辺処理(第6図) ソート処理(第7図) 長方形生成処理(第8図、第9図) 再分割処理(第10図) 三次元変換処理 発明の効果 〔概要〕 コンピユータグラフイツクス等における図形処
理に用いられる曲面表示処理方法の改良に関し、 処理効率の向上を目的とし、 第一のメモリに格納されている三次元空間にお
ける曲面を含む面データと曲線を含む稜線データ
からなる立体の三次元情報を読み出して読み出し
た前記稜線データが曲線であるとき該曲線上に点
列を発生させて該曲線を該点列を結ぶ直線線分に
変換すると共に、該点列の座標値を二次元空間に
おける座標値に変換して前記稜線を二次元空間に
おける多角形に変換する稜線分割・二次元変換処
理ステツプと、該多角形の隣接する三頂点を結ぶ
三角形が第多角形内部で形成され且つ中央の頂点
の開き角が鋭角であるとき、該形成された三角形
と該三角形を除いた多角形とに分離する鋭角処理
ステツプと、該分離された多角形の辺のうち、前
記二次元空間座標軸に平行でない辺について、該
辺を斜辺とし他の二辺が座標軸に平行な直角三角
形を該多角形内部に形成し、該形成された三角形
と該三角形を除いた多角形とに分離する斜辺処理
ステツプと、該分離された多角形から、前記二次
元座標軸に平行で且つ該多角形の辺を辺の一部に
含む長方形を互いに重複なく且つ欠落なく形成す
る長方形生成ステツプと、前記三次元立体の面が
全曲率がゼロでない曲面のときは、前記形成され
た長方形をさらに分割し長方形と三角形の集合に
分離する再分割処理ステツプと、前記各処理ステ
ツプから得られた三角形と多角形の集合情報を前
記三次元情報に逆変換して第二のメモリに格納す
る三次元変換処理ステツプと、前記第二のメモリ
から読み出した三次元情報を、非表示部分のクリ
ツピングと隠面消去を施して表示画素への展開を
行う機能を有する表示制御装置へ供給することに
より表示部の画面に立体形状画像を表示せしめる
ステツプにより構成する。
[Detailed Description of the Invention] [Table of Contents] Overview Industrial Field of Application Conventional Technology Problems to be Solved by the Invention Means for Solving the Problems Working Examples Structure of the Examples (Figure 2) Two-dimensional transformation Processing and edge division processing (Fig. 3, Fig. 4) Acute angle processing (Fig. 5) Hypotenuse processing (Fig. 6) Sorting processing (Fig. 7) Rectangle generation processing (Fig. 8, Fig. 9) Redivision processing (Fig. 10) Effects of the three-dimensional conversion processing invention [Summary] Regarding the improvement of the curved surface display processing method used for graphic processing in computer graphics, etc., for the purpose of improving processing efficiency, the present invention is stored in the first memory. When the edge line data read out is a curve, a sequence of points is generated on the curve to identify the curve. an edge line division/two-dimensional transformation processing step of converting the point sequence into a straight line segment connecting the point sequence, and converting the coordinate values of the point sequence into coordinate values in a two-dimensional space to convert the edge line into a polygon in the two-dimensional space; , when a triangle connecting three adjacent vertices of the polygon is formed inside the polygon and the opening angle of the central vertex is an acute angle, the triangle is separated into the formed triangle and the polygon excluding the triangle. an acute angle processing step, and for the side of the separated polygon that is not parallel to the two-dimensional space coordinate axis, a right triangle with that side as the hypotenuse and the other two sides parallel to the coordinate axis is formed inside the polygon; a hypotenuse processing step of separating the formed triangle and a polygon excluding the triangle; and a hypotenuse processing step of separating the formed triangle into a polygon excluding the triangle; a rectangle generation step in which rectangles included in the three-dimensional solid are formed without overlapping or missing, and when the surface of the three-dimensional solid is a curved surface with a total curvature of non-zero, the formed rectangle is further divided into a set of rectangles and triangles. a three-dimensional conversion processing step of inversely converting the set information of triangles and polygons obtained from each processing step into the three-dimensional information and storing it in a second memory; A three-dimensional shape image is displayed on the screen of the display unit by supplying the three-dimensional information read from the memory to a display control device that has the function of clipping non-displayed parts and erasing hidden surfaces and developing it into display pixels. It consists of steps.

〔産業上の利用分野〕[Industrial application field]

本発明はコンピユータグラフイツクス等におけ
る図形処理に用いられる曲面表示処理方法の改良
に関する。
The present invention relates to improvements in curved surface display processing methods used for graphic processing in computer graphics and the like.

図形処理は取り扱うデータ量が大であるため、
曲面等の図形を処理する際の処理効率の向上が求
められている。
Graphic processing involves a large amount of data, so
There is a need to improve processing efficiency when processing figures such as curved surfaces.

〔従来の技術〕[Conventional technology]

平面の他に円柱面、円錐面、球面、自由曲面な
どの曲面を含む立体を、グラフイツク・デイスプ
レイに表示することは、コンピユータ・グラフイ
ツクスや三次元CAD(計算機援用設計)などの分
野で広く行われている。その際、表示処理する図
形のデータ量を削減し、表示処理に要する時間を
短縮するために、曲面を含む立体を、三角形や長
方形などの単純な平面多角形(基本多角形あるい
はポリゴンと呼ばれる)の集まりからなる多面体
で近似し、基本多角形ごとに表示することが一般
的に行われている。これは、分割表示方式と呼ば
れている。第12図は、立体を多面体で近似した
例を示し、第12図aは円柱を近似した場合、b
は球を近似した場合である。
Displaying solid objects, including flat surfaces as well as curved surfaces such as cylindrical surfaces, conical surfaces, spherical surfaces, and free-form surfaces, on graphic displays is widely used in fields such as computer graphics and three-dimensional CAD (computer-aided design). ing. At that time, in order to reduce the amount of figure data to be processed and the time required for display processing, solids including curved surfaces are converted into simple planar polygons such as triangles and rectangles (called basic polygons or polygons). It is common practice to approximate using a polyhedron consisting of a collection of , and display each basic polygon. This is called a split display method. Fig. 12 shows an example in which a solid is approximated by a polyhedron, Fig. 12 a shows an example in which a cylinder is approximated, and b
is the case when a sphere is approximated.

第13図は、従来技術による表示処理を説明す
る図である。
FIG. 13 is a diagram illustrating display processing according to the prior art.

第13図aに示すように、立体はその稜線によ
つて、幾つかの面に分けられる。曲面は基本多角
形の集まりからなる多面体で近似されるが、曲面
の基本多角形への分割は、通常この面ごとに行わ
れる。第13図bは同図aの円柱面上の正面の曲
面を取り出した例を示す。
As shown in Figure 13a, the solid is divided into several planes by its edges. A curved surface is approximated by a polyhedron made up of a collection of basic polygons, and the division of a curved surface into basic polygons is usually performed for each surface. FIG. 13b shows an example of the front curved surface on the cylindrical surface of FIG. 13a.

分割を行う際には、第13図cに示すように、
同図bの表示対象の曲面上に格子(メツシユ)を
設定し、格子と曲面図形の交点を計算し、曲面を
格子単位に分割する。そして、格子内に入つた図
形が三角形や四角形になつた場合は、その図形を
表示装置に転送し表示する。しかし、同図cで斜
線を施して示した部分のように、格子内の図形が
四角形より複雑な多角形図形である場合は、その
格子内に、より細かい格子を設定し、細分化され
た格子と図形の交点計算を行い、細分化された格
子内の図形が三角形や四角形になるまで分割を続
ける。第13図dは、同図cの斜線部分を取り出
して細分化した結果を示す。
When performing division, as shown in Figure 13c,
A lattice is set on the curved surface to be displayed as shown in FIG. If the figure that has entered the grid becomes a triangle or a quadrangle, that figure is transferred to a display device and displayed. However, if the figure within the grid is a polygonal figure that is more complex than a rectangle, as shown in the shaded area in Figure c, a finer grid is set within the grid and the grid is subdivided. Calculate the intersections between the grid and the figure, and continue dividing until the figure in the subdivided grid becomes a triangle or quadrilateral. FIG. 13d shows the result of extracting and subdividing the hatched area in FIG. 13c.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上記に説明のように、従来の分割表示方式にお
いては、三次元空間における図形と格子の交点計
算が不可欠である。これらは三次元座標データの
演算であり、固定小数点形式の数値では表示範囲
が限定されるため浮動小数点形式で演算せざるを
得ない。
As explained above, in the conventional split display method, calculation of intersections between figures and grids in three-dimensional space is essential. These are calculations on three-dimensional coordinate data, and since the display range of fixed-point numbers is limited, calculations must be performed in floating-point format.

浮動小数点演算は、固定小数点演算に比べて数
倍の時間がかかるため、図形の分割に要する時間
が多大となるという問題点があつた。
Floating-point calculations take several times as long as fixed-point calculations, so there is a problem in that a large amount of time is required to divide a figure.

〔課題を解決するための手段〕[Means to solve the problem]

第1図は、本発明の処理を示すブロツク図であ
る。
FIG. 1 is a block diagram showing the process of the present invention.

図において、1は第一のメモリであり、表示す
べき三次元情報を格納する。
In the figure, 1 is a first memory, which stores three-dimensional information to be displayed.

4は表示制御装置であり、表示データの座標変
換、クリツピング、隠面処理等表示データの表示
画素への展開処理を行う。
Reference numeral 4 denotes a display control device, which performs processing for developing display data into display pixels, such as coordinate conversion, clipping, hidden surface processing, etc. of display data.

10,11は稜線分割・二次元変換処理ステツ
プであり、第一のメモリ1から読み出した稜線デ
ータが曲線であるとき該曲線上に点列を発生させ
て該曲線を該点列を結ぶ直線線分に変換すると共
に、該点列の座標値を二次元空間における座標値
に変換して前記稜線を二次元空間における多角形
に変換する。
10 and 11 are edge line division/two-dimensional conversion processing steps, in which when the edge line data read from the first memory 1 is a curve, a sequence of points is generated on the curve and the curve is converted into a straight line connecting the sequence of points. At the same time, the coordinate values of the point sequence are converted into coordinate values in a two-dimensional space, and the edge line is converted into a polygon in the two-dimensional space.

13は鋭角処理ステツプであり、二次元に変換
された多角形の隣接する三頂点を結ぶ三角形が第
多角形内部で形成され且つ中央の頂点の開き角が
鋭角であるとき、該形成された三角形と該三角形
を除いた多角形とに分離する。
13 is an acute angle processing step, in which when a triangle connecting three adjacent vertices of a polygon converted into two-dimensional form is formed inside the first polygon and the opening angle of the central vertex is an acute angle, the formed triangle and a polygon excluding the triangle.

14は斜辺処理ステツプであり、鋭角処理ステ
ツプ13で分離された多角形の辺のうち、前記二
次元空間座標軸に平行でない辺について、該辺を
斜辺とし他の二辺が座標軸に平行な直角三角形を
該多角形内部に形成し、該形成された三角形と該
三角形を除いた多角形とに分離する。
14 is a hypotenuse processing step in which, among the sides of the polygon separated in the acute angle processing step 13, for the side that is not parallel to the two-dimensional space coordinate axis, a right triangle is formed with that side as the hypotenuse and the other two sides parallel to the coordinate axis. is formed inside the polygon and separated into the formed triangle and a polygon excluding the triangle.

16は長方形生成ステツプであり、前記斜辺処
理ステツプ14で分離された多角形から、前記二
次元座標軸に平行で且つ該多角形の辺を辺の一部
に含む長方形を互いに重複なく且つ欠落なく形成
する。
16 is a rectangle generation step, in which from the polygon separated in the hypotenuse processing step 14, rectangles that are parallel to the two-dimensional coordinate axis and include the sides of the polygon as part of the sides are formed without overlapping or missing each other. do.

17は再分割処理ステツプであり、前記三次元
立体の面が全曲率がゼロでない曲面のときは、長
方形生成ステツプ16で形成された長方形をさら
に分割し長方形と三角形の集合に分離する。
17 is a re-division processing step, and when the surface of the three-dimensional solid is a curved surface whose total curvature is not zero, the rectangle formed in the rectangle generation step 16 is further divided into a set of rectangles and triangles.

18は三次元変換処理ステツプであり、鋭角処
理13、斜辺処理14、長方形生成16および再
分割処理17の各ステツプから得られた三角形と
多角形の集合情報を前記三次元情報に逆変換して
第二のメモリ19に格納する。
18 is a three-dimensional conversion processing step, which inversely converts the set information of triangles and polygons obtained from each step of acute angle processing 13, hypotenuse processing 14, rectangle generation 16, and re-division processing 17 into the three-dimensional information. The data is stored in the second memory 19.

19は第二のメモリであり、前記復元された三
次元情報を格納する。
A second memory 19 stores the restored three-dimensional information.

21は表示部であり、表示制御装置4の制御に
より画像を表示する。
A display section 21 displays images under the control of the display control device 4.

〔作用〕[Effect]

本発明は、立体表示すべき曲面画像情報(三次
元データ)を二次元変換処理ステツプ10によつ
て二次元情報に変換したのち、鋭角処理ステツプ
13、斜辺処理ステツプ14、長方形生成ステツ
プ16および再分割処理ステツプ17によつて基
本多角形(三角形および四角形)に分割し、三次
元変換処理18によつて該分割された二次元情報
を再び三次元情報に逆変換して表示装置に供給す
ることにより曲面画像を立体表示するように図つ
たものである。
The present invention converts curved surface image information (three-dimensional data) to be displayed three-dimensionally into two-dimensional information in a two-dimensional conversion processing step 10, and then performs an acute angle processing step 13, a hypotenuse processing step 14, a rectangle generation step 16, and a rectangle generation step 16. The division process step 17 divides the information into basic polygons (triangles and quadrilaterals), and the three-dimensional conversion process 18 converts the divided two-dimensional information back into three-dimensional information and supplies it to the display device. This is designed to display a curved surface image in three dimensions.

このように、本発明では、最も大きな処理時間
を要していた三次元格子点での交点計算を不要と
し、代わりに分割処理を二次元情報について行う
ため、所要な計算対象の数値表現を固定小数点形
式で行うことができ、処理効率は向上する。
In this way, the present invention eliminates the need to calculate intersection points at three-dimensional grid points, which required the longest processing time, and instead performs division processing on two-dimensional information, so the numerical representation of the required calculation target is fixed. This can be done in decimal format, improving processing efficiency.

〔実施例〕〔Example〕

[実施例の構成] 以下、実施例によつて本発明を具体的に説明す
る。
[Configuration of Examples] The present invention will be specifically described below using Examples.

第2図は、本発明の一実施例の構成を示す図で
ある。第3図〜第10図は、本発明の一実施例に
よる図形処理例を示す図である。また、第11図
は本発明の一実施例による処理を示すフローチヤ
ートである。
FIG. 2 is a diagram showing the configuration of an embodiment of the present invention. FIGS. 3 to 10 are diagrams showing examples of graphic processing according to an embodiment of the present invention. Further, FIG. 11 is a flowchart showing processing according to an embodiment of the present invention.

第2図において、1はフアイルであり、ソリツ
ドモデル(立体形状を表現する数学モデル)デー
タSDが格納されている。このソリツドモデルデ
ータSDに含まれる面データ、或いは境界線を構
成する稜線データは、すべて三次元データであ
る。このソリツドモデルデータSDの情報変更な
どを含む情報管理は、ソリツドモデリング部3に
よつて行われる。
In FIG. 2, 1 is a file in which solid model (mathematical model expressing a three-dimensional shape) data SD is stored. The surface data included in this solid model data SD or the edge line data constituting the boundary line are all three-dimensional data. Information management including information changes of the solid model data SD is performed by the solid modeling section 3.

表示制御装置4のキーボード5またはライトペ
ン6によつて図形処理(立体形状の変更など)を
行うときには、処理部7によつてソリツドデータ
ハンドラ2が起動される。
When graphic processing (such as changing a three-dimensional shape) is performed using the keyboard 5 or light pen 6 of the display control device 4, the solid data handler 2 is activated by the processing section 7.

ソリツドデータハンドラ2は、フアイル1から
取り出したソリツドモデルデータSDを、バス8
を経て、ポリゴン分割部9へ送出する。
The solid data handler 2 transfers the solid model data SD retrieved from the file 1 to the bus 8.
After that, it is sent to the polygon dividing section 9.

以下、第11図に示すフローチヤートに従つて
ポリゴン分割部9の動作を詳述する。
Hereinafter, the operation of the polygon dividing section 9 will be described in detail according to the flowchart shown in FIG.

[二次元変換処理および稜線分割処理] ポリゴン分割部9は、ソリツドモデルデータ
SDを構成する各曲面を基本多角形の集合に分割
する処理を行うが、まず二次元変換処理10によ
つて、三次元データを二次元データに変換する。
既述の如くソリツドモデルデータSDに含まれて
いる面データや稜線データは、すべて三次元デー
タであり、これを二次元データに変換する。
[Two-dimensional conversion process and edge line division process] The polygon division unit 9 converts solid model data
A process of dividing each curved surface constituting the SD into a set of basic polygons is performed, but first, three-dimensional data is converted into two-dimensional data by two-dimensional conversion process 10.
As mentioned above, the surface data and edge data included in the solid model data SD are all three-dimensional data, which is converted into two-dimensional data.

例えば直方体は、三次元実空間(x、y、z)
内のデータとしてしか表現できないが、この直方
体の表面だけに限定すれば、二次元パラメタ空間
(u、v)で考えることができる。この三次元デ
ータから二次元データへの変換は、数学的手法を
用いて処理できる。一例として平面の変換の場
合、法線ベクトルnを、 n→=(nx、ny、nz) とし、また各成分中で絶対値最大のものを、 nnax=Max{|nx|、|ny|、|nz|} とすれば、 nnax=|nx|ならば(u、v)=(y、z) nnax=|ny|ならば(u、v)=(z、x) nnax=|nz|ならば(u、v)=(x、y) によつて三次元実空間(x、y、z)から二次元
パラメタ空間(u、v)への変換が可能となる。
For example, a rectangular parallelepiped is a three-dimensional real space (x, y, z)
Although it can only be expressed as data within, if it is limited to the surface of this rectangular parallelepiped, it can be considered in a two-dimensional parameter space (u, v). This conversion from three-dimensional data to two-dimensional data can be processed using mathematical methods. As an example, in the case of plane transformation, the normal vector n is set as n→=(n x , ny , nz ), and the one with the maximum absolute value among each component is set as n nax =Max||n x | , |n y |, |n z ||, then n nax = |n x | then (u, v)=(y, z) n nax = |n y | If (z, x) n nax = |n z |, then (u, v) = (x, y) from the three-dimensional real space (x, y, z) to the two-dimensional parameter space (u, v) conversion becomes possible.

第3図aは、三次元実空間(x、y、z)内の
平面上図形と、二次元パラメタ空間(u、v)に
変換した後の図形とを示す。
FIG. 3a shows a figure on a plane in a three-dimensional real space (x, y, z) and a figure after being converted into a two-dimensional parameter space (u, v).

また、三次元空間内の図形が平面上ではなく円
柱面上に在る場合も、第3図bに示すように、円
柱軸方向の高さhと円周方向の角度θを円柱面上
の位置を表す座標系として採用することにより、
同様に二次元パラメタ空間(u、v)に図形を変
換することができる。
Also, when the figure in the three-dimensional space is not on a plane but on a cylindrical surface, as shown in Figure 3b, the height h in the cylinder axis direction and the angle θ in the circumferential direction are set on the cylindrical surface. By adopting it as a coordinate system to represent the position,
Similarly, a figure can be transformed into a two-dimensional parameter space (u, v).

このときの変換座標系としては、例えば円柱面
の中心軸上に、(x、y、z)座標系の原点を置
いた場合、 (z、(y/|y|)cos-1(x/r)) =(h、θ)=(u、v) のように変換できる。(上式において、rは円柱
面の半径、|y|はyの絶対値である) また、三次元空間内の図形が円錐面上に在る場
合は、第3図cに示すように、高さhと円周方向
の角度θを円錐面上の位置を表す座標系として、
二次元パラメタ空間(u、v)に変換することが
できる。また、球面上に在る場合は、第3図dに
示すように、緯度方向の角度θと経度方向の角度
φを球面上の位置を表す座標系として二次元パラ
メタ空間(u、v)に変換することができる。
The transformation coordinate system at this time is, for example, if the origin of the (x, y, z) coordinate system is placed on the central axis of the cylindrical surface, (z, (y/|y|)cos -1 (x/ r)) = (h, θ) = (u, v). (In the above equation, r is the radius of the cylindrical surface, and |y| is the absolute value of y.) Also, if the figure in the three-dimensional space is on a conical surface, as shown in Figure 3c, Assuming the height h and the circumferential angle θ as a coordinate system representing the position on the conical surface,
It can be transformed into a two-dimensional parameter space (u,v). In addition, if it is on a spherical surface, as shown in Figure 3d, the angle θ in the latitude direction and the angle φ in the longitude direction are used as a coordinate system representing the position on the spherical surface, and the two-dimensional parameter space (u, v) is created. can be converted.

上記の変換座標系については、さらに複雑なそ
の他の座標系を利用することも可能である。例え
ば、角度θの代わりに、−cos(θ/2)のように、
0゜≦θ<360゜の範囲内で単調増加する関数f(θ)
を使うこともできる。
As for the above-mentioned transformed coordinate system, it is also possible to use other more complicated coordinate systems. For example, instead of the angle θ, -cos(θ/2),
Function f(θ) that increases monotonically within the range 0゜≦θ<360゜
You can also use

次に、ソリツドモデルデータSDから抽出され
る稜線データについては、 (1) 各辺の始点と終点の座標値 (2) 円弧については中心の座標値と半径 (3) 自由曲線については、制御情報即ちパラメタ
t(0〜1)で表現される情報 等からなる三次元データである。
Next, regarding the edge line data extracted from the solid model data SD, (1) the coordinate values of the start and end points of each side, (2) the center coordinate values and radius for circular arcs, and (3) the control values for free curves. This is three-dimensional data consisting of information, that is, information expressed by parameters t (0 to 1).

上記(1)項の場合、各辺の始点と終点の座標値
(x、y、z)は、二次元変換部10によつて
(u、v)空間での座標値に変換される。また(2)
項の円弧および(3)項の自由曲線については、稜線
分割部11によつて、第3図eに示すように、辺
上に点列を発生させて分割し、折れ線で近似した
上で、その座標値(x、y、z)を二次元変換部
10によつて、二次元パラメタ空間での座標値
(u、v)に変換する。
In the case of item (1) above, the coordinate values (x, y, z) of the start point and end point of each side are converted by the two-dimensional conversion unit 10 into coordinate values in the (u, v) space. Also(2)
Regarding the arc in term (3) and the free curve in term (3), the edge line division unit 11 generates and divides a series of points on the side as shown in FIG. 3e, and approximates it with a polygonal line, The coordinate values (x, y, z) are converted by the two-dimensional conversion unit 10 into coordinate values (u, v) in the two-dimensional parameter space.

以上の処理によつて、立体から取り出された
「直線、円、自由曲線で囲まれた三次元空間内の
曲面」は、「直線だけで囲まれた二次元空間内の
多角形」に変換される。第3図fに一つの立体を
構成する三つの曲面(s1、s2、s3)を、それぞれ
別の(u、v)空間内の多角形に変換した例を示
す。図において立体Cは三つの面s1、s2、s3で構
成されており、上面s1は(u、v)空間に図形
s10として展開され、周面s2は(u、v)空間に
図形s20なる展開図形となり、また底面s3は(u、
v)空間に図形s30のように展開される。この展
開図形の周辺は各々折れ線として近似され、各折
れ線上の始点、終点が点列として示される。
Through the above processing, a "curved surface in a three-dimensional space surrounded by straight lines, circles, and free curves" extracted from a solid is converted into a "polygon in a two-dimensional space surrounded only by straight lines". Ru. FIG. 3f shows an example in which three curved surfaces (s 1 , s 2 , s 3 ) constituting one solid are converted into polygons in separate (u, v) spaces. In the figure, solid C is composed of three surfaces s 1 , s 2 , and s 3 , and the top surface s 1 is a shape in (u, v) space.
s 10 , the circumferential surface s 2 becomes a developed figure s 20 in (u, v) space, and the base s 3 becomes (u, v).
v) It is expanded in space like a figure s 30 . The periphery of this developed figure is approximated as a polygonal line, and the starting point and end point on each polygonal line are shown as a series of points.

これらの点列は第4図aに示すように、面の外
周Pputは左回りに、穴の周囲Pioについては右回り
にポインタ(格納場所を示すアドレス)で結合す
る。
As shown in FIG. 4a, these point sequences are connected counterclockwise for the outer periphery of the surface P put and clockwise for the periphery P io of the hole using pointers (addresses indicating storage locations).

[鋭角処理] 第2図における面分割処理12は、鋭角処理1
3、斜辺処理14、ソート処理15、長方形処理
16および再分割処理17によつて処理される。
この面分割12は、第4図bに示した「二次元パ
ラメタ空間内の多角形」を、三角形、長方形等の
基本多角形の集合に変換する処理を行う。
[Acute angle processing] The surface division processing 12 in FIG. 2 is the acute angle processing 1.
3. Processed by hypotenuse processing 14, sorting processing 15, rectangle processing 16, and redivision processing 17.
This surface division 12 performs a process of converting the "polygon in the two-dimensional parameter space" shown in FIG. 4b into a set of basic polygons such as triangles and rectangles.

まず鋭角処理13は、第5図aに示したポイン
タで結合された点列(P1〜P22)に対して次のよ
うな処理を行い、基本多角形である三角形を生成
し、そのデータを三次元変換処理18に転送す
る。
First, the acute angle processing 13 performs the following processing on the point sequence (P 1 to P 22 ) connected by the pointer shown in Figure 5a, generates a triangle that is a basic polygon, and stores its data. is transferred to the three-dimensional conversion process 18.

(1) P1から順にP22まで、すべての頂点の内角θ
を調べる。ここでいう内角とは、面の存在する
内部を回つている方の角である。即ち、面の外
周Pputを構成している点P1については内角∠
P15P1P2とは90゜の方であり、270゜の方ではな
い。穴の周囲Pioを構成している点P20の内角∠
P19P20P21は270゜の方であり、90゜の方ではない。
(1) Interior angle θ of all vertices from P 1 to P 22 in order
Find out. The interior angle here is the angle that goes around inside the surface. That is, for the point P 1 that constitutes the outer circumference P put of the surface, the interior angle ∠
P 15 P 1 P 2 means 90°, not 270°. Interior angle ∠ of point P 20 that makes up the perimeter P io of the hole
P 19 P 20 P 21 is at 270°, not at 90°.

(2) 頂点Piの内角θが鋭角(0゜<θ<90゜)なら
ば、点Piを挟む二点Pi-1とPi+1と合わせて三角
形を生成する。具体的にはPi-1、Pi、Pi+1の三
点の(u、v)座標値を三次元変換部18に転
送する。そして、点Piを削除し、点Pi-1とPi-1
をポインタでつなぐ。
(2) If the interior angle θ of the vertex P i is an acute angle (0°<θ<90°), a triangle is generated by combining the two points P i-1 and P i+1 that sandwich the point P i . Specifically, the (u, v) coordinate values of three points P i-1 , P i , and P i+1 are transferred to the three-dimensional transformation unit 18 . Then delete point P i , points P i-1 and P i-1
Connect with pointers.

第5図aに示す例では、点P3、P7、P11の内角
θが鋭角であり、ΔP2P3P4、ΔP6P7P8
ΔP10P11P12の三つの三角形が生成され、P3、P7
P11の三点が削除された。
In the example shown in FIG. 5a, the interior angles θ of points P 3 , P 7 , and P 11 are acute angles, and ΔP 2 P 3 P 4 , ΔP 6 P 7 P 8 ,
Three triangles ΔP 10 P 11 P 12 are generated, P 3 , P 7 ,
Three points on P 11 were deleted.

上記の処理によつて、第5図bに示す「内角に
ついて鋭角を含まない、直角と鈍角だけから構成
される多角形」が得られる。
By the above processing, the "polygon consisting of only right angles and obtuse angles without including any acute angles among interior angles" is obtained as shown in FIG. 5b.

〔斜辺処理〕[Hypotenuse processing]

第2図における斜辺処理14は、この第5図b
に示した「内角について直角と鈍角だけからなる
多角形」について、次の処理を行い、基本多角形
である直角三角形を生成し、そのデータを三次元
変換処理18に転送する。
The hypotenuse processing 14 in FIG. 2 is as shown in FIG.
The following processing is performed on the "polygon consisting of only right angles and obtuse angles as interior angles" shown in , to generate a right triangle which is a basic polygon, and the data is transferred to the three-dimensional conversion process 18.

(1) 第6図aに示すような「直角と鈍角だけから
なる多角形」の各辺がu軸とv軸に対して平行
かどうか、辺P1P2から順にすべての辺につい
て調べる。
(1) Check whether each side of a ``polygon consisting only of right angles and obtuse angles'' as shown in Figure 6a is parallel to the u- and v-axes, starting from side P 1 P 2 .

(2) 図に示すように、u軸とv軸のどちらととも
平でない辺について、その辺を斜辺とし直角を
挟む二辺がそれぞれu軸とv軸に平行な直角三
角形を、面の存在する側に生成する。第6図a
において、二重線(=)を施して示した辺がu
軸とv軸のどちらとも平行でない辺である。例
えば、辺P2P4については、点P2と同じu座標
値と点P4と同じv座標値を持つ新たな点P23
生成し、P2P4P23の三点からなる三角形を生成
する。具体的にはこの三点の(u、v)座標値
を三次元変換部18に転送し、点P23をポイン
タで点P2とP4の間に挿入する。第6図aに示
す例では、辺P2P4、辺P4P5〜P16P17、辺P22P18
の8辺から、△P2P4P23、△P4P5P24〜△
P16P17P29、△P22P16P30の8個の直角三角形が
生成される。
(2) As shown in the figure, for a side that is not flat with either the u-axis or the v-axis, form a right triangle with that side as the hypotenuse and the two sides that sandwich the right angle parallel to the u-axis and the v-axis, respectively. Generate on the side that does. Figure 6a
In , the side indicated by a double line (=) is u
This is a side that is not parallel to either the axis or the v-axis. For example, for side P 2 P 4 , a new point P 23 with the same u coordinate value as point P 2 and the same v coordinate value as point P 4 is generated, and a triangle consisting of the three points P 2 P 4 P 23 is created. generate. Specifically, the (u, v) coordinate values of these three points are transferred to the three-dimensional transformation unit 18, and point P 23 is inserted between points P 2 and P 4 using a pointer. In the example shown in FIG. 6a, the side P 2 P 4 , the side P 4 P 5 to P 16 P 17 , the side P 22 P 18
From the 8 sides of , △P 2 P 4 P 23 , △P 4 P 5 P 24 ~ △
Eight right triangles P 16 P 17 P 29 and ΔP 22 P 16 P 30 are generated.

上記の処理によつて、第6図bに示す「u軸ま
たはv軸と平行な辺だけから構成される多角形」
が得られる。
Through the above processing, the "polygon composed only of sides parallel to the u-axis or the v-axis" shown in Figure 6b is created.
is obtained.

〔ソート処理〕[Sort processing]

第2図におけるソート処理15は、上記の第6
図bに示した多角形について次の処理を行い、ポ
インタによつて面の周囲に沿つて環状に結合され
ている点列Piを、v座標値の昇順(同じv座標値
の場合はu座標値の昇順に)に並べ変え、新たな
ポインタでつなぐ。
The sorting process 15 in FIG.
The following processing is performed on the polygon shown in Figure b, and the point sequence P i connected in a circular manner along the periphery of the surface by the pointer is sorted in ascending order of v coordinate values (in the case of the same v coordinate value, u (in ascending order of coordinate values) and connect them with new pointers.

(1) 第6図bの多角形の各頂点Piのv座標値を比
較し、その昇順に並べ変え、ポインタでつな
ぐ。
(1) Compare the v coordinate values of each vertex P i of the polygon shown in Figure 6b, rearrange them in ascending order, and connect them with a pointer.

(2) 同じv座標値を持つ頂点Piについては、u座
標値を比較し、その昇順に並べ変え、ポインタ
でつなぐ。
(2) For vertices P i that have the same v coordinate value, compare the u coordinate values, rearrange them in ascending order, and connect them with pointers.

(3) 各頂点Piが辺上のどの位置にあるかによつ
て、タイプ分けを同時に行い、各頂点Piに記号
(、、)を付加する。
(3) Type classification is performed at the same time depending on the position of each vertex P i on the edge, and a symbol (,,) is added to each vertex P i .

角にあれば、記号()を付加する。 If it is in a corner, add the symbol ().

v座標値と平行な辺上(両端点を除く)に
あれば記号()を付加する。
If it is on a side parallel to the v coordinate value (excluding both end points), the symbol () is added.

u座標値と平行な辺上(両端点を除く)に
あれば記号()を付加する。
If it is on the side parallel to the u coordinate value (excluding both end points), add the symbol ().

上記の処理によつて、第6図bに示す多角形の
ポインタの結合は、第7図aに示す形から第7図
bに示す形に、即ち次のように変わる。
Through the above processing, the connection of the polygonal pointers shown in FIG. 6b changes from the shape shown in FIG. 7a to the shape shown in FIG. 7b, that is, as follows.

処理前:
P1P2P23P4P24P5P6P25P8P9P26P10P27P12P13P28
1415162917181920
212230(第7図a
に示す環状ポインタ構造) 処理後:
P1P2P15P14P23P4P29P16P30P13P28P17P24P5P12P
2718192220212510
26(第7図bに
示す昇順ポインタ構造) このソート処理15の処理は、次の長方形生成
16における長方形の生成処理を効率的に行うた
めの処理である。
Before processing:
P 1 P 2 P 23 P 4 P 24 P 5 P 6 P 25 P 8 P 9 P 26 P 10 P 27 P 12 P 13 P 28
P 14 P 15 P 16 P 29 P 17 P 18 P 19 P 20 P
21 P 22 P 30 (Figure 7a
The circular pointer structure shown in ) After processing:
P 1 P 2 P 15 P 14 P 23 P 4 P 29 P 16 P 30 P 13 P 28 P 17 P 24 P 5 P 12 P
27 P 18 P 19 P 22 P 20 P 21 P 25 P 6 P 10
P 26 P 9 P 8 (Ascending pointer structure shown in FIG. 7b) This sorting process 15 is a process for efficiently performing the rectangle generation process in the next rectangle generation 16.

〔長方形生成〕[Rectangle generation]

第2図における長方形生成16は、上記の第7
図bに示した昇順ポインタ構造で結合され、タイ
プ記号を付加された多角形について、次の処理を
行い、基本多角形である長方形を次々と生成し
て、そのデータを再分割処理17に転送する。
The rectangle generation 16 in FIG.
The following processing is performed on the polygons that are connected using the ascending pointer structure shown in Figure b and have type symbols added to generate rectangles that are basic polygons one after another, and the data is transferred to the re-division process 17. do.

第8図aは、長方形生成16の処理の概要を模
式的に表現したものである。ポインタに沿つて点
列Piを辿り、長方形の底辺となる辺Q1Q2を見つ
ける。次に辺Q1Q2を他の頂点にぶつかるまでv
座標軸の正方向に持ち上げ、長方形を生成する。
本処理は、辺Q1Q2とその上方の形状だけに依存
しているので、第8図aの例のように多角形が二
股に分かれたり、二個以上の図形に分裂しても処
理可能である。以下に生成手順を、第8図、第9
図を参照して説明する。
FIG. 8a schematically represents the outline of the process of rectangle generation 16. Follow the point sequence P i along the pointer to find the side Q 1 Q 2 that is the base of the rectangle. Next, move the edge Q 1 Q 2 until it collides with another vertex v
Lift in the positive direction of the coordinate axes to generate a rectangle.
This process depends only on the sides Q 1 Q 2 and the shape above them, so even if the polygon splits into two or into two or more shapes, as in the example in Figure 8a, the process will not be processed. It is possible. The generation procedure is shown below in Figures 8 and 9.
This will be explained with reference to the figures.

(1) 昇順ポインタで結合された点列Piの最初の点
をとる。この点をQ1とし、その座標値を(u1
v1)とする。点Piが最終点であれば、長方形生
成16の処理を終了する。
(1) Take the first point of the point sequence P i connected by the ascending pointer. Let this point be Q 1 and its coordinates be (u 1 ,
v 1 ). If point P i is the final point, the process of rectangle generation 16 ends.

(2) Q1に昇順ポインタでつながつている次の点
をとる。この点をQ2とし、その座標値を(u2
v2)とする。このとき、辺Q1、Q2はu座標軸
と平行な辺になるので、v1=v2の関係が成立
し、点Q2の座標値は(u2、v1)になる。
(2) Take the next point connected to Q 1 with an ascending pointer. Let this point be Q 2 and its coordinates be (u 2 ,
v 2 ). At this time, since sides Q 1 and Q 2 are parallel to the u coordinate axis, the relationship v 1 = v 2 is established, and the coordinate values of point Q 2 are (u 2 , v 1 ).

(3) 点Q2に昇順ポインタでつながつている点の
座標値を順に調べ、u1以上且つu2以下のu座標
値とv1より大きいv座標値を持つ、最初の点を
見つける。これを点Q3とし、その座標値を
(u3、v3)とする。即ち、u1≦u3≦u2且つv1
v3となる。この条件は、第8図bにおいて斜線
を施して示した部分に相当する。
(3) Check the coordinate values of the points connected to point Q 2 by the ascending pointer and find the first point that has a u coordinate value greater than or equal to u 1 and less than or equal to u 2 and a v coordinate value greater than v 1 . Let this be a point Q 3 and its coordinate values be (u 3 , v 3 ). That is, u 1 ≦u 3 ≦u 2 and v 1 <
v 3 . This condition corresponds to the shaded area in FIG. 8b.

(4) u3=u2のとき、即ち点Q3が点Q2の真上(v
座標軸正方向)にあるとき、座標値(u1、v3
の位置、即ち点Q1の真上、点Q3の左に点Q4
生成し、長方形Q1Q2Q3Q4を生成する。具体的
には、この四点の(u、v)座標値を再分割処
理部17に転送し、点Q1と点Q2を点列から削
除し、点Q3のタイプを変更(点Q3のタイプが
ならばに、ならばに)し、点Q4に記
号を付加する。
(4) When u 3 = u 2 , that is, point Q 3 is directly above point Q 2 (v
coordinate values (u 1 , v 3 )
, that is, directly above point Q 1 and to the left of point Q 3 , and generates a rectangle Q 1 Q 2 Q 3 Q 4 . Specifically, the (u, v) coordinate values of these four points are transferred to the redivision processing unit 17, points Q 1 and Q 2 are deleted from the point sequence, and the type of point Q 3 is changed (point Q If the type of 3 is ni, then ni) and add a symbol to point Q 4 .

(5) u1≦u3<u2のときは、次のように処理する。(5) When u 1 ≦ u 3 < u 2 , process as follows.

u3=u1のとき、即ち点Q3が点Q1の真上に
ある場合は、前記(3)項で見つけた点Q3を後
の処理にそのまま使う。第8図bで生成した
第一長方形はこのケースにあたる。
When u 3 =u 1 , that is, when point Q 3 is directly above point Q 1 , point Q 3 found in the above section (3) is used as is for subsequent processing. The first rectangle generated in FIG. 8b corresponds to this case.

u1<u3<u2のとき、即ち点Q3が辺Q1Q2
上方にあるときは、座標値(u1、v3)の位
置、即ち点Q1の真上、点Q3の左に、点A生成
し、これを新たに点Q3とする。第8図cで
生成した第二長方形はこのケースにあたる。
When u 1 < u 3 < u 2 , that is, when point Q 3 is above side Q 1 Q 2 , the position of coordinate values (u 1 , v 3 ), that is, directly above point Q 1 , point Q Create a point A to the left of 3 and make it a new point Q 3 . The second rectangle generated in Figure 8c corresponds to this case.

点Q3に昇順ポインタでつながつている点
の座標値を調べ、u2以上のu座標値または、
v3より大きいv座標値を持つ最初の点を見つ
ける。これをQ4とし、その座標値を(u4
v4)とする。
Check the coordinate values of the points connected to point Q 3 with the ascending pointer, and find the u coordinate value greater than or equal to u 2 , or
Find the first point with v coordinate value greater than v 3 . Let this be Q 4 and its coordinate values are (u 4 ,
v 4 ).

u2=u4のとき、即ち点Q4が点Q2の真上、
点Q3の右にある場合は、前記で見つけた
点Q4を後の処理にそのまま使う。
When u 2 = u 4 , that is, point Q 4 is directly above point Q 2 ,
If it is to the right of point Q 3 , use the point Q 4 found above for subsequent processing as is.

u2<u4またはv3<v4のとき、即ち点Q4
(u2、v3)の位置に無い場合は、座標値(u2
v3)の位置に点を生成し、これを新たに点
Q4とする。
When u 2 < u 4 or v 3 < v 4 , that is, when point Q 4 is not at the position (u 2 , v 3 ), the coordinate value (u 2 ,
v 3 ) and create a new point.
Q4 .

Q1、Q2、Q4、Q3の四点からなる長方形
Q1Q2Q4Q3を生成する。具体的には、この四
点の(u、v)座標値を再分割処理17に転
送し、点Q1とQ2を点列から削除する。
Rectangle consisting of four points Q 1 , Q 2 , Q 4 , Q 3
Generate Q 1 Q 2 Q 4 Q 3 . Specifically, the (u, v) coordinate values of these four points are transferred to the re-division processing 17, and points Q 1 and Q 2 are deleted from the point sequence.

点Q3のタイプを変更する。 Change the type of point Q3 .

第9図aに示す如く、点Q3がタイプの
ときは、タイプをに変えた後処理へ移
る。第9図bに示す如く、点Q3のタイプが
であり、且つ同じv座標値を持つタイプ
の中で、u座標値の小さい方から数えて偶数
番目のときは、タイプをからに変えた
後、処理に移る。第9図cに示す如く、タ
イプがであり、且つ奇数番目のときは、点
Q3のデータを点列から削除し、処理に移
る。
As shown in FIG. 9a, when the point Q3 is a type, the process moves to post-processing where the type is changed to . As shown in Figure 9b, if the type of point Q3 is , and it is an even number among the types with the same v coordinate value, counting from the smaller u coordinate value, the type is changed to . After that, move on to processing. As shown in Figure 9c, when the type is and it is an odd number, the point
Delete the data of Q 3 from the point sequence and move on to processing.

点Q4のタイプを変更する。 Change the type of point Q4 .

第9図dに示す如く、点Q4のタイプが
のときは、タイプをに変えた後(1)項の処理
に戻る。第9図eに示す如く、点Q4のタイ
プがであり、且つ同じv座標値を持つタイ
プの中でu座標値の小さい方から数えて奇
数番目のときは、該点Q4のタイプをに変
えた後、(1)項の処理に戻る。第9図eに示す
如く、点Q4のタイプがであり、且つ偶数
番目のときは、点Q4のデータを点列から削
除した後、(1)項の処理に戻る。
As shown in FIG. 9d, when the type of point Q4 is , the type is changed to , and the process returns to item (1). As shown in Figure 9e, if the type of point Q 4 is , and it is an odd number among types with the same v coordinate value, counting from the smaller u coordinate value, then the type of point Q 4 is After changing to , return to the process in section (1). As shown in FIG. 9e, if the type of point Q4 is , and it is an even number, the data of point Q4 is deleted from the point sequence, and then the process returns to item (1).

〔再分割処理〕[Re-splitting process]

長方形生成16が出力する長方形は、v座標軸
方向についての分割は終了しているが、u座標軸
方向については、多角形を長方形の集合に分ける
ための最小限の分割しか行つていない。
The rectangle output by the rectangle generator 16 has been divided in the v-coordinate axis direction, but has only been minimally divided in the u-coordinate axis direction to divide the polygon into a set of rectangles.

第10図aに示すように、円柱面はu座標軸方
向(円柱軸方向h)の曲率が0であるから、v座
標軸方向(円周方向θ)の分割だけで曲面を近似
できる。しかし、第10図bに示すように、球面
はv座標軸方向(経度方向θ)、u座標軸方向
(緯度方向φ)共に曲率が0ではないので、第2
図に示した再分割処理17で、u座標軸方向につ
いて再度、分割を行う必要がある。
As shown in FIG. 10a, since the curvature of a cylindrical surface in the u coordinate axis direction (cylindrical axis direction h) is 0, the curved surface can be approximated only by division in the v coordinate axis direction (circumferential direction θ). However, as shown in Figure 10b, the curvature of the spherical surface is not zero in both the v-coordinate axis direction (longitude direction θ) and the u-coordinate axis direction (latitude direction φ), so the second
In the re-division process 17 shown in the figure, it is necessary to perform division again in the u-coordinate axis direction.

第2図における再分割処理17は、ソリツドデ
ータハンドラ2を通して、処理中の面の面種の情
報を、フアイル1から得る。そして、面種に応じ
て、以下の処理を行う。
In the re-division process 17 in FIG. 2, information on the surface type of the surface being processed is obtained from the file 1 through the solid data handler 2. Then, the following processing is performed depending on the surface type.

(1) 平面、円柱面、円錐面など、全曲率が0であ
る面の場合、長方形生成16が出力した長方形
の情報をそのまま三次元変換処理18に転送す
る。
(1) In the case of a surface with a total curvature of 0, such as a plane, a cylindrical surface, or a conical surface, the rectangle information output by the rectangle generation 16 is transferred as is to the three-dimensional conversion processing 18.

(2) 球面、自由曲面など全曲率が0でない曲面の
場合、再分割処理17は長方形生成部16から
転送された長方形について、以下〜の処理
を通してu座標軸方向についての分割を行い、
新たに生成された長方形のデータを三次元変換
処理18に転送する。第8図aに示した第二長
方形を再分割した例を第10図cに示す。
(2) In the case of a curved surface such as a spherical surface or a free-form surface whose total curvature is not 0, the re-division process 17 divides the rectangle transferred from the rectangle generation unit 16 in the u-coordinate axis direction through the following processes,
The newly generated rectangular data is transferred to the three-dimensional conversion process 18. An example in which the second rectangle shown in FIG. 8a is subdivided is shown in FIG. 10c.

長方形生成16が出力した長方形の底辺
(辺Q1Q2)と上辺(辺Q3Q4)の上に存在す
るタイプの点を、u座標値の小さい方から
探す。
Points of the type that exist on the bottom side (side Q 1 Q 2 ) and the top side (side Q 3 Q 4 ) of the rectangle output by the rectangle generator 16 are searched from the side with the smaller u coordinate value.

タイプの点が在るu座標値の位置で長方
形を分割する。
Divide the rectangle at the u coordinate value where the type point is located.

分割によつて生成された長方形の四点の
(u、v)座標値を三次元変換処理18に転
送する。
The (u, v) coordinate values of the four points of the rectangle generated by the division are transferred to the three-dimensional transformation process 18.

[三次元変換処理] 第2図における三次元変換処理18は、鋭角処
理13と斜辺処理14が生成した三角形、および
長方形生成16と再分割処理17が生成した長方
形の、各頂点の(u、v)座標値データを、ソリ
ツドデータハンドラ2を通してフアイル1から得
た処理中の面の幾何情報を元にして、三次元空間
の座標値(x、y、z)に変換する。
[Three-dimensional conversion process] The three-dimensional conversion process 18 in FIG. 2 converts (u, v) Convert the coordinate value data into coordinate values (x, y, z) in a three-dimensional space based on the geometric information of the surface being processed obtained from the file 1 through the solid data handler 2.

(1) 平面の場合、二次元変換部10で消去された
x、y、zの中の一つの座標値を、平面を表す
方程式f(x、y、z)=0を変形した次の方程
式x=g1(y、z)、y=g2(z、x)、z=g3
(x、y)の一つに(u、v)座標値を代入す
ることにより再生する。
(1) In the case of a plane, one coordinate value among x, y, and z erased by the two-dimensional transformation unit 10 is transformed into the following equation, which is a transformation of the equation representing a plane, f(x, y, z) = 0. x=g 1 (y, z), y=g 2 (z, x), z=g 3
Reproduction is performed by substituting the (u, v) coordinate value into one of (x, y).

(2) 円柱の場合、二次元変換処理10と同様に、
円柱面の中心軸上に(x、y、z)座標系の原
点を置いて、 (r・cosθ,r・sinθ、h)=(x、y、z) のように(u、v)座標系から(x、y、z)
座標系に変換する。
(2) In the case of a cylinder, similarly to two-dimensional transformation process 10,
Place the origin of the (x, y, z) coordinate system on the central axis of the cylindrical surface, and change the (u, v) coordinates as (r・cosθ,r・sinθ,h)=(x,y,z) From the system (x, y, z)
Convert to coordinate system.

なお、以上の処理において、フアイル1からソ
リツドモデルデータSDがフアイル19に格納さ
れ、該データSDについて分割処理が行われる。
従つて、該処理後のデータ即ち表示データTDも
フアイル19に格納される。
In the above processing, solid model data SD from file 1 is stored in file 19, and division processing is performed on the data SD.
Therefore, the processed data, that is, the display data TD, is also stored in the file 19.

フアイル19内のデータTDは、表示データハ
ンドラ20によつて取り出された後、バス8を経
て表示制御装置4へ送られ、表示部21に表示さ
れる。第2図における表示制御装置4と表示部2
1は、基本多角形の頂点の三次元座標値(x、
y、z)の集合からなる表示データTDを格納す
る記憶装置と、座標変換、クリツピング、隠面処
理など表示データの表示画素への展開処理を行う
処理装置を備えた、ラスタ走査型の三次元カラー
グラフイツク・デイスプレイである。この種の装
置での表示処理の技術は公知の技術である。
The data TD in the file 19 is extracted by the display data handler 20 and then sent to the display control device 4 via the bus 8 and displayed on the display section 21. Display control device 4 and display unit 2 in FIG. 2
1 is the three-dimensional coordinate value (x,
A raster scanning type three-dimensional system equipped with a storage device that stores display data TD consisting of a set of y, z), and a processing device that performs processing to develop the display data into display pixels, such as coordinate transformation, clipping, and hidden surface processing. It is a color graphic display. The technology for display processing in this type of device is a well-known technology.

表示部21の画面22に表示された三次元表示
画像に対し、ライトペン6またはキーボード5の
操作により、図形の立体形状の変更などを行う。
With respect to the three-dimensional display image displayed on the screen 22 of the display unit 21, the three-dimensional shape of the figure is changed by operating the light pen 6 or the keyboard 5.

[発明の効果] 以上の説明から明らかなように本発明によれ
ば、三次元実空間(x、y、z)における任意曲
面の基本多角形への分割処理を、二次元パラメタ
空間(u、v)に変換した後、各点列間をトレー
スすることで処理できるから、然るのち該処理後
のデータを再び三次元データに逆変換するので、
従来の如く多量の交点位置算出等の処理が不要と
なり、処理効率を著しく高める効果をもたらす。
なお、格子点における交点算出が不要なことは、
このときの演算データは数値計算上で浮動小数点
形式が必要であり、この際の有効桁長に伴う桁落
ちなどから誘起される演算誤差の発生が防止され
ることから、点列座標の丸め等による位置ずれが
生じないことになる。
[Effects of the Invention] As is clear from the above description, according to the present invention, the process of dividing an arbitrary curved surface into basic polygons in a three-dimensional real space (x, y, z) is performed in a two-dimensional parameter space (u, After converting to v), it can be processed by tracing between each point sequence, and then the processed data is back-converted to three-dimensional data again, so
This eliminates the need for a large amount of processing such as calculation of intersection points as in the past, resulting in the effect of significantly increasing processing efficiency.
Furthermore, the fact that it is not necessary to calculate the intersection points at the grid points is as follows.
The calculation data at this time must be in floating point format for numerical calculations, and in order to prevent calculation errors caused by digit loss due to the effective digit length, rounding of point sequence coordinates etc. This means that there will be no positional shift caused by this.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の処理を示すブロツク図、第2
図は本発明の一実施例の構成を示す図、第3図乃
至第10は本発明の一実施例による図形処理例を
示す図、第11図は本発明の一実施例による処理
を示すフローチヤート、第12図および第13図
は従来例による処理を示す図である。 図において、1,19はフアイル(メモリ)、
2はソリツドデータハンドラ、3はソリツドモデ
リング部、4は表示制御装置、5はキーボード、
6はライトペン、7は処理部、8はバス、9はポ
リゴン分割部、10は二次元変換処理、11は稜
線分割処理、12は面分割処理、13は鋭角処
理、14は斜辺処理、15はソート処理、16は
長方形生成、17は再分割処理、18は三次元変
換処理、20は表示データハンドラ、21は表示
部、22は画面、23は処理装置、を示す。
FIG. 1 is a block diagram showing the processing of the present invention, and FIG.
The figure is a diagram showing the configuration of an embodiment of the present invention, Figures 3 to 10 are diagrams showing an example of graphic processing according to an embodiment of the present invention, and Figure 11 is a flowchart showing processing according to an embodiment of the present invention. The charts, FIGS. 12 and 13 are diagrams showing processing according to a conventional example. In the figure, 1 and 19 are files (memory),
2 is a solid data handler, 3 is a solid modeling section, 4 is a display control device, 5 is a keyboard,
6 is a light pen, 7 is a processing unit, 8 is a bus, 9 is a polygon division unit, 10 is a two-dimensional conversion process, 11 is an edge division process, 12 is a surface division process, 13 is an acute angle process, 14 is a hypotenuse process, 15 16 is a sorting process, 16 is a rectangle generation process, 17 is a re-division process, 18 is a three-dimensional conversion process, 20 is a display data handler, 21 is a display section, 22 is a screen, and 23 is a processing device.

Claims (1)

【特許請求の範囲】 1 第一のメモリ1に格納されている三次元空間
における曲面を含む面データと曲線を含む稜線デ
ータからなる立体の三次元情報を読み出して読み
出した前記稜線データが曲線であるとき該曲線上
に点列を発生させて該曲線を該点列を結ぶ直線線
分に変換すると共に、該点列の座標値を二次元空
間における座標値に変換して前記稜線を二次元空
間における多角形に変換する稜線分割・二次元変
換処理ステツプ10,11と、 前記多角形の隣接する三頂点を結ぶ三角形が第
多角形内部で形成され且つ中央の頂点の開き角が
鉛角であるとき、該形成された三角形と該三角形
を除いた多角形とに分離する鉛角処理ステツプ1
3と、 前記分離された多角形の辺のうち、前記二次元
空間座標軸に平行でない辺について、該辺を斜辺
とし他の二辺が座標軸に平行な直角三角形を該多
角形内部に形成し、該形成された三角形と該三角
形を除いた多角形とに分離する斜辺処理ステツプ
14と、 前記分離された多角形から、前記二次元座標軸
に平行で且つ該多角形の辺を辺の一部に含む長方
形を互いに重複なく且つ欠落なく形成する長方形
生成ステツプ16と、 前記三次元立体の面が全曲率がゼロでない曲面
のときは、前記形成された長方形をさらに分割し
長方形と三角形の集合に分離する再分割処理ステ
ツプ17と、 前記鋭角処理13、斜辺処理14、長方形生成
16および再分割処理17の各ステツプから得ら
れた三角形と多角形の集合情報を前記三次元情報
に逆変換して第二のメモリ19に格納する三次元
変換処理ステツプ18と、 前記第二のメモリ19から読み出した三次元情
報を、非表示部分のクリツピングと隠面消去を施
して表示画素への展開を行う機能を有する表示制
御装置4へ供給することにより、表示部21の画
面に立体形状画像を表示せしめるステツプからな
ることを特徴とする曲面表示処理方法。
[Scope of Claims] 1. Three-dimensional three-dimensional information consisting of surface data including curved surfaces and edge line data including curves in a three-dimensional space stored in the first memory 1 is read out, and the read edge line data is a curved line. At some point, a sequence of points is generated on the curve, the curve is converted into a straight line segment connecting the sequence of points, and the coordinate values of the sequence of points are converted into coordinate values in a two-dimensional space to transform the ridge line into a two-dimensional space. Edge division/two-dimensional conversion processing steps 10 and 11 for converting into a polygon in space, and a triangle connecting three adjacent vertices of the polygon is formed inside the first polygon, and the opening angle of the central vertex is a vertical angle. At some point, a lead angle processing step 1 is performed to separate the formed triangle and a polygon excluding the triangle.
3. Among the sides of the separated polygon, for the side that is not parallel to the two-dimensional space coordinate axis, a right triangle is formed inside the polygon, with that side as the hypotenuse and the other two sides parallel to the coordinate axis; a hypotenuse processing step 14 of separating the formed triangle and a polygon excluding the triangle; and converting the separated polygon into a part of the side parallel to the two-dimensional coordinate axis and of the polygon. a rectangle generation step 16 in which the rectangles containing the rectangles are formed without overlapping or missing, and when the surface of the three-dimensional solid is a curved surface with a total curvature other than zero, the formed rectangle is further divided into a set of rectangles and triangles. The set information of triangles and polygons obtained from each step of the acute angle processing 13, hypotenuse processing 14, rectangle generation 16, and redivision processing 17 is inversely converted into the three-dimensional information. a three-dimensional conversion processing step 18 for storing the three-dimensional information in the second memory 19; and a function for developing the three-dimensional information read from the second memory 19 into display pixels by clipping non-displayed parts and erasing hidden surfaces. A curved surface display processing method characterized by comprising the step of displaying a three-dimensional shape image on the screen of a display unit 21 by supplying it to a display control device 4 having a three-dimensional shape image.
JP20312384A 1984-09-28 1984-09-28 Display processing system for curved surface Granted JPS6180463A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20312384A JPS6180463A (en) 1984-09-28 1984-09-28 Display processing system for curved surface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20312384A JPS6180463A (en) 1984-09-28 1984-09-28 Display processing system for curved surface

Publications (2)

Publication Number Publication Date
JPS6180463A JPS6180463A (en) 1986-04-24
JPH0330189B2 true JPH0330189B2 (en) 1991-04-26

Family

ID=16468782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20312384A Granted JPS6180463A (en) 1984-09-28 1984-09-28 Display processing system for curved surface

Country Status (1)

Country Link
JP (1) JPS6180463A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3684479B2 (en) * 1999-09-01 2005-08-17 株式会社日立製作所 Digital camera

Also Published As

Publication number Publication date
JPS6180463A (en) 1986-04-24

Similar Documents

Publication Publication Date Title
US6600485B1 (en) Polygon data generation method and image display apparatus using same
KR0125776B1 (en) Apparatus and method for convertng line segment data to three-dimensional data
Shu et al. Adaptive marching cubes
US6292192B1 (en) System and method for the direct rendering of curve bounded objects
KR20050086463A (en) System and method for performing domain decomposition for multiresolution surface analysis
JPH05266212A (en) Method for generating object
England A graphics system architecture for interactive application-specific display functions
Fournier et al. Chebyshev polynomials for boxing and intersections of parametric curves and surfaces
CN119919604B (en) Method, device, system, storage medium and program product for generating three-dimensional grid
US7463258B1 (en) Extraction and rendering techniques for digital charting database
Griffiths A surface display algorithm
JPH07282292A (en) Texture mapping method and image processing apparatus
Moore et al. Mesh displacement: An improved contouring method for trivariate data
JPH0330189B2 (en)
Bærentzen Volume sculpting: intuitive, interactive 3D shape modelling
Esperanчa et al. Vertex representations and their applications in computer graphics
WO2002023486A2 (en) Generating coarse-level meshes from fine-level meshes
JP3973868B2 (en) Parametric modeling system
JP2021068290A (en) Triangular element division method, modeling device, program, and data for defining two-dimensional plane figure
JPH0348554B2 (en)
JP4710029B2 (en) Geometric graphic data processing apparatus, geometric graphic data processing method, and geometric graphic data processing program
JPH11144093A (en) Analysis mesh generation method and apparatus
EP3503037B1 (en) Visibility function of a three-dimensional scene
JP2692587B2 (en) Image processing method
EP1390919A1 (en) Method, apparatus, and article of manufacture for associating objects with regions in coordinate space

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term