JPH07234949A - 透視図作成支援方法および透視図作成支援システム - Google Patents

透視図作成支援方法および透視図作成支援システム

Info

Publication number
JPH07234949A
JPH07234949A JP6051340A JP5134094A JPH07234949A JP H07234949 A JPH07234949 A JP H07234949A JP 6051340 A JP6051340 A JP 6051340A JP 5134094 A JP5134094 A JP 5134094A JP H07234949 A JPH07234949 A JP H07234949A
Authority
JP
Japan
Prior art keywords
perspective
rectangular parallelepiped
attribute
graphic
drawn
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP6051340A
Other languages
English (en)
Inventor
Kiyoshi Arai
清志 新井
Yoichi Horii
洋一 堀井
Nobuhiro Sekimoto
信博 関本
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP6051340A priority Critical patent/JPH07234949A/ja
Publication of JPH07234949A publication Critical patent/JPH07234949A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【目的】計算機上で2次元平面上に3次元形状を描く際
に、描こうとする3次元図形の遠近感、図形の3次元座
標、および図形の陰影や稜線の丸みを容易に調節できる
透視図作成支援方法およびシステムを提供することを目
的とする。 【構成】図形を描くときに用いる直方体の構成要素であ
る稜線(114,115,124,125)のデータを、稜線の消失点
(101,106)のデータと対応させて管理する。描こうと
する図形の構成要素である面および稜線を、それらの3
次元空間上での向きおよび位置と対応させて管理し、消
失点、面、稜線に関する情報を属性(1200)として持つ
ようにし、各図形もそれらの属性(1100)を備える。図
形を描くとき、あるいは既に描かれている図形を変更す
るときなどには、この属性を参照することにより、属性
を再設定することなく、図形を描画する。直方体を用い
て描いた図形の3次元空間上での形状も対話的に求めら
れる。 【効果】本発明により、ユーザ所望の透視図描画結果を
少ない操作で得ることが可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、2次元平面上での図形
作成編集を支援する方法およびシステムに関し、特に透
視図の作成支援に好適な方法およびシステムに関する。
【0002】
【従来の技術】透視図法は、消失点を設定しこれに基づ
いて図形を描くことにより、遠近感を表現しつつ3次元
形状を2次元平面上に描く図法である。コンピュータグ
ラフィックスの分野において2次元平面上に図形を描く
ときにも、描いた図形の遠近感を表現するため、上述の
透視図が用いられている。
【0003】透視図の作成支援方法としては、図学の手
法を計算機上で自動化し、ユーザの2次元入力を補正し
ながら描く方法があった。具体的には、計算機上で消失
点を設定し、それに基づいて図形を描く際に、透視図法
にあった図形となるように計算機が補正し、これにより
作画を支援する方法である。さらに、作画する線の太さ
を変化させたり、乱数を用いて作画する線をずらすこと
で、人手で描いたような表現を可能とするように作画を
支援する方法が考慮されている。この方法は、第7回ニ
コグラフ論文コンテスト論文集(1991年)第22頁から第
31頁において論じられている。
【0004】また、別の透視図作成支援方法として、ユ
ーザが図形の3次元座標とカメラアングルを入力して描
く方法があった。カメラアングルとは、具体的には視点
の3次元座標、視線方向を表わす3次元ベクトル等のパ
ラメータのことである。図形の3次元座標とカメラアン
グルが決定されれば、その図形が2次元平面上でどのよ
うに表されるかを算出することができる。この方法は、
数多くの3次元CADシステム上で実現されている。
【0005】
【発明が解決しようとする課題】上述の図学の手法を計
算機上で自動化する方法においては、消失点の座標と、
直方体の描画アルゴリズムを計算機内に持つことが、任
意形状図形の描画の基本となる。消失点の位置は、直接
与えるか、または基準となる直方体を1つ描き、この直
方体の稜線を延長して決定していた。
【0006】しかし、この従来技術では、直方体と投影
面と視点との3次元空間内での位置関係から消失点や投
影結果を決定する手段は提供されていなかった。したが
って、図形の遠近感の調節は可能であったが、図形の3
次元座標の調節は困難であった。また、図形の面や稜線
の色や太さなどは、一つずつ選択して変更するしかな
く、この変更を自動化する手段は提供されていなかっ
た。
【0007】一方、上述の3次元CADシステム上で実
現されている方法においては、図形の透視図描画結果
は、図形の3次元座標とカメラアングルとの関係によっ
て決定されていた。
【0008】しかし、ユーザがこの関係から描画結果を
予想することは困難であり、所望の透視図を得るために
は、多くの試行錯誤が必要であった。したがって、図形
の3次元座標の調節は可能であったが、図形の遠近感の
調節は困難であった。
【0009】本発明の目的は、計算機上で透視図の作成
を支援する方法およびシステムの改良にある。また、本
発明の目的は、計算機上で2次元平面上に3次元形状を
描く際に、描こうとする3次元図形の遠近感、図形の3
次元座標、および図形の陰影や稜線の丸みを容易に調節
できる透視図作成支援方法およびシステムを提供するこ
とにある。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、本発明では、図学の手法を計算機上で自動化する。
そして、図形を描くときに用いる直方体の構成要素であ
る稜線のデータを、稜線の消失点のデータと対応させて
管理する。特に、描こうとする図形の構成要素である面
および稜線を、それらの3次元空間上での向きおよび位
置と対応させて管理し、消失点、面、稜線に関する情報
を属性として図形に付与する。そして、図形を描くと
き、あるいは既に描かれている図形を変更するときなど
には、この属性を参照することにより、属性を再設定す
ることなく、図形を描画するようにする。
【0011】複数の図形を描画した後で、それらの属性
を変更するときは、属性を変更すべき図形を選択して、
上記属性を変更することにより、図形ごとに属性の変更
を繰り返すことなく属性変更が実行できる。
【0012】本発明では、描こうとする図形Fを直方体
Qを用いて描画する。その直方体は、投影面上に2点
A、Bを与え、その2点A、Bを向かい合う頂点とする
4辺形であって、該4辺形の向かい合う各々の辺が、延
長することにより、対応する前記消失点を通るような4
辺形Pを決定し、該4辺形Pの4つの頂点のうちの1つ
Cと、4辺形Pの辺に対応しない前記消失点とを結ぶ直
線上に点Dを与え、該4辺形Pを上面または底面とし、
線分CDが稜線の1つとなるような直方体Qを求めるこ
とにより、得られる。
【0013】図形Fの表面上の凹凸は、異なる色の線分
を並べたものを用いて表現する。また、図形Fは、直方
体Qに内接する図形で表現したり、直方体Qの稜線の方
向ベクトルで定義される座標系で表現する。さらに、図
形Fの描画位置を決定する際には、図形Fを描くときに
用いる直方体Qを構成する面の中で指定された面が、3
次元空間上において、図形Fの指定された平面に接して
いる、という拘束条件を与えて決定する。
【0014】描いた図形Fのデータは、、例えばポスト
スクリプトといったデータに変換することにより、任意
の2次元図形編集ソフトウエアおよび任意の文章編集ソ
フトウエアのデータの中に挿入できる。また、図形Fを
3次元空間上に変換した形状のデータを、任意の3次元
CADのデータの中に挿入するようにしてもよい。
【0015】具体的に図形Fを描く際には、基準となる
直方体Qと投影面と視点との3次元空間内における位置
関係が表現されるパラメータ設定画面を表示し、そのパ
ラメータ設定画面を用いて、直方体Qの所定の面と前記
投影面とのなす角、および前記投影面と前記視点との位
置関係を入力し、それらの入力情報を用いて投影面上の
消失点の位置を算出する。
【0016】また、パラメータ設定画面とともに、前記
直方体Qを前記投影面上に投影した図形を表示するプレ
ビュー画面を表示するようにする。このプレビュー画面
に表示された前記直方体Qの頂点、稜線、あるいは面と
いった構成要素の位置を調節することにより、前記直方
体Qの3次元空間上での座標を調節し、これにより前記
直方体Qを基準として描かれる図形Fの3次元空間上で
の座標を調節する。
【0017】
【作用】直方体の構成要素である稜線のデータを、稜線
の消失点のデータと対応させて管理することにより、消
失点の位置が変更されたとき、対応する稜線が自動的に
修正され、図形の遠近感の調節が少ない操作で実現でき
る。
【0018】直方体を3次元空間上に変換した形状の面
と投影面とのなす角、投影面と視点との位置関係を与え
て消失点の位置を決定することにより、3次元空間上の
点と投影面上の点との関係が得られ、図形の3次元座標
の調節が容易になる。
【0019】消失点、面、稜線に関する情報を属性とし
て図形に付与することにより、図形の表面の陰影、およ
び図形の稜線のハイライトや丸みを表現するための、面
の色、および稜線の色や太さを、変更したり、図形の移
動の際に保存したりする操作が容易になる。
【0020】直方体を構成する面の中で指定された面
が、3次元空間上において、指定された平面に接してい
る、という拘束条件を与えることにより、ユーザが意図
する位置に図形を描画できるようになる。また、異なる
色の線分を並べたものを1つの線分として定義したもの
を描画することにより、例えば溝といった図形の表面上
の凹凸を表現できる。この溝は、2つの図形が互いに接
している部分を表現するためにも用いることができる。
【0021】以上のように、本発明によれば、透視図を
容易に編集できるようになり、ユーザ所望の透視図描画
結果を少ない操作で得ることが可能となる。
【0022】
【実施例】以下、図面を用いて本発明の実施例を説明す
る。
【0023】[1]システム構成
【0024】図1に、本発明の一実施例に係る透視図作
成編集支援(以下、透視図編集と略す)システムを示
す。
【0025】画面131は、本システムのディスプレイに
表示される透視図の投影面である。中央処理装置(15
2)に接続された記憶装置(151)の中に、本発明の透視
図作成支援方法を適用した透視図編集ソフトウエア(50
1)を置く。透視図編集ソフトウエア(501)は、個々の
図形に関する全ての情報を管理する図形テーブル(110
0)と、図形の色や形状を管理する属性テーブル(120
0)とを参照しながら、透視図編集ルーチン(1400)を
起動し、入力装置(153)からのユーザ入力にしたがっ
て透視図のデータを生成する。
【0026】生成された透視図のデータは、必要に応じ
て、2次元または3次元の図形データとして他の図形編
集システム(154)に送った後、プリンタ(155)に入力
されて紙に印刷されるか、またはVTR装置(156)に
入力されて映像ソフトとなる。他の図形編集システム
(154)とは、具体的には、図5に示す2次元図形編集
ソフトウエア(504)、文章編集ソフトウエア(506)、
および3次元CADソフトウエア(505)等を用いたシ
ステムのことである。
【0027】透視図編集ルーチン(1400)と2つのテー
ブル(1100,1200)については、後で詳しく述べる。
【0028】[2]投影面と編集画面
【0029】図1を参照して、本実施例の透視図編集シ
ステムにおいてディスプレイ上に表示される投影面と編
集画面について説明する。
【0030】本発明を用いた透視図編集方法において
は、図1に示すように、消失点(101,106)を含む投影
面(131)と、その一部分である編集画面(132)とを同
時にディスプレイ上に表示できる。画面131は、ユーザ
が消失点(101,106)の位置を直接与えるときと、ユー
ザが画面132の位置および大きさを変更するときに、表
示される。通常は画面132のみを表示し、画面132の中に
図形を描く。
【0031】画面132に描かれる図形は、一定の方向を
向く直方体を用いて描かれる。一定の方向を向く直方体
は、3個の消失点を用いて描かれる。図1の例では、左
の消失点(101)と右の消失点(106)が画面131上に存
在し、下の消失点は下方無限遠に存在する。このとき、
直方体が地平面に接していると仮定すると、画面131は
地平面と垂直であり、視点から画面131に下した垂線の
足である視心(104)は地平線(103)上にある。また、
画面131と地平面との交線を表わす基線(108)と直線10
3との距離が、地平面と視点との距離を表わす視高(10
7)となる。
【0032】以下の説明では、このように画面131上に
消失点が2個存在する場合について述べる。
【0033】[3]消失点と直方体の稜線との対応
【0034】次に、消失点と直方体の稜線との対応につ
いて簡単に説明する。
【0035】本実施例においては、直方体の稜線のデー
タと消失点のデータとの対応関係を計算機内に保持す
る。したがって、投影面上では、直方体のすべての稜線
の延長線が消失点を通るか、または無限遠の消失点に対
応する直線に平行になるという条件を満たしながら、直
方体が描かれる。逆にいえば、本実施例のシステムを用
いてユーザが直方体を描くときは、自動的に上記の条件
が満たされるようにされる。
【0036】図1の例では、画面132の中に、面111、面
112、面113、稜線114、稜線115からなる直方体Q1をそ
のまま用いて図形F1が描かれており、面121、面122、
面123、稜線124、稜線125からなる直方体Q2をそのまま
用いて図形F2が描かれている。稜線114、稜線115、稜
線124、稜線125は、消失点101を通る直線(102)上にあ
るか、消失点106を通る直線(105)上にあるか、下方無
限遠の消失点に対応する垂直方向の直線(109)上にあ
る。
【0037】なお、「直方体Q1をそのまま用いて図形
F1が描かれている」というのは、描くべき形状自体が
直方体であるという意味である。逆にいうと、直方体以
外の形状を描こうとする場合は、まず直方体を描き、そ
の直方体を基準としてその内部に描きたい図形を描くこ
とになる。そのような場合については、図7〜図9を参
照して後述する。
【0038】ユーザが消失点を移動した場合、移動後の
消失点に対して上記の条件が満たされるように、稜線11
4、稜線115、稜線124、稜線125のデータが変更される。
消失点の移動の具体的な操作については、後述する。
【0039】以上のように、本実施例では、すでに描画
した複数の図形の遠近感の調節を、消失点の移動によっ
て一斉に容易に行なうことができる。
【0040】[4]パラメータ設定画面とプレビュー画
【0041】本実施例のシステムでは、上述のように、
消失点の移動によって遠近感の調節を行なうことができ
るが、消失点の移動による遠近感の調節は直感的でない
場合もある。そこで、本実施例では、以下に説明するよ
うな表示画面を用いて、消失点の移動によらずに図形の
遠近感の調節および図形の3次元座標の調節を行なうこ
とができるようにしている。
【0042】本実施例では、図1の画面131および画面1
32の他に、図2に示すように、パラメータ設定画面(22
1)とプレビュー画面(241)を表示できる。表示する画
面の切り換え操作については後述する。
【0043】パラメータ設定画面(221)は、3次元空
間上での視点(214)と投影面(231)と直方体との関係
から、消失点の位置、および3次元空間上の点と画面23
1上の点との関係を決定する際に用いる。3次元空間上
において、画面231と地平面との交線を表わす基線をx
軸(215)、基線と直交し視心(212)を通る直線をy軸
(216)とし、両者に垂直にz軸(217)をとる。
【0044】視点214と画面231との距離(206)をD、
視点214と地平面との距離を表わす視高(207)をH、点
212と左の消失点(211)との距離(218)をJ、点212と
右の消失点(213)との距離(219)をKとする。地平面
上の直方体の左の側面と画面231とのなす角度(204)を
A、左の稜線(201)の長さをL、右の稜線(202)の長
さをR、高さ方向の稜線(203)の長さをVとする。ま
た、稜線203が、画面231上で、点(X,Y)と点(X,
Y+T)とを結ぶ線分に投影されるものとする。すなわ
ち、視点(214)から長さVの稜線(203)の端点を見た
ときの視線と画面231との交点の画面231上の2次元座標
を(X,Y)および(X,Y+T)とする。
【0045】なお、以下の説明では、画面231と地平面
とのなす角度の直角からの隔たりS(205)をゼロとす
る。Sがゼロでない場合にも以下の説明と同様の処理が
可能だが、その場合は投影面(231)上に消失点が3個
存在することになる。
【0046】まず、D、J、K、Aの間には以下のよう
な関係がある。
【0047】 J = D/tan A, K = D tan A …(数1)
【0048】また、H、V、Y、Tの間には以下のよう
な関係がある。
【0049】 H = VY/(V−T) …(数2)
【0050】3次元空間上の点(x,y,z)が、画面
231上の点(X,Y)に投影されるとき、次式が成り立
つ。
【0051】 X = Dx/(D+z), Y = (Hz+Dy)/(D+z) …(数3)
【0052】画面231上の点(X,Y)と点(X,Y+
T)を結ぶ線分が、3次元空間上の点(x,0,z)と
点(x,y,z)とを結ぶ線分(稜線203)を投影した
ものであるとき、次式が成り立つ。
【0053】 x = HX/(H−Y), y = HT/(H−Y), z = DY/(H−Y) …(数4)
【0054】上記の関係に基づき、パラメータ設定画面
(221)を用いて、以下のような処理を行なうことがで
きる。
【0055】(1)消失点の位置決定:ユーザがパラメ
ータ設定画面(221)を用いて、D、H、およびAを入
力したとき、本実施例のシステムでは、そのD、H、お
よびA、並びに数1を用いて、JとK、すなわち消失点
の位置を求めることができる。この処理を行なうことに
より、消失点の位置を間接的に求めることができる。
【0056】(2)DとHの決定:ユーザは、パラメー
タ設定画面(221)を用いて、Dを直接与えることがで
きる。または、ユーザは2つの消失点間の距離(J+
K)とAとを与えて、システムはそれらのデータと数1
を用いてDを求めることができる。さらに、ユーザは、
パラメータ設定画面(221)を用いて、Hを直接与える
ことができる。または、ユーザはV、Y、およびTを与
えて、システムはそれらのデータと数2を用いてHを求
めることができる。DとHは、以下の(3)、(4)、
(5)の処理を行なうために必要なパラメータである。
【0057】(3)プレビュー画面(241)への描画:
上記(1)(2)により、消失点の位置JとK、および
視点の位置DとHが決定される。システムは、D、H、
L、R、V、およびA、並びに数3を用いて、プレビュ
ー画面(241)に自動的に直方体を描く。
【0058】具体的には、ユーザは、稜線203の下端の
3次元空間上の座標を適当に与え、さらに直方体に関す
るL、R、V、Aを入力する。システムは、これらのデ
ータから直方体のすべての頂点の3次元空間上での座標
を求め、数3を用いて得られる投影結果を画面231上で
はなく画面241上に描く。この処理を行なうことによ
り、直方体の3次元空間上での大きさや投影面と視点と
の距離などの具体的な数値を与え、これを満たす遠近感
を持つ透視図を描画できる。
【0059】(4)投影面(231)への描画:システム
は、DおよびH、並びに数3を用いて、3次元空間上の
点を画面231上に投影する。この処理を行なうことによ
り、3次元空間上での座標があらかじめわかっている形
状を、画面231(すなわち、図1の画面131)上に投影し
た図形を描くことができる。
【0060】(5)3次元空間上での形状の決定:シス
テムは、D、H、X、Y、およびT、並びに数4を用い
て、画面231 上に投影された点の3次元空間上での座標
を求めることができる。この処理を行なうことにより、
画面231 上に描かれた図形の3次元空間上での形状を、
3次元空間上での座標を直接与えることなく定義でき
る。
【0061】以上のようにして、本実施例では、パラメ
ータ設定画面(221)を用いることにより、図形の遠近
感の調節および図形の3次元座標の調節が容易に行なえ
るようになる。
【0062】プレビュー画面(241)には、パラメータ
設定画面(221)を用いた処理の上記(3)で述べた方
法により、直方体が描かれる。ユーザは、このプレビュ
ー画面(241)上で、直方体の頂点(251)、稜線(25
2)、面(253)を動かす操作を行なうことにより、画面
221を用いて決定した消失点の位置にさらに変更を加え
ることができる。また、画面241に、あらかじめ適当な
直方体を描いておけば、画面221を用いなくても、この
直方体に修正を加えるだけで消失点の位置の変更を行な
うこともできる。
【0063】このようにして、パラメータ設定画面(22
1)とプレビュー画面(241)とを併用することにより、
図形の遠近感の調節および図形の3次元座標の調節が容
易に行なえる。
【0064】[5]図形の面および稜線の変更
【0065】図1においては、直方体Q1をそのまま用
いて図形F1が描かれており、直方体Q2をそのまま用い
て図形F2が描かれている。したがって、各々の図形の
面および稜線は、各々の直方体の面および稜線と一致し
ている。これらの図形を例として、図形の面および稜線
の変更方法について述べる。
【0066】本実施例では、図形の面の中から1つを選
択し、その色を変更することができる。さらに、3次元
空間上で同一の向きを持つ複数の面の色を同時に変更す
ることもできる。この機能は、面の色によって面の陰影
を表現する場合に役立つ。これを実現するため、面のデ
ータは、3次元空間上での向きごとに管理する。例え
ば、図1において、面111と面121とは3次元空間上で同
一の向きを持つ面なので、同じ色が割り当てられてい
る。面112と面122、面113と面123についても同様であ
る。
【0067】図3は、図1の面113の色を変更して面313
を描き、図1の面123の色を変更して面323を描いた結果
である。この2つの面の色の変更は、個別に行なうこと
もできるが、1回の操作で同時に行なうこともできる。
また、直方体を描画する前にあらかじめ各々の方向の面
の色を設定しておけば、途中で面の色の指定を行なわず
に、複数の直方体を連続して描画できる。面の色の設定
に関する操作については後述する。
【0068】次に、図形の稜線の変更について説明す
る。本実施例では、図形の稜線の中から1つを選択し、
その色を変更することができる。さらに、ハイライトを
付けて表現される幾つかの稜線と、そうでない幾つかの
稜線の色は、それぞれまとめて同時に変更することもで
きる。
【0069】ここで、ハイライトを付けて表現される稜
線とは、投影面に投影される稜線のうち、凸な形状を構
成する2つの可視面に挟まれた稜線を指す。言い替える
と、2つの可視面(すなわち、表示画面上に見えている
面)に挟まれた稜線であって、かつ、凸な形状を構成す
る稜線のことである。この機能は、稜線のハイライトを
表現する場合に役立つ。
【0070】図1において、稜線115(白抜きでY字型
に図示された部分)および稜線125(やはり白抜きでY
字型に図示された部分)は、ハイライトを付けて表現さ
れる稜線なので、白色が割り当てられている。稜線114
(太い黒線で図示された輪郭部分)および稜線124(稜
線114よりは細い黒線で図示された輪郭部分)は、ハイ
ライトが付かない稜線であり、図形の輪郭を強調するた
め黒色が割り当てられている。
【0071】また、図形の稜線の中から1つを選択し、
その太さを変更することができる。稜線部分の形状が、
より大きな半径の円柱面に近いとき(すなわち、稜線部
分の丸みの半径が大きいとき)、稜線は、より太い線に
よって表現される。したがって、この機能により、稜線
の丸みの表現が調節できる。
【0072】図3は、図1の稜線124の太さを変更(太
く)して稜線324を描き、図1の稜線125の太さを変更
(太く)して稜線325を描いた結果である。稜線の色や
太さの設定に関する操作については、後述する。
【0073】[6]図形の表面上の凹凸の表現
【0074】本実施例では、稜線を表わす単色の線分の
他に、異なる色の線分を並べたものを1つの線分として
定義する手段を提供する。この線分を描画することによ
り、図形表面上の溝などの凹凸を表現することができ
る。
【0075】図4は、図1の直方体Q1および直方体Q2
の表面に、明暗2色の線分を並べた線分(416,417,42
6)を描いた結果である。線分416は、面113上の細長い
領域がわずかに奥に引っ込んでいるときに生じる影とハ
イライトを単純化したものであり、溝を表わしている。
線分417は、面113上の細長い領域がわずかに手前に出て
いるときに生じる影とハイライトを単純化したものであ
り、浮き出した線を表わしている。
【0076】線分426のように両端が稜線と接するよう
に溝を描くと、2つの形状が接している様子を表現でき
る。すなわち、線分426によって、直方体Q2は互いに接
する2つの直方体を表わす図形となる。
【0077】[7]透視図編集結果の利用方法
【0078】次に、本発明の適用対象について簡単に説
明する。
【0079】本発明の方法および装置は、簡単な陰影表
示を施したイラストの作成や、直観的な3次元形状モデ
リングに適用して好適である。したがって、図5に示す
ような方法で、透視図編集結果を2次元の図面や文章の
中に貼り込んだり、透視図編集結果から求めた3次元形
状データを、他の3次元形状データと混ぜて用いるとよ
い。
【0080】図5において、本発明に係る透視図編集ソ
フトウエア(501)を用いて描いた図形のデータは、適
切な形式に変換することにより、2次元図形編集ソフト
ウエア(504)、文章編集ソフトウエア(506)、または
3次元CADソフトウエア(505)などで扱うデータの
中に挿入できる。
【0081】具体的には、例えばポストスクリプトデー
タ(502)のように、2次元の図形の情報を記述するデ
ータに変換すれば、2次元図形編集ソフトウエア504お
よび文章編集ソフトウエア506への入力データとなる。
また、上記[4]で述べた処理によって図形の3次元空
間上での形状を求め、この形状を記述する頂点の座標や
面の情報からなる3次元形状データ(503)に変換すれ
ば、3次元CADソフトウエア505への入力データとな
る。
【0082】[8]直方体の決定方法
【0083】次に、投影面上で実際に直方体を描く際
の、形状の決定方法について説明する。
【0084】図6は、投影面上の直方体を決定する方法
の一例を示す。消失点の位置があらかじめ与えられてい
るとき、以下の手順で直方体の形状を決定することがで
きる。図6においては、左の消失点(601)と右の消失
点(602)が投影面上に存在し、下の消失点は下方無限
遠にある。
【0085】(1)ユーザは、投影面上に2点A(60
3)、B(604)を与える。ただし、消失点601または消
失点602のうち少なくとも一方が線分ABの延長線上に
ある場合はやりなおす。
【0086】(2)システムは、与えられた2点A(60
3)、B(604)を通り、向かい合う各々の辺が、延長す
ることにより消失点601または消失点602を通るような4
辺形P(605)を決定する。
【0087】(3)ユーザは、4辺形P(605)の4つ
の頂点のうちの1つを選び、これを点C(606)とす
る。
【0088】(4)ユーザは、点C(606)を通り、下
方無限遠の消失点に対応する垂直方向の直線(608)上
で、点D(607)を与える。ただし、点C(606)と点D
(607)が一致する場合はやりなおす。
【0089】(5)システムは、4辺形P(605)を上
面または底面とし、線分CDを垂直方向の稜線の1つと
する直方体を、図6に示すように決定する。
【0090】なお、上記の手順では点C(606)をユー
ザが選択するようにしているが、システムによりあらか
じめ決められた点を点Cとしてもよい。例えば、点Cを
点B(604)と同一の点とするようにあらかじめ定めて
おけば、ユーザが与える点はA(603)、B(604)、D
(607)の3点となり、非常に少ない操作での描画が可
能となる。この場合、点D(607)は、点B(604)(す
なわち点C)を通り下方無限遠の消失点に伸びる垂直方
向の直線上で指定される点である。
【0091】[9]直方体を用いた図形の描画方法
【0092】直方体そのものは、例えば上記[8]で述
べたような手順で描画できる。それ以外の図形も、あら
かじめ直方体との関係を決めておけば、同じ操作で描画
することができる。以下では、直方体以外の図形を描く
方法を説明する。
【0093】図7は、本実施例のシステムで、直方体に
内接する4角錐や円柱を描く例を示す。本実施例のシス
テムでは、直方体に内接する形状を描くときには、描き
たい形状のどの面と直方体の6つの面のうちのどの面と
が重なるようにするかを指定する。例えば、図7は、直
方体(701)の底面と4角錐(702)や円柱(704)の底
面とが重なるようにしたものである。このようにして、
ユーザは、上述した手順で直方体を描き、その直方体に
内接するどのような形状を描くかを指定し、さらにその
形状のどの面と直方体のどの面とが重なるかを指定する
ことにより、図7のように、直方体(701)に内接する
4角錐(702)や、直方体(703)に内接する円柱(70
4)などを描くことができる。
【0094】このようにして描いた図形702や図形704の
稜線および面も、直方体そのものを描く場合と同様に分
類される。すなわち、凸な形状を構成する2つの可視面
にはさまれた稜線は、ハイライトを付けて表現される稜
線に分類される。面の色は、3次元空間内での向きごと
に分類される。
【0095】ただし、複数の向きを持つ面を便宜上1つ
のグループとして扱う場合もある。例えば、4角錐(70
2)の側面は、それぞれ1辺を共有する直方体(701)の
側面と同じグループとして、特に指定がない限り、それ
ぞれのグループ内で1つの色を割り当てるようにすると
便利である。また、円柱(704)の側面のように、曲面
であり、陰影表現をする際には本来単色では表現されな
い面も、便宜上直方体(703)の側面のうちの1つと同
じグループとして扱うと便利である。
【0096】直方体の3次元空間上での形状が決定され
ていれば、さらに複雑な図形を直方体を用いて表現でき
る。図8は、そのような複雑な図形を描く例を示す。
【0097】図8に示すように、各々の直方体(801,80
2)の3方向の稜線を3軸とする座標系(803,804)を用
いて、多面体(805)や曲面で囲まれる立体(806)の形
状を定義しておき、これらを投影面上に投影して描くこ
とが可能である。
【0098】本実施例のシステムでは、閉じた多面体だ
けでなく、閉じた多面体から少なくとも1つの面を取り
除いた形状を投影面上に投影して描くことができる。こ
の場合、多面体を構成する面のうち取り除かれなかった
面の裏側が、視点から見える可能性がある。面の裏側に
は、特に指定がない限り、その裏側面の方向と同一の方
向の面の色を割り当てる。
【0099】図9は、直方体から1つの面を取り除いた
図形(901)と、これを他の直方体(902)と組み合わせ
てくぼみ(903)を表現した例である。図7の場合と同
様に、凸な形状を構成する2つの可視面にはさまれた稜
線は、ハイライトを付けて表現される稜線に分類され
る。
【0100】以上のようにして、直方体を用いて、直方
体そのものだけでなく、他の形状も描画することができ
る。
【0101】[10]図形の描画位置の決定方法
【0102】2つ以上の図形が投影面上で重なった場
合、どちらを手前に描くべきかが問題となる。これは、
図形の3次元空間上での形状から決定できる。しかし、
3次元空間上での形状を与えなくても、簡単な拘束条件
を与えることにより、投影面上での図形の重なり方を決
定できる。
【0103】本実施例では、簡単な拘束条件を与えて、
投影面上での図形の描画位置を決定する。具体的には、
図形を描く際に用いる直方体の面に対して、他の直方体
の面と接しているか、または地平面と接しているという
条件を与える。
【0104】図10に示すように、ある直方体(1001)
に対して他の直方体(1002,1003)が重なる場合、直方
体1002のように、一部分が直方体1001に隠される場合
と、直方体1003のように、逆に直方体1001の一部分を隠
す場合とがある。一般に、複数の直方体の位置を決定す
る際、ユーザは、各々の直方体の面の中の1つが互いに
接しているか、あるいは共通の地平面に各々の直方体の
面の中の1つが接していることを意図している場合が多
い。
【0105】そこで、本実施例では、この意図を拘束条
件として与える。直方体1001と共通の地平面に接すると
いう条件下では、底面の位置によって直方体1001との前
後関係を判断することができ、もし直方体1002が直方体
1001よりも後ろであると判断されれば、図10に図示し
た直方体1002のような重なり方になる。同様に、直方体
1001の上面に接するという条件下では、直方体1001に隠
される可能性はなくなり、図10に図示した直方体1003
のような重なり方になる。
【0106】[11]図形テーブルと属性テーブル
【0107】図11および図12は、本実施例の透視図
編集ソフトウエア(501)が参照する図形テーブル(110
0)および属性テーブル(1200)の一例を示すものであ
る。まず、図形テーブル(1100)について説明する。図
形テーブル(1100)は、投影面上の全ての図形の描画に
必要な情報を管理するテーブルである。各々の図形には
図形番号a(1150)が割り当てられる。
【0108】1つの図形を表す図形番号aのテーブルに
は、直方体の辺の延長上にある3つの消失点の位置(11
01,1102,1103)が格納される。各消失点の位置は、X座
標とY座標とで表している。X座標は付番に−1を付
け、Y座標は付番に−2を付けて、それぞれ示した。
【0109】次に、面の色は、3次元空間上で互いに平
行なものを一つにまとめて格納する。図11の例は、直
方体の例であり、3つの方向を向く面がある場合を示し
ているので、3種類の面の色(1104,1105,1106)が格納
されている。各面の色は、RGBの3原色で表してい
る。R成分は付番に−1を付け、G成分は付番に−2を
付け、B成分は付番に−3を付けて、それぞれ示した。
【0110】図形の稜線に関しては、輪郭の稜線の色
(1107)、内部の稜線の色(1108)、輪郭の稜線の太さ
(1109)、内部の稜線の太さ(1110)を格納する。この
例は、直方体を示したものであるから、輪郭の稜線と
は、図1の稜線114や稜線124で示したハイライトが付か
ない稜線のことである。また、内部の稜線とは、図1の
稜線115や稜線125で示したハイライトを付けて表現され
る稜線のことである。各稜線の色は、RGBの3原色で
表している。R成分は付番に−1を付け、G成分は付番
に−2を付け、B成分は付番に−3を付けて、それぞれ
示した。
【0111】なお、内部の稜線の色および太さ(1108,
1110)の代わりに上述のハイライトを付けて表現される
稜線(投影面に投影される稜線のうち凸な形状を構成す
る2つの可視面に挟まれた稜線)の色および太さを格納
し、輪郭の稜線の色および太さ(1107,1109)の代わり
にハイライトが付かない稜線(投影面に投影される稜線
のうち凸な形状を構成する2つの可視面に挟まれた稜線
以外の稜線)の色および太さを格納するようにしてもよ
い。
【0112】直方体を用いて何を描画するのかを、フィ
ールド1111に格納する。フィールド1111に格納される番
号によって、描画する図形の種類(直方体自体、直方体
に内接する図形、あるいは直方体から面を取り除いた図
形等)を記述する。
【0113】次に、フィールド1121から1124、および11
31から1134には、描画に用いる直方体の頂点の位置を格
納する。すなわち、図6に示した頂点A(603)、頂点
B(604)、頂点C(606)、および頂点D(607)の投
影面上での位置を、順にフィールド1121、1122、1123、
1124に格納する。各頂点の位置は、X座標とY座標とで
表している。X座標は付番に−1を付け、Y座標は付番
に−2を付けて、それぞれ示した。
【0114】また、これらの頂点A〜Dの3次元空間上
での座標が求められた場合には、それらを順にフィール
ド1131、1132、1133、1134に格納する。各3次元座標
は、X座標とY座標とZ座標とで表している。X座標は
付番に−1を付け、Y座標は付番に−2を付け、Z座標
は付番に−3を付けて、それぞれ示した。
【0115】さらに、以上に含まれない情報があれば、
その情報の格納場所をフィールド1140に記述する。
【0116】次に、属性テーブル(1200)について説明
する。属性テーブル(1200)は、図形テーブル(1100)
の内容のうち、投影面上での図形の位置に依存しない情
報を、図形テーブル(1100)とは独立して格納するもの
である。具体的には、消失点の位置(1201,1202,120
3)、面の色(1204,1205,1206)、稜線の色(1207,120
8)、稜線の太さ(1209,1210)、および描画する図形の
種類(1211)が格納される。
【0117】これらの情報は、初期化、あるいはユーザ
の入力によって、属性テーブル(1200)に格納される。
図形テーブル(1100)の内容のうち、属性テーブル(12
00)と同一の情報を格納する部分の値は、属性テーブル
(1200)から値をコピーすることによって決定される。
【0118】[12]メニュー構成例と透視図編集ルー
チン
【0119】次に、本実施例においてユーザが透視図作
成編集に関する指示を与えるために用いるメニューの構
成例、およびユーザの指示に応じてシステムがどのよう
に動作するかを示す透視図編集ルーチンについて説明す
る。
【0120】図13は、本実施例に係る透視図編集ソフ
トウエア(501)のメニュー構成例を示すものである。
【0121】ユーザが入力できるコマンドは、図形コマ
ンド群(1310)、選択コマンド群(1320)、属性コマン
ド群(1330)、ファイルコマンド群(1340)、ウィンド
ウコマンド群(1350)、その他のコマンド群(1360)、
および終了コマンド(1370)に分類される。それぞれの
コマンド群の中には、複数のコマンドが存在する。
【0122】ユーザは、ディスプレイに表示されたこれ
らのコマンドを一つずつ選択して実行しながら、透視図
の作成編集を行なう。透視図編集システムのディスプレ
イには、これらのコマンド群(1310〜1360)および終了
コマンド(1370)をメニューとして並べて表示してお
き、一つのコマンド群が選ばれたとき、それに含まれる
コマンドを表示し、この中の一つをユーザに選ばせれば
よい。
【0123】図14は、本実施例に係る透視図編集ソフ
トウエア(501)が起動する透視図編集ルーチン(140
0)を示すものである。
【0124】透視図編集ルーチン1400においては、まず
初期化(1401)を行なう。具体的には、図12に示した
属性テーブル(1200)の全ての変数に初期値を代入し、
図1に示した編集画面(132)をディスプレイに表示す
る。次に、ユーザからのコマンド入力(1402)を受け付
ける。入力されたコマンドの内容により、以下の処理に
分岐する。
【0125】図形コマンド群(1310)の中の何れかのコ
マンド(1311または1312)が入力された場合(ステップ
1410の判別結果がYesの場合)は、図15に示す処理(1
500)を行なう。
【0126】図15を参照して、図形コマンド群に対す
る処理を説明する。図形コマンド群(1310)の中には、
新しい図形を1つ追加し、その図形を描画する追加コマ
ンド(1311)と、現在選ばれている図形の位置や大きさ
を変更し、その図形を描画する移動コマンド(1312)が
ある。
【0127】追加コマンド(1311)が入力された場合
(ステップ1501の判別結果がYesの場合)は、まず、新
たな図形の図形番号をaとし、図11の図形テーブル
(1100)中に、図形番号aの図形に関する情報を格納す
る領域を確保する(1502)。aは現在描画されている図
形の図形番号と重複しない新しい番号である。
【0128】次に、図形テーブル(1100)の中で、図形
番号aの図形に関する情報を格納する部分(以下、「図
形番号aのテーブル」と呼ぶ)に、属性テーブル(120
0)の現在の内容をコピーする(1503)。これにより、
図11のフィールド1101〜1111が設定されたことにな
る。
【0129】さらに、描画に用いる直方体の頂点の位置
を決定する(1504)。具体的には、マウスなどの入力装
置(153)を用いて、図6に示す点A、B、Dの位置を
ユーザに入力させ、中間データである点Cの位置ととも
に記憶する。これらの点の位置を、図形番号aのテーブ
ルのフィールド1121から1124に格納する(1507)。な
お、上記[4]で説明したように頂点A〜Dの3次元座
標も算出できるから、算出してフィールド1131〜1134に
格納する。必要であれば、その他1140にも情報を格納す
る。
【0130】処理1503と処理1507により、図形番号aの
図形の描画に必要な情報がすべて図形番号aのテーブル
に格納される。この情報を用いて、図形番号aの図形を
編集画面(132)上に描画する(1508)。
【0131】移動コマンド(1312)が入力された場合
(ステップ1501の判別結果がNoの場合)は、移動すべき
図形があらかじめユーザにより選択されているはずであ
る。そこで、現在選択されている図形の図形番号をaと
する(1505)。次に、直方体の頂点の位置(すなわち、
移動先の位置)を、処理1504と同様な方法で、決定する
(1506)。処理1506により、図形番号aの図形の位置や
大きさを変更するための情報が決定される。
【0132】次に、処理1507により、この情報を図形番
号aのテーブルに格納する。この情報を用いて、図形番
号aの図形を編集画面(132 )上に描画する(1508)。
なお、処理1506では、選択した図形の任意の頂点の移動
先を指定できる。したがって、ユーザは、図形のすべて
の頂点を移動して図形全体(例えば、直方体の全体)を
移動することもできるし、図形中の所望の頂点のみを移
動させることもできる。
【0133】再び図14に戻って、ユーザにより選択コ
マンド群(1320)の中の何れかのコマンド(1321〜132
3)が入力された場合(ステップ1420の判別結果がYesの
場合)は、図16に示す処理(1600)を行なう。
【0134】図16を参照して、選択コマンド群に対す
る処理を説明する。選択コマンド群(1320)の中には、
属性テーブル(1200)の内容から影響を受ける図形を選
ぶグループコマンド(1321)と、編集画面(132)から
消去する図形を選ぶ削除コマンド(1322)と、属性テー
ブル(1200)の内容に影響を与える図形を選ぶコピーコ
マンド(1323)とがある。
【0135】まず、ユーザが編集画面(132)上の図形
を選ぶ(1601)。選ばれる図形の数は、グループコマン
ド(1321)の場合は0個以上、削除コマンド(1322)の
場合は1個以上、コピーコマンド(1323)の場合は1個
である。
【0136】グループコマンド(1321)が入力された場
合(ステップ1602の判別結果がYesの場合)は、選ばれ
た図形をそのまま表示しておく(1603)。これら選ばれ
た図形は、移動コマンド(1312)、および属性コマンド
群(1330)の処理対象となる。
【0137】削除コマンド(1322)が入力された場合
(ステップ1604の判別結果がYesの場合)は、選ばれた
図形を編集画面(132)から消去するとともに、選ばれ
た図形のデータを図形テーブル(1100)から消す(160
5)。
【0138】コピーコマンド(1323)が入力された場合
(ステップ1604の判別結果がNoの場合)は、図形テーブ
ル(1100)の中で、選ばれた図形に関する情報を格納す
る部分の内容を属性テーブル(1200)にコピーする(16
06)。コピーコマンド(1323)実行後に追加コマンド
(1311)を実行すると、コピーコマンドの処理対象にな
った図形と同じ消失点の位置、同じ面の色、同じ稜線の
色、同じ稜線の太さ、同じ種類の図形が描かれる。
【0139】再び図14に戻って、ユーザにより属性コ
マンド群(1330)の中の何れかのコマンド(1331〜133
5)が入力された場合(ステップ1430の判別結果がYesの
場合)は、図17に示す処理(1700)を行なう。
【0140】図17を参照して、属性コマンド群に対す
る処理を説明する。属性コマンド群(1330)の中には、
消失点変更コマンド(1331)と、面の色変更コマンド
(1332)と、稜線の色変更コマンド(1333)と、稜線の
太さ変更コマンド(1334)と、図形の種類変更コマンド
(1335)とがある。
【0141】これらはいずれも、属性テーブル(1200)
の中の、それぞれのコマンド名に対応する部分を変更す
るコマンドである。もしグループコマンド(1321)によ
って選ばれている図形があれば、図形テーブル(1100)
の中で、これらの図形に関する情報を格納している部分
(以下「選ばれている図形のテーブル」とよぶ)に、変
更された属性テーブル(1200)の内容をコピーする処理
も行なう。
【0142】図17を参照して、まず、消失点変更コマ
ンド(1331)が入力された場合(ステップ1701の判別結
果がYesの場合)は、消失点の位置をユーザに決定さ
せ、図12の属性テーブル(1200)のフィールド1201か
ら1203までの値を変更する(1702)。消失点の位置決定
は、上記の[2]および[4]で述べた方法により、投
影面(131)、パラメータ設定画面(221)、またはプレ
ビュー画面(241)を表示しながら行なう。
【0143】面の色変更コマンド(1332)が入力された
場合(ステップ1703の判別結果がYesの場合)は、面の
色をユーザに決定させ、属性テーブル(1200)のフィー
ルド1204から1206までの値を変更する(1704)。
【0144】以下同様にして、稜線の色変更コマンド
(1333)が入力された場合(ステップ1705の判別結果が
Yesの場合)はフィールド1207から1208までの値を変更
し(1706)、稜線の太さ変更コマンド(1334)が入力さ
れた場合(ステップ1707の判別結果がYesの場合)はフ
ィールド1209から1210までの値を変更し(1708)、図形
の種類変更コマンド(1335)が入力された場合(ステッ
プ1709の判別結果がYesの場合)はフィールド1211の値
を変更する(1710)。
【0145】以上の処理によって、属性テーブル(120
0)の内容が変更される。そして、もしグループコマン
ド(1321)によって選ばれている図形があれば、選ばれ
ている図形のテーブルの内容を変更する(1711)。具体
的には、選ばれている図形のテーブルのうち、属性テー
ブル(1200)に対応する部分(図11のフィールド1101
から1111まで)に、属性テーブルの内容(図12のフィ
ールド1201から1211まで)をコピーする。そして、変更
された図形データの情報を参照して、これらの図形を編
集画面(132)上に描画する(1712)。
【0146】処理1711および1712により、選ばれている
複数の図形の消失点の位置、面の色、稜線の色、稜線の
太さ、図形の種類が一斉に変更される。
【0147】再び図14に戻って、ユーザによりファイ
ルコマンド群(1340)の中の何れかのコマンド(1341ま
たは1342)が入力された場合(ステップ1440の判別結果
がYesの場合)は、図18に示す処理(1800)を行な
う。
【0148】図18を参照して、ファイルコマンド群
(1340)に対する処理を説明する。ファイルコマンド群
(1340)の中には、ロードコマンド(1341)と、セーブ
コマンド(1342)とがある。
【0149】ロードコマンド(1341)が入力された場合
(ステップ1801の判別結果がYesの場合)は、図形テー
ブル(1100)および属性テーブル(1200)の内容をファ
イルからロードする(1802)。セーブコマンド(1342)
が入力された場合(ステップ1801の判別結果がNoの場
合)は、図形テーブル(1100)および属性テーブル(12
00)の内容をファイルにセーブする(1803)。
【0150】一旦セーブしたファイルを再びロードした
場合、ロードされたすべての図形に対して透視図編集シ
ステムのコマンドが適用できる。すなわち、ロードされ
たすべての図形に対して消失点の位置、面の色、稜線の
色、稜線の太さ、図形の種類の変更が可能である。
【0151】再び図14に戻って、ユーザによりウィン
ドウコマンド群(1350)の中の何れかのコマンド(1351
〜1353)が入力された場合(ステップ1450の判別結果が
Yesの場合)は、図19に示す処理(1900)を行なう。
【0152】図19を参照して、ウィンドウコマンド群
(1350)に対する処理を説明する。ウィンドウコマンド
群(1350)の中には、編集画面コマンド(1351)と、投
影面コマンド(1352)と、パラメータ設定画面コマンド
(1353)とがある。これらはいずれも、透視図編集シス
テムのディスプレイに表示する画面を切り替えるコマン
ドである。
【0153】編集画面コマンド(1351)が入力された場
合(ステップ1901の判別結果がYesの場合)は、編集画
面(132)を表示する(1902)。投影面コマンド(135
2)が入力された場合(ステップ1903の判別結果がYesの
場合)は、投影面(131)と編集画面(132)を表示する
(1904)。パラメータ設定画面コマンド(1353)が入力
された場合(ステップ1903の判別結果がNoの場合)は、
パラメータ設定画面(221)とプレビュー画面(241)を
表示する(1905)。
【0154】再び図14に戻って、ユーザにより終了コ
マンド(1370)が入力された場合(ステップ1470の判別
結果がYesの場合)は、透視図編集ルーチンの処理を終
了する。その他のコマンド群(1360)の中のコマンドが
入力された場合(ステップ1470の判別結果がNoの場合)
は、その他のコマンド群に対する処理(1460)を行な
う。終了コマンド(1370)以外が入力された場合は、そ
れぞれのコマンドに対応する処理を行なった後、コマン
ド入力(1402)に戻る。
【0155】図20は、一つの図形を編集画面(132)
上に描画する描画処理の詳細を示す。まず、図形テーブ
ル1100の描画する図形の種類のフィールド1111の値か
ら、描画すべき図形の種類が決定される(2001)。図2
0の例では、図形の種類は直方体としている。消失点の
フィールド1101〜1103の値と直方体の頂点のフィールド
1121〜1124の値から図形の位置が決定される(2002)。
ここまでの情報を用いると、描画すべき図形としての直
方体の形状(2012)が決定される。
【0156】さらに、面の色のフィールド1104〜1106の
値から面の色が決定される(2003)。ここまでの情報を
用いると、面に色の付いた直方体(2013)を描くことが
できる。稜線の色のフィールド1107〜1108の値から稜線
の色が決定される(2004)。ここまでの情報を用いる
と、面と稜線に色の付いた直方体(2014)を描くことが
できる。稜線の太さのフィールド1109〜1110の値から稜
線の太さが決定される(2005)。ここまでの情報を用い
ると、面と稜線に色が付き、稜線が太さを持つ直方体
(2015)を描くことができる。
【0157】[13]透視図編集システムの使用例
【0158】図21は、本実施例の透視図編集システム
の使用例を示す。描かれる図形は直方体とする。
【0159】図21の右側の列は、コマンド入力による
編集画面(132)の変化をたどったものである。まず、
ユーザが追加コマンドを入力(2101)し、新しい図形を
一つ描く(2111)。この図形の面の色、稜線の色、稜線
の太さ等は、初期化(1401)によって属性テーブル(12
00)に代入された初期値を用いて決定される。
【0160】次に、ユーザが移動コマンドを入力(210
2)し、この図形の頂点の位置を変更したとする。ここ
では、直方体2111の上側の左右の頂点(図6の頂点Aと
Bに相当する頂点)を指定して、それらの頂点を上側に
移動したとする。これにより、表示される編集画面は、
2112のようになる。このとき、この図形の面の色、稜線
の色、稜線の太さ等は、図形テーブル(1100)に保存さ
れる。
【0161】次に、ユーザが稜線の太さ変更コマンドを
入力(2103)すると、属性テーブル(1200)の稜線の太
さのフィールド1209〜1210の値が変更される。現在、グ
ループコマンドによって選ばれている図形は無いので、
編集画面(132)上の図形は変化しない。ここで追加コ
マンドを入力(2104)し、新しい図形を一つ描くと、21
03で変更された属性テーブル(1200)の内容が参照され
るため、稜線の太さが異なる図形となる(2114)。編集
画面(2114)の右側の直方体が、追加された図形であ
り、稜線の太さが太くなっている。
【0162】次に、ユーザが削除コマンドを入力(210
5)し、右側の図形を消すと、編集画面は2115のように
なる。また、コピーコマンドを入力(2106)し、残った
図形を選ぶと、この図形の面の色、稜線の色、稜線の太
さ等の情報が属性テーブル(1200)にコピーされる。こ
こで追加コマンドを入力(2107)し、新しい図形を一つ
描くと、コピーコマンドの対象になった図形と同じ面の
色、同じ稜線の色、同じ稜線の太さ等を持つ図形が描か
れ、編集画面は2117のようになる。
【0163】次に、ユーザがグループコマンドを入力
(2108)し、現在編集画面(2117)に描かれている2つ
の図形を選んだとする。ここでユーザが面の色変更コマ
ンドを入力(2109)すると、現在選ばれている2つの図
形の面の色が同時に変更され、編集画面は2119のように
なる。
【0164】さらに、ユーザがセーブコマンドを入力
(2198)すると、現在描かれている2つの図形の描画に
必要な情報を格納している図形テーブル(1100)の内容
と、属性テーブル(1200)の内容が、ファイルにセーブ
される。最後に、ユーザが終了コマンドを入力(2199)
すると、透視図の編集を終了する。
【0165】以上のようにして、図形の遠近感、図形の
3次元座標、および図形の陰影や稜線の丸みを容易に調
節できる。本発明の方法を用いることにより、透視図の
編集が容易になる。
【0166】
【発明の効果】本発明によれば、描こうとする図形の遠
近感、図形の3次元座標、および図形の陰影や稜線の丸
みを容易に調節することができる。したがって、ユーザ
所望の透視図描画結果を少ない操作で得ることが可能と
なる。
【図面の簡単な説明】
【図1】実施例の透視図編集システムと、ディスプレイ
に表示される透視図の投影面および編集画面を示す図で
ある。
【図2】透視図のパラメータ設定画面およびプレビュー
画面を示す図である。
【図3】図形の表面の陰影、稜線のハイライトと丸みの
変更処理の説明図である。
【図4】図形の、例えば溝といった表面上の凹凸を表現
する処理の説明図である。
【図5】本発明の透視図編集結果を他のソフトウエアに
入力する例の説明図である。
【図6】直方体の描画方法の例の説明図である。
【図7】直方体に内接する図形の描画例を示す図であ
る。
【図8】直方体の3方向の稜線ベクトルで表わされる図
形の描画例を示す図である。
【図9】直方体から面を取り除いた図形の描画例を示す
図である。
【図10】拘束条件を用いて図形の描画位置を決定する
処理の説明図である。
【図11】本実施例に係る透視図編集ソフトウエアが参
照する図形テーブルを示す図である。
【図12】本実施例に係る透視図編集ソフトウエアが参
照する属性テーブルを示す図である。
【図13】透視図編集システムのメニュー構成例を示す
図である。
【図14】本実施例に係る透視図編集ルーチンの処理の
流れを示す図である。
【図15】図形コマンド群に対する処理の流れを示す図
である。
【図16】選択コマンド群に対する処理の流れを示す図
である。
【図17】属性コマンド群に対する処理の流れを示す図
である。
【図18】ファイルコマンド群に対する処理の流れを示
す図である。
【図19】ウィンドウコマンド群に対する処理の流れを
示す図である。
【図20】図形の描画処理の詳細の説明図である。
【図21】透視図編集システムの使用例の説明図であ
る。
【符号の説明】
100…透視図編集システム、101…左の消失点、1
02…左の消失点を通る直線、103…地平線、104
…視心、105…右の消失点を通る直線、106…右の
消失点、107…地平面と視点との距離を表わす視高、
108…投影面と地平面との交線を表わす基線、109
…下方無限遠の消失点に対応する直線、111…直方体
Q1の上面、112…直方体Q1の左側面、113…直方
体Q1の右側面、114…直方体Q1の輪郭の稜線、11
5…直方体Q1の内部の稜線、121…直方体Q2の上
面、122…直方体Q2の左側面、123…直方体Q2の
右側面、124…直方体Q2の輪郭の稜線、125…直
方体Q2の内部の稜線、131…投影面、132…編集
画面、151…記憶装置、152…中央処理装置、15
3…入力装置、154…他の図形編集システム、155
…プリンタ、156…VTR装置、501…透視図編集
ソフトウエア、1100…図形テーブル、1200…属
性テーブル、1400…透視図編集ルーチン。

Claims (27)

    【特許請求の範囲】
  1. 【請求項1】計算機上で透視図法を用いて図形Fを描く
    際の透視図作成支援方法において、 前記図形Fの構成要素に関する属性であって、3次元空
    間上での向きごとに分類された面の色、投影面上で前記
    図形Fの輪郭をなす稜線の色、投影面上で前記図形Fの
    輪郭をなす稜線の太さ、投影面上で前記図形Fの内部に
    位置する稜線の色、または投影面上で前記図形Fの内部
    に位置する稜線の太さを含む属性を、決定するステップ
    と、 該属性を参照して、前記図形Fを投影面上に描画するス
    テップとを備えたことを特徴とする透視図作成支援方
    法。
  2. 【請求項2】計算機上で透視図法を用いて図形Fを描く
    際の透視図作成支援方法において、 前記図形Fを描くときに用いる直方体Qの辺の延長上に
    ある消失点の位置と、前記図形Fの構成要素であって3
    次元空間上での向きごとに分類された面の色と、前記図
    形Fの構成要素であって投影面上で前記図形Fの輪郭を
    なす稜線の色および太さと、前記図形Fの構成要素であ
    って投影面上で前記図形Fの内部に位置する稜線の色お
    よび太さと、前記図形Fの種類とを含む属性を決定する
    ステップと、 該属性を参照して、前記図形Fを投影面上に描画するス
    テップとを備えたことを特徴とする透視図作成支援方
    法。
  3. 【請求項3】計算機上で透視図法を用いて図形Fを描く
    際の透視図作成支援方法において、 前記図形Fを描くときに用いる直方体Qの辺の延長上に
    ある消失点の位置と、前記図形Fの構成要素であって3
    次元空間上での向きごとに分類された面の色と、前記図
    形Fの構成要素であって投影面に投影される前記図形F
    の稜線のうち凸な形状を構成する2つの可視面に挟まれ
    た稜線の色および太さと、前記図形Fの構成要素であっ
    て投影面に投影される前記図形Fの稜線のうち凸な形状
    を構成する2つの可視面に挟まれた稜線以外の稜線の色
    および太さと、前記図形Fの種類とを含む属性を決定す
    るステップと、 該属性を参照して、前記図形Fを投影面上に描画するス
    テップとを備えたことを特徴とする透視図作成支援方
    法。
  4. 【請求項4】前記図形Fの構成要素の前記投影面上での
    位置を変更して再描画する際に、前記属性を参照するこ
    とにより、前記属性が表わす面および稜線の特徴を保持
    した図形を、前記属性を再設定することなく描画するこ
    とを特徴とする請求項1、2または3に記載の透視図作
    成支援方法。
  5. 【請求項5】前記図形Fを前記投影面上で複写する際
    に、前記属性を参照することにより、前記属性が表わす
    面および稜線の特徴を保持した複写結果を、前記属性を
    再設定することなく得ることを特徴とする請求項1、2
    または3に記載の透視図作成支援方法。
  6. 【請求項6】前記図形Fを投影面上に複数描画する際
    に、前記属性を参照することにより、前記属性が表わす
    面および稜線の特徴を保持した複数の図形を、図形ごと
    に前記属性の設定を繰り返すことなく描画することを特
    徴とする請求項1、2または3に記載の透視図作成支援
    方法。
  7. 【請求項7】前記図形Fを投影面上に複数描画した後
    で、前記属性を変更することにより、変更された前記属
    性が表わす面および稜線の特徴を持つように複数の図形
    を変更する処理を、図形ごとに前記属性の変更を繰り返
    すことなく実行することを特徴とする請求項1、2また
    は3に記載の透視図作成支援方法。
  8. 【請求項8】前記図形Fのデータを、前記属性ととも
    に、ファイルに格納するステップと、該ファイルから前
    記図形Fのデータとともに前記属性も呼び出すステップ
    とを備えたことを特徴とする請求項1、2または3に記
    載の透視図作成支援方法。
  9. 【請求項9】前記図形Fを前記投影面に描画するステッ
    プは、 前記投影面上に2点A、Bを与えるステップと、 2点A、Bを向かい合う頂点とする4辺形であって、該
    4辺形の向かい合う各々の辺が、延長することにより、
    対応する前記消失点を通るような4辺形Pを決定するス
    テップと、 該4辺形Pの4つの頂点のうちの1つCと、4辺形Pの
    辺に対応しない前記消失点とを結ぶ直線上に点Dを与え
    るステップと、 該4辺形Pを上面または底面とし、線分CDが稜線の1
    つとなるような直方体Qを求めるステップと、 該直方体Qを用いて図形Fを描くステップとを備えたこ
    とを特徴とする請求項1、2または3に記載の透視図作
    成支援方法。
  10. 【請求項10】異なる色の線分を並べたものを1つの線
    分として定義し、定義された該線分を用いて、前記図形
    Fの表面上の凹凸を表現することを特徴とする請求項
    1、2または3に記載の透視図作成支援方法。
  11. 【請求項11】前記直方体Qを3次元空間上に変換した
    形状Q’に内接する形状F’を定義し、形状F’を前記
    投影面上に投影することにより、前記図形Fを描くこと
    を特徴とする請求項1、2または3に記載の透視図作成
    支援方法。
  12. 【請求項12】前記直方体Qを3次元空間上に変換した
    形状Q’の稜線の方向ベクトルからなる座標系を用いて
    形状F’を定義し、形状F’を前記投影面上に投影する
    ことにより、前記図形Fを描くことを特徴とする請求項
    1、2または3に記載の透視図作成支援方法。
  13. 【請求項13】前記直方体Qを用いて描かれる図形を、
    3次元空間上に変換した形状から、少なくとも1つの面
    を取り除いた形状F’を定義し、形状F’を前記投影面
    上に投影することにより、前記図形Fを描くことを特徴
    とする請求項1、2または3に記載の透視図作成支援方
    法。
  14. 【請求項14】前記直方体Qを構成する面の中で指定さ
    れた面が3次元空間上において指定された平面に接して
    いるという拘束条件を与えることにより、前記図形Fの
    描画位置の決定、およびすでに描画された図形Fの描画
    位置の移動を行なうことを特徴とする請求項1、2また
    は3に記載の透視図作成支援方法。
  15. 【請求項15】前記直方体Qを構成する面の中で指定さ
    れた面が3次元空間上において他の直方体を構成する面
    の中で指定された面に接しているという拘束条件を与え
    ることにより、前記図形Fの描画位置の決定、およびす
    でに描画された図形Fの描画位置の移動を行なうことを
    特徴とする請求項1、2または3に記載の透視図作成支
    援方法。
  16. 【請求項16】前記図形Fの構成要素のデータを、例え
    ばポストスクリプトといったデータに変換することによ
    り、任意の2次元図形編集ソフトウエアおよび任意の文
    章編集ソフトウエアのデータの中に、図形Fのデータを
    挿入することを特徴とする請求項1、2または3に記載
    の透視図作成支援方法。
  17. 【請求項17】前記図形Fを3次元空間上に変換した形
    状のデータを、任意の3次元CADのデータの中に挿入
    することを特徴とする請求項1、2または3に記載の透
    視図作成支援方法。
  18. 【請求項18】計算機上で透視図法を用いて図形Fを描
    く際の透視図作成支援方法において、 前記図形Fを描く際の基準となる直方体Qと投影面と視
    点との3次元空間内における位置関係が表現されるパラ
    メータ設定画面を表示するステップと、 前記パラメータ設定画面を用いて、前記直方体Qの所定
    の面と前記投影面とのなす角、および前記投影面と前記
    視点との位置関係を入力するステップと、 前記入力情報を用いて、前記投影面上の消失点の位置を
    算出するステップとを備えたことを特徴とする透視図作
    成支援方法。
  19. 【請求項19】前記パラメータ設定画面とともに、前記
    直方体Qを前記投影面上に投影した図形を表示するプレ
    ビュー画面を表示するステップを、さらに備えたことを
    特徴とする請求項18に記載の透視図作成支援方法。
  20. 【請求項20】前記プレビュー画面に表示された前記直
    方体Qの頂点、稜線、あるいは面といった構成要素の位
    置を、前記プレビュー画面上で、変更するステップと、 該変更結果に基づいて前記投影面上の消失点の位置を変
    更するステップとをさらに備えたことを特徴とする請求
    項19に記載の透視図作成支援方法。
  21. 【請求項21】前記プレビュー画面に表示された前記直
    方体Qの頂点、稜線、あるいは面といった構成要素の位
    置を調節することにより、前記直方体Qの3次元空間上
    での座標を調節し、これにより前記直方体Qを基準とし
    て描かれる図形Fの3次元空間上での座標を調節するス
    テップを、さらに備えたことを特徴とする請求項19に
    記載の透視図作成支援方法。
  22. 【請求項22】計算機上で透視図法を用いて図形を描く
    透視図作成支援システムであって、 図形を描く際の基準となる直方体の辺の延長上にある消
    失点の位置、描こうとする図形の3次元空間上での向き
    ごとに分類された面の色、描こうとする図形の稜線のう
    ち投影面上でその図形の輪郭をなす稜線の色、描こうと
    する図形の稜線のうち投影面上でその図形の輪郭をなす
    稜線の太さ、描こうとする図形の稜線のうち投影面上で
    その図形の内部に位置する稜線の色、描こうとする図形
    の稜線のうち投影面上でその図形の内部に位置する稜線
    の太さ、および描こうとする図形の種類を含む属性デー
    タを記憶するための属性テーブルと、 ユーザの指示に応じて、前記属性テーブルの属性データ
    を設定変更する手段と、 ユーザの指示に応じて、前記図形を描く際の基準となる
    直方体の頂点の位置を決定する手段と、 前記頂点の位置および前記属性テーブルの属性データに
    基づいて、投影面上に図形を描画する手段とを備えたこ
    とを特徴とする透視図作成支援システム。
  23. 【請求項23】計算機上で透視図法を用いて図形を描く
    透視図作成支援システムであって、 図形を描く際の基準となる直方体の辺の延長上にある消
    失点の位置、描こうとする図形の3次元空間上での向き
    ごとに分類された面の色、描こうとする図形の稜線のう
    ち投影面上でハイライトを付けて表現される稜線の色、
    描こうとする図形の稜線のうち投影面上でハイライトを
    付けて表現される稜線の太さ、描こうとする図形の稜線
    のうち投影面上でハイライトが付かない稜線の色、描こ
    うとする図形の稜線のうち投影面上でハイライトが付か
    ない稜線の太さ、および描こうとする図形の種類を含む
    属性データを記憶するための属性テーブルと、 ユーザの指示に応じて、前記属性テーブルの属性データ
    を設定変更する手段と、 ユーザの指示に応じて、前記図形を描く際の基準となる
    直方体の頂点の位置を決定する手段と、 前記頂点の位置および前記属性テーブルの属性データに
    基づいて、投影面上に図形を描画する手段とを備えたこ
    とを特徴とする透視図作成支援システム。
  24. 【請求項24】前記ハイライトを付けて表現される稜線
    が、前記描こうとする図形の投影面に投影される稜線の
    うち凸な形状を構成する2つの可視面に挟まれた稜線で
    あり、前記ハイライトが付かない稜線が、それら以外の
    稜線であることを特徴とする請求項23に記載の透視図
    作成支援システム。
  25. 【請求項25】描画された図形ごとに該図形に関する情
    報を保持する図形テーブルであって、該図形に関する前
    記属性データ、前記直方体の頂点の位置、および該図形
    の3次元空間上の座標を保持する図形テーブルを備えた
    請求項22または23に記載の透視図作成支援システ
    ム。
  26. 【請求項26】ユーザの指示に応じて前記図形テーブル
    中の前記直方体の頂点の位置を変更するとともに、該変
    更結果に基づいて投影面上に図形を再描画する手段を備
    えた請求項25に記載の透視図作成支援システム。
  27. 【請求項27】既に投影面上に描画されている図形を選
    択する手段と、 ユーザの指示に応じて、前記属性テーブルの属性データ
    を設定変更する手段と、 前記選択された図形の前記図形テーブルの属性データ
    を、変更後の前記属性テーブルの属性データに応じて、
    変更する手段と、 前記選択された図形を再描画する手段とを備えた請求項
    25に記載の透視図作成支援システム。
