JPH05120446A - パターン描画方式 - Google Patents

パターン描画方式

Info

Publication number
JPH05120446A
JPH05120446A JP28430091A JP28430091A JPH05120446A JP H05120446 A JPH05120446 A JP H05120446A JP 28430091 A JP28430091 A JP 28430091A JP 28430091 A JP28430091 A JP 28430091A JP H05120446 A JPH05120446 A JP H05120446A
Authority
JP
Japan
Prior art keywords
pattern
data
width
bit
span
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
JP28430091A
Other languages
English (en)
Inventor
Hitoshi Saito
仁志 斉藤
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.)
HOKKAIDO NIPPON DENKI SOFTWARE KK
NEC Solution Innovators Ltd
Original Assignee
HOKKAIDO NIPPON DENKI SOFTWARE KK
NEC Software Hokkaido 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 HOKKAIDO NIPPON DENKI SOFTWARE KK, NEC Software Hokkaido Ltd filed Critical HOKKAIDO NIPPON DENKI SOFTWARE KK
Priority to JP28430091A priority Critical patent/JPH05120446A/ja
Publication of JPH05120446A publication Critical patent/JPH05120446A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】フレームメモリへのビット単位のアクセス幅よ
り大きく、かつその倍数値以外の幅のビットパターンを
用いたスパンの塗りつぶし描画を行う場合に、最適化に
よって高速な描画処理をできるようにする。 【構成】データ入力部1により上位ルーチンからパラメ
ータを受け取り、データ計算部2によりスパン描画に適
した形式に加工し、描画出力部3によりビットマップを
マップディスプレイへの描画出力を行う。 【効果】パターンの幅がビット単位のアクセス幅より大
きい場合でも、アクセスの度ごとにパターンデータを展
開する必要がなく、単純な命令によってマスクパターン
の生成を行うことができるようになるので、大幅にその
描画の処理性能を向上させることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はパターン描画方式に関
し、特にビットマップディスプレイを表示装置とし、メ
モリ空間にマップされたフレームメモリにアスセスする
ことで、ビットマップディスプレイ上への描画出力を行
うパターン描画方式に関する。フレームメモリへのビッ
ト単位のアクセス幅より大きく、かつその倍数値以外の
幅のビットパターンを用いたスパンの塗りつぶし描画を
行う場合に、終端データと呼ぶ補助的なパターンデータ
を用いることで、描画時のパターン展開を最小限にし、
最適化によって高速性を向上させたパターン描画方式に
関するものである。
【0002】
【従来の技術】近年の情報処理システムは、利用者との
対話性を高める方向に発展しており、端末としても、ビ
ットマップディスプレイとマウスとを備えたものが主流
となっている。そのような環境下で、応用プログラムの
ユーザインタフェースも、文字を利用したものからグラ
フィックを利用したものへと変わりつつあるが、グラフ
ィック処理のシステムに対する負荷は高く、その処理速
度の向上は重要な課題となっている。特に、ビットパタ
ーンを用いて塗りつぶしを行うパターン描画では、描画
時に使用するマスクパターンのデータ操作が複雑で、そ
の処理にかなりの時間をかけなければならない。
【0003】そこで、パターンの幅によってそれぞれ最
適化されたアルゴリズムを用いることで、高速化を図る
という方式が提案されている。
【0004】このパターン描画方式ては、フレームメモ
リへのビット単位のアクセス幅を基準として、パターン
の幅をアクセス幅と等しいもの、アクセス幅の約数とな
るもの、アクセス幅の倍数となるもの、アクセス幅より
小さく約数とならないもの、アクセス幅より大きく倍数
とならないもの5つに分類する。この内、前三者はビッ
トパターンをアクセス幅の単位に展開、または分割でき
るので、フレームメモリのアクセス時にマスクパターン
を生成する必要がなく、高速に描画できるのに対し、後
二者はフレームメモリのアクセス時にマスクパターンを
生成しなければならず、特にアクセス幅より大きな場合
はアルゴリズムは汎用的で低速なものであった。
【0005】
【発明が解決しようとする課題】しかし、このような従
来の技術においては、特定の幅をもつビットパターンの
スパン描画を高速化してはいるものの、それ以外の幅を
もつビットパターンのスパン描画の高速化はなされてい
ない。特に従来の技術では、アクセス幅より大きな場合
のパターン描画において、マスクパターンの生成に剰余
命令を使用しているので、これが非常に大きな負荷とな
っている。
【0006】従って、パターン描画を行う場合に、パタ
ーンの幅によって高速に表示されるものと、表示にかな
り時間のかかるものがでてくるという問題があった。こ
れは、高速な処理を要求されるアプリケーションの作成
者にとって、使用できるパターンが限られるという点で
強い制約となるものとなっていた。
【0007】
【課題を解決するための手段】本発明のパターン描画方
式は、ビットマップディスプレイを表示装置とし、メモ
リ空間にマップされたフレームメモリにアクセスするこ
とで、ビットマップディスプレイ上への描画出力を行う
システムにおいて、ビットパターンを用いたスパンの塗
りつぶし描画を行う場合に、描画に必要なデータを得る
ためのデータ入力部と、前記データをスパン描画に適し
た形式に加工するデータ計算部と、前記データに基づい
てフレームメモリをアクセスし、ビットマップディスプ
レイ上への描画出力を行う描画出力部3とを備え、フレ
ームメモリへのビット単位のアクセス幅より大きく、か
つその倍数値以外の幅のビットパターンを用したスパン
の塗りつぶし描画を行う場合に終端データと呼ぶ補助的
なパターンデータを用いて構成される。
【0008】
【実施例】以下、図面を参照しつつ、実施例にしたがっ
て説明する。なお、この実施例では、整数の内部表現を
32ビットとし、フレームメモリのアクセス幅を16ビ
ットであると仮定して説明している。
【0009】図1は本発明の一実施例の構成を示すブロ
ック図、図2はデータ計算部1の処理を示す流れ図。図
3は描画出力部3の処理を示す流れ図、図4はデータ補
正部22の処理を示す流れ図、図5は描画スパンとパラ
メータとの関係を示す説明図、図6は終端データの説明
図である。
【0010】まず図1の用いて、本実施例の機能を示
す。
【0011】データ入力部1は、例えば、上位ルーチン
から渡されたパラメータを解釈し、スパンの開始点の座
標、スパンの幅、ビットパターンのパターンデータと幅
を得るものであり、データ計算部2は、データ入力部1
で得られた上記データをスパン描画に適した形式に加工
し、初期値を定める。描画出力部3は、データ計算部2
で加工された上記データに基づいてフレームメモリをア
クセスし、ビットマップディスプレイへの描画出力を行
うものである。
【0012】次に、図2を用いて、データ計算部2を中
心として本実施例の動作を示す。
【0013】処理11は、ビットパターンのユニット数
を計算する(ビットパターンのユニットは、パターンを
16ビットごとに区切ったときの1単位と定義する)。
処理12は、スパンの開始点の座標によって、描画座標
の初期値を計算する(描画座標は、描画を行うべき16
ビット境界の先頭の位置を示す)。処理13は、スパン
の開始点の座標によって、パターン座標の初期値を計算
する。パターン座標は、パターンの先頭ビットが描画さ
れるべき位置を示す。処理14は、スパンの開始点の座
標によって、描画を行うべきフレームメモリ内のアドレ
ス位置を計算する。
【0014】処理15は、スパンの開始点の座標とスパ
ンの幅によって、アクセス単位によるスパンの幅を計算
する。処理16は、スパンの開始点の座標によって、シ
フト量の初期値を計算する。シフト量はパターン座標の
下位4ビットの値で与えられる。ただし、値が0の場合
には処理16に再設定する。
【0015】処理17は、スパンの開始点の座標によっ
て、ビットパターン内のユニットインデックスの初期値
を計算する。処理18は、高速にパターン展開を行うた
めの終端データを計算する。終端データとは、ビットパ
ターンの最終32ビットのデータであり、終端データの
最終ビットとビットパターンの最終ビットとを一致させ
る。ビットパターンが32ビットより小さい場合の終端
データのビットパターン以外のデータは不定とする。処
理19は、インデックスが示すパターンユニットをレジ
スタに格納する。
【0016】なお、図5に描画スパンと上記パラメータ
との関係を示す説明図を示し、図6に終端データの説明
図を示す。
【0017】次に、図3と図4とを用いて描画出力部3
を中心とした本実施例の動作を説明する。
【0018】処理21は、アクセス幅を調べ、次のアク
セスを行うかどうかを決定する。アクセス幅が0の場合
には、全体の処理を中止する。データ補正部22は、処
理31〜39より構成され、パラメータの構成をおこな
う。
【0019】処理23は、まず、レジスタ内のデータを
16ビット左シフトし、補正されたインデックスが示す
パターンユニットを下位16ビットに格納した後、レジ
スタ内のデータをシフト量の分だけ右シフトしたものを
マスクパターンとして生成する。処理24は、処理23
で生成されたマスクデータはアドレスによって示される
フレームメモリ内の特定位置に書き込まれる。処理25
は、上記アドレスを更新し、次のアクセス位置を示すよ
うにする。処理26は、現在の描画座標値にアクセス幅
の16を加算する。処理27は、現在のアクセス幅より
1を減算し処理21に戻す。
【0020】次に図4については、処理31はインデッ
クスの値を調べ、その値がパターンのユニット数と等し
ければ処理39を行い、データ補正部22の処理を終了
する。処理32は、現在のパターン座標値にパターン幅
の値を加算する。処理33は、処理32で補正したパタ
ーン座標値の下位4ビットの値をシフト量に設定する。
ただし、値が0の場合には16に再設定する。処理34
は、パターン座標の値を調べ、その値が現在の描画座標
値より大きければ処理35,36を行ってデータ補正部
22の処理を終了する。それ以外の場合には、処理3
7,38を行って、データ補正部を終了する。
【0021】すなわち、処理35は終端データをレジス
タに格納し、処理36はインデックスに0を設定する。
処理37はインデックス0のパターンユニットをレジス
タに格納し、処理38はインデックスに1を設定し、処
理39はインデックスに1の加算して終了する。
【0022】なお、図5により描画スパンと上述のパラ
メータの関係概念を示す。描画座標は水平軸上(x軸
上)、原点よりアクセス幅ごとに増加する座標値で、描
画スパンの開始点座標より小さく、かつ最大の座標をそ
の初期値とする。パターン座標は水平軸上、原点よりパ
ターン幅ごとに増加する座標値で、スパンの開始点座標
より小さく、かつ最大の座標をその初期値とする。シフ
ト量は、パターン座標と描画座標とのずれを表し、パタ
ーン座標とその座標値より小さくかつ最大の描画座標値
との差を得ることで得られる。
【0023】また、図6により終端データの概念を示
す。図6の分図(A)に示すようにパターン幅が32ビ
ット以上の場合には、そのパターンの下位32ビット
(図面の上でパターン幅の右端から数えて32ビット)
をそのデータ値とする図6の分図Bに示すようにパター
ン幅が32より小さい場合にはそのパターンを右詰めで
32ビットのデータ領域に格納する。このとき、パター
ンビットより上位のビットの値(図面の上で終端データ
の左端の斜線領域のビット)は不定となる。なおここで
図5の描画スパンのy座標については、一定値とし線分
を表示し、曲線や斜線についてはyの値が一定の直線、
すなわちx軸に平行な直接(xの値は上限・下限のある
線分)の集合として表示される。
【0024】
【発明の効果】以上説明したごとく本発明によれば、パ
ターンの幅がビット単位のアクセス幅より大きい場合で
も、アクセスの度ごとにパターンデータを展開する必要
がなく、単純な命令によってマスクパターンの生成を行
うことができるようになるので、大幅にその描画の処理
性能を向上させることができるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図。
【図2】データ計算部1の処理を示す流れ図。
【図3】描画出力部3の処理を示す流れ図。
【図4】データ補正部22の処理を示す流れ図。
【図5】描画スパンとパラメータとの関係を示す説明
図。
【図6】終端データの説明図。
【符号の説明】
1 データ入力部 2 データ計算部 3 描画出力部

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 ビットマップディスプレイを表示装置と
    し、メモリ空間にマップされたフレームメモリにアクセ
    スすることで、ビットマップディスプレイ上への描画出
    力を行うシステムにおいて、 ビットパターンを用いたスパンの塗りつぶし描画を行う
    場合に、描画に必要なデータを得るためのデータ入力部
    と、前記データをスパン描画に適した形式に加工するデ
    ータ計算部と、 前記データに基づいてフレームメモリをアクセスし、ビ
    ットマップディスプレイ上への描画出力を行う描画出力
    部3とを備え、フレームメモリへのビット単位のアクセ
    ス幅より大きく、かつその倍数値以外の幅のビットパタ
    ーンを用いたスパンの塗りつぶし描画を行う場合に終端
    データと呼ぶ補助的なパターンデータを用いて成ること
    を特徴とするパターン描画方式。
JP28430091A 1991-10-30 1991-10-30 パターン描画方式 Pending JPH05120446A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28430091A JPH05120446A (ja) 1991-10-30 1991-10-30 パターン描画方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28430091A JPH05120446A (ja) 1991-10-30 1991-10-30 パターン描画方式

Publications (1)

Publication Number Publication Date
JPH05120446A true JPH05120446A (ja) 1993-05-18

Family

ID=17676749

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28430091A Pending JPH05120446A (ja) 1991-10-30 1991-10-30 パターン描画方式

Country Status (1)

Country Link
JP (1) JPH05120446A (ja)

Similar Documents

Publication Publication Date Title
JP3164617B2 (ja) 文字図形変形処理装置および方法
US6295072B1 (en) Method and apparatus for rendering cubic curves
CN102156688A (zh) 一种文字变形特效处理方法及装置
JPH08297737A (ja) 任意図形クリッピング方法および装置
JP2002298153A (ja) 4ピクセル・テクスチャ・パイプラインにおけるパースペクティブ補正テクスチャ座標のための偏導関数生成
JP3037854B2 (ja) 文字生成方法及びその装置
CN107977923B (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
JPH05120446A (ja) パターン描画方式
JP2774662B2 (ja) 文字処理装置
US7151862B2 (en) Image processing apparatus and method, storage medium, and program
JP3479282B2 (ja) 文字図形変形処理装置
JP3280160B2 (ja) 文書処理装置および文書処理方法
CN115202553A (zh) 白板应用的控制方法、装置和电子设备
JP2888745B2 (ja) 文字間隔調整方法
JP2007122188A (ja) 画像形成装置及び画像処理方法、並びにプログラム
JP2806679B2 (ja) 文字発生装置
JPH04373084A (ja) 文字図形変形処理装置
JP3170249B2 (ja) 文字図形変形処理装置および方法
JP2776347B2 (ja) プリンタ用描画装置
JP3164795B2 (ja) 文字図形変形処理装置および方法
JP3724868B2 (ja) イメージ処理方法
JP3004993B2 (ja) 画像処理装置
JPH09134441A (ja) 曲線の直線近似装置
CN121921417A (zh) 渲染方法与渲染装置
JPH04162092A (ja) アウトラインフォントの文字発生方式