JPH0423179A - Method and device for plotting thick line - Google Patents
Method and device for plotting thick lineInfo
- Publication number
- JPH0423179A JPH0423179A JP12890890A JP12890890A JPH0423179A JP H0423179 A JPH0423179 A JP H0423179A JP 12890890 A JP12890890 A JP 12890890A JP 12890890 A JP12890890 A JP 12890890A JP H0423179 A JPH0423179 A JP H0423179A
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- end point
- line segment
- rectangular
- line
- 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
- 238000000034 method Methods 0.000 title claims description 42
- 238000012937 correction Methods 0.000 claims description 5
- 238000005429 filling process Methods 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims 1
- 238000010422 painting Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 238000012546 transfer Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
Description
【発明の詳細な説明】
〔目 次〕
〔概 要〕
〔産業上の利用分野〕
〔従来の技術〕
従来の太線描画方式3例を示す図(第7図)〔発明が解
決しようとする課題〕
〔課題を解決するための手段〕
本発明の原理ブロック図(第1図)
〔作 用〕
〔実施例〕
本発明の一実施例を示す図(第2図)
本発明の処理フローを示す図(第3図)端点形状パター
ンの例を示す図(第4図)端点形状パターン登録テーブ
ルを示す図(第5図)
本発明による太線描画例の説明図(第6図)〔発明の効
果〕
〔概 要]
端点形状パターンと、矩形塗り潰しパターンとを用いる
太線描画方法及びその装置に関し、安価なハードウェア
で、単純なソフトウェアで太線を高速に描画することを
目的とし、描画しようとする線分の始点を端点形状パタ
ーンで塗り潰し、線分の始点から該線分の終点までの線
分領域内の塗り潰しに際して、端点形状パターン及び線
分領域によって決まる塗り潰し進み量毎に端点形状パタ
ーン及び線分領域によって決まる矩形塗り潰しパターン
を決定し、決定された矩形塗り潰しパターンで線分領域
を塗り潰し、その塗り潰し処理が線分の終点に達したと
き該終点を端点形状パターンで塗り潰して構成し、又フ
レームメモリと、端点形状パターンを格納するパターン
メモリと、ビットムーバと、太線描画制御手段とを有し
、太線描画制御手段は、端点描画手段と、初期設定手段
と、判定手段と、描画判定手段と、矩形パターン描画手
段と、開始点移動手段と、修正手段とで構成した。[Detailed Description of the Invention] [Table of Contents] [Summary] [Field of Industrial Application] [Prior Art] Diagram showing three examples of conventional thick line drawing methods (Fig. 7) [Problems to be Solved by the Invention] ] [Means for Solving the Problems] Principle block diagram of the present invention (Figure 1) [Operation] [Example] Diagram showing an embodiment of the present invention (Figure 2) Showing the processing flow of the present invention (Fig. 3) A diagram showing an example of an end point shape pattern (Fig. 4) A diagram showing an end point shape pattern registration table (Fig. 5) An explanatory diagram of an example of thick line drawing according to the present invention (Fig. 6) [Effects of the invention ] [Summary] The purpose of this paper is to draw thick lines at high speed using inexpensive hardware and simple software, regarding a thick line drawing method and device using an endpoint shape pattern and a rectangular fill pattern. When filling in the line segment area from the start point of the line segment to the end point of the line segment, the end point shape pattern and the line segment are filled in for each filling advance amount determined by the end point shape pattern and the line segment area. A rectangular filling pattern determined by the area is determined, the line segment area is filled with the determined rectangular filling pattern, and when the filling process reaches the end point of the line segment, the end point is filled with the end point shape pattern. , a pattern memory for storing an end point shape pattern, a bit mover, and a thick line drawing control means, the thick line drawing control means having an end point drawing means, an initial setting means, a determining means, a drawing determining means, It consists of a rectangular pattern drawing means, a starting point moving means, and a modifying means.
本発明は、端点形状パターンと、該端点形状パターン及
び塗り潰し対象線分領域に依存する矩形塗り潰しパター
ンとを用いる太線描画方法及びその装置に関する。The present invention relates to a thick line drawing method and apparatus using an end point shape pattern and a rectangular filling pattern depending on the end point shape pattern and a line segment area to be filled.
近年、表示装置の高解像度化が進められ、それに伴って
、1ドツト線幅の線分のみならず、太線をも描画したい
という要求がある。例えば、計算機を使用した設計シス
テム(CADシステム)や、編集印刷システム(DTP
システム)等では、太線の高速な描画への要求が高い。In recent years, the resolution of display devices has been increasing, and along with this, there is a demand for drawing not only line segments with a line width of one dot but also thick lines. For example, design systems using computers (CAD systems), editing and printing systems (DTP),
systems), there is a high demand for high-speed drawing of thick lines.
〔従来の技術]
従来の太線描画装置としては、幾つかの技法がある。そ
のいずれの太線描画装置による太線の描画も、描画した
い太線の一方の端点から他方の端点まで端点形状パター
ンを移動させたときの軌跡として定義される太線の描画
である。[Prior Art] There are several techniques for conventional thick line drawing devices. The drawing of a thick line by any of these thick line drawing devices is defined as a locus when an end point shape pattern is moved from one end point to the other end point of the thick line to be drawn.
従来の太線描画方式の第1の方式を第7図(A)を参照
して以下に説明する。この第1の方式は、描画しようと
する線分についての端点形状パターン始点内の中心及び
端点形状パターン終点内の中心とを結ぶ線幅1ドツト線
の各ドツトの位置(第7図(A)の★を参照されたい。A first conventional thick line drawing method will be described below with reference to FIG. 7(A). This first method is based on the position of each dot of a 1-dot line connecting the center of the starting point of the end point shape pattern and the center of the end point of the end point shape pattern for the line segment to be drawn (see Fig. Please refer to ★.
)を公知のDDAアルゴリズムによって求めつつ、その
各ドツト位置において端点形状パターンの描画を行なう
ことで(フレームメモリ内の前記求められたドツトを中
心として前記端点形状パターンが占める各ビットに例え
ば、“1″のビットを立てる処理)、画きたい太線を描
画するものであるが、その順次の端点形状パターンの移
動を為すのにビットムーバを用いる。このビットムーバ
は、プロセッサによってフレームメモリ内の前記線幅1
ドツト線の各ドツト毎に順次に前述の端点形状パターン
を移動させるのに用いられる機構である。第2の方式は
、描画しようとする線分の始点に置かれた形状パターン
内の各ドツトと、その終点に置かれた形状パターン内の
各ドツト(前記始点に置かれた形状パターン内の各ドツ
トに対応するドツト)(第7図CB)の★を参照された
い。)とを線幅1ドツト線で結ぶように各ドツト始点と
これに対応するドツト終点との間を線幅1ドツト線で塗
り潰す処理(フレームメモリ内の対応する各ビットに例
えば、°“1”のビットを立てる処理)(第7図(B)
の・の点列を参照されたい。)を、直線発生機構(ベク
タジェネレータ)によって前記対応するドツトのすべて
に対して行なうことで、画きたい太線を描画するもので
ある。第3の方式は、画きたい太線を一般的な多角形と
みなし、該太線の輪郭を求めた後に、求められた多角形
輪郭内の水平方向端点間(第7図(C)の★を参照され
たい。)を線幅1ドツト線で順次に塗り潰して行くこと
で(第7図(C)の・の点列を参照されたい。) by a well-known DDA algorithm, and by drawing an endpoint shape pattern at each dot position (for example, "1" is written in each bit occupied by the endpoint shape pattern centered on the determined dot in the frame memory) The process of setting the bit ``) is to draw the thick line you want to draw, and a bit mover is used to sequentially move the end point shape pattern. This bit mover is used by the processor to store the linewidth 1 in the frame memory.
This is a mechanism used to sequentially move the aforementioned end point shape pattern for each dot of the dot line. The second method is to draw each dot in the shape pattern placed at the starting point of the line segment to be drawn, and each dot in the shape pattern placed at the end point (each dot in the shape pattern placed at the starting point). Please refer to the ★ in the dot corresponding to the dot (Figure 7 CB). ) is filled with a 1-dot line between each dot start point and its corresponding dot end point (for example, by filling in each corresponding bit in the frame memory with a 1-dot line). ” bit setting) (Figure 7 (B)
Please refer to the point sequence of and. ) is applied to all of the corresponding dots using a straight line generation mechanism (vector generator), thereby drawing the thick line that is desired. The third method regards the thick line you want to draw as a general polygon, calculates the outline of the thick line, and then calculates the distance between the horizontal end points within the calculated polygonal outline (see ★ in Figure 7 (C)). ) by sequentially filling in the lines with a line width of 1 dot (see the dot sequence . in FIG. 7(C)).
)、画きたい太線を描画するものである。この第3の方
式では、多角形面塗り機構(ポリゴンプロセッサ)を用
いる。), to draw the thick line you want. This third method uses a polygon surface painting mechanism (polygon processor).
前述の第1及び第2の方式は、比較的単純安価で、−船
釣なハードウェアを用い得る利点はあるが、第1の方式
では、同一ドツトを何度も描画する(フレームメモリに
上書きする)ので、その処理に無駄な時間を要し、高速
化を阻害する要因となっている。前記第2の方式は、同
一ド・ントの上書き回数を減らすことは出来るが、フレ
ームメモリへの書き込みが1ドツト単位であるため、そ
れによる処理時間の長時間化を招来し、処理の高速化を
阻んでいる。第3の方式は、同一ド・ントの上書きを完
全に除くことは出来るが、それとは引き換えにアルゴリ
ズムの複雑化、従ってそのアルゴリズムを実行するプロ
セッサの処理負担が増大する。これは、描画に要する時
間が長くなり、これ又処理の高速化の障害となる。これ
を回避する手段として、ポリゴンプロセッサと言う専用
プロセッサで描画の高速化を達成することは出来るが、
それには、高価なポリゴンプロセッサを使用しなければ
ならない。The first and second methods described above have the advantage of being relatively simple and inexpensive and can use simple hardware; however, the first method draws the same dot many times (overwriting the frame memory). ), this processing requires wasted time and is a factor that hinders speeding up. The second method described above can reduce the number of times the same dot is overwritten, but since writing to the frame memory is done in units of one dot, this increases the processing time, making it difficult to speed up the processing. is preventing The third method can completely eliminate overwriting of the same dot, but at the cost of complicating the algorithm and therefore increasing the processing load on the processor that executes the algorithm. This increases the time required for drawing, which also becomes an obstacle to speeding up the processing. As a way to avoid this, it is possible to speed up drawing using a dedicated processor called a polygon processor.
This requires the use of expensive polygon processors.
本発明は、斯かる問題点に鑑みて創作されたもので、安
価なハードウェアで、単純なソフトウェアで太線を高速
に描画し得る太線描画方法及びその装置を徒供すること
をその目的とする。The present invention was created in view of the above problems, and an object of the present invention is to provide a thick line drawing method and apparatus capable of drawing thick lines at high speed using inexpensive hardware and simple software.
本発明の第1の発明は、描画しようとする線分の始点を
端点形状パターンで塗り潰し、前記線分の始点から該線
分の終点までの線分領域内の塗り潰しに際して、前記端
点形状パターン及び線分領域によって決まる塗り潰し進
み量毎に前記端点形状パターン及び線分領域によって決
まる矩形塗り潰しパターンを決定し、該決定された矩形
塗り潰しパターンで前記線分領域を塗り潰し、その塗り
潰し処理が前記線分の終点に達したとき該終点を端点形
状パターンで塗りようにして構成される。A first aspect of the present invention is to fill in the starting point of a line segment to be drawn with an end point shape pattern, and when filling in the line segment area from the starting point of the line segment to the end point of the line segment, the end point shape pattern and A rectangular filling pattern determined by the end point shape pattern and the line segment area is determined for each filling advance amount determined by the line segment area, and the line segment area is filled with the determined rectangular filling pattern, and the filling process is performed on the line segment. When the end point is reached, the end point is painted with an end point shape pattern.
第2の発明は、第1図の原理ブロック図に示すように、
フレームメモリ2と、端点形状パターンを格納するパタ
ーンメモリ4と、ビットムーバ6と、DDA方式で線分
の描画を前記フレームメモリ2に行なう太線描画制御手
段8とを有して構成され、その太線描画制御手段8は、
前記ビットムーバ6を起動して前記線分の始点及び終点
に前記端点形状パターンを描画する端点描画手段10と
、矩形パターンによる塗り潰しの初期設定を行なう初期
設定手段11と、前記線分の始点及び終点の間の線分領
域の描画中であることを判定する判定手段12と、矩形
塗り潰しパターンの描画開始点での矩形塗り潰しパター
ン描画の可否を判定する描画判定手段14と、描画可の
とき前記ビットムーバ6を起動して前記端点形状パター
ン及び線分領域によって決まる矩形塗り潰しパターンで
前記線分領域を描画する矩形パターン描画手段16と、
描画不可のとき、前記描画開始点から前記端点形状パタ
ーン及び線分領域によって決まる値だけ描画開始点を進
める開始点移動手段18と、前記描画判定手段工4によ
るいずれの判定においても、DDA方式での誤差項の修
正を行なう修正手段20とで構成される。The second invention, as shown in the principle block diagram of FIG.
It comprises a frame memory 2, a pattern memory 4 for storing an end point shape pattern, a bit mover 6, and a thick line drawing control means 8 for drawing line segments in the frame memory 2 using the DDA method. The drawing control means 8
An end point drawing means 10 that activates the bit mover 6 to draw the end point shape pattern at the starting point and end point of the line segment, an initial setting means 11 that initializes filling with a rectangular pattern, and a determining means 12 for determining whether a line segment area between end points is being drawn; a drawing determining means 14 for determining whether or not a rectangular fill pattern can be drawn at the drawing start point of a rectangular fill pattern; a rectangular pattern drawing means 16 that starts the bit mover 6 and draws the line segment area in a rectangular filling pattern determined by the end point shape pattern and the line segment area;
When drawing is not possible, both the starting point moving means 18 which advances the drawing starting point from the drawing starting point by a value determined by the end point shape pattern and the line segment area and the drawing determining means 4 use the DDA method. and a correction means 20 for correcting the error term.
[作 用〕
本発明において、太線の描画処理が開始されると、その
太線の始点において端点描画手段10によってパターン
メモリ4から読み出された端点形状パターンの描画が為
される。その終了時に、矩形パターンにより塗り潰しの
初期設定を初期設定手段11によって行なう。[Operation] In the present invention, when the thick line drawing process is started, the end point drawing means 10 draws the end point shape pattern read from the pattern memory 4 at the starting point of the thick line. At the end of the process, initial setting means 11 performs initial setting for filling with a rectangular pattern.
そして、前記太線の始点とその終点との間の線分領域の
描画に入ったことが、判定手段12によって判定される
と、描画判定手段14による描画可の判定においては修
正手段20によりDDA方式での誤差項の修正を行なっ
て矩形パターン描画手段16による矩形塗り潰しパター
ンでの線分領域の描画を順次に続けて行く。この描画を
行なうのに、従来のような端点形状パターンの転送を要
しないし、その矩形塗り潰しパターンの生成に要するハ
ードウェアは、簡易で足りる。その順次の描画毎の描画
判定手段14による描画可否の判定において、描画不可
の判定が出たときには、開始点移動手段18によってそ
のときの描画開始点を、前記描画開始点から前記端点形
状パターン及び線分領域によって決まる値だけ描画開始
点を進める。When the determining means 12 determines that the drawing of the line segment area between the starting point and the ending point of the thick line has started, the modifying means 20 uses the DDA method when the drawing determining means 14 determines whether drawing is possible. After correcting the error term in step 1, the rectangular pattern drawing means 16 continues sequentially drawing the line segment area in a rectangular filled pattern. To perform this drawing, it is not necessary to transfer the end point shape pattern as in the conventional method, and the hardware required to generate the rectangular filling pattern is simple. When the drawing determining means 14 determines whether or not drawing is possible for each sequential drawing, if it is determined that drawing is not possible, the starting point moving means 18 moves the current drawing starting point from the drawing starting point to the end point shape pattern and Advances the drawing start point by the value determined by the line segment area.
このときにも、DDA方式での誤差項の修正を修正手段
20によって行なう。この修正により、再び、描画判定
手段14から描画可の判定が出たときには、前述と同様
にして、矩形パターン描画手段16による矩形塗り潰し
パターンでの線分領域の描画を行なう。Also at this time, the correction means 20 corrects the error term using the DDA method. As a result of this correction, when the drawing determination means 14 again determines that drawing is possible, the rectangular pattern drawing means 16 draws the line segment area in a rectangular filled pattern in the same manner as described above.
そして、前記線分領域の矩形塗り潰しパターンによる塗
り潰しの終了となるとき、該線分の終点について、その
始点の時と同様にして、該終点についても、端点形状パ
ターンの描画を行なう。When the filling of the line segment area with the rectangular filling pattern is completed, an end point shape pattern is drawn for the end point of the line segment in the same manner as for the starting point.
このように、描画しようとする太線の始点とその終点と
の間の線分領域を、前記端点形状パターンの転送を要せ
ず、前述のようにして決定され、高速描画の可能な矩形
塗り潰しパターンで順次に塗り潰して行くので、太線の
描画を高速に行なうことが出来る。この処理を行なうの
に、複雑なハードウェアを必要としない。In this way, the line segment area between the start point and the end point of the thick line to be drawn is determined as described above without the need to transfer the end point shape pattern, and the rectangular filling pattern that enables high-speed drawing is used. Since the lines are filled in sequentially, thick lines can be drawn at high speed. No complex hardware is required to perform this process.
第2図は本発明の一実施例を示す。この図は、本発明を
実施する大線描函装置を示す。30はCPU、32はバ
ス、34はメモリ、36はビットムーバ、38はパター
ンメモリ、40はフレームメモリ(画面メモリ)、42
はCRTコントローラ、44はCRTデイスプレィ装置
である。そのメモリ34には、第3図に示す処理フロー
を実行するプログラムが格納される。ビットムーバ36
には、モードレジスタ50、塗り潰し開始位置レジスタ
52、端点形状パターン転送元レジスタ54、サイズレ
ジスタ56を有する。パターンメモU 38は、端点形
状パターンを格納する。端点形状パターンの格納形式は
、本発明においては特定の形式である必要はなく、予め
格納されているものであっても、又必要に応じて格納さ
れるものであってもよい。これに加えて、後述するとこ
ろからも明らかなように、格納される端点形状パターン
についての第4図に示す各寸法A、B、C,D。FIG. 2 shows an embodiment of the invention. This figure shows a large line drawing device implementing the present invention. 30 is a CPU, 32 is a bus, 34 is a memory, 36 is a bit mover, 38 is a pattern memory, 40 is a frame memory (screen memory), 42
is a CRT controller, and 44 is a CRT display device. The memory 34 stores a program that executes the processing flow shown in FIG. bit mover 36
has a mode register 50, a fill start position register 52, an end point shape pattern transfer source register 54, and a size register 56. The pattern memo U 38 stores end point shape patterns. In the present invention, the storage format of the end point shape pattern does not need to be a specific format, and may be stored in advance or stored as necessary. In addition, as will be clear from what will be described later, the dimensions A, B, C, and D shown in FIG. 4 for the end point shape pattern to be stored.
Wを、第5図に示すように各端点形状パターンで索引し
得るテーブル形式でメモリ34内に格納している。モー
ドレジスタ50は、パターン転送モードと、矩形塗り潰
しモードとを切り替えるのに用いられる。塗り潰し開始
位置レジスタ52は、フレームメモリ40上の転送開始
位置、又は矩形塗り潰し開始位置を指定する。端点形状
パターン転送元レジスタ54は、パターン転送モードに
おいて、パターンメモリ38に格納されている端点形状
パターンの転送開始位置を指定する。前記塗り潰し開始
位置レジスタ52、及び端点形状パターン転送元レジス
タ54には、二次元の座標位置がセットされる。サイズ
レジスタ56は、端点形状パターン、又は塗り潰し矩形
領域の大きさを指定する。サイズレジスタ56には、幅
及び高さがセットされる。W is stored in the memory 34 in a table format that can be indexed by each endpoint shape pattern as shown in FIG. Mode register 50 is used to switch between pattern transfer mode and rectangle filling mode. The filling start position register 52 specifies the transfer start position on the frame memory 40 or the rectangle filling start position. The endpoint shape pattern transfer source register 54 specifies the transfer start position of the endpoint shape pattern stored in the pattern memory 38 in the pattern transfer mode. Two-dimensional coordinate positions are set in the filling start position register 52 and end point shape pattern transfer source register 54. The size register 56 specifies the size of the end point shape pattern or the filled rectangular area. The width and height are set in the size register 56.
第2図乃至第3図において、フレームメモリ40は、第
1図のフレームメモリ2に対応し、パタ−ンメモリ38
は、第1図のパターンメモリ4に対応する。ビットムー
バ6は、第1図のビットムーバ36に対応する。CPU
30、バス32、ビットムーバ36、メモリ34に格納
された第3図のステップSl、32,316を実行する
プログラムは、第1図の端点描画手段10に対応し、C
PU30、バス32、メモリ34に格納される第3図の
ステップ33.S4を実行するプログラムは、第1図の
初期設定手段11に対応する。CPU30、バス32、
メモリ34に格納された第3図のステップS5.S6を
実行するプログラムは、第1図の判定手段12に対応す
る。CPU30、バス32、メモリ34に格納された第
3図のステップS7を実行するプログラムは、第1図の
描画判定手段14に対応し、CPU30、バス32、ビ
ットムーバ36、メモリ34に格納された第3図のステ
ップ39,514を実行するプログラムは、第1図の矩
形パターン描画手段16に対応する。CPU30、バス
32、メモリ34に格納された第3図のステップSI0
,311,313を実行するプログラムは、第1図の開
始点移動手段18に対応し、CPU30、バス32、メ
モリ34に格納された第3図のステップS8.S12を
実行するプログラムは、第1図の修正手段20に対応す
る。In FIGS. 2 and 3, frame memory 40 corresponds to frame memory 2 in FIG.
corresponds to the pattern memory 4 in FIG. Bit mover 6 corresponds to bit mover 36 in FIG. CPU
30, the bus 32, the bit mover 36, and the program for executing steps Sl, 32, and 316 in FIG. 3 stored in the memory 34 correspond to the end point drawing means 10 in FIG.
Step 33 of FIG. 3 is stored in the PU 30, bus 32, and memory 34. The program that executes S4 corresponds to the initial setting means 11 in FIG. CPU30, bus 32,
Step S5. of FIG. 3 stored in memory 34. The program that executes S6 corresponds to the determination means 12 in FIG. The program for executing step S7 in FIG. 3 stored in the CPU 30, bus 32, and memory 34 corresponds to the drawing determination means 14 in FIG. The program that executes steps 39 and 514 in FIG. 3 corresponds to the rectangular pattern drawing means 16 in FIG. Step SI0 in FIG. 3 stored in the CPU 30, bus 32, and memory 34
, 311, 313 corresponds to the starting point moving means 18 in FIG. The program that executes S12 corresponds to the modification means 20 in FIG.
前記構成の本発明装置の動作を以下に説明する。The operation of the apparatus of the present invention having the above configuration will be explained below.
本発明装置が動作状態に入った後に、太線描画に際して
その太線描画に用いられる端点形状パターン、並びにそ
の太線の描画始点及び描画終点が指定されると、その描
画始点の各座標成分xs。After the apparatus of the present invention enters the operating state, when drawing a thick line, when the end point shape pattern used for drawing the thick line and the drawing start point and drawing end point of the thick line are specified, each coordinate component xs of the drawing start point is specified.
ysから前記指定された端点形状パターンの寸法値A、
Bを対応する座標成分から差引いた値の各々を太線の描
画始点x、yとしてメモリ34に格納する(第3図のS
1参照)。ビットムーバで用いられる描画始点は、一般
にパターンの左上としていることによる。又、この描画
例は、第6図のものであるとし、従って、x、−X、≧
’!a Y、≧0にある。この関係は、描画する太線
によって変わる。ys to the dimension value A of the specified end point shape pattern,
The values obtained by subtracting B from the corresponding coordinate components are stored in the memory 34 as the drawing start points x and y of the thick line (S in Fig. 3).
(see 1). This is because the drawing start point used in the bit mover is generally at the upper left of the pattern. Also, assume that this drawing example is the one in FIG. 6, and therefore x, -X, ≧
'! a Y, ≧0. This relationship changes depending on the thick line drawn.
そして、ビットムーバを起動する。この起動は、モード
レジスタ50にパターン転送モードを設定し、塗り潰し
開始位置レジスタ52に前記太線の描画始点x、 y
を設定し、端点形状パターン転送元レジスタ54にパタ
ーンメモリ38に格納されている端点形状パターンの左
上の座標、並びにサイズレジスタ56をサイズの幅、高
さ及び線幅を設定して為される。これにより、前記太線
の描画始点x、yを端点形状パターンの中心とした端点
形状パターン(第6図の(1)参照)の描画が行なわれ
る。Then start Bitmover. This activation sets the pattern transfer mode in the mode register 50, and sets the drawing start point x, y of the thick line in the filling start position register 52.
This is done by setting the upper left coordinates of the end point shape pattern stored in the pattern memory 38 in the end point shape pattern transfer source register 54, and setting the width, height, and line width of the size in the size register 56. As a result, an end point shape pattern (see (1) in FIG. 6) is drawn with the thick line drawing start points x and y as the center of the end point shape pattern.
この描画された端点形状パターンから前記太線の描画終
点までの太線領域間を以下に述べるような決定法によっ
て決まる矩形パターンで順次に前記太線領域を描画して
行く。The thick line areas are sequentially drawn in a rectangular pattern determined by the determination method described below between the drawn end point shape pattern and the drawing end point of the thick line.
先ず、従来のDDAアルゴリズムで用いられる各パラメ
ータを求める。これらのパラメータは、前記太線の描画
始点から描画終点までの各座標成分dx=xe−xs、
dy=ye−ys、DDAの決定変数若しくは誤差項d
=2Xdy−dx、ループカウンタ1=dxである(第
3図のS3参照)。そして、最初に描画しようとする矩
形パターンの左上の座標を求める。この座標は、前記X
に端点形状パターンで決まる値Cを加算してそれを新た
なXとし、該Xをxpとし、前記yをypとすることで
求められる。この最初の描画矩形パターンについての描
画に入るのに先立って、矩形パターンによる描画継続を
要するか否かの判定を行なう(第3図の85、S6参照
)。この判定において、ループカウンタlが0よりも小
さく、しかも誤差項dもOよりも小さくないならば(第
3図の36.S7のN参照)、次のようにして前記最初
の矩形パターンの描画処理を行なう。d+2X (dy
−dx)を新たな誤差項dとして格納した後(第3図の
38参照)、ビットムーバ36の起動を行なうことで、
前述のステップS2で述べたと同様にして、最初の矩形
パターン(第6図の(2)参照)が描画される。つまり
、モードレジスタ50に矩形パターン塗り潰しモードを
設定し、塗り潰し開始位置レジスタ52に前記矩形パタ
ーンの左上の座標(xp、yp)を設定し、そしてすイ
ズレジスタ56に座標(χ−xp+D、W)を設定して
為される。但し、D、Wは、前述した端点形状パターン
の中の多値(第4図参照)である。First, each parameter used in the conventional DDA algorithm is determined. These parameters are each coordinate component dx=xe-xs from the drawing start point to the drawing end point of the thick line,
dy=ye-ys, DDA decision variable or error term d
=2Xdy-dx, loop counter 1=dx (see S3 in FIG. 3). Then, first find the upper left coordinates of the rectangular pattern to be drawn. This coordinate is
It can be obtained by adding a value C determined by the end point shape pattern to and setting it as a new X, setting this X as xp, and setting the above y as yp. Prior to starting the drawing of this first drawn rectangular pattern, it is determined whether or not it is necessary to continue drawing the rectangular pattern (see 85 and S6 in FIG. 3). In this judgment, if the loop counter l is smaller than 0 and the error term d is also not smaller than O (see 36.S7 N in Figure 3), then the first rectangular pattern is drawn as follows. Process. d+2X (dy
-dx) as a new error term d (see 38 in FIG. 3), by starting the bit mover 36,
The first rectangular pattern (see (2) in FIG. 6) is drawn in the same manner as described in step S2 above. That is, set the rectangular pattern filling mode in the mode register 50, set the upper left coordinates (xp, yp) of the rectangular pattern in the filling start position register 52, and set the coordinates (χ-xp+D, W) in the size register 56. This is done by setting the . However, D and W are multi-values (see FIG. 4) in the end point shape pattern described above.
この最初の矩形パターンの描画処理終了後に、前記x、
y(第3図の54でのx、y参照)にそれぞれ1を加算
しく第3図のS10参照)、その新たなx、yを、次に
描画しようとする矩形パターンの左上の座標(χp、y
p)として格納して(第3図のSll参照)該次に描画
しようとする矩形パターンの描画に入る前に、前記最初
の矩形パターンの描画処理に入るに先立って行なったと
同様の判定処理を行なう(第3図の36.S7参照)。After the drawing process of this first rectangular pattern is completed, the x,
Add 1 to each of y (see x, y at 54 in Fig. 3) (see S10 in Fig. 3), and convert the new x, y to the upper left coordinates (χp ,y
p) (see Sll in FIG. 3), and before starting the drawing of the rectangular pattern to be drawn next, the same judgment process as that performed before starting the drawing process of the first rectangular pattern is performed. (See 36.S7 in Figure 3).
この判定において、前記最初の矩形パターンの描画処理
と同様の処理条件が生ずるならば(第3図の36,37
のN参照)、前記最初の矩形パターンの描画処理と、同
様の矩形パターン(例えば、第6図の(3)参照)の描
画処理を行なう。In this determination, if the same processing conditions as the first rectangular pattern drawing processing occur (36, 37 in FIG.
(see N in FIG. 6), the drawing process for the first rectangular pattern and the drawing process for a similar rectangular pattern (for example, see (3) in FIG. 6).
前記最初の矩形パターンの描画処理と同様の処理条件が
生じないならば(第3図のS6のN、 S7のY参照
)、新たな誤差項d=d+2XdV、及び座標成分x=
x+1を求めて(第3図の812.313参照)この新
たな誤差項dを用いての前記判定に入る。ここでの座標
成分x=x+1の算定処理は、水平方向においてドツト
が連続している間繰り返される処理である。太線が第6
図と異なって来ると、他の算定処理となる。If the same processing conditions as the first rectangular pattern drawing process do not occur (see N in S6 and Y in S7 in FIG. 3), a new error term d=d+2XdV and a coordinate component x=
x+1 is found (see 812.313 in FIG. 3) and the judgment using this new error term d is performed. The process of calculating the coordinate component x=x+1 here is a process that is repeated while the dots are continuous in the horizontal direction. The thick line is the 6th
If it differs from the diagram, other calculation processing will be required.
このような処理を繰り返して行くと、再び前記最初の矩
形パターンの描画処理と同様の処理条件が住するならば
(第3図の56.S7のN参照)、前記最初の矩形パタ
ーンの描画処理と、同様の矩形パターンの描画処理を行
なう。When such processing is repeated, if the same processing conditions as the first rectangular pattern drawing process exist again (see 56.S7 N in FIG. 3), the first rectangular pattern drawing process A similar rectangular pattern drawing process is performed.
前述のところから明らかなように、本発明により描画さ
れる矩形パターンの幅は、DDAアルゴリズムにより決
定される水平方向において連続するドツト列の区間の長
さによって決まる。As is clear from the foregoing, the width of the rectangular pattern drawn according to the present invention is determined by the length of the section of consecutive dot rows in the horizontal direction determined by the DDA algorithm.
前述の判定において、ループカウンタ2が0よりも小さ
くなったとき(第3図の56のY参照)、前記線分領域
を塗り潰す最後の矩形パターンによる描画処理に入る(
第3図の314、例えば第6図の(4)参照)。その描
画処理は、前記線分領域の塗り潰し処理と同じ処理であ
る。In the above judgment, when the loop counter 2 becomes smaller than 0 (see 56 Y in FIG. 3), drawing processing is started using the final rectangular pattern to fill the line segment area (
314 in FIG. 3, see (4) in FIG. 6, for example). The drawing process is the same as the filling process of the line segment area.
この最後の矩形パターンによる描画処理が終了した後に
、次のようにして端点形状パターンの左上の座標を求め
る。座標成分x=x−Cを求めて格納する(第3図の3
15参照)。こうして該太線の描画開始において、ステ
ップS2においてビットムーバ36を起動して太線の描
画始点Xs+y、を端点形状パターンの中心とした端点
形状パターンを描画したと同様に、前記終点の中心を端
点形状パターンの中心とした端点形状パターンの描画が
行なわれる(第3図の516、第6図の(4)参照)。After the drawing process using the last rectangular pattern is completed, the upper left coordinates of the end point shape pattern are determined as follows. Find and store the coordinate component x=x−C (3 in Figure 3).
15). In this way, at the start of drawing the thick line, the bit mover 36 is activated in step S2 to draw an end point shape pattern with the end point shape pattern centered at the drawing start point Xs+y of the thick line. An end point shape pattern centered at the center is drawn (see 516 in FIG. 3 and (4) in FIG. 6).
〔発明の効果]
以上述べたところから明らかなように本発明によれば、
太線の始点と終点との間の線分領域の描画を、従来のよ
うな転送される端点形状パターンによる描画でなく、該
端点形状パターンと描画線分領域とによって生成される
矩形塗り潰しパターンで塗り潰して行くので、複雑なハ
ードウェアを要することなしに、太線の描画を高速に行
なうことが出来る。加えて、必要となるソフトウェアの
複雑化を回避し得て、プロセッサに掛かる負担の軽減と
なる。[Effects of the Invention] As is clear from the above, according to the present invention,
The line segment area between the start point and end point of a thick line is filled with a rectangular filling pattern generated by the end point shape pattern and the drawn line segment area, instead of drawing with the transferred end point shape pattern as in the past. Therefore, thick lines can be drawn at high speed without requiring complicated hardware. In addition, the complexity of the required software can be avoided, reducing the burden on the processor.
第1図は本発明の原理ブロツク図、
第2図は本発明の一実施例を示す図、
第3図は本発明の処理フローを示す図、第4図は端点形
状パターンの例を示す図、第5図は端点形状パターン登
録テーブルを示す図、第6図は本発明による太線描画例
の説明図、第7図は従来の太線描画方式3例を示す図で
ある。
第1図乃至第3図において、
2はフレームメモリ (フレームメモリ40)、4はパ
ターンメモリ (パターンメモリ38)、6はビットム
ーバ(ビットムーバ36)、8は太線描画制御手段、
10は端点描画手段(CPU30、バス32、ビットム
ーバ36、メモリ34に格納された第3図のステップS
l、S2.S16を実行するプログラム)、
11は初期設定手段(CPU30、バス32、メモリ3
4に格納された第3図のステップ33.S4を実行する
プログラム)、
12は判定手段(CPU30、バス32、メモリ34に
格納された第3図のステップS5.S6を実行するプロ
グラム)、
14は描画判定手段(CPU30、バス32、メモリ3
4に格納された第3図のステップS7を実行するプログ
ラム)、
16は矩形パターン描画手段((CPU30、バス32
、ビットムーバ36、メモリ34に格納された第3図の
ステップS9.S14を実行するプログラム)、
18は開始点移動手段(CPU30、バス32、メモリ
34に格納された第3図のステップ310゜311.3
13を実行するプログラム)、20は修正手段(CPU
30、バス32、メモリ34に格納された第3図のステ
ップS8゜を実行するプログラム)
である。
漆、Qe月の厘1ブ’O−vり図
第1図
/1−発F3セ 〜笑グ色1りlj
第2図
第
凶
第
図Fig. 1 is a block diagram of the principle of the present invention, Fig. 2 is a diagram showing an embodiment of the invention, Fig. 3 is a diagram showing the processing flow of the invention, and Fig. 4 is a diagram showing an example of an end point shape pattern. , FIG. 5 is a diagram showing an end point shape pattern registration table, FIG. 6 is an explanatory diagram of an example of thick line drawing according to the present invention, and FIG. 7 is a diagram showing three examples of conventional thick line drawing methods. 1 to 3, 2 is a frame memory (frame memory 40), 4 is a pattern memory (pattern memory 38), 6 is a bit mover (bit mover 36), 8 is a thick line drawing control means, and 10 is an end point drawing. Step S in FIG. 3 stored in means (CPU 30, bus 32, bit mover 36, memory 34)
l, S2. 11 is an initial setting means (CPU 30, bus 32, memory 3
Step 33 of FIG. 12 is a determination means (a program for executing steps S5 and S6 in FIG. 3 stored in the CPU 30, bus 32, and memory 34); 14 is a drawing determination means (CPU 30, bus 32, and memory 3);
4), 16 is a rectangular pattern drawing means ((CPU 30, bus 32
, bit mover 36, and step S9. of FIG. 3 stored in memory 34. 18 is a starting point moving means (steps 310 to 311.3 of FIG. 3 stored in the CPU 30, bus 32, and memory 34);
13), 20 is a correction means (CPU
30, bus 32, and a program for executing step S8 of FIG. 3 stored in memory 34). Urushi, Qe Tsuki no Rin 1 B'O-vri diagram Figure 1/1-departing F3 SE~lj Figure 2
Claims (2)
で塗り潰し、 前記線分の始点から該線分の終点までの線分領域内の塗
り潰しに際して、前記端点形状パターン及び線分領域に
よって決まる塗り潰し進み量毎に前記端点形状パターン
及び線分領域によって決まる矩形塗り潰しパターンを決
定し、 該決定された矩形塗り潰しパターンで前記線分領域を塗
り潰し、 その塗り潰し処理が前記線分の終点に達したとき該終点
を端点形状パターンで塗り潰すことを特徴とする太線描
画方法。(1) Filling the starting point of the line segment to be drawn with an end point shape pattern, and when filling in the line segment area from the starting point of the line segment to the end point of the line segment, filling determined by the end point shape pattern and the line segment area. A rectangular filling pattern determined by the end point shape pattern and the line segment area is determined for each advance amount, the line segment area is filled with the determined rectangular filling pattern, and when the filling process reaches the end point of the line segment, A thick line drawing method characterized by filling the end points with an end point shape pattern.
行なう太線描画制御手段(8)とを有し、該太線描画制
御手段(8)は、 前記ビットムーバ(6)を起動して前記線分の始点及び
終点に前記端点形状パターンを描画する端点描画手段(
10)と、 矩形パターンによる塗り潰しの初期設定を行なう初期設
定手段(11)と、 前記線分の始点及び終点の間の線分領域の描画中である
ことを判定する判定手段(12)と、矩形塗り潰しパタ
ーンの描画開始点での矩形塗り潰しパターン描画の可否
を判定する描画判定手段(14)と、 描画可のとき前記ビットムーバ(6)を起動して前記端
点形状パターン及び線分領域によって決まる矩形塗り潰
しパターンで前記線分領域を描画する矩形パターン描画
手段(16)と、 描画不可のとき、前記描画開始点から前記端点形状パタ
ーン及び線分領域によって決まる値だけ描画開始点を進
める開始点移動手段(18)と、前記描画判定手段(1
4)によるいずれの判定においても、DDA方式での誤
差項の修正を行なう修正手段(20)とで構成されるこ
とを特徴とする太線描画装置。(2) A frame memory (2), a pattern memory (4) for storing an end point shape pattern, a bit mover (6), and a thick line drawing control means for drawing line segments in the frame memory (2) using the DDA method. (8), the thick line drawing control means (8) includes end point drawing means (
10), initial setting means (11) for performing initial settings for filling with a rectangular pattern, and determining means (12) for determining that a line segment area between the start point and end point of the line segment is being drawn; a drawing determination means (14) for determining whether drawing of a rectangular filling pattern is possible at a drawing start point of the rectangular filling pattern; and, when drawing is possible, activating the bit mover (6) to determine the shape determined by the end point shape pattern and the line segment area. Rectangular pattern drawing means (16) for drawing the line segment area in a rectangular filled pattern; and when drawing is not possible, starting point movement that advances the drawing starting point from the drawing starting point by a value determined by the end point shape pattern and the line segment area. means (18); and the drawing determination means (1
4) A thick line drawing device comprising a correction means (20) for correcting an error term using a DDA method in any of the determinations according to the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12890890A JPH07120428B2 (en) | 1990-05-18 | 1990-05-18 | Thick line drawing method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12890890A JPH07120428B2 (en) | 1990-05-18 | 1990-05-18 | Thick line drawing method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0423179A true JPH0423179A (en) | 1992-01-27 |
JPH07120428B2 JPH07120428B2 (en) | 1995-12-20 |
Family
ID=14996338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12890890A Expired - Lifetime JPH07120428B2 (en) | 1990-05-18 | 1990-05-18 | Thick line drawing method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07120428B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012165238A1 (en) | 2011-05-30 | 2012-12-06 | アイシン精機株式会社 | Rendering device, rendering method, and program |
-
1990
- 1990-05-18 JP JP12890890A patent/JPH07120428B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012165238A1 (en) | 2011-05-30 | 2012-12-06 | アイシン精機株式会社 | Rendering device, rendering method, and program |
Also Published As
Publication number | Publication date |
---|---|
JPH07120428B2 (en) | 1995-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0218984A2 (en) | Computer graphics processing apparatus and method | |
JPS61231677A (en) | Drawn picture processor | |
JP2634851B2 (en) | Image processing device | |
JPH0423179A (en) | Method and device for plotting thick line | |
JP2634906B2 (en) | Image processing method | |
JP2985260B2 (en) | Character processor | |
JP3338484B2 (en) | Outline font transformation device | |
JP3085396B2 (en) | Vector font development method and device | |
JPS6283790A (en) | Image processor | |
JPH0350686A (en) | Graphic processing system | |
JP2521756B2 (en) | Pattern data generator | |
JP2715453B2 (en) | Drawing method | |
JPH01314329A (en) | Image data processor | |
JP2836617B2 (en) | Rendering processor | |
JP3536894B2 (en) | Graphic processing unit | |
JP3260733B2 (en) | Vector font dictionary | |
JPH09305778A (en) | Polygon duplex device | |
JP3209611B2 (en) | Polygon fill process | |
JPH04307683A (en) | Electronic computer | |
JP2641790B2 (en) | Vector raster converter | |
JPH0259871A (en) | Image processor | |
JPH0371377A (en) | Image processing method | |
JPH08185531A (en) | Image painting-out device | |
JPH0470982A (en) | Straight line plotting system | |
JPH01283679A (en) | Circle clip processing system |