JP6051340A 1994-02-23 1994-02-23 透視図作成支援方法および透視図作成支援システム Pending JPH07234949A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6051340A JPH07234949A (ja) 1994-02-23 1994-02-23 透視図作成支援方法および透視図作成支援システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6051340A JPH07234949A (ja) 1994-02-23 1994-02-23 透視図作成支援方法および透視図作成支援システム

Publications (1)

Publication Number Publication Date
JPH07234949A true JPH07234949A (ja) 1995-09-05

Family

ID=12884205

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6051340A Pending JPH07234949A (ja) 1994-02-23 1994-02-23 透視図作成支援方法および透視図作成支援システム

Country Status (1)

Country Link
JP (1) JPH07234949A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100370366B1 (ko) * 2000-05-27 2003-01-30 한국과학기술원 소실선을 이용한 이미지 변환방법
WO2007030763A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation 2d editing metaphor for 3d graphics
US8254667B2 (en) 2007-02-16 2012-08-28 Samsung Electronics Co., Ltd. Method, medium, and system implementing 3D model generation based on 2D photographic images
US8681150B2 (en) 2007-02-16 2014-03-25 Samsung Electronics Co., Ltd. Method, medium, and system with 3 dimensional object modeling using multiple view points
JP2016054524A (ja) * 2015-11-18 2016-04-14 株式会社ニコン プログラムおよび表示装置
KR20160101518A (ko) * 2015-02-17 2016-08-25 삼성전자주식회사 프린팅 정보를 생성하는 디바이스 및 프린팅 정보를 생성하는 방법
JP2018107834A (ja) * 2018-04-05 2018-07-05 株式会社ニコン 再生演出プログラムおよび再生演出装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100370366B1 (ko) * 2000-05-27 2003-01-30 한국과학기술원 소실선을 이용한 이미지 변환방법
WO2007030763A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation 2d editing metaphor for 3d graphics
JP4864972B2 (ja) * 2005-09-09 2012-02-01 マイクロソフト コーポレーション 3dグラフィックスのための2d編集メタファ(metaphor)
US8464170B2 (en) 2005-09-09 2013-06-11 Microsoft Corporation 2D editing metaphor for 3D graphics
US8254667B2 (en) 2007-02-16 2012-08-28 Samsung Electronics Co., Ltd. Method, medium, and system implementing 3D model generation based on 2D photographic images
US8681150B2 (en) 2007-02-16 2014-03-25 Samsung Electronics Co., Ltd. Method, medium, and system with 3 dimensional object modeling using multiple view points
KR20160101518A (ko) * 2015-02-17 2016-08-25 삼성전자주식회사 프린팅 정보를 생성하는 디바이스 및 프린팅 정보를 생성하는 방법
US11244517B2 (en) 2015-02-17 2022-02-08 Samsung Electronics Co., Ltd. Device for generating printing information and method for generating printing information
JP2016054524A (ja) * 2015-11-18 2016-04-14 株式会社ニコン プログラムおよび表示装置
JP2018107834A (ja) * 2018-04-05 2018-07-05 株式会社ニコン 再生演出プログラムおよび再生演出装置

