JPS6383871A - Shadow display method - Google Patents

Shadow display method

Info

Publication number
JPS6383871A
JPS6383871A JP61229076A JP22907686A JPS6383871A JP S6383871 A JPS6383871 A JP S6383871A JP 61229076 A JP61229076 A JP 61229076A JP 22907686 A JP22907686 A JP 22907686A JP S6383871 A JPS6383871 A JP S6383871A
Authority
JP
Japan
Prior art keywords
patch
triangular unit
processing
data
unit area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP61229076A
Other languages
Japanese (ja)
Other versions
JPH0799549B2 (en
Inventor
Atsushi Kikuchi
敦 菊池
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP61229076A priority Critical patent/JPH0799549B2/en
Publication of JPS6383871A publication Critical patent/JPS6383871A/en
Publication of JPH0799549B2 publication Critical patent/JPH0799549B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

PURPOSE:To eliminate a gap produced between patches and to ensure such a fact that a free curved surface undergone the shadow processing seems to be a curved surface having the natural shadow, by obtaining a segmenting patch by enlarging a patch and segmenting a triangular unit area to perform the shadow processing. CONSTITUTION:Many triangular unit areas UA are segmented from a segmenting patch S(u,v)c obtained by enlarging a patch S(u,v) by a prescribed rate. Then the luminance information on the pixel included in the area UA to give shadow to a free curved surface based on the luminance information on the positions of three apexes of the area UA. An overlap area is produced at the boundary part between patches S(u,v)c adjacent to each other. Therefore a fact that a gap is produced between adjacent patches can be effectively avoided even though the patch S(u,v)c is segmented to the area UA and the shadow processing is applied to this area UA.

Description

【発明の詳細な説明】 以下の順序で本発明を説明する。[Detailed description of the invention] The present invention will be explained in the following order.

A産業上の利用分野 B発明の概要 C従来の技術(第13図〜第14図) D発明が解決しようとする問題点(第15図)E問題点
を解決するための手段(第1図)F作用(第1図) G実施例(第1図〜第12図) (G1)分割数の決定(第1図及び第2図)(G2)切
り出し用パツチの生成(第1図及び第2図) (G3)処理手順(第1図〜第12図)(G4)実施例
の作用 H発明の効果 A産業上の利用分野 本発明は陰影表示方法に関し、例えばCAD (com
puter aided design)、又はCA 
M (compu teraided manufac
turing)、などにおいて生成された自由曲面につ
いて、陰影処理をする場合に適用して好適なものである
A: Industrial field of application B: Overview of the invention C: Conventional technology (Figures 13 to 14) D: Problem to be solved by the invention (Figure 15) E: Means for solving the problem (Figure 1) ) F action (Fig. 1) G example (Figs. 1 to 12) (G1) Determination of the number of divisions (Figs. 1 and 2) (G2) Generation of cutting patch (Figs. 1 and 12) (Figure 2) (G3) Processing procedure (Figures 1 to 12) (G4) Effects of the embodiment H Effects of the invention A Field of industrial application The present invention relates to a shading display method, for example, CAD
putter aided design) or CA
M (computer teraided manufac
This method is suitable for applying shading processing to a free-form surface generated in a method such as turing.

B発明の概要 本発明は枠組み空間にそれぞれ張られたパッチから三角
形単位領域を切り出して陰影処理するようになされた陰
影処理方法において、枠組み空間に張られたパッチを拡
大した切り出し用パツチを生成し、これから三角形単位
領域を切り出して陰影処理することにより、従来パッチ
間において生じていたギャップの発生を回避し、陰影処
理した自由曲面が自然な陰影を有した曲面に見えるよう
にしたものである。
B. Summary of the Invention The present invention provides a shading processing method in which a triangular unit area is cut out from each patch stretched in a framework space and subjected to shading processing. By cutting out triangular unit areas from this and applying shading processing, the generation of gaps that conventionally occur between patches is avoided, and the free-form surface processed with shading appears to be a curved surface with natural shading.

C従来の技術 例えばCADの手法を用いて自由曲面をもった物体の形
状をデザインする場合(geometric abod
eling) 、一般にデザイナは、曲面が通るべき3
次元空間における複数の点(これを節点と呼ぶ)を指定
し、当該指定された複数の節点を結ぶ境界曲線網を所定
のベクトル関数を用いてコンピュータによって演算させ
ることにより、いわゆるワイヤフレームで表現された曲
面を作成する。かくして境界曲線によって囲まれた多数
の枠組み空間を形成することができる(このような処理
を枠組み処理と呼ぶ)。
C Conventional technology For example, when designing the shape of an object with a free-form surface using a CAD method (geometric abod
eling), designers generally use the 3
By specifying multiple points in a dimensional space (these are called nodes) and having a computer calculate a boundary curve network connecting the specified multiple nodes using a predetermined vector function, it can be expressed in a so-called wire frame. Create a curved surface. In this way, a large number of framework spaces surrounded by boundary curves can be formed (such processing is called framework processing).

かかる枠組み処理によって形成された境界曲線網は、そ
れ自体デザイナがデザインしようとする大まかな形状を
有しており、各枠組み空間を囲む境界曲線を用いて所定
のベクトル関数によって表現できる曲面を補間演算する
ことができれば、全体としてデザイナがデザインした自
由曲面(2次関数で規定できないものを言う)を生成す
ることができる。ここで各枠組み空間に張られた曲面は
全体の曲面を構成する基本要素を形成し、これをパッチ
と呼ぶ。
The boundary curve network formed by such framework processing itself has the rough shape that the designer intends to design, and an interpolation operation is performed to create a curved surface that can be expressed by a predetermined vector function using the boundary curves surrounding each framework space. If it is possible to do so, it is possible to generate a free-form surface (which cannot be defined by a quadratic function) that is designed by the designer as a whole. Here, the curved surfaces stretched across each framework space form basic elements constituting the entire curved surface, and these are called patches.

従来この種のCADシステムにおいては、境界曲線網を
表現するベクトル関数として、計算が容易な例えばベジ
ェ(bezier)式、B−スプライン(13−spl
ine)式でなる3次のテンソル積が用いられており、
例えば形状的に特殊な特徴がないような自由曲面を数式
表現するには最適であると考えられている。
Conventionally, in this type of CAD system, as a vector function expressing a boundary curve network, easy-to-calculate vector functions such as Bezier equation, B-spline (13-spl
A third-order tensor product consisting of the formula (ine) is used,
For example, it is considered to be optimal for mathematically expressing free-form surfaces that have no special features in shape.

すなわち形状的に特殊な特徴がないような自由曲面は、
空間に与えられた点をxy平面上に投影したとき、当該
投影さた点が規則的にマトリクス状に並んでいることが
多く、この投影点の数がm×nで表されるとき、当該枠
組み空間を3次のベジェ式で表される四辺形パッチを用
いて容易に張ることができる。
In other words, a free-form surface that has no special features in shape is
When points given in space are projected onto the xy plane, the projected points are often arranged regularly in a matrix, and when the number of projected points is expressed as m x n, the The framework space can be easily spanned using quadrilateral patches expressed by cubic Bezier equations.

これに対して形状的に特徴がある曲面(例えば大きく歪
んだ形状をもつ曲面)に滑らかな自由曲面を張ろうとす
る場合には、枠組み空間の共有境界について、接平面連
続の条件を満足するような内部の制御点を求め、当該内
部の制御点によって決まる自由曲面を表すベクトル関数
によって、自由曲面でなるパッチを張ることができる。
On the other hand, when trying to create a smooth free-form surface on a curved surface with geometrical characteristics (for example, a curved surface with a greatly distorted shape), it is necessary to satisfy the condition of tangent plane continuity for the shared boundary of the framework space. It is possible to create a patch consisting of a free-form surface by finding internal control points and using a vector function representing the free-form surface determined by the internal control points.

ところでこのような手法によって生成された自由曲面デ
ータによって表される自由曲面に対して、陰影処理を施
すことによって陰影をつけることができれば、ヵ当該曲
面をディスプレイ上に立体的に表示できることにより、
グラフィック画像として高品位の画像を提供することが
できると考えられ、従来かかる陰影処理を線形補間によ
って実現する方法が提案されている(特願昭60−37
077号、特願昭60−37078号、特願昭60−3
7079号)。
By the way, if it is possible to add shading to the free-form surface represented by the free-form surface data generated by such a method by performing shading processing, it will be possible to display the curved surface three-dimensionally on the display.
It is believed that it is possible to provide high-quality graphic images, and a method has been proposed in which such shading processing is realized by linear interpolation (Japanese Patent Application No. 60-37).
No. 077, Patent Application No. 1983-37078, Patent Application No. 1983-3
No. 7079).

この陰影処理方法は、例えば第13図及び第14図に示
すように、四辺形パッチ及び三辺形パッチS工+Vl 
について、パッチS (Ill Vl の座標を表すU
及びV方向について、それぞれ所定の分割数で分割しく
例えば4×4分割し)、各分割領域ごとに、三角形単位
領域UAを切り出し、当該三角形単位領域UAの3つの
頂点について自由曲面の明るさを表すデータを求め、当
該3つのデータによって三角形単位領域UAに張った輝
度平面に基づいて、三角形単位領域UAに含まれる全て
のビクセルについての輝度を線形補間演算するようにな
されている。
This shading processing method, for example, as shown in FIG. 13 and FIG.
, the patch S (U representing the coordinates of Ill Vl
For each divided area, the triangular unit area UA is cut out, and the brightness of the free-form surface is calculated for the three vertices of the triangular unit area UA. Based on the luminance plane stretched over the triangular unit area UA using the three data, linear interpolation calculation is performed to calculate the luminance of all the pixels included in the triangular unit area UA.

このようにすれば、三角形単位領域UAに含まれる全て
のピクセルについて逐一輝度を演算するような処理の場
合と比較して、格段的に陰影処理を短時間の間に実行す
ることができる。
In this way, the shading process can be executed in a much shorter time than in the case where the brightness is calculated one by one for every pixel included in the triangular unit area UA.

D発明が解決しようとする問題点 ところで、この手法によって陰影処理する場合、パッチ
の分割数を少なくすれば、その分処理時間が短くなる。
D Problems to be Solved by the Invention Incidentally, when performing shading processing using this method, if the number of divided patches is reduced, the processing time will be correspondingly shortened.

ところが上述の手法においては、大きなパッチも小さな
パッチも同一の分割数で分割しているため、分割数を小
さくとると、大きなパッチにおいては隣り合うパッチと
の境界が直線的に表示されるようになるという問題があ
る。
However, in the above method, both large patches and small patches are divided by the same number of divisions, so if the number of divisions is set small, the boundaries between adjacent patches in large patches will be displayed as straight lines. There is a problem with becoming.

逆に、分割数を多くとると、大きなパッチの境界は、自
然な曲線形状となって表示されるようになるが、その代
わり小さなパッチも必要以上に細分割されるようになり
、処理時間が長(なってしまうという問題がある。
On the other hand, if you increase the number of divisions, the boundaries of large patches will be displayed with natural curved shapes, but at the same time small patches will also be divided into smaller parts than necessary, which will increase the processing time. There is a problem of becoming long.

この問題を解決するための1つの方法として、パッチの
大きさに応じて分割数をパッチごとに変更し、−辺の長
さが所定の大きさになるように三角形単位領域を切り出
して陰影処理する方法が考えられる。
One method to solve this problem is to change the number of divisions for each patch depending on the size of the patch, and - cut out a triangular unit area so that the side length is a predetermined size and process the shading. There are ways to do this.

ところがこの手法によって陰影処理する場合、隣合うパ
ッチの境界位置に陰影処理ができない部分(これをギャ
ップと呼ぶ)が生ずるおそれがある。
However, when performing shading processing using this method, there is a risk that a portion (this is called a gap) where shading processing cannot be performed may occur at the boundary position of adjacent patches.

例えば第15図に示すように、隣接する2つの枠組み空
間に3次のベジェ式で表される2つの四辺形パツチS 
(un v) I % S (un v) 2を張る場
合、第1及び第2のパッチS (un V) l及びS
 (u、v) tを共有境界COMIを介して接平面連
続の条件が成り立つように内部の制御点を設定すること
によって2つのパッチS (un v) I及びS (
+!+ V□を接続したとする。
For example, as shown in FIG.
(un v) I % S (un v) When applying 2, the first and second patches S (un V) l and S
(u, v) t is divided into two patches S (un v) I and S (
+! Assume that +V□ is connected.

このとき、大きなパッチS(un vl Iは、パッチ
S (un vl lを囲むU方向の共有境界C0M1
及びC0M3のうち長さの長い共有境界C0M3の長さ
に基づいて、共有境界C0M1及びC0M3上に4つの
分割点(Q+。1、Q、。1、Q、。9、C4゜1)及
び(Q、□、 、Qt□1、Q3□、C4t、)をパラ
メータUについて設定する。
At this time, the large patch S(un vl I is the shared boundary C0M1 in the U direction surrounding the patch S(un vl l)
Based on the length of the longer shared boundary C0M3 among the shared boundaries C0M3 and C0M3, there are four dividing points (Q+.1, Q, .1, Q, .9, C4°1) and ( Q, □, , Qt□1, Q3□, C4t,) are set for the parameter U.

同様にV方向の共有境界C0M2及びC0M4のうち長
さの長い共有境界C0M4の長さに基づいて、共存境界
C0M2及びC0M4上に分割点C5目及びQO目をパ
ラメータVについて設定する。
Similarly, based on the length of the longer shared boundary C0M4 among the shared boundaries C0M2 and C0M4 in the V direction, the dividing point C5 and QOth are set for the parameter V on the coexistence boundaries C0M2 and C0M4.

かくしてパッチS (u+v□においては、U方向及び
V方向にマトリックス状に配置された18個の分割点及
び節点によって三角形単位領域UAを切り出して陰影処
理をする。
Thus, in the patch S (u+v□), the triangular unit area UA is cut out using 18 dividing points and nodes arranged in a matrix in the U direction and the V direction, and shading processing is performed.

これに対して、小さなパッチS(un。2はパッチS 
(un vl Zを囲むU方向の共有境界COMI及び
C0M6のうち、長さの長い共有境界COMIの長さに
基づいて共有境界COMI及びC0M6上に2つの分割
点(Q l。、C2゜)及び(Q+。2、Qzoz)を
パラメータUについて設定する。
On the other hand, a small patch S(un.2 is a patch S
(Among the shared boundaries COMI and C0M6 in the U direction surrounding un vl Z, two dividing points (Q l., C2°) are created on the shared boundaries COMI and C0M6 based on the length of the longer shared boundary COMI and (Q+.2, Qzoz) is set for the parameter U.

同様にV方向の共有境界C0M5及びC0M7に基づい
て共有境界C0M5及びCOMT上に1つの分割点Q0
,2、及びP3,2をパラメータVについて設定する。
Similarly, one dividing point Q0 is created on the shared boundaries C0M5 and COMT based on the shared boundaries C0M5 and C0M7 in the V direction.
,2, and P3,2 are set for the parameter V.

かくしてパッチS (un v) tにおいては、U方
向及びV方向に並ぶ12個の分割点及び節点によって三
角形単位領域UAを切り出して陰影処理をする。
Thus, in the patch S (un v) t, the triangular unit area UA is cut out using 12 dividing points and nodes arranged in the U direction and the V direction, and shading processing is performed.

ところがこのようにすると、第1のパッチS (ur 
V) 1の三角形単位領域UAの切り出しは、枠組み処
理によって形成された共有境界COMIの両端位置の節
点P、。。1I=P(3゜1間を1つのセグメントとし
て5分割しているの対し、第2のパッチS (ur v
l tの三角形単位領域UAの切り出しは、共有境界C
OMIを3分割している。
However, if we do this, the first patch S (ur
V) Triangular unit area UA 1 is cut out using nodes P at both ends of the shared boundary COMI formed by framework processing. . 1I=P (3°1 segment is divided into 5 segments, whereas the second patch S (ur v
The triangular unit area UA of l t is cut out using the shared boundary C
OMI is divided into three parts.

従って節点P、。。1.〜P4゜15間を5分割する三
角形単位領域UAの共有境界COMIに沿う一辺が通る
位置と、同様に節点P、。3□〜P(331Z間を3分
割する三角形単位領域UAの共有境界COMIに沿う一
辺が通る位置とが一敗しない場合が生じ、この間にギャ
ップGUPXが生ずることになる。
Therefore, the node P,. . 1. The position along the shared boundary COMI of the triangular unit area UA that divides the area between ~P4°15 into 5 passes through, and the node P, as well. 3□ to P (331Z, which divides the triangular unit area UA into three parts, the position along the common boundary COMI of the triangular unit area UA passes through the position may not be lost, and a gap GUPX will occur between them).

このギャップGUPXの部分については、陰影処理がさ
れないことになり、結局陰影がつかない部分が生じるこ
とによりいわゆる穴があくことになる。
This gap GUPX will not be subjected to shading processing, and as a result, there will be a portion without shading, resulting in a so-called hole.

このように陰影処理ができない部分が生ずると、陰影を
つけた自由曲面が不自然に見える不都合が生ずる。
When a portion cannot be shaded in this manner, the shaded free-form surface looks unnatural.

本発明は以上の点を考慮してなされたもので、隣り合う
パッチの共有境界に沿ってギャップGUPXが生じるこ
とがなく、しかも短時間で陰影処理を行うことができる
陰影表示方法を提案しようとするものである。
The present invention has been made in consideration of the above points, and attempts to propose a shading display method that does not generate gaps GUPX along the shared boundaries of adjacent patches and can perform shading processing in a short time. It is something to do.

E問題点を解決するための手段 かかる問題点を解決するために、本発明においては、枠
組み処理によって境界曲線で囲まれた多数の枠組み空間
を形成し、上記枠組み空間にそれぞれ位置を表すパラメ
ータを有するベクトル関数で表されるパッチS (un
 vl を張ることにより生成された自由曲面に陰影を
つけるようになされた陰影表示方法において、パッチS
 (un vl を所定量ΔMPだけ拡大して得られる
切り出し用パッチS (al+ vl Cから多数の三
角形単位領域UAを切り出し、当該三角形単位領域UA
の3つの頂点位置P+ −Pz 、P3の輝度情報It
、It、I:+に基づいて、三角形単位領域UAに含ま
れているビクセルについての輝度情報を補間することに
より、自由曲面に陰影をつけるようにする。
Means for Solving Problem E In order to solve this problem, in the present invention, a large number of framework spaces surrounded by boundary curves are formed by framework processing, and parameters representing positions are assigned to each of the framework spaces. A patch S (un
In a shading display method in which a free-form surface generated by stretching vl is shaded, the patch S
Cutting out patch S (un vl obtained by enlarging un vl by a predetermined amount ΔMP) Cut out a large number of triangular unit areas UA from C (al+ vl
The three vertex positions P+ -Pz, the brightness information It of P3
, It, I:+, the free-form surface is shaded by interpolating the luminance information about the pixels included in the triangular unit area UA.

F作用 パッチS (1++ v)を拡大した切り出し用パッチ
S (un v) (は、隣り合う切り出し用パッチS
 (ur vl C間の境界部分で重なり合う部分が生
じる。その結果、切り出し用パッチS (un v)を
三角形単位領域UAに切り出して陰影処理しても、隣り
合うパッチ間にギャップが生じることを有効に回避する
ことができる。
The cutout patch S (un v) which is an enlarged version of the F effect patch S (1++ v) (is the adjacent cutout patch S
(An overlapping portion occurs at the boundary between ur vl C. As a result, even if the cutout patch S (un v) is cut out into the triangular unit area UA and the shading process is performed, it is not possible to effectively eliminate the gap between adjacent patches. can be avoided.

G実施例 以下図面と共に本発明の一実施例について詳述する。G example An embodiment of the present invention will be described in detail below with reference to the drawings.

第1図は上述したようにして形成された自由曲面につい
て、本発明を適用した場合の実施例を示すもので、パッ
チS jut vl を三角形単位領域に切り出す際に
、パッチS (11+ vl に基づいて切り出し用パ
ッチS (tl+ vl cを生成し、この切り出し用
パッチS (un w> cから三角形単位領域UAを
切り出すようにする。
FIG. 1 shows an example in which the present invention is applied to a free-form surface formed as described above. When cutting out the patch S jut vl into a triangular unit area, the patch S Then, a clipping patch S (tl+vl c is generated), and a triangular unit area UA is cut out from this clipping patch S (un w> c).

すなわちパッチS Tar v) は次式0式%(1) のように定義されるパラメータU及びVと共有境界CO
MIの一端の位置を表す位置ベクトルで表される制御点
P0゜(枠組み空間を形成する節点でなる)を用いた3
次のベジェ式で、次式5(Il、Vl=(1unuE)
3(1−vlvF)’Pa。
In other words, the patch S Tar v) is defined by the parameters U and V defined as the following equation (1) and the shared boundary CO
3 using the control point P0° (consisting of nodes forming the framework space) represented by the position vector representing the position of one end of MI.
In the following Bezier equation, the following equation 5 (Il, Vl = (1unuE)
3(1-vlvF)'Pa.

・・・・・・(3) のように表される。・・・・・・(3) It is expressed as follows.

ここでE及びFは、シフト演算子で、パッチS (un
 Vl 上の位置ベクトルで表される制御点P(!+j
)に対して次式 %式%(4) の関係をもつ。
Here E and F are shift operators and patch S (un
The control point P(!+j
), the relationship is as shown in the following formula (4).

ここでパラメータにU及びVを(1)式及び(2)式で
表される範囲より広い範囲で変化させれば、(1)式及
び(2)弐の条件で(3)式に基づいて得られるパッチ
S (un v)より所定量だけ大きい切り出し用パッ
チS (Ll+ vl Cを得ることができる。
Here, if the parameters U and V are changed in a wider range than the range expressed by equations (1) and (2), then based on equation (3) under the conditions of equations (1) and (2), It is possible to obtain a cutout patch S (Ll+vl C) which is larger by a predetermined amount than the obtained patch S (un v).

ここでは切り出し用パッチS (un vl (を得る
前に先ず三角形単位領域UAに切り出すための分割数を
決定する。
Here, before obtaining the cutout patch S (un vl ()), first, the number of divisions for cutting out the triangular unit area UA is determined.

(Gl)分割数の決定 パッチS (un v)の制御点P(i、J)を表示画
像に対応する平面に透視変換して得られる2次元の位置
ベクトルで表される制御点を、制御点P(i、Jlに対
応させてP +i、=+t (1= Oll、2.3.
j=o、i、2.3)を用いて表し、同様にパッチS 
(ul v)を透視変換して得られる2次元のパッチを
パッチS (un v)に対応させてS (U+ V)
 、を用いて表す。
(Gl) Determination of the number of divisions The control point expressed by the two-dimensional position vector obtained by perspectively transforming the control point P (i, J) of the patch S (un v) to a plane corresponding to the display image is Corresponding to the point P(i, Jl, P +i, = +t (1 = Oll, 2.3.
j=o, i, 2.3), and similarly the patch S
The two-dimensional patch obtained by perspective transformation of (ul v) is made to correspond to patch S (un v), and S (U+ V)
, is expressed using .

ここでU方向についてのパッチS (u、vl Tのパ
ラメータVをV=O及びv=lとした共有境界C0M1
及びC0M3に対応する制御点間距離RuO及びRul
を、次式 %式% ここで次式 Rull > Rul           ・・・・
・・(10)の結果が得られると次式を用いてU方向の
制御点間距離R,を Ru−Ru0          ・−・・−・(11
)と置き、次式 %式%(12) の結果が得られると次式 R、= Rul           −−・・・−(
13)と置く。
Here, the patch S (u, vl) in the U direction is a common boundary C0M1 where the parameters V of T are V=O and v=l
and the distance between control points RuO and Rul corresponding to C0M3
, the following formula % formula % where the following formula Rull > Rul ...
...Once the result of (10) is obtained, the distance R between the control points in the U direction can be determined as Ru-Ru0 using the following formula.
), and when the result of the following formula % formula % (12) is obtained, the following formula R, = Rul −−・・・−(
13).

さらに表示画像の隣接する画素間の距離を、値りを用い
て表し、次式 で表されるU方向の分割数に、を得る。ここで(14)
式は、透視変換された三角形単位領域の一辺の長さが値
MPを用いて表される長さD−MPになるように、各切
り出し用パッチS (un vl cの分割数を決定し
たことを意味する。さらにこのとき、共有境界COMI
及びC0M3の長さに代えて制御点間距離R8゜及びR
□に基づいて分割数を決定したことにより、例えば曲率
の小さなところは細かく分割することができる。
Further, the distance between adjacent pixels of the display image is expressed using a value, and the number of divisions in the U direction expressed by the following equation is obtained. Here (14)
The formula determines the number of divisions of each cutout patch S (un vl Furthermore, in this case, the shared boundary COMI
And in place of the length of C0M3, the distance between control points R8° and R
By determining the number of divisions based on □, for example, areas with small curvature can be divided finely.

従ってこのような手法を用いて切り出し用パッチS (
ul V、Cを分割すると、ギャップGUPXを小さく
する効果を得ることができる。
Therefore, using such a method, the cutout patch S (
By dividing ul V, C, it is possible to obtain the effect of reducing the gap GUPX.

同様にV方向についてもパッチS (ulvl  のパ
ラメータUをU=O及びu=1とした共有境界C0M4
及びC0M2に対応する次式 %式% で表される制御点間距離RvO及びRvlを求める。
Similarly, for the V direction, the patch S (shared boundary C0M4 with parameter U of ulvl as U=O and u=1)
The inter-control point distances RvO and Rvl corresponding to C0M2 and C0M2 are determined by the following formula %.

これより、次式 %式%(17) の結果が得られると、次式を用いてV方向の制御点間距
離Rvを Rv=Rv、           −・−・(18)
と置き、次式 %式%(19) の結果が得られると、次式 Rv−Rv、            ・−・・・(2
0)と置く。
From this, when the result of the following formula % formula % (17) is obtained, the distance Rv between control points in the V direction is calculated using the following formula Rv=Rv, -・-・(18)
When the result of the following formula % formula % (19) is obtained, the following formula Rv-Rv, ... (2
0).

さらに(14)式の場合と同様にして次式よりV方向の
切り出し用パッチS (ul vl cの分割数Kvを
決定する。
Furthermore, in the same manner as in the case of equation (14), the number of divisions Kv of the patch S (ul vl c) for cutting out in the V direction is determined from the following equation.

(G2)切り出し用パッチの生成 以下パツチS (+l+ v)を所定の大きさだけ拡大
して切り出し用パツチS (un v) cを生成する
方法について述べる。
(G2) Generation of a patch for extraction A method for generating a patch for extraction S (un v) c by enlarging the patch S (+l+v) by a predetermined size will be described below.

例えば−辺の長さが上述の距離D−MPで表される三角
形単位領域UAを切り出す際に、この値MPをMP=5
 (ピクセル〕と選定し、パッチS lu+ vl を
各方向U及び■にΔMP=0.5(ピクセル〕だけ大き
くするように選定したとする(この選定は、オペレータ
の設定操作によってなされる)。
For example, when cutting out a triangular unit area UA whose side length is represented by the above-mentioned distance D-MP, this value MP is set to MP=5
(pixels) and the patch S lu+ vl is selected to be larger by ΔMP=0.5 (pixels) in each direction U and ■ (this selection is made by the operator's setting operation).

(1)式に対応するパラメータUの変化範囲をv−0の
共有境界COMIに対応してul。及びu2゜とおき、
次式 %式%(22) で表される値u+o及びu2゜を求める。
The change range of the parameter U corresponding to equation (1) is ul corresponding to the shared boundary COMI of v-0. and u2°,
Find the values u+o and u2° expressed by the following formula % formula % (22).

同様にv=lの共有境界に対応して変化範囲をU、及び
ut+とおき、次式 %式%(25) で表される値u11及びuz+を求める。
Similarly, the change ranges are set as U and ut+ corresponding to the shared boundary of v=l, and the values u11 and uz+ expressed by the following formula % formula % (25) are determined.

これに対して(2)式に対応するノぐラメータVの変化
範囲をU=Oの共有境界に対応してvl、及びv2゜と
おくと、次式 %式%(2) で表される値v1゜及びv2゜を求める。
On the other hand, if we set the variation range of the parameter V corresponding to equation (2) as vl and v2° corresponding to the shared boundary of U=O, it is expressed by the following equation % equation % (2) Find the values v1° and v2°.

さらに同様にu=1の共有境界に対応してパラメータV
の変化範囲をVl+及びvz+とおき、次式%式%(3
1) : ・・・・・・ (33) で表される値Vl+及びV21を求める。
Furthermore, similarly, corresponding to the shared boundary of u=1, the parameter V
Letting the range of change in Vl+ and vz+, the following formula % formula % (3
1) Find the values Vl+ and V21 expressed by: ...... (33).

このようにして求められた範囲で(3)式に対してパラ
メータU及びVを変化させることにより、第1図に示す
ように、透視変換されたパツチS Tu+ V) ?よ
りも所定の大きさだけ各方向U及び■に大きくなった(
この場合は0.5〔ビクセル〕ずつ)切り出し用パッチ
S (IIL v) (アを得ることができる。
By varying the parameters U and V with respect to equation (3) within the range determined in this way, as shown in FIG. 1, the perspectively transformed patch S Tu+ V) ? It became larger in each direction U and ■ by a prescribed size than (
In this case, it is possible to obtain the extraction patch S (IIL v) (a by 0.5 [vixels]).

さらにこのようにして得られた切り出し用パツチ S 
(un v) (を従来と同様の手法を用いて三角形単
位領域に切り出すためにパツチ S (un v、のパ
ラメータU及びVに対応する切り出し用パッチS (u
n v) (のOから1までの間まで変化するパラメー
タuC及びVCを設定し、パラメータuc及びvcを用
いて分割点Qを設定する。
Furthermore, the cutout patch S obtained in this way
(u
n v) (Set parameters uC and VC that vary from O to 1, and set dividing point Q using parameters uc and vc.

すなわち0〜1までの範囲を(14)式及び(21)式
で求めた分割数Ku及びKvで分割して得られるパラメ
ータuk及びvkを用いて、次式7式% で求められるパラメータuc及びVCによって分割点Q
(、、、を設定し、これに基づいて切り出し用パツチS
 (un v) eから三角形単位領域UAを切り出す
ようにする。
In other words, using the parameters uk and vk obtained by dividing the range from 0 to 1 by the division numbers Ku and Kv obtained by equations (14) and (21), the parameters uc and vk obtained by the following equation 7 are Dividing point Q by VC
(,,,), and based on this, the patch S
(un v) A triangular unit area UA is cut out from e.

(G3)処理手順 画像表示装置は、中央処理ユニット(CPU)によって
第2図の処理手順に従って、画像変換処理を実行する。
(G3) Processing procedure The image display device executes image conversion processing by the central processing unit (CPU) according to the processing procedure shown in FIG.

まずステップSPIにおいて、変換処理プログラムを開
始し、ステップSP2において、透視変換に要する視点
1 (第3図)の位置、陰影処理に要する光源の位置、
及びパツチを三角形単位領域に切り出す際のピクセル数
MP (、透視変換された三角形単位領域−辺の長さを
表す)をオペレータの操作によって入力する。
First, in step SPI, the conversion processing program is started, and in step SP2, the position of viewpoint 1 (Fig. 3) required for perspective conversion, the position of the light source required for shading processing,
and the number of pixels MP (representing the perspective-transformed triangular unit area - side length) when cutting out the patch into triangular unit areas are input by the operator.

続いてCPUは、ステップSP3において予め格納して
いる3次元の自由曲面データに基づいて、当該自由曲面
データによって表される3次元(x 1y、zの3次元
座標で表される)の自由曲面画像5を、ステップSP2
において指定された視点1によって決まる仮想スクリー
ン2 (第3図に示すようにxy座標で表される二次元
平面でなる)上に透視する際に、3次元自由曲面画像5
の曲面上の点を仮想スクリーン2上の対応する点に変換
するために用いる透視変換マトリクスを生成する。
Next, in step SP3, the CPU generates a three-dimensional free-form surface (represented by three-dimensional coordinates of x, y, and z) based on the three-dimensional free-form surface data stored in advance. Image 5, step SP2
When looking through a virtual screen 2 (consisting of a two-dimensional plane represented by xy coordinates as shown in FIG. 3) determined by a viewpoint 1 specified in , a three-dimensional free-form surface image 5
A perspective transformation matrix used to transform points on the curved surface of 2 to corresponding points on the virtual screen 2 is generated.

次にCPUは、ステップSP4において変換すべき自由
曲面データの各パツチS (un Vl の制御点P(
t+Jl のデータを読出し、次のステップSP5にお
いて表示領域の決定をする。この処理は、表示すべき画
像をディスプレイの画面のほぼ中央位置に適切な寸法で
表示させるための表示領域を決めるステップで、先ずス
テップSP4において読み込まれた制御点データをステ
ップSP3で生成した透視変換マトリクスを用いて、第
4図に示すように2次元の仮想スクリーン2上に透視変
換する。その結果得られる仮想スクリーン2上の2次元
の制御点P (l+ 417のX軸方向の最大値X I
IaX及び最少値X1nと、Y軸方向の最大4fiY 
vs a x及び最小値Y wa i nとをそれぞれ
抽出し、X軸方向について最大値X 1118X及び最
小値X8.7の中心位置Xcを次式 によって求めると共に、Y軸方向の最大値Y m m 
x、最小値Y IIL hの中心位置Ycを次式7式% によって求める。かくして求めた中央位置(Xc、Yc
)をディスプレイのラスク表示画面11の中心位置に設
定すると共に、表示画像DBSがディスプレイの表示画
面11を形成するピクセルに対応するメモリセルを有す
るフレームバッファのサイズに収まるような表示領域A
REを定める。
Next, in step SP4, the CPU calculates the control point P(
The data of t+Jl is read out, and the display area is determined in the next step SP5. This process is a step of determining a display area for displaying an image to be displayed at approximately the center of the display screen with appropriate dimensions. First, the control point data read in step SP4 is transformed into a perspective image generated in step SP3. Using a matrix, perspective transformation is performed on a two-dimensional virtual screen 2 as shown in FIG. The resulting two-dimensional control point P (l+417 in the X-axis direction X I
IaX and the minimum value X1n and the maximum 4fiY in the Y-axis direction
vs a x and the minimum value Y wa i n are respectively extracted, and the center position Xc of the maximum value X 1118
x, the center position Yc of the minimum value Y IIL h is determined by the following formula 7. The center position thus obtained (Xc, Yc
) is set at the center position of the rask display screen 11 of the display, and the display area A is such that the display image DBS fits within the size of a frame buffer having memory cells corresponding to pixels forming the display screen 11 of the display.
Define RE.

ここで表示領域AREは第4図から明らかなように、X
軸方向に最大値X mmx〜最小値X @inの領域を
もち、かつY軸方向に最大値Y maw〜最小値Y。、
4の領域をもつ。
As is clear from FIG. 4, the display area ARE is
It has a region from maximum value X mmx to minimum value X @in in the axial direction, and from maximum value Y maw to minimum value Y in the Y-axis direction. ,
It has 4 areas.

CPUは、この表示領域AREを決定すると、以下当該
表示領域ARE内にあるピクセルに限って以後の処理ス
テップを実行する。このことは、ラスク表示画面上に表
示すべき画像の変換演算量を一段と低減できることを意
味している。すなわち一般に、ラスク表示画面上に画像
変換処理された画像を表示させようとする場合、ラスク
表示画面を構成する全てのビクセルについて、表示すべ
き画像データのを無及びその内容を演算しなが9フレー
ムバツフアメモリの対応するメモリエリアにその演算結
果を格納して行(方法が採用されている。この場合は、
ラスク表示画面11のうち、表示すべきデータがないビ
クセルについては演算処理をしないので、結局全体とし
て画像変換演算量を格段的に低減し得る。
After determining this display area ARE, the CPU executes subsequent processing steps only for pixels within the display area ARE. This means that the amount of conversion calculations for images to be displayed on the rask display screen can be further reduced. In other words, in general, when trying to display an image that has been subjected to image conversion processing on the rask display screen, it is necessary to calculate the image data to be displayed and its contents for all the pixels that make up the rask display screen. The calculation result is stored in the corresponding memory area of the frame buffer memory.
Since arithmetic processing is not performed on pixels on the raster display screen 11 for which there is no data to be displayed, the overall amount of image conversion calculation can be significantly reduced.

続いてCPUは、ステップSP6に移って、ステップS
P5において予め求められた2次元の制御点P(i+j
lTに基づいて上述の(8)弐〜(21)式の演算を実
行して、所定の切り出し用パッチのU方向及びV方向の
分割数を決定した後、ステップSP7に移る。
Next, the CPU moves to step SP6 and executes step S.
At P5, the two-dimensional control point P(i+j
After executing the above-mentioned equations (8) to (21) based on lT to determine the number of divisions of the predetermined cutout patch in the U direction and the V direction, the process moves to step SP7.

ステップSP7においてCPUは上述の(22)弐〜(
33)式の演算を実行して、切り出し用パッチS (u
n v) (を生成するためのパラメータu1゜、u2
゜、ull、uz+、V l 0% V 20z V 
l l及びvz+を求めた後、ステップSP8に移り、
(34)式及び(35)式の演算を実行して切り出し用
パッチS (un v) cを分割するためのパラメー
タuc及びvcを求める。
In step SP7, the CPU executes the above (22)2~(
33) Execute the calculation of formula to obtain the cutout patch S (u
n v) (parameters u1゜, u2 for generating
゜、ull、uz+、V l 0% V 20z V
After determining l l and vz+, proceed to step SP8.
Parameters uc and vc for dividing the cutout patch S (un v) c are obtained by performing calculations of equations (34) and (35).

続いてCPUは、ステップSP9に移り、ステップSP
7において求めていたパラメータulo、u20% u
ll、u !I % V I 0% V 20、Vll
、及びvt+に基づいて、切り出し用パッチS (II
+ vl cを生成した後、ステップSP8において求
めたパラメータuC及びvcを用いて当該切り出し用パ
ッチS (un v) cを分割する分割点Q(すなわ
ち三角形単位領域UAの各頂点データになる)を設定す
る。
Next, the CPU moves to step SP9, and executes step SP9.
Parameter ulo, u20% u found in 7
Ill, u! I % V I 0% V 20, Vll
, and vt+, the extraction patch S (II
+ vl c is generated, the dividing point Q (that is, each vertex data of the triangular unit area UA) for dividing the cutout patch S (un v) c is determined using the parameters uC and vc obtained in step SP8. Set.

この実施例の場合、第5図に示すように、三角形単位領
域UAの切出しは、1パツチ分の切り出し用パッチS 
(un vl cのデータDATAを上述のパラメータ
uc及びvcに基づいて、三角形単位領域の一辺の長さ
が導間隔になる(必ずしも曲面上で等間隔にはならない
)ような間隔で順次配列する2群の切出線群L1及びL
2の交点位置を順次演算して行く。切出線群L1及びL
2に含まれる切出線の数は例えば縦横5本に選定され、
切出線群Ll及び切出線群L2が互いに網目状に交差す
るように設定されている。かくして1パッチ分のデータ
DATAでなる曲面は、切出線群LL及びL2の隣り合
う2本の切出線によって囲まれた小頭域UAXに分割さ
れ、当該小頭域UAXを4つの交点PXによって囲むよ
うに切出処理される。
In this embodiment, as shown in FIG. 5, the triangular unit area UA is cut out by one patch S.
(Based on the parameters uc and vc described above, the data DATA of un vl c is sequentially arranged at intervals such that the length of one side of the triangular unit area is a leading interval (not necessarily at equal intervals on a curved surface)2 Group cutting line groups L1 and L
The intersection positions of the two are sequentially calculated. Cutting line groups L1 and L
For example, the number of cutting lines included in 2 is selected to be 5 in the vertical and horizontal directions,
The cutting line group Ll and the cutting line group L2 are set to intersect with each other in a mesh pattern. In this way, the curved surface made up of data DATA for one patch is divided into a small head area UAX surrounded by two adjacent cutting lines of the cutting line groups LL and L2, and the small head area UAX is divided into four intersection points PX. It is cut out so as to surround it.

小領域UAXは、互いに対向する2つの交点間を結ぶ対
角線L3によって2つの三角形単位領域UAに分割され
、かくしてデータDATAが表す曲面が多数の三角形単
位領域UAに分割される。
The small area UAX is divided into two triangular unit areas UA by a diagonal line L3 connecting two mutually opposing intersection points, and thus the curved surface represented by the data DATA is divided into a large number of triangular unit areas UA.

さらにステップSP9においてこのようにして曲面から
三角形単位領域UAの切出しを実行した後、cpuが各
三角形単位領域UAの頂点にある3つの交点位置につい
て法線単位ベクトルを計算し、物体の表面のうち、視点
から見て見えない部分についてはディスプレイ上に表示
しないように頂点のデータを処理する。この処理は、第
6図に示すように、物体5の表面でなる曲面5Aを視点
1から見たとき、見える部分(これを可視部分と呼ぶ)
と見えない部分(これを不可視部分と呼ぶ)とが生ずる
ことに基づいて、見える部分に対応する部分だけを表示
画面上に表示させるためのものである。
Furthermore, after cutting out triangular unit areas UA from the curved surface in this way in step SP9, the CPU calculates normal unit vectors for the three intersection points at the vertices of each triangular unit area UA, and , the vertex data is processed so that parts that are not visible from the viewpoint are not displayed on the display. As shown in FIG. 6, this process involves the visible part (this is called the visible part) when the curved surface 5A formed by the surface of the object 5 is viewed from the viewpoint 1.
This is to display only the portion corresponding to the visible portion on the display screen based on the fact that there is a visible portion and an invisible portion (this is called an invisible portion).

ここで、曲面5Aの各部分が可視部分であるか否かの判
断のための第1条件は、視点1から視線ELLに沿って
物体50曲面5Aを見たとき、視線ELLが曲面5Aと
交差する点pH,,P12、PI3のうち、点P12の
面部分は、視線EL1の視点1例の位置pHに視線EL
Lと交差する面部分が存在することにより、当該面部分
に隠される結果になっており、従って点P12の面部分
は不可視であると判断し、物体5及び視点1間に設けら
れた仮想スクリーン2上に可視である位1P11の面部
分を透視するような頂点データの変換処理を実行する。
Here, the first condition for determining whether each part of the curved surface 5A is a visible part is that when viewing the object 50 and the curved surface 5A from viewpoint 1 along the line of sight ELL, the line of sight ELL intersects with the curved surface 5A. Among the points pH,, P12, and PI3, the surface portion of point P12 is located at the position pH of one example of the viewpoint of the line of sight EL1.
Due to the existence of a surface portion that intersects with L, it is hidden by the surface portion, and therefore, it is determined that the surface portion of point P12 is invisible, and the virtual screen provided between object 5 and viewpoint 1 is Vertex data conversion processing is performed to see through the surface portion of 1P11 that is visible on 2.

すなわち三角形単位領域UAの3つの頂点について、視
線単位ベクトルEを演算により求め、この視線単位ベク
トルEと法線単位ベクトルNとの内積を演算で求めて各
頂点の可視−不可視データを生成する。このとき内積の
結果が正ならば当該頂点が視点1側に向いたパッチ上に
あることを意味し、負ならば、視点1とは逆側に向いた
パッチ上になることを意味している。従って内積の結果
が正か否かと判断することによって可視−不可視を判断
することができる。
That is, for the three vertices of the triangular unit area UA, the line-of-sight unit vector E is calculated, and the inner product of the line-of-sight unit vector E and the normal unit vector N is calculated to generate visible-invisible data for each vertex. At this time, if the result of the inner product is positive, it means that the vertex is on a patch facing toward viewpoint 1, and if it is negative, it means that it is on a patch facing away from viewpoint 1. . Therefore, visibility can be determined by determining whether the result of the inner product is positive or not.

これに続いてCPUは、1つの切出し用パッチS (u
+ vl cの三角形単位領域UAの各頂点について第
7図に示すように、頂点pxから視点lまでの距離ベク
トルDを計算で求める。
Following this, the CPU generates one cutout patch S (u
As shown in FIG. 7 for each vertex of the triangular unit area UA of + vl c, the distance vector D from the vertex px to the viewpoint l is calculated.

すなわち第6図において可視−不可視を判断するために
は、注目している面部分が他の曲面に隠されていないこ
とも判断する必要がある。物体5の曲面5Aと視点1と
の間に他の物体6が存在し、視線EL2に沿って物体5
を見たとき、視線EL2が物体6の曲面6Aと交差した
後、物体5の曲面5Aと交差するような状態にあるとき
、物体5の曲面5A上の位置P14の面部分は、視点1
側にある物体6の曲面6A上の位置P15の面部分によ
って隠されており、従って仮想スクリーン2上には、不
可視の面部分(位g P 14の面部分)を表示せずに
可視の面部分(位置P15の面部分)を表示する必要が
ある。
That is, in order to determine whether the surface is visible or invisible in FIG. 6, it is also necessary to determine whether the surface portion of interest is not hidden by another curved surface. Another object 6 exists between the curved surface 5A of the object 5 and the viewpoint 1, and the object 5 exists along the line of sight EL2.
When the line of sight EL2 intersects the curved surface 6A of the object 6 and then intersects the curved surface 5A of the object 5, the surface portion at the position P14 on the curved surface 5A of the object 5 is located at the viewpoint 1.
It is hidden by the surface portion at position P15 on the curved surface 6A of the object 6 on the side, and therefore, the visible surface is not displayed on the virtual screen 2 without displaying the invisible surface portion (the surface portion at position g P 14). It is necessary to display the part (the surface part at position P15).

このため三角形単位領域の頂点pxから視点1までの距
離ベクトルDを曲面の位置ベクトルS及び視点の位置ベ
クトルE0を用いて、次式1式%(38) によって演算した後、当該距離ベクトルDの絶対値を距
離データDとして得る。
Therefore, after calculating the distance vector D from the vertex px of the triangular unit area to the viewpoint 1 using the position vector S of the curved surface and the position vector E0 of the viewpoint according to the following equation 1 (38), the distance vector D is The absolute value is obtained as distance data D.

かくしてディスプレイのラスク表示画面上、同じビクセ
ルについて複数の曲面部分についての距離データが得ら
れたとき、視点1に最も近い曲面部分のデータを可視部
分として判定することができる。
In this way, when distance data for a plurality of curved surface parts are obtained for the same pixel on the rask display screen of the display, it is possible to determine the data of the curved surface part closest to viewpoint 1 as the visible part.

次に、各頂点の輝度データの生成処理を行う。Next, a process of generating brightness data for each vertex is performed.

このステップは、第8図に示すように、各頂点PXにお
ける輝度を計算するもので、光源8の位置ベクトルSS
を用いて、次式 %式%(39) によって頂点pxから見た光源8に対する位置ベクトル
Kを計算する。そしてその計算結果を用いて、頂点PX
O法線単位ベクトルNとの内積に基づいて入射角θの余
弦cosθを次式 を演算し、これを変数Aとお(。
In this step, as shown in FIG. 8, the brightness at each vertex PX is calculated, and the position vector SS of the light source 8
The position vector K relative to the light source 8 as seen from the vertex px is calculated using the following formula (39). Then, using the calculation result, the vertex PX
The cosine cos θ of the incident angle θ is calculated by the following formula based on the inner product with the O normal unit vector N, and this is set as the variable A (.

さらにこの変数Aを用いて輝度Iを次式1式%(41) によって演算する。Furthermore, using this variable A, the brightness I can be calculated using the following formula (1)% (41) Calculate by

ここで定数りの値は、例えば0.22程度であるのに対
して、変数Aは0〜1の範囲で変動する(θが±π/2
の範囲で変動するので)。かくして輝度Iは頂点PXに
対して光源8から入射する光の変化に応じて変化し、こ
れにより各頂点の輝度データが得られる。
Here, the value of the constant R is, for example, about 0.22, whereas the variable A fluctuates in the range of 0 to 1 (θ is ±π/2
). In this way, the brightness I changes according to changes in the light incident on the vertex PX from the light source 8, and thereby the brightness data of each vertex is obtained.

続いてCPUはステップ5PIOに移り上述のステップ
SP6からSF3において得られた切り出し用パッチS
 +ui Vl cの各頂点データから第5図に示すよ
うに1つの三角形単位領域UAの3つの頂点データを抽
出し、ステップ5P12から5P15の補間演算によっ
て三角形単位領域UA内の陰影処理を行う。
Subsequently, the CPU moves to step 5PIO and uses the cutout patch S obtained in steps SP6 to SF3 described above.
As shown in FIG. 5, three vertex data of one triangular unit area UA are extracted from each vertex data of +ui Vl c, and shading processing within the triangular unit area UA is performed by interpolation calculations in steps 5P12 to 5P15.

このようにして処理すべき曲面のデータDATAを三角
形単位領域UAに分割して、3つの頂点についてデータ
を得ることは、三角形単位領域UAをディスプレイのラ
スク表示画面上に変換したとき、当該変換した三角形単
位領域に含まれているビクセルについてのディスプレイ
を、3つの頂点のデータによって代表させたことを意味
し、従って以後の処理を3つの頂点のデータに基づいて
実行することにより、データの処理速度を格段的に速め
ることができることを意味している。
In this way, dividing the data DATA of the curved surface to be processed into triangular unit areas UA and obtaining data about the three vertices means that when the triangular unit area UA is converted onto the rask display screen of the display, the converted This means that the display of the pixels included in the triangular unit area is represented by the data of the three vertices. Therefore, by performing subsequent processing based on the data of the three vertices, the data processing speed can be increased. This means that it is possible to significantly speed up the process.

CPUは、ステップ5PIIにおいて、表示領域ARE
に含まれる1パッチ分のビクセルのうち、現時点におい
て輝度を演算決定すべきビクセル(これを処理点と呼ぶ
)PCが、どの三角形単位領域UAに属するものである
かを判定する。この判定は第9図に示すように、三角形
単位領域UAの3つの頂点を透視変化してなるXY平面
上の位置ベクトルP、、P、及びP、で表される点Pl
、P2及びP3に基づいてそれぞれベクトルa及び。
In step 5PII, the CPU selects the display area ARE.
It is determined to which triangular unit area UA the pixel PC (referred to as a processing point) whose brightness is to be calculated and determined at the current moment among the pixels of one patch included in the pixel belongs. As shown in FIG. 9, this determination is made at a point Pl expressed by position vectors P, , P, and P on the
, P2 and P3 respectively.

bを次式 %式%(42) さらに位置ベクトルP、で表される点Plから位置ベク
トルPCで表される処理点PCまでを次式 %式%(44) で表されるベクトルRを用いて表し、次式R=αa+β
b        ・・・・・・(45)の関係式を満
足する変数α及びβの値を判断する。
b is expressed by the following formula % Formula % (42) Furthermore, from the point Pl represented by the position vector P to the processing point PC represented by the position vector PC, the vector R represented by the following formula % Formula % (44) is used. and the following formula R=αa+β
b... Determine the values of variables α and β that satisfy the relational expression (45).

このとき、三角形単位領域UAの内側に処理点PCがあ
ると次式 %式%(46) の関係が得られる。かかる演算は、予めベクトルa及び
bから求められるマトリクス[aSb]の逆行列を計算
しておくことにより、面単に求めることができる。
At this time, if the processing point PC is located inside the triangular unit area UA, the following relationship is obtained. Such an operation can be simply obtained by calculating in advance the inverse matrix of the matrix [aSb] obtained from the vectors a and b.

このようにして処理点Peの位置が三角形単位領域UA
の外側にあると判断されたとき、CPUは当該三角形単
位領域UAについての以後の補間演算を実行せずに、処
理点Pcを内部に含むような三角形単位領域UAを見出
すことができるまで、新たな処理点PCについての判定
を繰返して行く。
In this way, the position of the processing point Pe is set in the triangular unit area UA.
When it is determined that the area is outside the triangular unit area UA, the CPU does not perform any subsequent interpolation calculations on the triangular unit area UA, and continues to search for a new triangular unit area UA until it can find a triangular unit area UA that includes the processing point Pc inside. The determination for each processing point PC is repeated.

この結果ステップ5PIIにおいて処理点PCが内部に
ある三角形単位領域UAを発見すると、CPUは次のス
テップ5P12に移って線形補間による可視又は不可視
の決定処理を実行する。この処理は、CPUが順次当該
三角形単位領域UAの頂点P、 、P2、P3について
格納されている可視−不可視データを読出し、第10図
に示すように、ディスプレイの表示画面上の位置 P2
、P、 、P、に対して、対応する可視−不可視データ
VI+ 、VIZ 、VI3を垂直に立てる。そして可
視−不可視データVI+ 、Vlz 、Vltの先端に
可視−不可視平面vpxを張る。
As a result, when the triangular unit area UA within which the processing point PC is found is found in step 5PII, the CPU moves to the next step 5P12 and executes visible or invisible determination processing by linear interpolation. In this process, the CPU sequentially reads out visible-invisible data stored for the vertices P, , P2, and P3 of the triangular unit area UA, and determines the position P2 on the display screen of the display as shown in FIG.
, P, , P, the corresponding visible-invisible data VI+ , VIZ , VI3 are set vertically. Then, a visible-invisible plane vpx is set at the tips of the visible-invisible data VI+, Vlz, and Vlt.

この可視−不可視平面■PXは、頂点 P、、Pt、P
、の可視−不可視データ■11、VI2、V I sの
値によって、可視−不可視データVIl〜Vl、の全部
が「+1」の値をもつときには第10図(A)に示すよ
うに三角形単位領域UAに対して上方に平行に延長する
可視−不可視平面■PXが得られ、これに対して可視−
不可視データVI+〜Vlsが全て「−1」のときには
、第10図(B)に示すように、三角形単位領域UAの
下方に平行に延長する可視−不可視平面vPXが得られ
る。
This visible-invisible plane ■PX is the vertex P, , Pt, P
According to the values of visible-invisible data ■11, VI2, and VI s, when all of the visible-invisible data VIl to Vl have a value of "+1", a triangular unit area is formed as shown in FIG. 10(A). A visible-invisible plane ■PX is obtained that extends upward parallel to UA, and the visible-
When the invisible data VI+ to Vls are all "-1", a visible-invisible plane vPX extending parallel to the lower part of the triangular unit area UA is obtained, as shown in FIG. 10(B).

これに対して、可視−不可視データVI、〜■I、のう
ちの一部(例えばVI、及びVI2)が「+1」であり
、かつ他部(すなわちV I 3 )が「−1」である
場合には、第10図(C)に示すように可視−不可視平
面■PXが三角形単位領域UAと交差することになり、
その交差&lINを挟んで頂点P、及びPz側の可視−
不可視平面■PXが正となり、かつ境界vALINを挾
んで、頂点P3側の可視−不可視平面■PXの符号が負
になる。
On the other hand, part of the visible-invisible data VI, ~■I (for example, VI and VI2) is "+1", and the other part (i.e., VI 3 ) is "-1". In this case, as shown in FIG. 10(C), the visible-invisible plane ■PX intersects the triangular unit area UA,
Visible on the vertex P and Pz side across the intersection &lIN -
The invisible plane ■PX becomes positive, and the sign of the visible-invisible plane ■PX on the vertex P3 side, sandwiching the boundary vALIN, becomes negative.

従って処理点PCを通り、三角形単位領域UA(従って
ディスプレイのラスク表示画面)に垂直な直線LCIと
可視−不可視平面vPXとの交点を求め、その値vIp
cを当該処理点P、の可視−不可視データとして補間す
る。
Therefore, the intersection point of the straight line LCI passing through the processing point PC and perpendicular to the triangular unit area UA (therefore, the rask display screen of the display) and the visible-invisible plane vPX is determined, and its value vIp
c is interpolated as visible-invisible data of the processing point P.

このようにすれば、表示すべき3次元の曲面から得たデ
ータとして3つの頂点P+ 、Pt 、Psについての
可視−不可視データVII、VIA、VIAを得さえす
れば、ディスプレイの表示画面上の三角形単位領域UA
に含まれる全ての処理点PC(これは表示画面上のピク
セルを表している)における可視−不可視データを、処
理点PCを通る直線LCIと三角形平面でなる可視−不
可視平面VPXとの交点を演算する(これは線形補間演
算になる)ことによって、簡易に得ることができる。
In this way, as long as the visible-invisible data VII, VIA, and VIA for the three vertices P+, Pt, and Ps are obtained as data obtained from the three-dimensional curved surface to be displayed, the triangle on the display screen of the display can be Unit area UA
The visible-invisible data at all processing points PC (this represents pixels on the display screen) included in is calculated by calculating the intersection of the straight line LCI passing through the processing point PC and the visible-invisible plane VPX, which is a triangular plane. (This is a linear interpolation calculation).

因に当該線形補間演算は、平面と直線との解を求める演
算になり、簡易かつ一義的に解が求まることになる。
Incidentally, the linear interpolation operation is an operation for finding a solution between a plane and a straight line, and the solution can be easily and uniquely found.

次に、CPUはステップ5P13に移って、線形補間に
よる輝度の決定処理を実行する。この処理は、第11図
に示すように、ディスプレイの表示画面上の三角形単位
領域U Aの頂点P、 、P、、P3の輝度データII
、It、I3に基づいて、三角形単位領域UAに含まれ
るピクセルでなる処理点PCにおける輝度■。を補間演
算するもので、次の手順によって演算処理を実行する。
Next, the CPU moves to step 5P13 and executes brightness determination processing by linear interpolation. As shown in FIG.
, It, I3, the brightness ■ at the processing point PC consisting of pixels included in the triangular unit area UA. It performs interpolation calculations, and the calculation process is performed using the following steps.

すなわち先のステップSP9において得られた三角形単
位領域UAの頂点PI、Pg 、Pzの輝度データI+
 、Iz、13をディスプレイの表示画面上の対応する
頂点P+ 、Pt 、P3位置に垂直に立てる。そして
輝度データI+ 、Iz、Isの先端を結ぶ輝度平面B
PXを張る。そして三角形単位領域UAに含まれる各ピ
クセルについての処理点PCからディスプレイの表示画
面に垂直に直線LC2を引き、当該直線LC2と輝度平
面BPXとの交点を求め、その交点における輝度平面B
PXO値を処理点PCの輝度I□と決定する。
That is, the brightness data I+ of the vertices PI, Pg, and Pz of the triangular unit area UA obtained in the previous step SP9
, Iz, 13 are placed vertically at the corresponding vertices P+, Pt, and P3 on the display screen of the display. And brightness plane B connecting the tips of brightness data I+, Iz, and Is
Attach PX. Then, draw a straight line LC2 perpendicularly to the display screen of the display from the processing point PC for each pixel included in the triangular unit area UA, find the intersection of the straight line LC2 and the brightness plane BPX, and find the brightness plane B at the intersection.
The PXO value is determined as the brightness I□ of the processing point PC.

このようにすれば、三角形単位領域UAに含まれる全て
のピクセルを順次処理点Peとして選定して行けば、直
4% L C2と三角形輝度平面BPXとの交点を求め
る線形補間演算を実行することによって3次元曲面から
得た3つの輝度データから簡易に全てのピクセルについ
ての輝度データを得ることができる。
In this way, by sequentially selecting all pixels included in the triangular unit area UA as processing points Pe, a linear interpolation calculation can be performed to find the intersection of the straight 4% L C2 and the triangular brightness plane BPX. Brightness data for all pixels can be easily obtained from three pieces of brightness data obtained from a three-dimensional curved surface.

因にこの場合も、直1Lc2と平面BPXとの解を求め
ることになるので、当該演算は簡易であり、かつその解
は一義的に決まることになる。
Incidentally, in this case as well, the solution between the straight line 1Lc2 and the plane BPX is determined, so the calculation is simple and the solution is uniquely determined.

次に、CPUはステップ5P14において、補間演算に
よる距離の決定処理を実行する。この処理は、第12図
に示すように、ディスプレイの表示画面上の三角形単位
領域UAに含まれるピクセルについて、視点からの距離
を補間演算するもので、CPUは次の処理手順に従って
補間演算を実行する。
Next, in step 5P14, the CPU executes distance determination processing by interpolation calculation. As shown in FIG. 12, this process interpolates the distance from the viewpoint for pixels included in the triangular unit area UA on the display screen, and the CPU performs the interpolation calculation according to the following processing steps. do.

すなわち先ず、先のステップSP9において得られたデ
ィスプレイの表示画面上の頂点 P I %P! 、P
、について距離データD+ 、Dt 、D3を、頂点P
5、P2、P1位置に垂直に立てる。
That is, first, the vertex P I %P! on the display screen of the display obtained in the previous step SP9! , P
, the distance data D+, Dt, D3 for the vertex P
5. Stand vertically at P2 and P1 positions.

そして距離データD+ 、Dz 、D2の先端を結ぶよ
うに距離平面DPXを張り、処理点PCを通り、かつデ
ータの表示画面と垂直な直線LC3と、距離平面DPX
との交点を演算により求める。そしてこの交点における
距離平面DPXの値D pcを当該処理点PCの視点か
らの距離データとして決定する。
Then, a distance plane DPX is stretched so as to connect the tips of the distance data D+, Dz, and D2, and a straight line LC3 that passes through the processing point PC and is perpendicular to the data display screen is connected to the distance plane DPX.
Calculate the intersection with Then, the value D pc of the distance plane DPX at this intersection is determined as distance data from the viewpoint of the processing point PC.

かくしてこの場合にも、三角形単位領域UAに含まれる
全てのピクセルを順次処理点PCとして処理して行くこ
とにより、当該処理点Pcの距離データDI、cを線形
補間演算によって得ることができる。この場合も、当該
補間演算は、直線LC3と距離平面DPXとの解を求め
ることになるので、簡易な演算により、一義的な解を求
めることができる。
Thus, in this case as well, by sequentially processing all pixels included in the triangular unit area UA as processing points PC, distance data DI,c of the processing points PC can be obtained by linear interpolation calculations. In this case as well, since the interpolation calculation involves finding a solution between the straight line LC3 and the distance plane DPX, a unique solution can be found by a simple calculation.

その後CPUは、ステップ5P15に移って距離の比較
によるピクセルデータの生成処理を実行する。この処理
は、ディスプレイの表示画面上の表示領域ARE (第
4図)に含まれる全てのピクセルについて、それぞれ距
離データD、cが最も小さい曲面に対応する輝度データ
I pe及び可視−不可視データVl、eを集め、可視
データが得られかつ距離データD pcが最も小さい曲
面についての輝度データがディスプレイ上に表示すべき
ピクセルデータとして生成される。
After that, the CPU moves to step 5P15 and executes pixel data generation processing based on distance comparison. This process includes brightness data Ipe and visible-invisible data Vl corresponding to the curved surface with the smallest distance data D and c, respectively, for all pixels included in the display area ARE (FIG. 4) on the display screen of the display. luminance data for the curved surface for which visible data is obtained and the distance data D pc is the smallest is generated as pixel data to be displayed on the display.

実際上CPUは、ディスプレイの各ピクセルに対応する
メモリセルを有するフレームバッファメモリと、当該フ
レームバッファメモリの各ピクセルに対応するディスプ
レイバッファメモリとを有し、ステップ5P14におい
て各ピクセルに対する距離データDpcが決定されて行
くとき、同一ピクセルについて最も小さい距離データD
 pcが得られたとき、当該距離データをディスプレイ
バッファメモリの当該ピクセルに対応するメモリエリア
に記憶すると共に、ステップ5P13において決定され
た輝度データIp(をフレームバッファメモリに書込ん
で行くようになされ、かくして最も距離データDpcが
小さい曲面から得られた輝度データI peがフレーム
バッファメモリに書込まれることになる。
In practice, the CPU has a frame buffer memory having memory cells corresponding to each pixel of the display, and a display buffer memory corresponding to each pixel of the frame buffer memory, and distance data Dpc for each pixel is determined in step 5P14. The smallest distance data D for the same pixel
When pc is obtained, the distance data is stored in the memory area corresponding to the pixel of the display buffer memory, and the brightness data Ip (determined in step 5P13) is written to the frame buffer memory, In this way, the luminance data Ipe obtained from the curved surface with the smallest distance data Dpc is written into the frame buffer memory.

かかるステップ5P13〜5P15の一連の演算処理は
1つの三角形単位領域に含まれるピクセルごとに実行さ
れ、CPUはステップ5P15の処理が終了するごとに
ステップ5P16において全ての三角形単位領域につい
ての演算処理が終了したか否かを判断し、否定結果が得
られたとき再度ステップ5PIOに戻って新たな三角形
単位領域についてのデータの演算処理を繰返す。これに
対してステップ5P16において肯定結果が得られれば
、CPUはステップ5P17に移って全てのパッチにつ
いての演算処理が終了したか否かを判断し、否定結果が
得られたとき再度ステップSP4に戻って新たなパッチ
について切り出し用パッチを生成してデータの演算処理
を繰返す。これに対してステップ5P17において肯定
結果が得られれば、CPUはステップ5P18に移って
各ピクセル点の輝度データを出力した後、ステップ5P
19に移って当該プログラムを終了する。
The series of arithmetic processing in steps 5P13 to 5P15 is executed for each pixel included in one triangular unit area, and the CPU completes the arithmetic processing for all triangular unit areas in step 5P16 every time the process in step 5P15 is completed. If a negative result is obtained, the process returns to step 5 PIO to repeat the data calculation process for a new triangular unit area. On the other hand, if a positive result is obtained in step 5P16, the CPU proceeds to step 5P17 and determines whether the calculation processing for all patches has been completed, and if a negative result is obtained, the CPU returns to step SP4 again. Then, an extraction patch is generated for a new patch, and the data calculation process is repeated. On the other hand, if a positive result is obtained in step 5P17, the CPU proceeds to step 5P18, outputs the luminance data of each pixel point, and then proceeds to step 5P18.
The program moves to step 19 and ends the program.

上述の方法によれば、パッチ S (un vl に対
してこれより所定量だけ大きい切り出し用パッチS (
un vl cを生成した後、これを三角形単位領域に
切り出して補間演算するようにした結果、隣り合う切り
出し用パッチに重なり合う部分が生じることにより三角
形単位領域を切り出した際に従来のようにパッチ間のギ
ャップの発生を有効に回避することができる。
According to the above-mentioned method, the patch S ( un vl ) is larger than the patch S (
After generating un vl c, as a result of cutting it into triangular unit areas and performing interpolation calculations, there are overlapped parts in adjacent cutting patches, so when the triangular unit areas are cut out, there is a difference between patches as in the conventional method. The occurrence of gaps can be effectively avoided.

さらに切り出し用パッチの生成も単に外挿演算をするだ
けで良いので、短い演算時間のうちに上述の陰影処理を
終了することができる。
Furthermore, since the extraction patch can be generated by simply performing an extrapolation operation, the above-mentioned shading process can be completed within a short calculation time.

さらに、パッチを切り出す際に共有境界の長さに代えて
制御点間距離に基づいて、この長さが所定の値になるよ
うに分割数を決定したので、共有境界の長さに比して制
御点間距離が大きな例えば曲率な小さな共有境界におい
ては小さくパッチが切り出されるようになり、滑らかか
つな不自然さのない境界を有する表示画像を得ることが
できる。
Furthermore, when cutting out a patch, the number of divisions was determined based on the distance between control points instead of the length of the shared boundary so that this length would be a predetermined value, so In a shared boundary with a large distance between control points, such as a small curvature, a small patch is cut out, and a display image having a smooth boundary without any unnaturalness can be obtained.

逆に共有境界の長さに対して制御点間距離がそれ程大き
くない例えば直線的な共有境界においては、大きくパッ
チが切り出されるようになりその結果透視変換処理に要
する頂点の数が少なくなり、その分陰形処理に要する時
間を短くすることができる。
On the other hand, in the case of a straight shared boundary where the distance between the control points is not that large relative to the length of the shared boundary, for example, a large patch will be cut out, and as a result, the number of vertices required for perspective transformation processing will be reduced. The time required for the partial shape processing can be shortened.

さら上述の実施例においては、処理点PCが三角形単位
領域の内か外かを判断するために頂点を用いて判断する
ようにしたので、従来に比して一段と処理時間を短縮す
ることができる。
Furthermore, in the above embodiment, since the vertices are used to determine whether the processing point PC is inside or outside the triangular unit area, the processing time can be further reduced compared to the conventional method. .

因に上述の切り出し用パッチの拡大量はステップSP2
において入力する設定量によって自由に設定できるので
、上述の処理プログラムを実行した後帯られる表示画面
上に未だ未処理のギャップが存在する場合は、上述の拡
大量を新たに設定し直すようにすることにより、ギャッ
プのない表示画像を得ることができる。
Incidentally, the amount of enlargement of the above-mentioned cutout patch is at step SP2.
It can be set freely depending on the setting amount entered in , so if there are still unprocessed gaps on the display screen that is displayed after running the above processing program, please reset the above enlargement amount. By doing so, a display image without gaps can be obtained.

なお上述の実施例においては、自由曲面を透視変換する
場合について述べたが、例えばステップSF3において
生成する透視変換マトリクスに代えて平行透視変換マト
リクスを生成するようにすれば、平行透視変換されて陰
影処理が施された画像を得ることができる。
In the above embodiment, the case where a free-form surface is subjected to perspective transformation has been described, but if a parallel perspective transformation matrix is generated instead of the perspective transformation matrix generated in step SF3, for example, the parallel perspective transformation is performed and the shading is A processed image can be obtained.

H発明の効果 以上のように本発明によれば、三角形単位領域を切り出
し用パッチから切り出すようにしたので、隣り合うパツ
チ間に、ギャップを生じることなく、自然な陰影処理が
施された自由曲面を容易に得ることができる。
Effects of the Invention As described above, according to the present invention, a triangular unit area is cut out from a cutout patch, so that a free-form surface with natural shading processing is created without creating a gap between adjacent patches. can be easily obtained.

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

第1図は本発明による切り出し用パッチの生成の一実施
例を示す路線図、第2図は第1図に示す切り出し用パッ
チを用いた陰影処理手順を示すフローチャート、第3図
は透視変換手順を示す路線図、第4図は表示領域の決定
手順を示す路線図、第5図は三角形単位領域の切り出し
手順を示す路線図、第6図は可視−不可視データの生成
手順を示す路線図、第7図は距離データの生成手順を示
す路線図、第8図は輝度データの生成手順を示す路線図
、第9図は処理点が三角形単位領域の内か外かを判断す
る処理手順を示す路線図、第1O図は可視−不可視デー
タの補間手順を示す路線図、第11図は輝度データの補
間手順を示す路線図、第12図は距離データの補間手順
を示す路線図、第13図及び第14図は従来のパツチの
切り出しの説明に供する路線図、第15図はその陰影処
理によって生じるギャップの説明に供する路線図である
。 S (u+ V)・・・・・・パツチ、S (u+ v
) (・・・・・・切り出し用パッチ、P li+ J
) 、P oo・” ・”制御点、P(1,Jl イP
0゜、・・・・・・2次元の制御点。
FIG. 1 is a route map showing an example of generating a patch for extraction according to the present invention, FIG. 2 is a flowchart showing a shading process procedure using the patch for extraction shown in FIG. 1, and FIG. 3 is a perspective transformation procedure. FIG. 4 is a route map showing the procedure for determining the display area, FIG. 5 is the route map showing the procedure for cutting out triangular unit areas, FIG. 6 is the route map showing the procedure for generating visible-invisible data, Figure 7 is a route map showing the procedure for generating distance data, Figure 8 is a route map showing the procedure for generating brightness data, and Figure 9 is a route map showing the procedure for determining whether a processing point is inside or outside a triangular unit area. Route map, Figure 1O is a route map showing the visible-invisible data interpolation procedure, Figure 11 is the route map showing the luminance data interpolation procedure, Figure 12 is the route map showing the distance data interpolation procedure, Figure 13 14 is a route map for explaining conventional patch cutting, and FIG. 15 is a route map for explaining gaps caused by the shading process. S (u+ V)...Patch, S (u+ v
) (... cutout patch, P li + J
), P oo・”・”control point, P(1, Jl iP
0°, 2-dimensional control point.

Claims (1)

【特許請求の範囲】 枠組み処理によつて境界曲線で囲まれた多数の枠組み空
間を形成し、上記枠組み空間にそれぞれ位置を表すパラ
メータを有するベクトル関数で表されるパツチを張るこ
とにより生成された自由曲面に陰影をつけるようになさ
れた陰影表示方法において、 上記パツチを所定量だけ拡大して得られる切り出し用パ
ツチから多数の三角形単位領域を切り出し、当該三角形
単位領域の3つの頂点位置の輝度情報に基づいて、上記
三角形単位領域に含まれているピクセルについての輝度
情報を補間することにより、上記自由曲面に陰影をつけ
るようにしたことを特徴とする陰影表示方法。
[Claims] Generated by forming a large number of framework spaces surrounded by boundary curves through framework processing, and applying patches represented by vector functions each having a parameter representing a position in the framework spaces. In a shading display method that applies shading to a free-form surface, a large number of triangular unit regions are cut out from a cutout patch obtained by enlarging the above patch by a predetermined amount, and luminance information of three vertex positions of the triangular unit region is extracted. A shading display method characterized in that the free-form surface is shaded by interpolating luminance information about pixels included in the triangular unit area based on the above.
JP61229076A 1986-09-27 1986-09-27 Shading display method Expired - Fee Related JPH0799549B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61229076A JPH0799549B2 (en) 1986-09-27 1986-09-27 Shading display method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61229076A JPH0799549B2 (en) 1986-09-27 1986-09-27 Shading display method

Publications (2)

Publication Number Publication Date
JPS6383871A true JPS6383871A (en) 1988-04-14
JPH0799549B2 JPH0799549B2 (en) 1995-10-25

Family

ID=16886364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61229076A Expired - Fee Related JPH0799549B2 (en) 1986-09-27 1986-09-27 Shading display method

Country Status (1)

Country Link
JP (1) JPH0799549B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6462738B1 (en) 1999-04-26 2002-10-08 Spatial Technology, Inc. Curved surface reconstruction

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960003807A (en) * 1994-07-20 1996-02-23 홍해준 Regeneration and Production Method of Nickel-based Waste Catalyst

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6462738B1 (en) 1999-04-26 2002-10-08 Spatial Technology, Inc. Curved surface reconstruction

Also Published As

Publication number Publication date
JPH0799549B2 (en) 1995-10-25

Similar Documents

Publication Publication Date Title
US6600485B1 (en) Polygon data generation method and image display apparatus using same
US7034823B2 (en) 3D computer graphics processing apparatus and method
US8289323B2 (en) Drawing processing apparatus, texture processing apparatus, and tessellation method
Zhao Construction and application of fractal interpolation surfaces
JP4464657B2 (en) Curved image processing apparatus and curved image processing method
CN104732479B (en) Resizing an image
Coquillart et al. Shaded display of digital maps
KR101552827B1 (en) Method Of Dividing Three-dimensional Object Model
US5280569A (en) Three dimensional model describing method
CN114972612B (en) Image texture generation method based on three-dimensional simplified model and related equipment
KR0179354B1 (en) Texture mapping method and image processing apparatus
Lathrop et al. Accurate rendering by subpixel addressing
JP2837584B2 (en) How to create terrain data
JPS6383871A (en) Shadow display method
JPWO2019049457A1 (en) Image generating apparatus and image generating method
CN111127589B (en) Vector map circular dotted line symbol drawing method considering line width consistency
Wu et al. Correct resolution rendering of trimmed spline surfaces
US20050057568A1 (en) Bicubic surface rendering
KR20100062832A (en) Surface texture mapping apparatus and its method
CN110889889A (en) Oblique photography modeling data generation method applied to immersive display equipment
JPH07272000A (en) Texture mapping device
CN115937457B (en) Real-time topography sketch method based on DEM image
CN115661298B (en) Area division drawing method for distortion-free triangle
KR100269118B1 (en) Rasterization using quadrangle
JPH09231402A (en) Bump mapping method and picture generating device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees