JPS60193037A - 直線描画方式 - Google Patents

直線描画方式

Info

Publication number
JPS60193037A
JPS60193037A JP59049924A JP4992484A JPS60193037A JP S60193037 A JPS60193037 A JP S60193037A JP 59049924 A JP59049924 A JP 59049924A JP 4992484 A JP4992484 A JP 4992484A JP S60193037 A JPS60193037 A JP S60193037A
Authority
JP
Japan
Prior art keywords
straight line
dots
width
line
apparent
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
JP59049924A
Other languages
English (en)
Inventor
Takashi Sato
敬 佐藤
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP59049924A priority Critical patent/JPS60193037A/ja
Publication of JPS60193037A publication Critical patent/JPS60193037A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Position Input By Displaying (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔技術分野〕 本発明は、グラフィック図形描画装置などにおいて、ド
ツトによって直線を描画する直線描画方式に関する。
〔従来技術〕
ホストマシーンからのコマンドにより、任意の角度に任
意の長さの直線をドツトで描画するグラフィック図形描
画装置や、グララフイックプリンタなどがある。しかし
、従来のこのような装置は。
見かけの線幅が直線の傾きによりばらついてしまうとい
う欠点があった。
〔目 的〕
本発明の目的は、直線の傾きに関係なく見かけの線幅が
均一な直線を描画できる直線描画方式を提供することに
ある。
〔実施例〕
次に図面を用いて本発明の一実施例を詳細に説明する。
第1図に示すように、バイト方向をX座標軸方向に対応
づけたメモリ上に、第2図に示す始点と終点の座標が(
xt = Yl )、(xz 、Y2 )の直線りを描
画する場合を考える。
この直線りのX、Y座標軸上への投影はそれぞれIX、
−X21、IY□−Y21である。直線をドツトで描画
する場合、変化点をできるだけ多く取れるようにするた
めに、直線りの投影が大きい方の座標(第2図の例では
Y座標)を変化させながら、直線の傾きから各変化点に
対応するドツトの座標を計算し、プロットして行く。
ここで、指定線幅を3ドツトとして従来方式で直線を描
画した場合、はぼ垂直方向の直線の場合は第3図(a)
に示すように見かけの線幅も、3ドツトとなる。しかし
、第3図(b)に示すように傾斜した直線の場合は、見
かけの線幅はほぼ2ドツトになってしまう。
そこで本実施例においては、始点と終点の座標から直線
の傾きを調べ、その傾きに応じて直線の座標軸方向の指
定ドツト数を補正し、見かけの線幅を指定線幅に近づけ
る。たとえば、第3図(b)の直線の場合、ドツト数を
1ドツト増加し、第3図(c)に示すように見かけの線
幅を3ドツトに近づける。
また、傾きが極端に小さい第3図(d)に示す直線の場
合、ドツト数を6ドツトに補正しても、見かけの線幅は
2ドツトに過ぎず、いくらドツト数を増やしも、見かけ
の線幅を充分に補正することができない。そこで本実施
例においては、傾きが極端に小さい直線の場合、線幅の
小さな直線を位置をずらして何本かプロットし、見かけ
の線幅を指定線幅に補正する。
第3図(e)はその−例であり、ドツト幅の直線を3本
手行にプロットし、見かけの線幅がほぼ3ドツトの直線
を得ている。もちろん、傾きが極めて小さな直線に対し
ても、傾きが比較的に大きい直線と同様な処理方法で線
幅補正を行ってもよいが、処理時間を短縮するには第3
図(e)に示すような方法で処理する方が一般に有利で
ある。
また本実施例においては、2バイトの線種指定情報に従
って、任意の種類の直線をプロットできるようにしてい
る。線種指定情報の各ビットは8ドツトに対応付けられ
ている。直線のプロットを行う際に、変化点を取る座標
軸上において、線種指定情報の″0″′ビットに対応す
る8ドツトはプロットせず、111 IIピッ1〜に対
応するドツトだけをプロットする。
第4図は以上説明した処理を実行する装置の概略ブロッ
ク図である。この図において、10はCPUであり、1
1はプログラムなどを格納したROMである。12はR
AMであり、処理の中間データやホストマシーンなどか
ら入力されるコマンドなどがここに一時的に格納される
。13は入力ポート、14は出力ポートである。15は
第1図に示したような構成の画像メモリであり、この画
像メモリ上に直線がプロットされる。画像メモリ15に
プロットされた画像データはディスプレイ装置または印
刷装置などに出力されるが、これらは図面に示されてい
ない。
第5図は、第4図の装置による処理の流れを示す概略フ
ローチャー1・である。つぎに直線描画処理を順に説明
するが、以下の説明中の()内の数字は第5図の該当ス
テップ番号である。
まず、入力ポート13を介してホストマシーンより、直
線の始点座標(X、、Vt )、終点座標(X、、Y2
)、線幅W、線種指定情報Sが入力さ九、これらの情報
はCPUl0によってRAM12に格納される(30)
CPUl0において、直線の始点座標および終点座標か
ら、直線の各座標軸への投影がめられ、大小関係が比較
される(31)、lx、−x、1がly、 ’y、Iよ
り小さい場合は、直線の傾きA= (X、−X、、)/
 (Y、−Y、、)がめられ(32)、そうでない場合
は、直線の傾き A= (’y、−y、、)/ (x、 −x、−)がめ
られる(33)。
次にcpu t oにおいて、ステップ32.33でめ
られた傾きAの絶対値と、閾値A。、A1゜A2.・・
・Anとの大小判定が行われ、その判定結果に従って、
パラメータd、Rが設定される(34)。これ以降、実
際のプロットが行われる。まず、ステップ31の判定結
果がYESに場合について説明する。この場合、変化点
はY軸上に取られ机 カウンタYがクリアされ(36)、次いでカウンタPに
8がセットされる(37)。なお、これらのカウンタY
、PとしてはCPUl0の内部のレジスタが使われる。
次にCPUl0において、その内部のレジスタに取り込
まれた線種指定情報Sが1ビット左回転され、キャリー
出力が′0″かIt I 11かの判定が行われる(3
8)。キャリー出力が0”の場合、現時点の変化点にお
いてはプロットされず、カウンタYに8が加えられ(4
0)、ステップ38に戻る。
キャリー出力がパ1″′の場合、カウンタYに1が加え
られ、またカウンタPから1が引かれる(39)。そし
て、カウンタYがIYI −y21より大きいか判定さ
れ(41)、判定結果がYESならば処理は終了する。
判定結果がNOの場合、傾きが正ならばカウンタXに(
X、+AXY)の値がセットされ、傾きが負ならばカウ
ンタXに(X2+AXY)の値がセットされる(42)
そして、パラメータRのゼロチェックが行われる(43
)、Rが0ならば、画像メモリ15上に座標(X、Y)
からバイト方向にdドツトだけプロットされる(44)
。RがOでない場合は、画像メモリ15上に座標(X、
Y)からバイト方向と垂直に幅dドツトでW分プロット
される(45)。
なお、このプロット操作は、一旦RAM12上に行った
後、そのプロットデータを出力ボート14を介して画像
メモリ15に転送することによって行われる。
このプロットを終了すると、カウンタPのゼロチェック
が行われ(46)、カウンタPが0ならばステップ37
に戻り、0でなければステップ39に戻る。
次に、ステップ31の判定結果がNOの場合の処理につ
いて説明する。この場合、変化点はX座標に取られる。
このように、変化点を取る座標軸をステップ31の判定
結果によって切り換えるのは、できるだけ多くの変化点
を取るためである。
まず、CPUl0内のレジスタであるカウンタXがクリ
アされ(50)、同じくカウンタPに8がセットされる
(51)。CPUl0内のレジスタにセラ1−された線
種指定情報Sが左1ビツトローテイトされ、キャリー出
力が0″であるか“1″であるかチェックされる(52
)。キヤ・り一出力が# O#lの場合、カウンタXに
8が加えられ(54)、ステップ52に戻る。
キャリー出力が1″の場合、カウンタXにlが加えられ
、カウンタPから1が差し引かれる(53)。ついでX
がIXI x、lより大きいか判定さJL (55)、
YESならばプロット終了であるから、処理は終る。
判定結果がNoの場合は、傾きが正ならばカウンタYに
Y、 +AXXがセットされ、傾きが負ならば、カウン
タYにY2+AXXの値がセットされる(56)。パラ
メータRのゼロチェックが行われ(57)、Rが0の場
合、座標(X、Y)からバイト方向、つまりX座標軸方
向にdドラト分プロットされる(58)。RがOでない
ならば。
座標(X、Y)からバイト方向と垂直に幅dドツトでW
分プロットされる(59)。
そして、カウンタPのゼロチェックが行われ(60)、
0ならばステップ51に戻り、Oでないならばステップ
53に戻る。
なお本実施例においては、直線の始点座標と終点座標か
ら直接的に直線の傾きをめ、その傾きから直線の見かけ
上の幅を決定したが、X方向から見た時の直線の幅とY
方向から見た時の線幅とを比較して、直線の幅を決定す
るようにしてもよい。
また本発明は、記録紙上に直接直線をプロットする装置
にも適用可能である。
〔発明の効果〕
以上説明したように1本発明においては、直線の傾きに
応じて座標軸方向のドツト数が補正されるため、すべて
の方向の直線の見かけの線幅が均一化され、従来よりも
画質を向上できるという効果を奏しうる。
【図面の簡単な説明】
第1図はメモリ構成の説明図、第2図は直線の説明図、
第3図は直線の線幅補正の説明図、第4図は本発明によ
り直線を描画する装置の一例を示すブロック図、第5図
は第4図の装置の処理を示す概略フロー図である。 lO・・・CPU、 11・・・ROM、 12・・・
RAM、13・・・入力ボート、14・・・出力ボート
、第1図 第3図

Claims (1)

    【特許請求の範囲】
  1. (1)ドツトによって直線を描画する直線描画方式にお
    いて、描画すべき直線の座標軸方向のドツト数を該直線
    の傾きに応じて補正し、その補正後のドツト数で該直線
    を描画することを特徴とする直線描画方式。
JP59049924A 1984-03-15 1984-03-15 直線描画方式 Pending JPS60193037A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59049924A JPS60193037A (ja) 1984-03-15 1984-03-15 直線描画方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59049924A JPS60193037A (ja) 1984-03-15 1984-03-15 直線描画方式

Publications (1)

Publication Number Publication Date
JPS60193037A true JPS60193037A (ja) 1985-10-01

Family

ID=12844558

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59049924A Pending JPS60193037A (ja) 1984-03-15 1984-03-15 直線描画方式

Country Status (1)

Country Link
JP (1) JPS60193037A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100435258B1 (ko) * 1997-09-03 2004-07-16 삼성전자주식회사 컴퓨터 그래픽의 3차원 직선 그리는 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100435258B1 (ko) * 1997-09-03 2004-07-16 삼성전자주식회사 컴퓨터 그래픽의 3차원 직선 그리는 방법

Similar Documents

Publication Publication Date Title
JP3356612B2 (ja) 高速な輪郭スムージング方法及び装置
GB2128440A (en) A method of correcting distortion in an image reproducing system
JPS60193037A (ja) 直線描画方式
JP2901856B2 (ja) 白版図形修正方法
EP2631813A1 (en) Method and device for eliminating cracks within page
JP2752784B2 (ja) ロボットの姿勢修正方法
JPH0794376A (ja) 露光パターンデータの補正方法
JP3118310B2 (ja) ページプリンタの印字処理方法
JPS6134676A (ja) 画像処理方式
JP2963320B2 (ja) 図面表示装置
JPS6239969A (ja) トリミング・レイアウト方法
JPH0212309A (ja) Cad/cam装置
JPS6042758A (ja) プリント板原画の作画装置
JP2000298729A (ja) 二次元画像生成装置
JP2002157573A (ja) 図面ファイルの傾き補正方法、ファイリング方法及びそのプログラムを記憶してなる媒体
JPS62189592A (ja) 線図形端点検出方式
JPH04276871A (ja) 画像データの圧縮方式
JPS6283790A (ja) 画像処理装置
JPH06209198A (ja) 部品認識方法
JPH0916787A (ja) 図形塗り潰し用枠線の始点終点描画方法
JPS6298475A (ja) 印字品質検査方法
JPH0250828B2 (ja)
JPH0282371A (ja) 画像処理装置
JPH0676022A (ja) エッジライン抽出方法およびその装置
JPH0426152B2 (ja)