Similar Documents

Publication Publication Date Title
US7346408B2 (en) Two-dimensional graphics for incorporating on three-dimensional objects
US6867787B1 (en) Character generator and character generating method
US6025847A (en) Three dimensional modeling system with visual feedback
US8456484B2 (en) Apparatus and methods for wrapping texture onto the surface of a virtual object
US6072501A (en) Method and apparatus for composing layered synthetic graphics filters
US5808616A (en) Shape modeling method and apparatus utilizing ordered parts lists for designating a part to be edited in a view
US7148899B2 (en) Texture mapping 3D objects
JP2000090289A (ja) 画像処理装置および画像処理方法、並びに媒体
JP2000090290A (ja) 画像処理装置および画像処理方法、並びに媒体
US20010056308A1 (en) Tools for 3D mesh and texture manipulation
GB2419504A (en) Perspective editing tool
JPH05342310A (ja) 線要素データの3次元変換装置及び方法
JP3744039B2 (ja) 透視図作成支援方法
US6771276B1 (en) Two-dimensional drawing environment utilizing perspective grids
US5712965A (en) Three-dimensional solid arranging/editing method in a computer graphic system and system
US5852442A (en) Method of drawing a three-dimensional object
EP0887770B1 (en) Method and apparatus for defining the scope of operation of layered synthetic graphics filters
JPH07234949A (ja) 透視図作成支援方法および透視図作成支援システム
JPH0336668A (ja) Cadシステムにおける形状生成方式
JPH05143711A (ja) 画像生成方法
GB2292657A (en) Displaying objects with geometric constraints
US20070005551A1 (en) Producing a locally optimal path through a lattice by overlapping search
JP2000057377A (ja) 画像処理装置および画像処理方法、並びに媒体
JP2001266176A (ja) 画像処理装置および画像処理方法、並びに記録媒体
JP2000057378A (ja) 画像処理装置および画像処理方法、媒体、並びに輪郭抽出装置および輪郭抽出方法