JP2925587B2 - ラスタ化方法 - Google Patents

ラスタ化方法

Info

Publication number
JP2925587B2
JP2925587B2 JP1165136A JP16513689A JP2925587B2 JP 2925587 B2 JP2925587 B2 JP 2925587B2 JP 1165136 A JP1165136 A JP 1165136A JP 16513689 A JP16513689 A JP 16513689A JP 2925587 B2 JP2925587 B2 JP 2925587B2
Authority
JP
Japan
Prior art keywords
data
raster
line
tile
gradient
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.)
Expired - Fee Related
Application number
JP1165136A
Other languages
English (en)
Other versions
JPH0244482A (ja
Inventor
ナイル・ファリス・バンクストン
マーク・エイ・オーバトン
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.)
HP Inc
Original Assignee
HP Inc
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 HP Inc filed Critical HP Inc
Publication of JPH0244482A publication Critical patent/JPH0244482A/ja
Application granted granted Critical
Publication of JP2925587B2 publication Critical patent/JP2925587B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/037Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor using the raster scan of a cathode-ray tube [CRT] for detecting the position of the member, e.g. light pens cooperating with CRT monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、一般に、ラスタ化データを利用するラスタ
タイプのプロッタ、プリンタ、CRTディスプレイ、及び
他のディスプレイシステムのためのベクトル−ラスタ変
換に関するものであり、とりわけラスタデータに関して
ルックアップテーブルを使用する効率のよい高速ベクト
ル−ラスタ変換方法に関するものである。
〔従来技術及びその問題点〕
周知のように、静電プリンタまたはビデオディスプレ
イといったラスタディスプレイシステムは、ラスタマト
リクスと呼ばれる行と列をなすように構成されたアドレ
ス可能なドットすなわちピクセルのうちの選択されたも
のについてプリントまたは照射を行なうことによって、
画像を形成する。各ピクセル毎に表示データ(例えば、
そこにプリイントを行なうかあるいはブランクにしてお
くかというデータ)が得られなければならず、例えば、
各ピクセル毎の表示情報が所定のメモリロケーションに
置かれるビットマップメモリに記憶することができる。
すなわち、任意のピクセルデータは、ピクセルデータの
記憶されるアドレスによって識別されるピクセルと関連
づけられる。例えば、8ビットのバイトは、モノクロー
ムディスプレイのラスタの行における8つの連続したピ
クセルについてのデータを表わしている。
プロッタのためのプロット情報は、しばしば複数のラ
インセグメントによって表わされる。この場合、各ライ
ンセグメントは、開始位置、勾配、及び長さといったラ
インセグメントの特性を識別するベクトルによって表わ
される。例えば、プロットデータは、コンピュータプロ
グラムの入力と同様に、コンピュータグラフィックス言
語を用いることによって、コンピュータプロットシステ
ムに入力することができる。入力されたプロットデータ
から、適当なソフトウェアによってそのプロットを表わ
すベクトルが生成され、記憶される。容易に理解できる
ように、ベクトルデータは、対応するラスタデータに比
べて、必要とされる記憶容量がかなり少なくなる。
ラスタプロッタでは、ベクトル情報は、ラスタデータ
に変換しなければならない。使用されるシステムに従っ
て、プロットのプリント前、あるいはプロットのプリン
ト中に、こうした変換を行なうことができる。いくつか
の理由から、多くのシステムはプリント中に変換を実行
する。こうしないとすれば、プロット動作に先立ってベ
クトル−ラスタ変換を完了しなければならない場合に
は、プリンタが遊休状態になる。またベクトルデータを
処理して、ベクトル−ラスタ変換を実行中、プロットで
きる使用可能ラスタデータを生成することができる。さ
らに、プロット全体に関するラスタデータの記憶に必要
なデータ記憶量は、かなり大量になる可能性がある。
ベクトル−ラスタ変換に関する既知の技法には、デジ
タル差分解析(digital difference analysis,DDA)
法、主軸Breshenham法、及び従軸(minoraxis)Breshen
ham法として知られているもの等がある。DDA法及び主軸
Breshenham法の説明については、1982年、Addison−Wes
ley Publishing Companyから刊行された、Foleyとvan D
am著のFundamentals of Interactive Computer Graphic
sのような、コンピュータグラフィックスに関するテキ
ストブックに書かれている。従軸Breshenhamアルゴリズ
ムに関する背景情報については、IBM Technical Disclo
sure Bulletin 22巻第8B号のJ.E.Breshenham他によるRu
n Length Slices for Incremental Linesを参照された
い。
DDA法では、現在のピクセルの座標からライン上の次
のピクセルの座標および傾きmを以下のようにして計算
する: m=(Y2−Y1)/(X2−X1) X〔i+1〕=X〔i〕+1 Y〔i+1〕=Y〔i〕+m これより、直線を表現するため、ROUNDが丸め演算を
表すものとして、座標(X〔i+1〕、ROUND(Y〔i
+1〕))におけるピクセルを選択する。当該技術の熟
練者には明らかなように、Y座標の追跡には固定小数点
数演算を行なわなければならず、丸め操作には時間がか
かる。
主軸Breshenhamアルゴリズムでは、整数演算だけを用
いることによって、これらの困難を回避する。Y座標の
追跡については、固定小数点数演算を用いる代わりに、
(X〔i+1〕,Y〔i〕)及び(X〔i+1〕,Y〔i〕
+1)にあるピクセル候補のうちのどちらを選択すべき
かをその演算符号で示す決定整変数が保守される。
DDA及び主軸Breshenham演算は、両方とも、直線の主
軸に沿って歩進し、1度に1ピクセルずつ、ラスタイメ
ージを発生する。Breshenhamは、その主軸演算を改訂し
て、ベクトルの従軸に沿って歩進し、ピクセルのラン
(runs of pixels)の形でのラスタイメージを発生する
ようにした。ここで、ピクセルのランは、同じラスタ行
またはラスタ列上の隣接したピクセルから構成される。
勾配の浅いベクトル(すなわち、多くのピクセルからな
るランを持つベクトル)の場合、この技法は比較的効率
がよい。直線の勾配が1に近づくにつれて、ピクセルの
ランの長さ(すなわち、各ラン中のピクセル数)も1に
近づき、従軸アルゴリズムの性能は主軸アルゴリズムの
性能にまで低下する。
従来のベクトル−ラスタ変換技法では、プロッタの速
度が変換速度よりも速いので、変換のスループットが考
慮すべき問題になる。従来技法の複雑さもやはり考慮す
べき問題になる。
〔発明の目的〕
本発明の目的は上述の従来技術の問題点を解消し、単
純で、効率がよく、高速のベクトル−ラスタ変換方法を
提供することにある。
〔発明の概要〕
本発明の一実施例によれば、予め定められた勾配及び
幅を有する線をラスタ化するための方法が与えられる。
本方法には、予め定められた勾配及び幅の線に関連付け
られたデータを用意するステップを含む。このデータに
は、予め定められた勾配及び幅の線分についてのラスタ
データを表わす情報が含まれている。ラスタ化すべき線
の勾配及び幅に関連したストアされているデータにアク
セスし、ラスタ化すべきラインの所定の諸部分の1つに
関するラスタデータを、アクセスしたデータから発生す
る。ここで所定の諸部分は全体としてラスタ化すべき線
を形成する。発生されたラスタデータは、ビットマップ
メモリにコピーされる。ラスタデータを生成してコピー
する前述のステップは、線全体がラスタ化されるまで反
復される。
〔発明の実施例〕
以下の説明及び図面において、同様な要素は同様な参
照記号を表している。
全体システム 第1図を参照すると、ヒューレット・パッカード・カ
ンパニーによって与えられたHP−GLのようなコンピュー
タグラフィックス言語の形をとることが可能なプロッデ
ータを受けいれる入力プロセッサ11を含む、ラスタプロ
ッタシステム10のブロック図が示されている。入力プロ
セッサ11は、入力されたプロッタデータを処理して作図
すべきラインセグメントを表わすベクトルを発生する。
ベクトルは、例えばハードディスクメモリであってよい
ベクトルデータストレージ13に記憶される。
ベクトルデータストレージ13に記憶されたベクトル
は、ベクトル−ラスタ変換器15によって取出される。ベ
クトル−ラスタ変換器15は、適切な制御の下で、このベ
クトル情報をビットマップメモリに記憶されるラスタデ
ータに変換する。ビットマップメモリの内容は、プリン
トエンジン17に与えられる。
表示領域の編成 第2図を参照すれば、特定の例として、ベクトル−ラ
スタ変換器15は帯状部(swath)と呼ばれるプロットの
一部だけについて、ラスタデータをプリントエンジンに
与えるものとする。帯状部の幅は給紙方向に直角なプロ
ットの幅に一致するが、各帯状部の高さは給紙方向に平
行なプロットの長さよりも少ない。例えば、帯状部の高
さは、256ピクセルとすることができる。
第2図に示すように、プロット内の所与のベクトル
は、いくつかの帯状部にまたがる可能性がある。複数の
帯状部にまたがる各ベクトル毎に、入力プロセッサ11
は、既知の技法に従って、帯状部の境界内にあって、集
めるともとのベクトルを構成するクリップされたベクト
ルを発生する。所与の帯状部についての全てのベクトル
は、ベクトルデータストレージ13にまとめて入れられ
る。
各帯状部毎に、ベクトル−ラスタ変換器15は、その帯
状部に関するベクトルデータを取り出し、各ベクトルに
ついてラスタデータを生成してビットマップメモリにコ
ピーし、記憶されたラスタ化帯状部データをプリントエ
ンジン17に付与する。所与の帯状部についてのラスタ化
されたデータの出力中に、ベクトル−ラスタ変換器は順
次次の帯状部についてのベクトルデータを取り出してラ
スタ化する。こうして、ベクトル−ラスタ変換器15は、
プリントエンジン17の待ち時間を短縮するパイプライン
処理を行なう。
本発明は、選択されたクリップしたベクトルをラスタ
データに変換するための効率がよくまた高速度のベクト
ル−ラスタ変換方法を企図したものである。簡単に言え
ば、こうした変換方法は、ライン幅、勾配、開始位置、
及び長さに基づく計算に従って、ルックアップテーブル
からラスタ−データを取り出すことを志向している。こ
の方法は、既知のアーキテクチャを用いたマイクロプロ
セッサベースのシステムで実現することが可能である。
例えば、上述のパイプライン処理を実行するため、2つ
のマイクロプロセッサ、2つのビットマップメモリ、ク
ロスバースイッチ、及びROMを備えたマイクロプロセッ
サベースのシステムを用いることができる。
勾配による線のクラス分け 第3図を参照すると、ベクトルをその勾配の関数とし
て、8分円(octant)に割り当てる方法を説明する図が
示されている。4つの8分円しか図示されていないが、
容易に理解できるように、残りの4つの8分円に割り当
てられたベクトルは、図示の4つの8分円におけるもの
と同等な線分を有している。8分円A〜Dにおいて、ベ
クトルのX成分は、正の方向にある(すなわち、X2>X
1)。換言すれば、始端は上側にあり、終端は下側にあ
る。負のX軸に関する成分を有するベクトルは、図示し
ていない8分円内にあり、それらの端点に順序を交換す
ることによって8分円A〜D内にマッピングすることが
できる。
下記の表Iは、端点の勾配及び順序に従って、特定の
線分の8分円位置を識別する。
表I 8分円A:|ΔY||ΔX|かつΔY<0 8分円B:|ΔY|<|ΔX|かつΔY<0 8分円C:|ΔY|<|ΔX|かつΔY0 8分円D:|ΔY||ΔX|かつΔY0 ここで、ΔX=X2−X1、またはΔY=Y2−Y1。
8分円B及びAはそれぞれ8分円C及びDと同様であ
るので、以下では主として8分円C及びDに着目する。
適切なマッピングを行なうことによって、8分円Cにつ
いての手順は、8分円Bにも利用できるし、また8分円
Dについての手順は8分円Aにも利用できる。
よりよい性能を発揮させるため、ここに開示するベク
トル−ラスタ変換法は、8分円C及びDのある部分内に
ある線について用いるのが望ましい。すなわち、14度よ
り大きく76度より小さい(Y軸に対し時計廻り方向に測
定)勾配を持つ線についてのみ、ここに開示したベクト
ル−ラスタ変換法に従って処理するのが望ましい。8分
円C及びDの残りの部分における線は、他の技法に従っ
て、例えばあるタイプの既知のBreshenhamアルゴリズム
によってラスタ化される。8分円A及びBにも対応する
勾配制限が適用される。
タイルデータ編成 第4図には、8ビットバイトのスタックを構成してい
ると考えることができる、一般にタイル(TILE)と呼ば
れるデータブロックの概略が示されている。最上位のバ
イトには、後述するように、8分円C内のベクトルのラ
スタ化に用いられるプロファイル(PROFILE)データが
含まれており、次のバイトには、後続するバイトに記憶
されるパターンデータ中にスタックされているバイトの
数を指定する高さのデータが含まれている。最下位の
「高さ」個のバイトにはパターンデータが含まれてい
る。パターンデータは幅が8ビットであり、8分円D中
のベクトルのラスタ化のためコピーされる。
以下の論述においては、便宜上タイルという用語は前
述のタイルデータに基づきラスタデータを表わすのに用
いられ、またタイルデータを用いて定義されるラスタの
セクションを表わすのにも用いられている。さらに、タ
イルは、ビットマップのうちの、タイルデータを用いて
定義されるラスタディスプレイのセクションに関連した
部分を表わすのにも用いることもできよう。用語「タイ
ル」をこのように用いることにより、理解の助けとな
り、また文脈が明確になってあいまいさが除かれるもの
と信じている。
ビットマップメモリは、ベクトル−ラスタ変換に先立
って、クリアされるようになっているものとする。ラス
タデータは、デスティネーションのビットマップメモリ
ロケーションの内容とOR演算を行なうことによって、ビ
ットマップメモリにコピーされる。これにより、処理中
の帯状部のための他のベクトルの先行する変換によって
セットされているビットの消去が防止される。
第5図には、線幅と勾配によるタイムの編成の概略が
示されている。予め定められた線幅(デフォルトまたは
入力プロットデータによって指定できる)のそれぞれに
ついて、N個の異なる勾配についてのデータエントリが
与えられる。すなわち、所与の幅の各スロープ毎に、降
下(DROP)、Xセクション、P半幅値(P_HALF_WIDT
H)、及び、N半幅値(N_HALF_WIDTH)等のエントリが
ある。
第6図を参照すると、降下は、数学的なまたは実際の
線が、上部左隅の位置するタイルのスタート点に対して
どれだけ降下したかを示す、9つのエントリを備えたア
レイである。例えば、各エントリは、インデクス(ビッ
ト位置を示す、0〜8)に勾配を掛けたものであり、そ
の降下を示す。ここでさらに述べるように、降下は、8
分円D中で線の端において現れる可能性のある部分的タ
イルを扱うのに有効である。
第7図を参照すると、Xセクションは、指定されたビ
ットがセットされている2つまたは4つの隣接したバイ
トからなるグループであり、8分円Cにおけるベクトル
の断面を表わしている。第7図は、Xセクションのデー
タのラスタ表現であり、ドットつきピクセルはセットさ
れているビットを表わしている。つまり、8分円Cにお
けるラインの各タイル毎のラスタデータは、各タイルの
プロファイルに従って選択的にシフトされたXセクショ
ンデータをビットマップメモリにコピーすることによっ
て、決定される。すなわち、8分円Cにおけるタイルの
各行のピクセルについてのラスタデータは、適宜シフト
されたXセクションデータに基づくものである。
Xセクションデータに関するセットされたビットは、
それに関連する線幅によって決まり、例えば所定のビッ
ト位置に中心がくるようにすることができる。適切な処
理によって、Xセクションデータの中心がラスタ化され
るライン上にくるようにするため用いられるシフトを常
に適切な量に制御する。
ここで第8図を参照すると、数学的な線上の点と、そ
のラスタイメージの境界との間の距離をX軸(垂直方
向)の正の向きに、また負の向きに計ってピクセル数で
表現したものがP半幅値及び負半幅値で指定される。P
半幅値は正の方向で測定され、N半幅値は負の方向で測
定される。
再び第5図を参照すると、所与の勾配及び幅について
のデータエントリには、予め定められたタイルのアドレ
スが入っているポインタ0〜7が含まれている。所与の
勾配についてのタイルには、別の勾配についてのタイル
と同じタイルが1つあるいはそれ以上含まれている可能
性があるので、実際のタイルを記憶する代わりにポイン
タが利用される。従ってポインタの利用によって、タイ
ルの記憶に必要な記憶容量は減少する。
ここで第9図を参照すると、タイルデータの利用を表
わすラスタ図が示されている。各正方形はピクセルを表
わしており、セットされたピクセルは、そこにドットを
付することで識別される。陰つきのピクセルは線分の端
点を示している。タイルの処理を行なうと、ラスタデー
タブロックが、ラスタディスプレイの矩形セクションに
対応するビットマップメモリに記憶される。8分円Cで
はタイルの境界はY軸に対し平行であり、他方8分円D
ではタイルの境界はX軸に対し平行である。8分円Cで
はタイルについてのラスタデータはXセクションデータ
を選択的にシフトし記憶することによって生成され、他
方8分円Dではタイルについてのラスタデータはパター
ンデータをコピーすることによって生成される。
ラスター座標及びビットマップメモリロケーション 第10図は、幅がWバイトで高さがHピクセルの帯状部
に関するデカルト座標(X,Y)とビットマップメモリ座
標(バイトアドレスA,ビット位置B)の間の関係を示し
ている。特定の例で言えば、各バイトは幅が8ビットで
あり、従ってピクセルの幅はピクセルで8×W個とな
る。
(X,Y)座標はピクセル位置によって決まる。従っ
て、例えば左上隅のピクセルは、(X,Y)座標が(0、
0)であり、第2行の左から12番目のピクセルは、座標
が(1、11)である。
バイトアドレスA(第10図を示す)は左上隅のバイト
0から始めて、順番に数えられる。バイトアドレスA及
びこのバイト内のビット位置Bは次のように計算され
る。
A=(X×W)+(Y DIV8) (式1) B=(Y MOD8) (式2) ここで、DIVは整数除算を示す。またはMODモジュロ演
算を表わしている。すなわち、MOD演算の結果は、被演
算数を8で割った余りになる。
8分円Cでは、タイルの境界は互いにピクセル8個分
離れており、また任意の行から始めることができる。8
分円Dでは、タイルの境界はバイト境界と一致する。
セットアップ値の計算 ここで第11図を参照すると、端点として(X1,Y1)及
び(X2,Y2)を有する所与のラインについての適切なタ
イルデータの選択の際に用いられるセットアップ値の計
算を行なうセットアップ処理のフローチャートが示され
ている。機能ブロック211によって、X成分とY成分の
長さが計算される。判定ブロック213によって、その線
が8分円Cと8分円Dのいずれかにあるか判定される。
Y成分の長さがX成分の長さよりも大きいと、8分円D
に関する処理側に進み、さもなければ8分円Cに関する
処理側に進む。
8分円D中のベクトルの処理に関しては、第1の端点
のバイトアドレスとビット位置(A,B)は、機能ブロッ
ク215によって式1及び2に従って計算される。次に、
機能ブロック217により、アキュムレータの初期値が計
算される。このアキュムレータの値とその意味について
は以下でさらに論述する。
機能ブロック219によって、線の勾配Mが計算され
る。ここで、Xは従属変数である(すなわち、Xの変化
は分子(numerator)の形をとる)。例えば、8分円D
中の所与の線幅のさまざまな勾配に関するタイルデータ
は、勾配MのK個の最上位ビットによってアドレス指定
することができる。ここでKは: K=CEILING〔log2(N)〕 (式3) ここで、Nは、8分円について、システムが使用する
離散的勾配の個数であり、CEILINGはその引数以上の最
小の整数を表わす。
タイル全体の長さNは機能ブロック221によって計算
される。タイルの総数NTは: NT=(Y2 DIV8)−(Y1 DIV8)+1 (式4) 一方、タイル全体すなわち内部タイルの数Nは: N=MAX〔0,(NT−2)〕 (式5) ベクトルの両端がタイルの境界と一致しない限りは、
以下でさらに詳述するように部分タイルが用いられる。
タイル数をX方向に計算しまた上側でのタイルの開始
境界が始端と一致するように調整されるという点を除
き、8分円Cについての計算も同様である。従って、8
分円Cについては、部分タイルは1つだけしか用いられ
ない。全タイルの個数Nは: 〔(X2−X1)MOD8〕<>7であれば、 N=〔(X2−X1)DIV8〕 〔(X2−X1)MOD8〕=7であれば、 N=〔(X2−X1)DIV8〕+1 (式6) ここでDIVは整数除算を表わしている。また、勾配M
の計算に当って、Yは従属変数である(すなわち、Yの
変化は分子の形をとる)。8分円D中の線と同様、8分
円Cに関して計算される勾配MのK個の最上位ビットに
よって、8分円Cにおける所与の線幅のさまざまな勾配
に関するタイルデータをアドレス指定することができ
る。ここで、Kは上述の式3に従って計算される。先に
定義したように、所与の勾配及び幅についてのタイルデ
ータは8分円C及びDの両方における線についての情報
が含まれる。
アキュムレータの値ACCは、線を表現するのに用いら
れる可能性のあるピクセル候補から数学的点への距離を
表わすことを意図したものである。第12図について具体
的に言及する。同図ではセットされたピクセルには円が
書込まれているが、線の所与の整数Y座標について、ピ
クセル候補からの正のX方向の距離は、対応するX座標
の小数部分である。線の所与の整数X座標については、
ピクセル候補に関しての正のY方向の距離は、対応する
Y座標の小数部分である。これらの距離はそれぞれ線の
勾配から計算可能である。
タイルデータを用いるに当っては、8分円C中の線に
ついてのアキュムレータの値ACCはX方向に測定され、
一方8分円D中の線についてのアキュムレータの値ACC
はY方向に測定される。これはタイルの境界の配向に対
応するものであり、8分円が異なれば勾配計算も異な
る。
所与の勾配及び幅を持つ線について、タイルの境界と
数学的ラインとの交点に依存して、異なるラスタパター
ンを用いて、この線の異なるセクションを表わすという
ことに気付いて欲しい。この事態はアキュムレータの値
ACCによって定義できる。従って線のこのような様々な
セクションはアキュムレータ値ACCの様々な値と関連づ
けることが可能である。特定の例として、アキュムレー
タの値ACCは、8通りの異なる値をとることのできる3
ビットで構成することができる。これら8通りの値は夫
々線とタイルの境界の異なる交点を示しているのだが、
これら値の各々について、例えば〔従来技術及びその問
題点〕中で言及したDDAアルゴリズムのような既知の技
法によって、線の異なるセクションをラスタ化すること
ができる。8つの異なるセクションについてのラスタ情
報を利用して、所与の勾配及び幅に関連した8つのタイ
ルについてのパターンデータを及びプロファイルデータ
を定義する。これにより、タイルデータは本質的に予備
ラスタ化データを表わしている。
ベクトルが帯状部内で実際に始まっていようとあるい
はそのベクトルが隣からつながっていてその帯状部の境
界から始まっていようと、ベクトルは必ず整数のX座標
から始まるので、初期化のため、8分円D中の線につい
てのアキュムレータの初期値ACCはゼロである。8分円
C中の線については、アキュムレータの初期値ACCは始
端のY座標の小数部分である。
8分円D中の線のベクトル−ラスタ変換 第13図には、タイルのラスタデータを発生し、こうし
たラスタデータを8分円D中の線に関してビットマップ
メモリにコピーするプロセスのフローチャートが示され
ている。下記特定の実施例はタイルの境界を横切る線の
処理を目ざしたものであるが、タイルの境界を横切らな
い線を変換するように簡単に修正することができる。こ
れについてはまた他の方法で処理することもできる。
機能ブロック311によって、第11図のフローチャート
に従って計算されたセットアップデータが取り出され
る。こうしたセットアップデータには、ラスタ化すべき
線の第1の端点(A,B)、線の勾配M、アキュムレータ
の初期値ACC、及び用いられるタイル全体の個数Nが含
まれている。
機能ブロック313によって、始端部分に関するラスタ
データがビットマップメモリにコピーされる。例えば、
こうした端部は、始端(A,B)にほぼ中心が来て線幅に
一致した、矩形のピクセルアレイで構成される。機能ブ
ロック315によって、ベクトルの端点のバイトアドレス
Aを量〔W×N半幅値〕だけ減らすことによりバイトの
開始アドレスAが更新される。
機能ブロック317において、後続の計算で用いられる
スケーリングを施した勾配M′が前に計算した勾配Mに
8を掛けることによって計算される。また、勾配M′に
ついてのタイルデータがアクセスされる。
機能ブロック320では、部分タイルであるかもしれな
い第1のタイルについてのタイルデータがフェッチさ
れ、ビットマップメモリにコピーされる。選択されるタ
イルはアキュムレータの値ACCの小数部分の最上位ビッ
トによって決まる。機能ブロック320によって行なわれ
る機能については以下でさらに論述する。
機能ブロック319では、アキュムレータの値ACCは、そ
の現在の値に降下(B)を加えることによって更新され
る。ここでBは始端のビット位置である。またバイトア
ドレスAは、その現在の値に〔W×INT(ACC)+1〕を
加えることによって更新される。ここで、INT(ACC)は
アキュムレータの値ACCの整数部分を表わしている。開
始アドレスAの更新後、アキュムレータの値ACCの整数
部分がゼロにセットされる。
判定ブロック325によって示されるように、タイル全
体の個数Nがゼロに達したかどうかについて判定が行な
われる。Nがゼロ以下の場合には、制御が機能ブロック
327に移行する。さもなければ、制御は機能ブロック337
に移行して、もう1つの内部タイルがフェッチされ、コ
ピーされる。
機能ブロック330によって、タイルがフェッチされ、
ラスタデータがビットマップメモリにコピーされる。機
能ブロック330により行なわれる機能については、以下
でさらに詳述する。
機能ブロック321で、現在の値ACCにスケーリングを施
された勾配M′を加えることによって、アキュムレータ
値ACCが更新される。また、バイトアドレスAは、その
現在の値に量〔W×INT(ACC)+1〕を加えることによ
って更新される。バイトアドレスAの更新後、アキュム
レータの値ACCの整数部分がゼロにセットされる。機能
ブロック323により、全タイルの個数Nは1だけデクリ
メントされる。これに続いて判定ブロック325の処理が
行なわれる。
全タイルの個数Nがゼロに達した後、最後のタイルに
ついてのデータが機能ブロック327によってフェッチさ
れる。最後のタイルは部分タイルになるかもしれないの
で、機能ブロック329よりある特別な処理が行なわれ
る。インデクスIには(Y2 MOD8)の値が割り当てられ
る。この値は最後のタイル中で線がそのタイルの左側境
界から伸びて占めるビットカラムの個数を指定する。高
さH′は以下のように計算される: H′=降下(I)+N半幅値+P半幅値 (式6) マスク(I)が、計算されたインデクスIに基づいて
マスク表からフェッチされる。機能ブロック340によっ
て、最後のタイルがマスク(I)とAND演算され、最後
の部分タイルには用いられないビットがクリアされ、そ
の結果がビットマップメモリにコピーされる。機能ブロ
ック340により行なわれる機能については、以下でさら
に詳述される。
機能ブロック331によって、最後の端点のバイトアド
レスAがAの現在値に量〔W×(N半幅値)〕を加える
ことによって計算され、最後の端点のビット位置Bは
(Y2 MOD8)によって計算される。機能ブロック333に
よって、最後の端点についてのラスタデータがビットマ
ップメモリにコピーされる。基本的に、こうした端部は
最後の端点(A及びBの現在値)のあたりにほぼ中心が
くる、線幅に一致したピクセルの矩形アレイから構成さ
れる。8分円D中のベクトルのラスタ化はこれで完了す
る。
ここで第14図を参照すると、第1のタイルについての
ラスタデータをフェッチしてコピーするための、第13図
の機能ブロック320によって行なわれる機能をさらに詳
細に示したフローチャートが示されている。機能ブロッ
ク411によって、第1のタイルについての開始アドレス
Aのコピーがセーブされる。機能ブロック413によって
示されているように、選択されたタイル表から高さHが
フェッチされる。高さHは、パターンを構成していると
ころのスタックされているバイト(スライス)の特定の
1つに対するポインタとして用いられる。最上位に置か
れたスライスは、タイル表からフェッチされた高さHに
相当する。
機能ブロック415によって、高さHの現在値に相当す
るパターンのスライス(1つのバイト)がフェッチさ
れ、(7−B)位置だけ右へシフトされる。シフトアウ
トしたビットは棄てられ、シフトインしたビットはゼロ
になる。シフトしたスライスはバイトアドレスAにコピ
ーされる。
機能ブロック417によって、バイトアドレスAをW
(バイト数で表現したラスタ幅)だけインクリメントす
る。これによって、以前のバイトアドレスAに対応する
ピクセルの下のラスタピクセルに対応するバイトアドレ
スをアドレスする。高さHは1だけデクリメントされ
る。
判定ブロック419で示されるように、高さHがゼロに
達したかどうかに関する判定が行なわれる。達していな
ければ、制御は機能ブロック415に移り、パターンの別
のスライスをひとつフェッチしてシフトする。高さHが
ゼロに達すると、タイル開始バイトアドレスAが保管さ
れていたコピーから復元され、第1のタイルをフェッチ
してコピーする処理が完了する。
ここで第15図を参照すると、第13図の機能ブロック33
0によって行なわれる、タイル全体を取り出してコピー
する機能をさらに詳細に示したフローチャートが示され
ている。機能ブロック511によって、現在の開始アドレ
スAのコピーが保管される。機能ブロック513の指示に
従って、選択されたタイル表から高さHがフェッチされ
る。高さHは、パターンを構成する、スタックされたバ
イト(スライス)の特定の1つに対するポインタとして
用いられ、最上部のスライスはタイル表からフェッチさ
れた高さHに対応する。
機能ブロック515によって、高さHの現在値に相当す
るパターンのスライスがアドレスAで識別されるバイト
にコピーされる。
機能ブロック517によって、バイトアドレスAをW
(バイト数で表現したラスタ幅)だけインクリメント
し、高さHを1だけデクリメントする。
判定ブロック519で示されるように、高さHがゼロに
達したかどうか判定される。達していなければ、制御は
機能ブロック515に移り、パターンの別のスライスを1
つコピーする。高さHがゼロに達していれば、バイトア
ドレスAには、保管されていた開始バイトアドレスが復
元され、タイル全体をフェッチする処理が完了する。
ここで第16図を参照すると、第13図の機能ブロックに
従い行なわれる、最後のタイルをフェッチしてコピーす
る機能をさらに詳細に示したフローチャートが示されて
いる。機能ブロック611によって、現在のタイル開始ア
ドレスAのコピーが保管される。
機能ブロック613によって、高さH′の現在値に相当
するパターンのスライス(1バイト)が、タイル表から
フェッチされる。このスライスは、マスク(B)とAND
演算され、その結果生じるバイトがビットマップメモリ
のバイトアドレスAにコピーされる。
機能ブロック619によって、バイトアドレスAをWだ
けインクリメントし、高さH′を1だけデクリメントす
る。
判定ブロック621によって、高さH′がゼロに達した
かどうか判定される。ゼロに達していなければ、制御は
機能ブロック613に移り、パターンの別のスライスをも
う1つフェッチする。高さH′がゼロに達していれば、
開始バイトアドレスAに、保管されていたコピーを復元
し、最後のタイルをフェッチしてコピーする処理が完了
する。
8分円C中の線のベクトル−ラスタ変換 タイルを用いることにより8分円C中の線をベクトル
−ラスタ変換する特定の実施例に関する以下の論述は、
X方向に8個よりも多くのピクセルを占有する線を志向
している。この方法はもっと短い線の処理に簡単に適合
させることができるが、このような線は既知の方法に従
ってラスタ化することもできる。
前述のように、8分円C中のベクトルについてのラス
タデータを作成するため、プロファイルデータとXセク
ションデータが利用される。すなわち、最上位ビット
(MSB)から最下位ビット(LSB)へ、第4図の図式表現
では左から右へ、プロファイルデータの走査が行なわれ
る。第17図には、第4図のタイルデータに関連したXセ
クションデータにプロファイルデータを適用した結果が
示されている。すなわち、プロファイルデータ中のゼロ
の値をとるビットは、現在のXセクションデータがその
ままコピーされるべきであることを表わしており、一方
1の値をとるビットは現在のXセクションデータをピク
セル(ビット)1つ分シフトしてからコピーすべきであ
ることを表わしている。本質的に、輪郭データとXセク
ションデータは、協働してパターンデータを時計廻り方
向に90度回転し、X軸と平行な線に関して鏡像化したビ
ットマップ像を形成する。
ここで、第18図を参照すると、8分円C中の線をラス
タ化するためのフローチャートが示されている。機能ブ
ロック711によって、第11図のフローチャートに基づい
て計算されたセットアップデータがフェッチされる。こ
うしたセットアップデータには、ラスタ化すべきベクト
ルの開始アドレス(バイトアドレスA,ビット位置B)、
線を勾配Mアキュムレータの初期値ACC、及び使用され
る全形のタイルの個数Nが含まれる。注意すべきは、8
分円Cでは、開始タイル境界はラスタ化すべきベクトル
の開始(上部)端点と一致するように調整されるという
点である。従って、8分円C中の線はその1つの端点に
ついてしか部分タイルの必要がない。
機能ブロック713によって、始端部分についてのラス
タデータがビットマップメモリにコピーされる。基本的
に、こうした端部は、端点(A,B)のあたりにほぼ中心
がくる、線幅に一致したピクセルの矩形アレイで構成さ
れている。
機能ブロック715によって、前に計算した勾配Mに8
を掛けることにより、スケーリングを施された勾配M′
が計算される。このスケーリングを施した勾配M′を利
用して、以降の計算が行なわれる。また、機能ブロック
715によって、勾配M′についてのタイルデータがアク
セスされる。機能ブロック717によって、Xセクション
データがフェッチされる。
機能ブロック710によって、選択されたタイルがフェ
ッチされてビットマップメモリにコピーされる。機能ブ
ロック710によって行なわれる機能については、以下で
さらに詳述する。
機能ブロック719では、アキュムレータの値ACCは、ス
ケーリングを施した勾配M′をそこへ加算することによ
って更新される。また、ビットアドレスBも、Bの現在
値からアキュムレータの値ACCの整数部分を引くことに
よって更新される。
判定ブロック721の指示に従って、ビット位置が負に
なったかどうか判定される。負になった場合には、バイ
トの境界が横切られたことになり、バイトアドレスA及
びビットアドレスBが、機能ブロック723によって更新
される。すなわち、バイトアドレスAは1だけインクリ
メントされ、ビットアドレスBはBを8で割った剰余に
更新される。
Bがゼロ以上の場合、機能ブロック725から処理が続
行される。バイトアドレスAはそれに(8×W)を加算
することによって更新され、タイル個数Nは1だけデク
リメントされる。
判定ブロック727によって、タイル個数Nがゼロに達
したかどうか判定される。ゼロに達していなければ、制
御は機能ブロック710に戻る。タイル個数Nがゼロに達
すると、これは全形のタイルは皆ビットマップメモリに
コピーされたことを表わすのであるが、この場合には制
御は機能ブロック729に移行する。機能ブロック729によ
って、最後の部分タイルの高さが次のように計算され
る: H′=〔(X2−X1)MOD8〕+1 (式7) 機能ブロック731によって、最後の部分タイルがビッ
トマップメモリにコピーされ、端点ブロックがビットマ
ップメモリにコピーされる。
機能ブロック731の機能が実行されると、8分円C中
のベクトルのラスタ化が完了する。
ここで第19図を参照すると、第18図の機能ブロック71
0によって行なわれる機能を詳細に表わしたフローチャ
ートが示されている。機能ブロック811によって、バイ
トアドレスAの現在値のコピーが記憶され、高さHが8
にセットされる。機能ブロック813によって、Xセクシ
ョンデータのセットされたビット位置に関する適切な剰
余演算に基づき、Xセクションデータの中心が数学的線
上に合わせられる。
判定ブロック815によって、プロファイルデータの最
上位ビットが1に等しいかどうか判定される。1に等し
くなければ、制御は機能ブロック823に移る。プロファ
イルのMSBがシフトを表わす1であれば、機能ブロック8
17によって、Xセクションデータは位置1つ分だけ右へ
シフトされる。判定ブロック819によって、キャリーが
あったかどうか(すなわち、1がXセクションデータか
らシフトによってこぼれ出たかどうか)判定される。キ
ャリーがなければ、制御は機能ブロック823に移る。キ
ャリーがあったのであれば、これはバイトの境界を横切
ったことを表わすのだが、この場合には機能ブロック82
1によって、バイトアドレスAが現在のバイトアドレス
を1だけインクリメントすることにより更新される。ま
た、キャリーを含むXセクションデータは、位置8つ分
だけ左へシフトされる。制御は次に機能ブロック823へ
移る。
機能ブロック823によって、Xセクションデータは、
ビットマップの現在のバイトアドレスにコピーされる。
機能ブロック825によって、バイトアドレスAが、それ
にWを加えることによって更新される。(Wはラスタ幅
をバイト単位で表現したものであることを想起された
い)さらに、高さHを1だけデクリメントする。またプ
ロファイルデータに自分自身を加算するが、これはプロ
ファイルデータを左へ位置1つ分シフトさせることに相
当する。
判定ブロック827の指示に従って、高さHの現在の値
がゼロに等しいかどうか判定される。ゼロに等しくなけ
れば、制御は機能ブロック815に移行する。高さHの現
在値がゼロに等しくなっていれば、これは全形タイルの
コピーが済んだことを表わしているが、この場合にはバ
イトアドレスAは、機能ブロック829によって、機能ブ
ロック811によってセーブされていた値に復元される。
8分円C中のベクトルについてのタイルのラスタ化はこ
れで完了する。
ここでまた第18図を参照すると、最後のタイルの高さ
H′がカウンタとして用いられる点を除き、第19図に示
すのと同様のプロセスフローに従って、最後の部分タイ
ルをビットマップメモリに記憶することができる。
8分円A及びB中の線のベクトル−ラスタ変換 8分円A及びB中の線は、X軸と平行な線に対する鏡
像をそれぞれ8分円D及びCに有する。もちろん、8分
円A中の線と8分円D中のその鏡像との相違点は、その
勾配の符号であり、とりわけ、両端点のY座標間の差の
符号である。同じ相違点は、8分円B中の線と、8分円
C中のその鏡像についてもあてはまる。これらの関係に
基づき、タイル情報を利用する前述のプロセスを用い
て、ここでの記述の変化を伴なう、8分円A及びB中の
線のラスタ化を行なうことが可能である。
前述のように、8分円C中の線は、Xセクションデー
タの中心が数学的線の始端(X1,Y1)にくるようにし、
次に正のX方向に移動させ、プロファイルデータに則っ
て正のY方向にシフトされるXセクションデータを順次
コピーすることによって、描かれる。8分円B中の線は
8分円C中のその鏡像に用いられたのと同じタイルデー
タを利用してラスタ化できるようになっている。これは
Xセクションデータの中心が数学的線の最終端点(X2,Y
2)にくるようにし、次に負のX方向に移動させ、プロ
ファイルデータに則って、正のY方向にシフトされるX
セクションデータを順次コピーすることによって、可能
になる。ここに開示した実施例では、端点(X1,Y1)及
び(X2,Y2)は、第11図のフローチャート中のセットア
ップ計算に先立って交換され、Wは第18図の機能ブロッ
ク725及び第19図の機能ブロック825において、(−W)
に置き換えられる。前述のように、Wはラスタ端バイト
の幅である。
前述のように、8分円D中の線は、パターンデータの
中心が、N半幅値とP半幅値のデータに従って、開始端
(X1,Y1)の数学的線上の始端(X1,Y1)に来るように
し、次に正のY方向に移動させ、アキュムレータの値A
CCを用いることにより、第13図のフローチャートに従
い、アキュムレータの値ACCの小数部分を用いて選択さ
れたタイルをコピーするバイトアドレスAを求める。8
分円A中の線は8分円D中のその鏡像に用いられている
のと同じパターンデータを利用して、ラスタ化できるよ
うになっている。これは、選択されたパターンデータの
中心が、N半幅値とP半幅値のデータに従って、その線
の最終端点(X2,Y2)にくるようにし、次に負のY方向
に移動させることによって可能になる。ここに開示した
実施例では、端点(X1,Y1)及び(X2,Y2)は、第11図の
セットアップ計算の前に交換され、Wは第13図〜第16図
のフローチャートで示したプロセスにおいて、(−W)
に置き換えられる。
以上で、高速でかつより高いスループットを持つ、ベ
クトルデータをラスタデータに変換するための方法に関
した特定の実施例の開示を行なった。さらに、高解像度
のシステムを得る場合には、速度の低下を最小限にした
上で、ラインがぎざぎざにならないようにし、かつ表示
線幅を適切にするのに必要なピクセルを更に追加でき
る。本方法は、既存のマイクロプロセッサベースのベク
トル−ラスタ変換器アーキテクチャ等のマイクロプロセ
ッサベースの変換器によって簡単に実現される。
以上で本発明の特定の実施例についての記述及び説明
を終えるが、当該技術の熟練者であれば、本願特許請求
の範囲で定義した本発明の範囲及び精神を逸脱すること
なく、各種修正及び変更を加えることが可能である。
〔発明の効果〕
以上詳細に説明したように、本発明によれば高速のベ
クトル−ラスタ変換を容易に実現することができる。
【図面の簡単な説明】
第1図は本発明を適用可能なラスタプロッタシステムの
ブロック図、 第2図は帯状部を含む表示領域を説明する図、 第3図は勾配による線のクラス分けを説明する図、 第4図はタイルを説明する図、 第5図は線幅と勾配によるタイルの編成を説明する図、 第6図は降下を説明する図、 第7図はXセクションを説明する図、 第8図はタイルデータのP半幅値とN半幅値を説明する
図、 第9図はタイルデータの利用を説明する図、 第10図はデカルト座標(X,Y)とビットマップメモリ座
標との関係を説明する図、 第11図、第13図ないし第16図、第18図及び第19図は本発
明の実施例を説明するフローチャート、 第12図は候補ピクセルに対する数学的線の位置をトラッ
キングするためにアキュムレータ値を使用する態様を説
明する図、 第17図は第4図の特定のタイルデータに関連するXセク
ションへのプロファイルデータの適用の結果を説明する
図である。 10:ラスタプロッタシステム 11:入力プロセッサ 13:ベクトルデータストレージ 15:ベクトル−ラスタ変換器 17:プリントエンジン
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭63−221493(JP,A) 特開 昭62−109182(JP,A) 特開 昭63−81581(JP,A) 実開 昭63−146895(JP,U) 実開 昭61−193498(JP,U) (58)調査した分野(Int.Cl.6,DB名) G06T 11/20

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】勾配を有する線をラスタディスプレイのた
    めにラスタデータ化する、下記の(A)ないし(C)の
    ステップを有する方法、 (A) 種々の勾配の線分の矩形ラスタディスプレイ領
    域におけるラスタデータで表現された予め計算された線
    分データを与えるステップ:前記各矩形ラスタディスプ
    レイ領域は、隣接するピクセルを有する矩形の2次元配
    列ピクセルを有し、前記種々の勾配の線分の予め計算さ
    れた線分データは、下記の(A−a)および(A−b)
    を有する、 (A−a)第1の予め計算されたデータ:前記第1の予
    め計算されたデータは第1の範囲内の勾配の線のラスタ
    データを生成するのに使われる、 (A−b)第2の予め計算されたデータ:前記第2の予
    め計算されたデータの第2の範囲内の勾配の線のラスタ
    データを生成するのに使われ、前記前記第2の予め計算
    されたデータは、下記の(A−b−i)及び(A−b−
    ii)を有する、 (A−b−i)前記矩形の2次元配列ピクセルの断面の
    データであるXセクションデータと、 (A−b−ii)シフトデータ:前記シフトデータは、線
    分に対する矩形ラスタディスプレイ領域の断面のラスタ
    データを生成する際に、Xセクションデータに適用する
    シフト量を示す、 (B) 所与の線を一連の線分に分割するステップ、 (C) 前記分割した線分の各々のラスタディスプレイ
    のためのラスタデータとして、前記種々の勾配の線分の
    予め計算された線分のデータから最適なデータを選択し
    て生成するステップ。
  2. 【請求項2】前記第1の予め計算されたデータがパター
    ンデータを有し、前記パターンデータは線分に対するラ
    スタディスプレイの矩形領域のラスタデータであること
    を特徴とする特許請求の範囲第1項に記載の方法。
  3. 【請求項3】勾配を有する線をラスタディスプレイのた
    めにラスタデータ化する方法であって、 (A) 種々の勾配の線分の矩形ラスタディスプレイ領
    域におけるラスタデータで表現された予め計算された線
    分データを与えるステップ:前記各矩形ラスタディスプ
    レイ領域は、隣接するピクセルを有する矩形の2次元配
    列ピクセルを有する、 (B) 所与の線を一連の線分に分割するステップ、 (C) 前記分割した線分の各々のラスタディスプレイ
    のためのラスタデータとして、前記種々の勾配の線分の
    予め計算された線分のデータから最適なデータを選択し
    て生成するステップ、 を有する方法において、 前記ステップ(A)の種々の勾配の線分の予め計算され
    た線分データは複数のタイルを有し、前記各タイルは2
    個の勾配に関し、 (a)該タイルに関連付けて、第1の勾配の線に対して
    使用するパターンデータ、 (b)該タイルに関連付けて、第2の勾配の線に対して
    使用するXセクションデータ、 (c)該タイルのXセクションデータのシフトに使用さ
    れるシフトデータ、 を有する方法。
  4. 【請求項4】前記各タイルに関して第1と第2の勾配が
    互いに対称である特許請求の範囲第3項に記載の方法。
  5. 【請求項5】前記タイルがルックアップテーブルに記憶
    されていることを特徴とする特許請求の範囲第4項に記
    載の方法。
JP1165136A 1988-06-27 1989-06-27 ラスタ化方法 Expired - Fee Related JP2925587B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US211,789 1988-06-27
US07/211,789 US5028848A (en) 1988-06-27 1988-06-27 Tile vector to raster conversion method

Publications (2)

Publication Number Publication Date
JPH0244482A JPH0244482A (ja) 1990-02-14
JP2925587B2 true JP2925587B2 (ja) 1999-07-28

Family

ID=22788382

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1165136A Expired - Fee Related JP2925587B2 (ja) 1988-06-27 1989-06-27 ラスタ化方法

Country Status (6)

Country Link
US (1) US5028848A (ja)
EP (1) EP0348631B1 (ja)
JP (1) JP2925587B2 (ja)
KR (1) KR0150784B1 (ja)
CA (1) CA1322796C (ja)
DE (1) DE68923227T2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5164711A (en) * 1990-02-08 1992-11-17 International Business Machines Corporation System and method for generating graphical output
JPH0561980A (ja) * 1991-09-04 1993-03-12 Nec Corp 線分描画装置
US5371843A (en) * 1992-10-16 1994-12-06 International Business Machines Corporation Method and system for filling non-complex polygons using vertical spans
EP0919909B1 (en) * 1996-03-04 2007-05-09 Canon Finetech Inc. Image processor
GB9727240D0 (en) 1997-12-23 1998-02-25 Sgs Thomson Microelectronics Controlling an output device
WO2003001458A1 (fr) * 2001-06-21 2003-01-03 Hi Corporation Processeur de donnees
US6791547B2 (en) * 2001-10-18 2004-09-14 Hewlett-Packard Development Company, L.P. Auxiliary active region determination for line width generation in regionalized rasterizer displays
US7293088B2 (en) * 2003-07-28 2007-11-06 Cisco Technology, Inc. Tag location, client location, and coverage hole location in a wireless network
US6990428B1 (en) * 2003-07-28 2006-01-24 Cisco Technology, Inc. Radiolocation using path loss data
US7286515B2 (en) * 2003-07-28 2007-10-23 Cisco Technology, Inc. Method, apparatus, and software product for detecting rogue access points in a wireless network
US7260408B2 (en) * 2004-02-20 2007-08-21 Airespace, Inc. Wireless node location mechanism using antenna pattern diversity to enhance accuracy of location estimates
US7286833B2 (en) * 2004-02-27 2007-10-23 Airespace, Inc. Selective termination of wireless connections to refresh signal information in wireless node location infrastructure
US7205938B2 (en) * 2004-03-05 2007-04-17 Airespace, Inc. Wireless node location mechanism responsive to observed propagation characteristics of wireless network infrastructure signals
US7116988B2 (en) * 2004-03-16 2006-10-03 Airespace, Inc. Location of wireless nodes using signal strength weighting metric
US7433696B2 (en) * 2004-05-18 2008-10-07 Cisco Systems, Inc. Wireless node location mechanism featuring definition of search region to optimize location computation
US7286835B1 (en) * 2004-09-10 2007-10-23 Airespace, Inc. Enhanced wireless node location using differential signal strength metric
US7047014B1 (en) * 2004-11-05 2006-05-16 Airespace, Inc. Raster-to-vector conversion operations adapted to modeling of RF propagation
US7835749B1 (en) 2006-10-03 2010-11-16 Cisco Technology, Inc. Location inspector in wireless networks
US7616555B2 (en) * 2006-10-03 2009-11-10 Cisco Technology, Inc. Minimum variance location estimation in wireless networks
US7626969B2 (en) * 2006-10-04 2009-12-01 Cisco Technology, Inc. Relative location of a wireless node in a wireless network
US7983667B2 (en) 2006-10-05 2011-07-19 Cisco Technology, Inc. Radio frequency coverage map generation in wireless networks
US7734412B2 (en) * 2006-11-02 2010-06-08 Yahoo! Inc. Method of client side map rendering with tiled vector data
US7904092B2 (en) * 2007-01-04 2011-03-08 Cisco Technology, Inc. Locally adjusted radio frequency coverage maps in wireless networks
US7925100B2 (en) * 2007-07-31 2011-04-12 Microsoft Corporation Tiled packaging of vector image data
US7982749B2 (en) * 2008-01-31 2011-07-19 Microsoft Corporation Server-based rasterization of vector graphics
US9183428B2 (en) * 2011-01-31 2015-11-10 Beijing Ereneben Information Technology Co., Ltd. Method and device for implementing original handwriting trace, and electronic device
JP5852374B2 (ja) * 2011-09-07 2016-02-03 株式会社Screenホールディングス 描画装置および描画方法
RU2592399C2 (ru) * 2014-10-31 2016-07-20 Общество с ограниченной ответственностью "КЛЕВЕРЕНС СОФТ" Способ кодирования и записи данных на rfid-метку

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4205389A (en) * 1976-09-24 1980-05-27 General Electric Company Apparatus for generating a raster image from line segments
US4254467A (en) * 1979-06-04 1981-03-03 Xerox Corporation Vector to raster processor
US4425559A (en) * 1980-06-02 1984-01-10 Atari, Inc. Method and apparatus for generating line segments and polygonal areas on a raster-type display
US4451895A (en) * 1980-07-17 1984-05-29 Telesis Corporation Of Delaware, Inc. Interactive computer aided design system
US4458330A (en) * 1981-05-13 1984-07-03 Intergraph Corporation Banded vector to raster converter
EP0112942B1 (en) * 1982-12-30 1987-03-11 International Business Machines Corporation Graphics display system and method
US4601002A (en) * 1983-01-06 1986-07-15 The United States Army Corps Of Engineers As Represented By The Secretary Of The Army Digital technique for constructing variable width lines
EP0130245B1 (en) * 1983-06-30 1989-01-18 International Business Machines Corporation Method of storing characters in a display system
US4549275A (en) * 1983-07-01 1985-10-22 Cadtrak Corporation Graphics data handling system for CAD workstation
US4611268A (en) * 1984-01-06 1986-09-09 Goetz Sandor Method and electronic apparatus for optimal arrangement of shapes having at least two dimensions
JPS60179877A (ja) * 1984-02-28 1985-09-13 Canon Inc パターン太め装置及び方法
NL8502643A (nl) * 1985-09-27 1986-04-01 Oce Nederland Bv Werkwijze voor het genereren van lijnstukken.
JPS62109182A (ja) * 1985-11-07 1987-05-20 Fujitsu Ltd 高速直線描画方式
JPH033084A (ja) * 1989-05-31 1991-01-09 Ricoh Co Ltd 直線描画方法

Also Published As

Publication number Publication date
DE68923227D1 (de) 1995-08-03
US5028848A (en) 1991-07-02
JPH0244482A (ja) 1990-02-14
EP0348631A3 (en) 1992-01-02
KR900000763A (ko) 1990-01-30
KR0150784B1 (ko) 1998-10-15
CA1322796C (en) 1993-10-05
EP0348631B1 (en) 1995-06-28
DE68923227T2 (de) 1995-11-30
EP0348631A2 (en) 1990-01-03

Similar Documents

Publication Publication Date Title
JP2925587B2 (ja) ラスタ化方法
US4851825A (en) Grayscale character generator and method
US5241653A (en) Apparatus and method for adjusting and displaying scaled, rasterized characters
EP0360155B1 (en) Image transformation method and device
US5355449A (en) Method and apparatus for outline font character generation in dot matrix devices
US5115402A (en) Scan-conversion process and processor for converting a graphic primitive to a pixel map
JP3071357B2 (ja) 曲線を描く装置及び方法
US5428728A (en) Method and apparatus for outline font character generation in dot matrix devices
US5489920A (en) Method for determining the optimum angle for displaying a line on raster output devices
US5276790A (en) Fast vertical scan-conversion and filling method and apparatus for outline font character generation in dot matrix devices
EP0344686B1 (en) Clipping process and processor
US5870107A (en) Character and symbol pattern generator based on skeleton data including thickness calculation
US5898439A (en) Method and apparatus for drawing characters which draws curved segments based on approximate points
JPH03210680A (ja) 曲線発生装置
US5708763A (en) Tiling for bit map image
US5317650A (en) Determination of the arc length of a curve
US5815163A (en) Method and apparatus to draw line slices during calculation
JP3034140B2 (ja) 文字生成方法及びその装置
EP0339758B1 (en) Image processing apparatus for performing projective transformations
JPS63208898A (ja) 文字処理装置
US5600769A (en) Run slice line draw engine with enhanced clipping techniques
US5657435A (en) Run slice line draw engine with non-linear scaling capabilities
JP3517982B2 (ja) 図形描画装置
US5627957A (en) Run slice line draw engine with enhanced processing capabilites
JPH01303489A (ja) 文字出力方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees