JPH08279038A - 太線描画装置 - Google Patents
太線描画装置Info
- Publication number
- JPH08279038A JPH08279038A JP8243295A JP8243295A JPH08279038A JP H08279038 A JPH08279038 A JP H08279038A JP 8243295 A JP8243295 A JP 8243295A JP 8243295 A JP8243295 A JP 8243295A JP H08279038 A JPH08279038 A JP H08279038A
- Authority
- JP
- Japan
- Prior art keywords
- line
- coordinates
- coordinate
- thick line
- thick
- 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
Links
Landscapes
- Image Processing (AREA)
Abstract
度であっても、設定された太線の線幅でかつ高速処理に
よる描画を行う太線描画装置の提供を目的とする。 【構成】 描画する太線の始点及び終点とその線幅とを
認識する初期値認識手段1と、始点と終点とを結ぶ直線
上の座標を走査する基準線走査手段2と、走査された座
標と前記始点との間の距離を演算する距離演算手段3
と、この距離演算手段での演算結果と前記基準線走査手
段で走査された座標とを基に、前記始点と終点とを結ぶ
直線に直交しかつ前記太線の線幅と等しい長さを有する
画素列を生成する法線ベクトル生成手段4と、この法線
ベクトル生成手段で生成された画素列を前記基準線走査
手段で走査された座標毎に発生させる太線描画手段5と
を備えることを特徴とする。
Description
タ装置等を用いて太線を描画したり、CAD(Computer
Aided Design )システムやコンピュータグラフィック
ス等において太線を描画する太線描画装置に関するもの
である。
描画しようとする太線の始点及び終点とこの太線の線幅
が入力されると、図14に示すような方法を用いて所望
する太線を描画するものが知られている。図14(a)
に示す方法を用いた太線描画装置では、公知の技術であ
るDDA(Digital Differential Analyzer;ディジタル
微分解析機)アルゴリズムに基づき、設定された線幅を
直径とする円形の画素パターンを、設定された始点から
終点まで重ね合わせることによって、所望する太線を描
画するようになっている。また、例えば、特開平4−2
3179号公報に開示された太線描画装置のように、始
点において円形の画素パターンが描画された後は、この
円形の画素パターンから矩形の画素パターンを生成する
ことによって、画素パターンを重ね合わせる際に重複し
てアクセスされる画素の数を低減させたものもある。
線描画装置では、DDAアルゴリズムに基づき1画素分
の線幅を有する直線を、設定された始点から終点まで生
成し、この生成した直線を複数本、即ち入力された太線
の線幅分描画することにより所望する太線を描画するよ
うになっている。このような太線描画装置としては、例
えば特開平5−242259号公報に開示された装置が
ある。さらに、図14(c)に示す方法を用いた太線描
画装置では、先ず入力された始点及び終点と線幅から太
線の輪郭線を描画し、その後に公知の技術である塗りつ
ぶし処理を用いて前記輪郭線の内側を塗りつぶすことに
より、所望する太線を描画するようになっている。
線描画装置では、太線の描画角度がどのような角度であ
っても、入力された線幅でその太線を描画しなければな
らない。図14(a)に示す方法を用いた太線描画装置
や特開平4−23179号公報に開示された太線描画装
置では、画素パターンの重ね合わせにより太線を描画す
るので、その太線がどの描画角度であっても入力された
線幅で描画が行われるが、そのために重複してアクセス
される画素が発生し、太線の描画に多くの時間を費やし
てしまう。また、入力された線幅から円形の画素パター
ンを生成する処理や予め画素パターンを登録しておく処
理等が必要になるため、処理が煩雑になってしまい、そ
のための処理時間が発生してしまう。
線描画装置(例えば、特開平5−242259号公報に
開示された装置)では、太線の描画角度によって線幅に
対応する1画素分の直線の本数が異なるため、その本数
を算出するための算出時間が必要である。また、描画角
度によっては1画素分の直線の始点と終点、即ち太線の
端縁を設定する処理が複雑になってしまい、その処理に
多くの時間を費やしてしまう。さらに、図14(c)に
示す方法を用いた太線描画装置では、太線の描画角度に
よって太線の輪郭線を描画するための処理が複雑になっ
てしまい、また、輪郭線の内側の塗りつぶし処理を行う
領域が大きくなると、前記輪郭線の座標を保持するため
に膨大なメモリ容量が必要となってしまう。よって、こ
れらの処理を行うための処理時間が多く必要となってし
まう。
度がどの角度であっても、設定された太線の線幅でかつ
高速処理による描画を行う太線描画装置を提供すること
を目的とする。
成するために案出された太線描画装置で、入力された情
報から描画する太線の始点及び終点とこの太線の線幅と
を認識する初期値認識手段と、この初期値認識手段で認
識された始点と終点とを結ぶ直線上にある座標を走査す
る基準線走査手段と、この基準線走査手段で走査された
座標と前記始点との間の距離を演算する距離演算手段
と、この距離演算手段での演算結果と前記基準線走査手
段で走査された座標とを基に、前記始点と終点とを結ぶ
直線に直交しかつ前記初期値認識手段で認識された太線
の線幅と等しい長さを有する画素列を生成する法線ベク
トル生成手段と、この法線ベクトル生成手段で生成され
た画素列を前記基準線走査手段で走査された座標毎に発
生させる太線描画手段とを備えてなるものである。
る際には、先ず初期値認識手段によって描画しようとす
る太線の始点及び終点とその線幅が認識される。続い
て、基準線走査手段では、初期値認識手段で認識された
始点と終点とを結ぶ直線上にある座標を、前記始点から
順に走査する。このとき、距離演算手段では、基準線走
査手段で走査された座標と始点との間の距離を演算によ
り求めている。そして、距離演算手段による演算結果と
初期値認識手段で認識された線幅とが等しくなる座標ま
で基準線走査手段が走査すると、法線ベクトル生成手段
では、例えば、前記座標と始点との間で走査された全て
の座標を90°回転させ、回転後の座標上に太線の描画
に必要な画素を発生させる。つまり、法線ベクトル生成
手段では、初期値認識手段で認識された始点と終点とを
結ぶ直線に直交し、かつ太線の線幅と等しい長さを有す
る画素列を生成する。法線ベクトル生成手段で画素列が
生成されると、太線描画手段では、この画素列を、初期
値認識手段で認識された始点から終点まで基準線走査手
段で走査された座標毎に発生させる。この画素列の発生
により、所望する線幅の太線が始点から終点まで描画さ
れる。
装置について説明する。
発明に係わる太線描画装置について説明する。本実施例
の太線描画装置は、例えばパーソナルコンピュータやワ
ークステーション等からなるもので、図1のブロック図
に示すように、初期値認識手段1と、基準線走査手段2
と、距離演算手段3と、法線ベクトル生成手段4と、太
線描画手段5と、フレームメモリ6とを備えたものであ
る。初期値認識手段1は、キーボードやマウス等の入力
装置からなるもので、使用者(ユーザ)が入力した描画
しようとする太線の初期値(始点及び終点の座標とその
線幅)を認識するものである。但し、三角関数を用いた
演算機能を設けて、例えばユーザが入力した始点の座
標、太線の長さ及び線幅、描画角度から、始点及び終点
の座標と線幅を認識するものであってもよい。
ベクトル生成手段4、太線描画手段5は、それぞれCP
U(Central Processing Unit )等の演算装置からなる
ものである。これらの各手段によって、図2に示すよう
に、初期値設定手段1で入力された始点と終点とを結ぶ
方向に直交し、かつ入力された線幅と等しい大きさの法
線ベクトルが生成され、この法線ベクトルを活用して所
望する太線が描画されるようになっている。また、図1
において、フレームメモリ6は、RAM(Random Acces
s Memory)等の半導体メモリやハードディスク装置等の
外部記憶装置からなるもので、太線描画手段5で発生さ
れた太線を描画するための画素を格納するものである。
尚、このフレームメモリ6に格納された太線は、図示し
ないプリンタ装置やCRT(Cathode-Ray Tube)装置等
の表示装置によって出力されるようになっている。
手段2、距離演算手段3、法線ベクトル生成手段4、太
線描画手段5のそれぞれについて、図3のブロック図を
参照して説明する。基準線走査手段2は、DDAによる
座標発生手段2aと、走査座標格納手段2bとを備えて
なるものである。DDAによる座標発生手段2aは、D
DAアルゴリズムに基づいて、初期値認識手段1で認識
された始点と終点とを結ぶ直線(以下、基準線と称す)
上に位置する座標を始点から順に終点まで走査するもの
である。走査座標格納手段2bは、DDAによる座標発
生手段2aで走査された座標を一時的に保持するもので
ある。
と、線副走査判定手段3bとを備えてなるものである。
移動距離演算手段3aは、後述する方法を用いてDDA
による座標発生手段2aで走査された座標と始点との間
の距離を演算するものである。線副走査判定手段3b
は、移動距離演算手段3aによって演算された距離と、
初期値認識手段1で認識された太線の線幅とを比較し
て、始点からの距離が前記太線の線幅に最も近い位置に
ある座標を判定するものである。
段4aと、法線ベクトル格納手段4bとを備えてなるも
のである。90°回転手段4aは、走査座標格納手段2
bに保持されている座標を、初期値認識手段1で認識さ
れた始点を中心に時計方向に90°回転させて、回転後
の座標上に太線の描画に必要な画素を発生するものであ
る。但し、90°回転手段4aでは、線副走査判定手段
3bにより判定された座標と始点との間にある座標だけ
を回転させるようになっている。法線ベクトル格納手段
4bは、90°回転手段4aが発生した画素を一時的に
保持するものである。即ち、法線ベクトル格納手段4b
には、基準線に直交し、かつ初期値認識手段1で認識さ
れた線幅と同等の長さをもつ画素列(以下、法線ベクト
ルと称す)が保持されるようになっている。
aと、画素抜け判定手段5bと、法線ベクトルに基づく
描画手段5cと、終了条件判定手段5dとを備えてなる
ものである。基準線移動処理手段5aは、後述するよう
に法線ベクトルに基づく描画手段5cが基準線上の座標
に法線ベクトルを発生させる際に、この法線ベクトルを
基準線上の座標に対してどの位置に発生させるかを設定
するものである。即ち、基準線移動処理手段5aは、法
線ベクトルを、例えば基準線の始点から終点に向かう方
向に対して基準線の右側に発生させるか、或いは左側に
発生させるか、或いは基準線の両側に振り分けて発生さ
せるか等を設定するものである。但し、この基準線移動
処理手段5aにおける設定は、予めユーザにより行われ
るようになっている。画素抜け判定手段5bは、法線ベ
クトルに基づく描画手段5cが法線ベクトルを発生させ
る際に、描画する太線の領域内で画素が発生していない
部分、所謂画素抜けがあるか否かを判定するものであ
る。但し、この画素抜け判定手段5bでは、例えばDD
Aによる座標発生手段2aによって走査された基準線上
の座標のy座標の値を基に、画素抜けがあるか否かを判
定するようになっている。
準線移動処理手段5aでの設定に従って、基準線上の座
標、即ちDDAによる座標発生手段2aで走査され走査
座標格納手段2bに保持されている座標上に、法線ベク
トル格納手段4bに保持されている法線ベクトルを発生
させるものである。また、法線ベクトルに基づく描画手
段5cは、画素抜け判定手段5bで画素抜けがあると判
定された際に、その画素抜けのある座標上に画素を補充
するものである。終了判定手段5dは、法線ベクトルに
基づく描画手段5cが法線ベクトルを初期値入力手段1
で入力された終点まで発生したか否かを判定するもので
ある。
置の基本的な動作例について説明する。ここでは、先
ず、本実施例の太線描画装置が法線ベクトルを生成する
動作例について、図4のフローチャートを参照して説明
する。初期値認識手段1で描画しようとする太線の始点
及び終点とその線幅とが認識されると(ステップ10
1、以下ステップをSと略す)、DDAによる座標発生
手段2aでは、基準線上の座標を前記始点に隣接する座
標から順に走査する(S102)。そして、走査座標格
納手段2bでは、DDAによる座標発生手段2aで走査
された座標を一時的に保持する(S103)。
による座標発生手段2aで走査された座標と始点との間
の距離を演算しているので(S104)、線副走査判定
手段3bでは、その演算結果と初期値認識手段1で認識
された太線の線幅とを比較する(S105)。そして、
移動距離演算手段3aでの演算結果、即ち始点からの距
離が太線の線幅に最も近い座標がDDAによる座標発生
手段2aによって走査されるまで、上述のステップ(S
102〜S105)が繰り返される。始点からの距離が
太線の線幅に最も近い座標が走査されると、90°回転
手段4aでは、走査座標格納手段2bに保持されている
座標を全て取り出して、始点を中心として時計方向に9
0°回転させ、回転後の座標上に太線の描画に必要な画
素を発生させる(S106)。そして、法線ベクトル格
納手段4bでは、これらの画素を法線ベクトルとして一
時的に保持する(S107)。
例について、図5を参照して具体的に説明する。尚、図
中に示す格子は、この太線描画装置の解像度によって定
められるもので、その格子の交点(座標)が画素の中心
位置となっている。初期値認識手段1で始点p0と終点
peとが認識されると、DDAによる座標発生手段2a
では、基準線上で始点p0に最も近い座標p1から走査
して、走査座標格納手段2bに保持する。このとき、移
動距離演算手段3aでは、走査された座標p1と始点p
0との間の距離を演算し、さらに線副走査判定手段3b
では、その演算結果と初期値設定手段1で認識された太
線の線幅とを比較する。但し、走査された座標p1と始
点p0との間の距離は、太線の線幅に満たないので、D
DAによる座標発生手段2aでは、次の座標p2を走査
する。
線幅に最も近い座標p3が走査されるまで、走査座標格
納手段2bには順次走査された座標が保持される。座標
p3が走査座標格納手段2bに保持されると、90°回
転手段4aでは、走査座標格納手段2bに保持されてい
る全ての座標p1、p2、p3を取り出して、始点p0
を中心としてこれらを90°回転させて、回転後の位置
にある座標p1′、p2′、p3′と始点p0とにそれ
ぞれ画素を発生させる。そして、法線ベクトル格納手段
4bには、これらの画素、即ちv0〜v3に連続する画
素列が法線ベクトルとして保持される。
ると、続いて、本実施例の太線描画装置では、図6のフ
ローチャートに示すように、生成された法線ベクトルを
活用して太線の描画を行う。法線ベクトル格納手段4b
に法線ベクトルが保持されると、DDAによる座標発生
手段2aでは、基準線上の座標を始点から順に走査する
(S201)。そして、法線ベクトルに基づく描画手段
5cでは、基準線移動処理手段5aでの設定に従って、
走査された座標上に法線ベクトルを発生させる(S20
2)。このとき、画素抜け判定手段5bでは、DDAに
よる座標発生手段2aによって走査された基準線上の座
標のy座標の値を基に、画素抜けがあるか否かを判定し
ているので(S203)、画素抜けがある場合には、法
線ベクトルに基づく描画手段5cが画素抜けのある座標
上に画素を補充する(S204)。
た場合には、法線ベクトルに基づく描画手段5cで発生
された法線ベクトル或いは補充された画素が、フレーム
メモリ6へ送出されて、このフレームメモリ6に格納さ
れる(S205)。但し、法線ベクトル或いは補充され
た画素がフレームメモリ6へ送出される際に、終了判定
手段5dでは、DDAによる座標発生手段2aが基準線
上の座標を終点まで走査したか否か、即ち法線ベクトル
に基づく描画手段5cが法線ベクトルを終点上に発生し
たか否かを判定しているので(S206)、終点上に法
線ベクトルを発生するまで上述のステップ(S201〜
S206)が繰り返される。
上に法線ベクトルを発生すると、フレームメモリ6には
基準線上の始点から終点までの間の各座標上に発生され
た法線ベクトルが格納される。つまり、フレームメモリ
6には、所望する太線を描画するために必要な画素が全
て格納されている。そして、これらの画素が、このフレ
ームメモリ6から外部の表示装置へ送出されて、太線と
して出力される。
て、図7を参照して具体的に説明する。法線ベクトル
(図5におけるv0〜v3)が生成されると、DDAに
よる座標発生手段2aでは、始点a0と終点f0とを結
ぶ基準線上の座標を始点a0から順に走査する。DDA
による座標発生手段2aが始点a0を走査すると、法線
ベクトルに基づく描画手段5cでは、始点a0上に法線
ベクトルa0〜a3を発生させる。但し、ここでは、基
準線移動処理手段5aでの設定に従い、基準線の始点か
ら終点に向かう方向に対して右側(図中の法線方向)に
法線ベクトルを発生させるようになっている。そして、
この法線ベクトルa0〜a3は、フレームメモリ6に格
納される。
基準線上で始点a0に隣接する座標b0を走査し、その
座標b0上に法線ベクトルに基づく描画手段5cが法線
ベクトルb0〜b3を発生させ、その法線ベクトルb0
〜b3がフレームメモリ6に格納される。そして、以下
同様に、DDAによる座標発生手段2aが終点f0を走
査するまで、法線ベクトルの発生とその格納が行われ
る。但し、座標c0上に発生された法線ベクトルc0〜
c3と、座標d0上に発生された法線ベクトルd0〜d
3との間のように、基準線上におけるy座標が異なる
と、画素抜けが生じてしまう場合がある。そのために、
画素抜け判定手段5bでは、DDAによる座標発生手段
2aにより座標d0が走査された時点で、座標c0と座
標d0とのy座標の値が異なるので、画素抜けが生じて
しまうことを判定する。そして、法線ベクトルに基づく
描画手段5cでは、画素抜け判定手段5bによる判定に
従い、法線ベクトルd0〜d3を座標d0上に発生させ
るとともに、画素抜けが生じてしまう座標上に画素を補
充する。このようにして、本実施例の太線描画装置で
は、所望する太線の描画が行われる。
線上のそれぞれの座標と始点との間の距離の演算につい
て説明する。基準線上の座標はDDAによる座標発生手
段2aにより始点から順次走査されているので、移動距
離演算手段3aでは、隣接する座標間の距離を累積する
ことにより、始点からの距離を演算するようになってい
る。但し、本実施例における移動距離演算手段3aで
は、演算による累積誤差を低減するために、演算する座
標の前に走査した座標を2つまで逆上り、これら2つの
座標間の距離を用いて演算を行うようになっている。
に示すように、新たに走査する座標(以下、次座標と称
す)Pn+1についての演算を行う場合に、先ずこの次座標
Pn+1と既に走査している座標(以下、現座標と称す)Pn
との間の移動距離を暫定移動距離Dnとして演算する。こ
のとき、隣接する座標間の単位距離をx軸方向、y軸方
向共に1とすると、次座標Pn+1と現座標Pnとの間の暫定
移動距離Dnは、1または√2のいずれか一方である。そ
して、この暫定移動距離Dnと、現座標Pnの前に走査した
座標(以下、前座標と称す)Pn-1から現座標Pnまでの移
動距離Dpとに基づき、新たに現座標Pnから次座標Pn+1ま
での移動距離を演算し直して、その演算結果を始点から
現座標Pnまでの距離に加算することにより、始点から次
座標Pn+1までの距離とする。
標Pnまでの移動距離Dpが1、現座標Pnから次座標Pn+1ま
での暫定移動距離Dnが√2であるとすると、前座標Pn-1
から次座標Pn+1までの距離は√5である。よって、最終
的に移動距離演算手段3aでは、現座標Pnから次座標Pn
+1までの加算距離を√5−1として、始点から現座標Pn
までの累積距離に加算する。この累積距離の加算結果
は、移動距離演算手段3a内のレジスタ等に保持され
て、さらに次の座標Pn+2までの累積距離を演算する際に
用いられる。
は、以下のような計算アルゴリズムを用いて、基準線上
の座標と始点との間の距離の演算を行っている。それ
は、図9に示すように、先ず現座標Pnから次座標Pn+1ま
での暫定移動距離Dnと、前座標Pn-1から現座標Pnまでの
移動距離Dpを認識する(S301)。そして、暫定移動
距離Dnが1であるか否かを判断する(S302)。暫定
移動距離Dnが1であれば、続いて移動距離Dpが√2であ
るか否かを判断する(S303)。移動距離Dpが√2で
なければ、現座標Pnから次座標Pn+1までの加算距離を1
として、始点から現座標Pnまでの累積距離に加算する
(S304)。また、移動距離Dpが√2であれば、現座
標Pnから次座標Pn+1までの加算距離を√5−√2とし
て、始点から現座標Pnまでの累積距離に加算する(S3
05)。
いて移動距離Dpが1であるか否かを判断する(S30
6)。移動距離Dpが1であれば、現座標Pnから次座標Pn
+1までの加算距離を√5−1として、始点から現座標Pn
までの累積距離に加算する(S307)。また、移動距
離Dpが1でなければ、現座標Pnから次座標Pn+1までの加
算距離を√2として、始点から現座標Pnまでの累積距離
に加算する(S308)。
は、太線の描画を行う際に、法線ベクトル生成手段4が
生成した法線ベクトルを、描画する太線の始点と終点と
を結ぶ基準線上の各座標に太線描画手段5が発生させ、
かつ画素抜けを画素抜け判定手段5bにより未然に防ぐ
ことにより、太線の描画を行うようになっている。従っ
て、太線の描画角度がどのような角度であっても、法線
ベクトルの長さを線幅とした太線を始点から終点まで描
画することができる。また、法線ベクトルが基準線上の
座標に発生されるので、太線の描画する際に重複してア
クセスされる画素が無く、太線の描画の高速処理を実現
することができる。さらに、基準線上を走査された座標
より法線ベクトルを生成するので、予め画素パターンを
登録しておく等の煩雑な処理が必要ない。また、描画角
度がどのような角度であっても、太線の線幅及びその端
縁が法線ベクトルによって描画されるので、複雑な処理
やその処理を行うための膨大なメモリ容量を必要としな
い。従って、太線の描画する際の処理時間を従来のもの
に比べて短縮することができる。
が基準線上の座標のy座標の値を基に画素抜けの判定を
行う場合について説明したが、これは描画する太線の描
画角度が水平方向に対して45°以下である場合に適用
するものであって、例えば描画する太線の描画角度が水
平方向に対して45°以上である場合には、基準線上の
座標のx座標の値を基に画素抜けの判定を行わなければ
ならない。つまり、画素抜け判定手段5bでは、太線の
描画角度によって画素抜けの判定を行うためのパラメー
タを可変させる機能を有することにより、全ての描画角
度に対応可能となる。
発明に係わる太線描画装置について説明する。但し、上
述した第1実施例と同一の構成要素については、同一の
符号を付与しその説明を省略する。本実施例の太線描画
装置は、図10に示すように、第1実施例の太線描画装
置加えて、破線初期値認識手段1aと、線分間隔判定手
段3cとが設けられたものである。
段1と同様にキーボードやマウス等の入力装置からなる
もので、描画しようとする太線が破線である場合に、そ
の破線の線分の長さ及び線分間隔を認識するものであ
る。線分間隔判定手段3cは、距離演算手段3に設けら
れたものであり、移動距離演算手段3aでの演算結果に
基づき、破線初期値認識手段1aで認識された破線の線
分間隔に相当する位置の座標には、法線ベクトルを発生
しないように法線ベクトルに基づく描画手段5cに対し
て指示を与えるものである。
線を描画する動作例について、図11を参照して具体的
に説明する。本実施例の太線描画装置では、第1実施例
と同様に、法線ベクトル(図5におけるv0〜v3)を
生成した後に、DDAによる座標発生手段2aが始点a
0と終点j0とを結ぶ基準線上の座標を始点a0から順
に走査し、法線ベクトルに基づく描画手段5cが走査さ
れた座標上に法線ベクトルを発生させる。このとき、線
分間隔判定手段3cでは、破線初期値認識手段1aで認
識された破線の線分の長さ及び線分間隔と、移動距離演
算手段3aでの演算結果とを比較して、DDAによる座
標発生手段2aの走査した座標が、前記破線の線分部分
に位置するか或いは線分間隔に位置するかを判定してい
る。
cでは、座標e0及びf0のように線分間隔判定手段3
cで線分間隔に位置すると判定された座標には、線分間
隔判定手段3cからの指示に従い、法線ベクトルを発生
しない。よって、描画しようとする太線が破線であって
も、破線初期値認識手段1aでの認識と線分間隔判定手
段3cのよる指示に従い、法線ベクトルを活用して所望
する線幅の破線が描画される。
置では、破線初期値認識手段1aでの認識に従い、線分
間隔判定手段3cが破線の線分間隔には法線ベクトルを
発生しないように法線ベクトルに基づく描画手段5cに
指示を与えるので、描画する太線が破線である場合であ
っても、法線ベクトルを活用して破線が描画される。従
って、破線の描画角度がどのような角度であっても、所
望する線幅の破線を始点から終点まで描画することがで
きる。また、破線を描画するための複雑な設定やそれに
伴う煩雑な処理、特に破線の線分の端縁を描画する際に
複雑な処理を必要としないので、描画する太線が破線で
ある場合であっても、容易に対応することができるとい
う効果を奏する。
発明に係わる太線描画装置について説明する。但し、上
述した第1実施例或いは第2実施例と同一の構成要素に
ついては、同一の符号を付与しその説明を省略する。本
実施例の太線描画装置は、図12に示すように、第2実
施例の太線描画装置加えて、連続座標数算出手段5e
と、連続画素描画手段5fとが設けられたものである。
座標発生手段2aにより基準線上の座標が始点から順に
走査され、画素抜け判定手段5bで画素抜けが生じると
判定されるまでに、水平方向に連続する座標、即ち前記
始点とy座標の値が同一である座標が幾つあるかを算出
するものである。連続画素描画手段5fは、法線ベクト
ルに基づく描画手段5cがDDAによる座標発生手段2
aにより走査された座標上に法線ベクトルを発生させる
際に、この法線ベクトルの発生に伴い、水平方向に連続
する画素を連続座標数算出手段5eにより算出された数
だけ一括して発生させるものである。
し、ここでは連続線とする)を描画する動作例につい
て、図13を参照して具体的に説明する。本実施例の太
線描画装置では、第1実施例及び第2実施例と同様に、
法線ベクトル(図5におけるv0〜v3)を生成した後
に、DDAによる座標発生手段2aが始点a0と終点j
0とを結ぶ基準線上の座標を始点a0から順に走査す
る。このとき、DDAによる座標発生手段2aが、座標
d0のように基準線上でy座標の異なる座標を走査する
と、画素抜け判定手段5bでは、画素抜けが生じると判
定される。そして、連続座標数算出手段5eでは、始点
a0から座標d0までの間に始点a0とy座標の値が同
一である座標が、始点a0、座標a01、座標a02の
3つであると算出する。
の同一である座標の数が3つであると算出されると、連
続画素描画手段5fでは、法線ベクトルに基づく描画手
段5cが始点a0上に法線ベクトルa0〜a3を発生さ
せる際に、この法線ベクトルa0〜a3から水平方向に
連続する画素を3つ一括して発生させるように指示を与
える。この連続画素描画手段5fからの指示に従い、法
線ベクトルに基づく描画手段5cでは、始点a0〜座標
a02上に一括して画素を発生させ、続いて座標a1〜
座標a13、座標a2〜座標a23、座標a3〜座標a
33上にそれぞれに一括して画素を発生させる。
に連続する画素を一括して発生させると、次に連続画素
描画手段5fでは、法線ベクトルに基づく描画手段5c
に対して、基準線上でy座標の異なる座標d0上に、始
点a0の場合と同様に法線ベクトルd0〜d3及びこれ
に連続する画素を一括して発生させるように指示を与え
る。但し、このとき画素抜け判定手段5bでは画素抜け
が生じると判定しているので、画素抜けが生じる座標d
3′においては、そこに補充する画素を加えた4画素d
3′〜d33が、法線ベクトルに基づく描画手段5cに
よって一括して発生される。そして、上述の動作を終点
まで繰り返すことにより、法線ベクトルを活用した所望
する線幅の破線が描画される。
は、連続座標数算出手段5eにより基準線上で水平方向
に連続する座標の数が算出され、この算出結果と連続画
素描画手段5fによる指示に従って、この法線ベクトル
と共に水平方向に連続する画素が一括して発生されるよ
うになっている。即ち、太線描画手段5で発生された画
素がフレームメモリ6へ送出される際に、連続座標数算
出手段5eで算出された数の水平方向に連続する画素
が、一括して送出されるようになっている。このとき、
フレームメモリ6では、一般的にその記憶領域内の主走
査方向(水平方向)を走査した後に副走査方向(垂直方
向)を走査して、送出された画素を格納するように構成
されているので、太線描画手段5から水平方向に連続す
る画素を一括して送出することにより、フレームメモリ
6に対する見掛け上のアクセス回数が減り、太線を描画
するために必要な処理時間をより短縮することができる
という効果を奏する。
e及び連続画素描画手段5fが、水平方向に連続する座
標及び画素に対応している場合について説明したが、垂
直方向に連続する場合であっても同様に対応可能であ
る。
画装置は、法線ベクトル生成手段により生成された画素
列(法線ベクトル)を、描画する太線の始点と終点とを
結ぶ直線(基準線)上の各座標に太線描画手段が発生さ
せることにより、太線の描画を行うようになっている。
従って、法線ベクトルの長さを線幅とした太線が始点か
ら終点まで描画されるので、太線の描画角度がどのよう
な角度であっても、所望する線幅を有する太線を得るこ
とができる。また、基準線上の座標に法線ベクトルを発
生することにより太線が描画されるので、太線の描画す
る際に重複してアクセスされる画素が無く、また予め画
素パターンを登録しておく等の煩雑な処理が必要ない。
さらに、太線の線幅及びその端縁が法線ベクトルによっ
て描画されるので、描画角度がどのような角度であって
も、複雑な処理やその処理を行うための膨大なメモリ容
量を必要としない。従って、太線の描画する際の処理時
間を従来のものに比べて短縮することができ、太線の描
画の高速処理を実現できるという効果を奏する。
を示すブロック図である。
太線描画方法を示す説明図である。
成を示すブロック図である。
成の動作例を示すフローチャートである。
成の具体例を示す説明図である。
例を示すフローチャートである。
例を示す説明図である。
図である。
すフローチャートである。
の詳細な構成を示すブロック図である。
具体例を示す説明図である。
の詳細な構成を示すブロック図である。
具体例を示す説明図である。
す説明図である。
Claims (3)
- 【請求項1】 入力された情報から描画する太線の始点
及び終点と該太線の線幅とを認識する初期値認識手段
と、 該初期値認識手段で認識された始点と終点とを結ぶ直線
上の座標を走査する基準線走査手段と、 該基準線走査手段で走査された座標と前記始点との間の
距離を演算する距離演算手段と、 該距離演算手段での演算結果と前記基準線走査手段で走
査された座標とを基に、前記始点と終点とを結ぶ直線に
直交しかつ前記初期値認識手段で認識された太線の線幅
と等しい長さを有する画素列を生成する法線ベクトル生
成手段と、 該法線ベクトル生成手段で生成された画素列を前記基準
線走査手段で走査された座標毎に発生させる太線描画手
段とを備えてなることを特徴とする太線描画装置。 - 【請求項2】 入力された情報から描画する破線の線分
の長さ及び線分間隔を認識する破線初期値認識手段と、 該破線初期値認識手段での認識結果と前記距離演算手段
での演算結果とに基づき、前記線分間隔に相当する位置
に前記画素列を発生しないように前記太線描画手段に指
示を与える線分間隔判定手段とが設けられたことを特徴
とする請求項1記載の太線描画装置。 - 【請求項3】 前記基準線走査手段で走査された座標の
中で水平方向または垂直方向のいずれか一方が連続して
同一である座標の数を算出する連続座標数算出手段と、 該連続座標数算出手段により算出された座標の数でかつ
該座標が連続する方向に、前記画素列に伴って新たに画
素を一括して発生するように前記太線描画手段に指示を
与える連続画素描画手段が設けられたことを特徴とする
請求項1または2記載の太線描画装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8243295A JP3731221B2 (ja) | 1995-04-07 | 1995-04-07 | 太線描画装置および太線描画方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8243295A JP3731221B2 (ja) | 1995-04-07 | 1995-04-07 | 太線描画装置および太線描画方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08279038A true JPH08279038A (ja) | 1996-10-22 |
JP3731221B2 JP3731221B2 (ja) | 2006-01-05 |
Family
ID=13774407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8243295A Expired - Fee Related JP3731221B2 (ja) | 1995-04-07 | 1995-04-07 | 太線描画装置および太線描画方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3731221B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006132112A1 (ja) | 2005-06-06 | 2006-12-14 | Matsushita Electric Industrial Co., Ltd. | 曲線描画装置、曲線描画方法、駐車支援装置及び車両 |
WO2012165238A1 (ja) | 2011-05-30 | 2012-12-06 | アイシン精機株式会社 | 描画装置、描画方法及びプログラム |
US8581948B2 (en) | 2009-05-15 | 2013-11-12 | Ricoh Company, Ltd. | Information processing apparatus, laser radiation device, render information generating method, control system, recording medium, and render information storage device |
-
1995
- 1995-04-07 JP JP8243295A patent/JP3731221B2/ja not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006132112A1 (ja) | 2005-06-06 | 2006-12-14 | Matsushita Electric Industrial Co., Ltd. | 曲線描画装置、曲線描画方法、駐車支援装置及び車両 |
US8581948B2 (en) | 2009-05-15 | 2013-11-12 | Ricoh Company, Ltd. | Information processing apparatus, laser radiation device, render information generating method, control system, recording medium, and render information storage device |
WO2012165238A1 (ja) | 2011-05-30 | 2012-12-06 | アイシン精機株式会社 | 描画装置、描画方法及びプログラム |
CN103562965A (zh) * | 2011-05-30 | 2014-02-05 | 爱信精机株式会社 | 描画装置、描画方法及程序 |
JPWO2012165238A1 (ja) * | 2011-05-30 | 2015-02-23 | アイシン精機株式会社 | 描画装置、描画方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP3731221B2 (ja) | 2006-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2612260B2 (ja) | テクスチヤマツピング装置 | |
JP3238580B2 (ja) | 太め細め文字生成装置 | |
JP4998386B2 (ja) | ライン描画方法 | |
JPH08279038A (ja) | 太線描画装置 | |
JP2876942B2 (ja) | データ変換装置 | |
JP2634851B2 (ja) | 画像処理装置 | |
JP3060761B2 (ja) | 描画装置 | |
JP3264619B2 (ja) | 画像処理装置および方法 | |
US8605112B2 (en) | Graphics drawing apparatus, method, and program and recording medium on which the program is recorded | |
JPH11175740A (ja) | 太線描画方法および装置 | |
JP2007199385A (ja) | プリント配線基板用描画装置 | |
JP3791203B2 (ja) | 画像処理装置 | |
JP3039015B2 (ja) | 文字処理装置 | |
JPH09270018A (ja) | 図形描画装置 | |
JP2768370B2 (ja) | 図形描画方法 | |
JP2000338959A (ja) | 画像処理装置 | |
JP3191409B2 (ja) | フォントデータ生成装置 | |
JPH0689346A (ja) | 画像発生装置 | |
JP3498478B2 (ja) | 図形描画装置 | |
JP3496381B2 (ja) | 線分描画装置 | |
JPH07140964A (ja) | 画像表示装置 | |
JP2856136B2 (ja) | 印刷装置 | |
JPH0896148A (ja) | 図形描画装置 | |
JPH0793570A (ja) | 閉図形塗りつぶし方法 | |
JPH05242235A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040602 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040615 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040816 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050221 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050920 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051003 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091021 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101021 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101021 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111021 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |