(57)【要約】　　　（修正有）【課題】ハードウェア・アクセレレーションを通して、表示画面上に効率的に画像を充填するための装置を提供する。【解決手段】１つの代表的な装置は、ディスプレイコントローラを含むもので、ディスプレイコントローラは、描画エンジン回路構成１６６と，表示画面上に描画される画像の、各画素のアドレスと色を生成するように設定された、画像生成回路構成１７２を含む。画像生成回路構成は、描画される表示画面上の画像の、最初のフットプリントに、隣接していて、それと重ならないセクターの座標を識別して選択するように設定された、ペン幅選択回路構成１７４を含む。ディスプレイコントローラは、中央演算処理装置１６２（ＣＰＵ）とメモリとのインターフェースを取るように設定された、データ処理選択回路構成１７８を含む。データ処理選択回路構成は、画像生成回路構成とコミュニケーションをとるもので、画像の各画素のアドレスと色を受け取るように設定されている。【選択図】　図７
2004046800.tif 000002
【特許請求の範囲】
【請求項１】
表示画面上に描画される画像の、各画素の色とアドレスを生成するように設定された画像生成回路構成であって、この画像生成回路構成は、
表示画面上に描画される画像の最初のフットプリントに隣接していて、そして重なっていないセクターの座標を、特定及び選択するように設定されたペン幅選択回路構成と、
中央演算処理装置（ＣＰＵ）及びメモリにインターフェースを取るように設定されたデータ処理選択回路構成とを具備し、このデータ処理選択回路構成は、前記画像生成回路構成と通信可能に接続され、前記画像の各画素の前記色と前記アドレスを受け取るように設定されている、
ことを特徴とするディスプレイコントローラ。
【請求項２】
前記画像生成回路構成と前記データ処理選択回路構成に通信可能に接続しているコントロールブロック回路構成をさらに具備し、このコントロールブロック回路構成は、前記画像生成回路構成と前記データ処理選択回路構成との間の信号を管理するように設定されている、
ことを特徴とする請求項１に記載のディスプレイコントローラ。
【請求項３】
前記ペン幅選択回路構成は、加算器、減算器、カウンター、及び比較器を有することを特徴とする請求項１に記載のディスプレイコントローラ。
【請求項４】
前記データ処理選択回路構成は、宛先に書き込む前に、データを宛先から読み出すことができるように設定されていることを特徴とする請求項１に記載のディスプレイコントローラ。
【請求項５】
前記ペン幅選択回路構成は、描画される画素の領域を特定するフットプリントのペン幅を定義することを特徴とする請求項１に記載のディスプレイコントローラ。
【請求項６】
ディスプレイコントローラは、組込み型システムの構成要素であることを特徴とする請求項１に記載のディスプレイコントローラ。
【請求項７】
前記組込み型システムは、携帯用電子機器をコントロールするものであることを特徴とする請求項６に記載のディスプレイコントローラ。
【請求項８】
中央処理演算装置と、
ランダムアクセスメモリと、
前記中央演算処理装置と前記ランダムアクセスメモリとに通信可能に接続している描画エンジン回路構成とを具備し、
前記描画エンジン回路構成は、
データ処理選択回路構成と、
前記データ処理選択回路構成に通信可能に接続している画像生成回路構成とを備え、この画像生成回路構成は、ペン幅選択回路構成を有し、このペン幅選択回路構成は、画像を描画するために用いる、隣接していて、そして重なっていない続きのセクターを定義することによってその画像を描画可能にする、
ことを特徴とする画像表示装置。
【請求項９】
前記ペン幅選択回路構成は、描画される画素の領域を特定するフットプリントのペン幅を定義することを特徴とする請求項８に記載の画像表示装置。
【請求項１０】
前記ペン幅選択回路構成は、ブレゼンハム・サークル・アルゴリズムにより画像を生成するために使用される続きのセクターの、移動方向を決定するように設定されていることを特徴とする請求項８に記載の画像表示装置。
【請求項１１】
前記描画エンジン回路構成は、さらに、前記画像生成回路構成と前記データ処理選択回路構成とに通信可能に接続しているコントロールブロック回路構成を具備し、このコントロールブロック回路構成は、前記画像生成回路構成と前記データ処理選択回路構成との間の信号を管理するように設定されている、
ことを特徴とする請求項８に記載の画像表示装置。
【請求項１２】
前記データ処理選択回路構成は、宛先に書き込む前に、データを宛先から読み出すことができるように設定されていることを特徴とする請求項８に記載の画像表示装置。
【請求項１３】
前記画像は、液晶ディスプレイの表示画面上に表示されることを特徴とする請求項８に記載の画像表示装置。
【請求項１４】
前記描画エンジン回路構成は、液晶ディスプレイコントローラの構成要素であることを特徴とする請求項８に記載の画像表示装置。
【請求項１５】
表示画面上に、コンピュータにより生成された画像を描画する画像描画方法において、
第１画素グループに対応するフットプリント領域を定義するステップと、
前記第１画素グループを充填するステップと、
表示画面上に表示される画像の移動方向を決定するステップと、
前記フットプリント領域に隣接していて、そして重なっていないセクターの位置を計算するステップと、
前記フットプリント領域に隣接していて、そして重なっていないセクターに対応する第２画素グループを充填するステップと、
を有することを特徴とする画像描画方法。
【請求項１６】
表示画面上に表示される画像の移動方向を決定する前記ステップは、さらに、カーブ上の点を定義するために、ブレゼンハム・サークル・アルゴリズムを適用するステップを有することを特徴とする請求項１５に記載の画像描画方法。
【請求項１７】
前記コンピュータにより生成された画像は、丸みを帯びた矩形であることを特徴とする請求項１５に記載の画像描画方法。
【請求項１８】
フットプリント領域の大きさがペン幅により定義されることを特徴とする請求項１５に記載の画像描画方法。
【請求項１９】
第１画素グループに対応するフットプリント領域を定義する前記ステップは、
フットプリント領域を定義するために、フットプリントを予測するステップを、さらに具備するものであって、それにより前記フットプリント領域の参照点が、前記表示画面上の前記コンピュータにより生成された画像の開始座標に対応することを特徴とする請求項１５に記載の画像描画方法。
【請求項２０】
前記フットプリント領域に隣接していて、そして重なっていないセクターの位置を計算する前記ステップは、
前記隣接していて、重なっていないセクターによって、定義された各画素の色及びアドレスを提供するステップを、さらに有することを特徴とする請求項１５に記載の画像描画方法。
【請求項２１】
前記隣接していて、重なっていないセクターは、１画素幅であることを特徴とする請求項１５に記載の画像描画方法。
【請求項２２】
前記コンピュータにより生成された画像は、丸みを帯びた矩形であることを特徴とする請求項１５に記載の画像描画方法。
【請求項２３】
定義された開始座標を持つ表示画面上にコンピュータにより生成された画像を充填する画像充填方法において、
参照点を有するフットプリントを定義するステップと、
表示画面上のフットプリント領域を特定するステップであって、そのフットプリント領域は、参照点が画像の開始座標に対応するときに前記フットプリントにより定義されるものであり、
前記フットプリント領域に関連する画素を充填するステップと、
前記フットプリント領域に隣接していて、そして重なっていないセクターの位置を計算するステップと、
前記隣接しているセクターに関連している画素を充填するステップと、
前記フットプリント領域に隣接していて、そして重なっていないセクターの位置を計算するステップと、画像を定義するために、続きのセクターのうち、隣接しているセクターに関連している画素を充填するステップを繰り返すステップと、
を有することを特徴とする画像充填方法。
【請求項２４】
前記フットプリント領域に隣接していて、そして重なっていないセクターの位置を計算する前記ステップは、
前記開始座標からの移動の方向を決定するステップと、
前記隣接していて、そしえ重なっていないセクターによって、定義された各画素の色及びアドレスを提供するステップと、
をさらに有することを特徴とする請求項２３に記載の画像充填方法。
【請求項２５】
前記開始座標からの移動の方向を決定する前記ステップは、
前記コンピュータにより生成された画像を描画するために、ブレゼンハム・サークル・アルゴリズムを適用するステップをさらに有しており、前記コンピュータにより生成された画像は、弧形であることを特徴とする請求項２４に記載の画像充填方法。
【請求項２６】
前記フットプリントの大きさはペン幅により定義されていることを特徴とする請求項２３に記載の画像充填方法。
【請求項２７】
前記フットプリントは四角形であることを特徴とする請求項２６に記載の画像充填方法。
【請求項２８】
前記参照点は、前記四角形の角に位置している点により定義されていることを特徴とする請求項２７に記載の画像充填方法。
【請求項２９】
前記セクターは、１画素幅であることを特徴とする請求項２３に記載の画像充填方法。
【請求項３０】
表示画面上に前記画像を表示するステップを、さらに有することを特徴とする請求項２３に記載の画像充填方法。
【請求項３１】
前記表示画面は液晶ディスプレイであることを特徴とする請求項３０に記載の画像充填方法。
【請求項３２】
前記コンピュータにより生成された画像は丸みを帯びた矩形であることを特徴とする請求項２３に記載の画像充填方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本願発明は、一般にコンピュータグラフィックスシステムに関連する。そしてより詳細には、より効率的に、コンピュータにより生成された画像を、表示画面に表示し、充填するための方法及び装置に関する。
【０００２】
【従来の技術】
携帯型の消費者向け電気製品の表示画面に表示される画像は、これらのハンドヘルド装置に対する消費者の要求に応えることもその理由の一つであるが、高品質の画像を達成するために一段と複雑になってきている。パーソナル・ディジタル・アシスタント（ＰＤＡ）、携帯電話、ページャ、ウエブ・タブレットなどのような装置は全て、文字やグラフィックスを表示するための小さな画面（スクリーン）を有する。画面への文字やグラフィックスの表示には、ペン幅とも呼ばれるある幅を持った画像ライン（ｉｍａｇｅ　ｌｉｎｅｓ）が用いられる。これらの真っ直ぐや曲がった画像ラインは、どの画素（ピクセル）を描画するかを定義することによって、液晶ディスプレイ（ＬＣＤ）のような画面上に表示される。画面上に表示されるファイルが、高解像度になってより複雑になるにつれてハンドヘルド装置に組込まれたシステムに求められる処理は増大し、別の障害（ボトルネック）を引き起こし、その結果、表示画面上のグラフィクス表示が遅れてしまうことになる。さらに、これらのハンドヘルド装置をコントロールする組込み型のシステムは、小型という特徴ゆえに、メモリや計算能力が限られているため、この障害はさらに悪化する。
【０００３】
図１は、ＬＣＤ画面のようなコンピュータ画面上に描画される、コンピュータにより生成されたカーブ（曲線）を拡大した概略図である。画像が充填（ｆｉｌｌ）される境界を提供するライン（ｌｉｎｅｓ）１００及び１０２の間でカーブが定義される。ペン幅１０４は、ライン１００及び１０２の間の距離として定義される。領域１０６は、画素グループを定義する、表示画面上の区域に対応するものである。領域１０６に対応する画素グループは、表示画面上に描画されている画像のように充填される。領域１０６によって定義された区域が充填されると、充填される他の画素グループを定義するために、フットプリント（ｆｏｏｔｐｒｉｎｔ）は、ライン１００に沿って１ユニット進む。そして、領域１０８に対応する画素グループが描画される。領域１０８に対応する画素グループは、フットプリントが１ユニット進むことで決まるグループである。
【０００４】
【特許文献１】
米国特許第５，８７２，５５３号明細書
【特許文献２】
米国特許第５，８４７，７１５号明細書
【特許文献３】
米国特許第５，７２１，８８５号明細書
【０００５】
【発明が解決しようとする課題】
しかしながら、この処理においては、領域１０６と領域１０８との重なっている領域１１０は、２度描画されることになる。すなわち、領域１０６によって定義されるように、領域１１０が１度書かれて、そして、領域１０８によって定義されるように上書きされる。これは結果として処理時間の浪費となる。そしてこの上書き処理は、全部のグラフィックが描画されるまで、繰り返される。
【０００６】
上記のとおり、ソフトウェアで画像を表示するアルゴリズムを実行する場合の別の欠点は、アルゴリズムの実行と関連したオーバーヘッドの量である。上に言及したように、前に描画された画素に上書きするといった非能率的な処理は、オーバーヘッドの観点からは高コストとなってしまう。さらに、ハンドヘルド装置は、絶えず小型化され、より消費電力が小さくなるように形成されている。これらの装置をコントロールする組込み型のシステムは、計算能力が制限されるため、オーバーヘッドを最小にする必要がある。高解像度で複雑なグラフィック画像が表示可能な製品が市場に出てくるのに伴い、表示品質を犠牲にすることなく効率的に画像を表示すというこれらの問題に取り組まなければならなくなってきた。
【０００７】
従って、従来技術の問題を解決し、表示のために、コンピュータにより生成されたグラフィック画像を効率的に処理するための方法及びソフトウェアの実行に関連するオーバーヘッドを最小にするためのハードウェア・アクセレレーション解決策を提供する必要がある。
【０００８】
そこで本願発明の目的は、これらの従来技術の問題点を解決するために、表示画面上に、コンピュータにより生成された画像を、より効率的に表示するための方法及びシステムを提供することにある。
【０００９】
【課題を解決するための手段】
概括的に話をすると、本願発明は、表示画面上に、コンピュータにより生成された画像を、より効率的に表示するための方法及びシステムを提供することにより、これらの要求を満たすものである。本願発明が、プロセス、システム、あるいは装置を含む多くの手段に実装され得ることは特筆すべきことである。本願発明のいくつかの独創的な実施例を、以下に記述する。
【００１０】
１つの実施例においては、ディスプレイコントローラが提供される。ディスプレイコントローラは、表示画面上に描画される画像の、それぞれの画素のアドレスと色を生成するように設定された画像生成回路構成を有する。画像生成回路構成は、描画される表示画面上の画像の、最初のフットプリント（ｆｏｏｔｐｒｉｎｔ）に隣接していて、かつ重なり合っていないセクターの座標を識別して、選択するように設定されたペン幅選択回路構成を有する。中央演算処理装置（ＣＰＵ）とメモリとのインターフェースを取るように設定された、データ処理選択回路構成も、ディスプレイコントローラに含まれる。データ処理選択回路構成は、画像生成回路構成とコミュニケーションをとるもので、画像の、それぞれの画素のアドレスと色を受け取るように設定されている。
【００１１】
もう１つの実施例においては、画像を描画するように設定された装置が提供される。この装置は、中央演算処理装置（ＣＰＵ）と、ランダムアクセスのメモリ（ＲＡＭ）を有する。ＣＰＵ及びＲＡＭとコミュニケーションを取る描画エンジン回路構成が含まれている。描画エンジン回路構成は、データ処理選択回路構成及び画像生成回路構成を有する。画像生成回路構成は、データ処理選択回路構成とコミュニケーションを取るものである。画像生成回路構成は、画像を生成するために使われる、隣接していて、かつ重なり合っていない続きのセクターを定義することによって、画像の効率的な表示を可能にするペン幅選択回路構成を含む。
【００１２】
さらにもう１つの実施例においては、表示画面上に、コンピュータにより生成された画像を描画するための方法が提供される。この方法は、第１画素グループに対応するフットプリント領域を定義することから始まる。それから、この第１画素グループが充填される（満たされる）。次に、表示画面上に表示される画像に対して移動方向が決定される。それから、フットプリント領域に隣接していて、重なりあっていないセクターの位置が計算される。次に、そのフットプリント領域に隣接していて、重なりあっていないセクターに対応する第２画素グループが充填される。
【００１３】
さらにもう１つの実施例においては、定義された開始座標を持つ表示画面上に、コンピュータにより生成された画像を充填するための方法が提供される。この方法は、参照の点（ｒｅｆｅｒｅｎｃｅ　ｐｏｉｎｔ）を持つフットプリントを定義することから始まる。それから、表示画面上のフットプリント領域が識別される。参照の点が、画像の開始座標に対応するとき、フットプリント領域は、フットプリントにより定義される。次に、フットプリント領域と関連している画素が充填される。それから、フットプリント領域に隣接していて、そして重なりあっていないセクターの位置が計算される。次に、隣接したセクターと関連している画素が充填される。それから、位置を計算するステップと、隣接したセクターと関連した画素を充填するステップとが、画像を定義する連続するセクターに対して繰り返される。
【００１４】
本願発明の他の局面と利点は、図面と関連してとらえて、発明の原則を説明している、次の詳細な説明から明白になるであろう。
【００１５】
【発明の実施の形態】
本願発明は、コンピュータ画面上に効率的に画像を表示すための装置及び方法について記述したものである。しかしながら、次の記述を考慮に入れて、当業者にとって、本願発明が、いくらか、あるいはすべてのこれらの詳細な記述なしに実施され得ることは明白であろう。他の場合には、不必要に本願発明を不明瞭にしないために、よく知られているプロセスオペレーションは詳細に記述されていない。
【００１６】
本願発明の実施例は、表示のためにコンピュータにより生成された画像を作成するための方法及び装置を提供する。ライン（ｌｉｎｅ）やカーブ（ｃｕｒｖｅ）を描画したり、または充填したり（ｆｉｌｌｉｎｇ）するときに、前に書かれた画素に上書きすることの非効率さは取り除かれる。さらに、ハードウェア・アクセレレーションの実装が、オーバーヘッドを最小にするために提供される。ブレゼンハム・サークル・アルゴリズム（Ｂｒｅｓｅｎｈａｍ　Ｃｉｒｃｌｅ　Ａｌｇｏｒｉｔｈｍ；　ＢＣＡ）は、カーブライン、また弧形と呼ばれるものを描画する時に使用されるアルゴリズムである。ＢＣＡの原理は、１つの円を８つの八分円（ｏｃｔａｎｔ）に分けることにある。カーブは、１つの八分円を得るために計算され、そして次に、計算された八分円に対してＸあるいはＹ座標を加えたり引いたりすることによって、そのカーブが、残りの八分円それぞれに複製される。
【００１７】
図２は、対称八分円とブレゼンハム・サークル・アルゴリズム（ＢＣＡ）との関係を示す概略図である。ＢＣＡは、最初の４５度の八分円で、点（ポイント）、すなわち、画素の位置を計算する。そして円１１６の対称性により、１つの八分円におけて計算された点は、円の４５度の各軸を中心にして反映することができる。例えば、八分円１１２−１の点１１４−１の座標（ｘ，ｙ）が計算されたとする。すると、円の対称性により、八分円１１２−２から１１２−８で対応する点１１４−２から１１４−８の座標は、下に表１で示されるようにそれぞれ決定される。
【００１８】
【表１】
2004046800.tif 000003
【００１９】
ＢＣＡは、円の対称特性により、そのカーブがどの八分円であるかに関係なく、カーブを生成されることができる。すなわち、八分円１１２−１で計算されたカーブは、八分円１１２−１のＸ座標、Ｙ座標を足したり引いたりすることにより、残りの７つの八分円１１２−２から１１２−８を複製することができる。
【００２０】
図３Ａは、本願発明の１実施例における、表示画面上にラインを充填するための処理を示す概略図である。ライン１１８がペン幅１２８を定義する。領域１２０は、ペン幅１２８と等しい大きさを持つ最初のフットプリント（ｆｏｏｔｐｒｉｎｔ）によって定義される。すなわち、領域１２０の長さと幅はペン幅１２８と等しい。説明のために、ライン１１８のペン幅が「３」であるとする。コンピュータディスプレイ上に生成された「２」より大きなペン幅を持つラインやカーブは全て充填されなければならないということは当業者にとっては周知である。一例として、領域１２０を定義している最初のフットプリントは、その領域内のある参照点（ｒｅｆｅｒｅｎｃｅ　ｐｏｉｎｔ）を有する。以下の説明において、領域１２０を定義する最初のフットプリントは、その参照点が連続したセクターで一貫して使用されている限りは、左下の点１３２を参照点として使用することとする。フットプリントにより定義された領域１２０内の点であればどれでも参照点として使用され得ることは当業者にとっては明らかである。このように、コンピュータディスプレイ上にライン１１８を描画するときは、領域１２０の参照点１３２は下側ライン１３０上に位置し、その参照点が下側ライン上の点と対応するようにする。そして、それはディスプレイ画面上のある画素を表す。したがって、このフットプリントは、参照点１３２がアウトライン（ｏｕｔｌｉｎｅ）１３０上の点に対応するように、領域１２０が定義され配置される。領域１２０が、画像表示のために表示画面上に充填される画素グループと相互に関係するということは特筆すべきことである。例えば、その画像は、丸みを帯びた矩形のアウトラインである。表示画面上に表示された文字「ｏ」は、丸みを帯びた矩形のアウトラインの一例である。数字や文字を表示すように設定された表示画面を有する携帯用装置であればどのようなものでも、充填されなくてはならない弧形やラインを定義する。したがって、これらの携帯用装置は、本明細書で説明する装置や方法を利用することができる。
【００２１】
引き続き図３Ａについて説明すると、領域１２０に対応している画素は、ライン１１８の一部を定義するために充填される。ここで、ペン幅１２８は「３」、すなわち「３画素」であるので、領域１２０は充填される「９画素」を表す。ライン１１８上の領域１２０を定義するフットプリントの座標は、下部ライン１３０上の参照点の座標と同様に知られている。そのために、領域１２０内に定義された座標、すなわち画素は、その画素を充填するために確かめられる。そして、ライン１１８のアウトライン１３０に沿って、フットプリントを１単位進めるのではなく、領域１２０に隣接する、領域１２０とは重なり合わないセクターの座標が計算される。すなわち、ライン１１８を描画する際に、フットプリント全体を１ペン幅、すなわち、１画素進めるのではなく、図５Ａ及び図５Ｂでより詳細に説明されるように、移動方向が分かっているときは、充填される次のセクターは計算することができるのである。従って、フットプリント１２０に隣接していて、重なり合っていないセクター１２２は、ライン１１８を充填する次の画素セットを計算により決める。例えば、画像データをメモリに書き込む方法のように、その移動方向が矢印１３３のように左から右となっているとする。直線においては、その移動方向が左から右へでもスキャンすることができる。セクター１２４、１２６も同様に計算される。表示画面上のライン１１８によって定義される全領域が完全に充填されるまでこの処理は続けられる。液晶ディスプレイ（ＬＣＤ）画面などで、表示画面上のライン１１８の出発点の座標が中央演算処理装置（ＣＰＵ）によって供給され、ハード的にレジスタに開始位置が書き込まれることは当業者にとって明白である。
【００２２】
図３Ｂは、図３Ａの領域１２０及びセクター１２２に対応する画素を拡大した概略図である。上述の通り、領域１２０は「３」、すなわち「３画素」のペン幅を持っている。そして、フットプリントの大きさがペン幅によって定義されるように、「９画素」が領域１２０によって定義される。セクター１２２は、領域１２０に隣接している「３画素」を定義するものである。フットプリント全体を進めるのではなく、セクター１２２の位置を計算により求めることによる大幅に効率化される。すなわち、セクター１２２はまだ充填されていない（書き込まれなかった）画素のみを定義する。したがって、図３Ａで説明した処理は、フットプリントを１ユニット進める処理よりも３倍速い（９割る３）。特に、フットプリントが、ペンの移動アルゴリズムにより、下部ライン１３０に沿って１ユニットだけ進んだとき、領域１２１で表されるように新たな「９画素」の完全なセットが定義される。そして、領域１２１の「９画素」が充填される。しかしながら、これは、領域１２０として、既に描画されている「６画素」を再度描画するものである。セクター１２２の位置を計算することによって、まだ描画されていない「３画素」だけが充填される。これは、フットプリントが一度に１ペン幅進んで、領域１２１により「９画素」を定義するやり方とは全く異なるものである。従って、領域１２２によって定義された「３画素」が描画される速さは、領域１２１によって定義された「９画素」を描画する速さと比べて３倍速い。図３Ａ及び図３Ｂでは、例示的に線幅を「３」としただけで、実際のペン幅は、表示画面上に画像を表示するのに適切などのような画素数でもよいことは明らかである。
【００２３】
図４Ａは、本願発明の１実施例における、コンピュータにより生成された表示のカーブを充填する処理を示す概略図である。カーブ１５４は、下部アウトライン１５６と上部アウトライン１５８との間で定義される。カーブ１５４がペン幅１４０を定義する。一例として、ペン幅１４０が「５」、すなわち「５画素」であるとする。フットプリントは、ペン幅１４０と同じ長さ及び幅に定義される。領域１４４は直線なので、図３Ａ及び図３Ｂを参照して記述された処理に従って充填され得ることは明らかである。説明のために、図４Ａのカーブは、領域１４２が開始点であるとして説明する。最初のフットプリントは、領域１４２を定義し、そのフットプリントの左下隅に対応する参照点を有する。このフットプリントの参照点は、下部アウトライン１５６上の点に対応する。従って、参照点が下部アウトライン１５６上の点に対応するときは、領域１４２は、カーブ１５４の一部を表示するために充填される画素グループと相互に関係する。図３と同じように、アウトライン１５６上の点の座標は、フットプリントの大きさと同様に既に知られている。そのために、領域１４２内で定義される各座標も同様に知られている。一例として、矢印１５２で示された移動方向は、ＢＣＡ（ブレゼンハム・サークル・アルゴリズム）に基づいている。八分円１に対してＢＣＡを参照し、移動の方向は、左から右、そして上から下となること、並びに、全ての残りの八分円は八分円１の値を基にして計算されることは当業者にとって明らかである。そして、セクター１４６で示されているように、充填されるべき画素の次の領域が計算される。これらの計算は、アウトライン１５６上の連続する点に対して繰り返され、セクター１４８、セクター１５０、・・・と順に定義され、充填される。
【００２４】
図４Ａで生成されたカーブを描く間に、カーブを充填する処理が、カーブを有するどのような形にでも適用できることは特筆すべきことである。特にこの処理は、丸みを帯びた矩形を表示するために実施することができる。さらに、一旦丸みを帯びた矩形の１つの丸いエッジが描画されると、残りの丸いエッジを定義している画素の座標が計算され、上述のブレゼンハム・サークル・アルゴリズムを利用して充填される。さらに、直線やカーブを含む文字やグラフィックスは、移動方向に基づいて充填される、隣接する、重なり合わない領域を計算する処理を適用することができる。
【００２５】
図４Ｂは、図４Ａのセクター１４６と領域１４２に対応する画素を拡大した概略図である。図４Ａのセクター１４６は、図４Ｂの画素Ａ〜Ｉに対応する。図４Ｂの残りの画素、すなわち、１〜９とＰ１〜Ｐ１６は、図４Ａの領域１４２によって定義された画素に対応する。画素Ａ〜Ｉのそれぞれの位置が計算されるため、フットプリント全体を定義したり既に描画された画素を上書きしたりする必要はない。画素Ｐ１〜Ｐ１６は、既に図４Ａの領域１４２によって描画されたものである。したがって、セクター１４６の座標を計算することによって、「２５画素」ではなくて「９画素」が描画される。すなわち、画素Ｐ１〜Ｐ１６を再描画しないことにより、大幅な処理の効率化が達成できる。この処理では、前に描画された画素を再描画するやり方よりも、およそ２．７８倍（２５割る９）速くなる。
【００２６】
図５Ａは、本願発明の１実施例において、表示画面上に画像を描画するときに定義される隣接する重なり合わないセクターとして考えられる可能性のある位置の一つを示した概略図である。領域１５９は、図３Ａの領域１２０及び図４Ａの領域１４２のような、最初のフットプリントによって定義された領域を表すものである。矢印１６１で示されたように、移動方向が、ひとつ送り、つまりＸ軸に沿って１ユニット進む場合は、セクター１６０−１及びセクター１６０−２が描画され、充填される。ライン１５７の点のｘ座標は、参照点１５９−１のｘ座標に領域１５９のペン幅を加えたものなので、セクター１６０−１及び１６０−２の位置は計算で求めることができる。そして、セクター１６０−１とセクター１６０−２の左下コーナーのｘ座標が決まる。セクター１６０−１及び１６０−２の幅は、「１画素」、すなわち１ペン幅である。セクター１６０−１及び１６０−２の大きさは保存され、これによりセクター１６０−１及び１６０−２に対応する画素の識別が可能になる。矢印１６１に従って移動すると、セクター１６０−１及び１６０−２に対応する画素が描画される。上述したセクター１６０−１及び１６０−２の位置を決める処理が、図３Ａ及び図３Ｂの説明で述べたように、ある方向へ移動している線の描画を可能にするということは特筆すべきことである。
【００２７】
引き続き図５Ａについて説明すると、矢印１６３のように移動するとき、つまり「１画素」進み、そして「１画素」下がる、換言するとｘ軸上で１ユニット進み、ｙ軸上で１ユニット下がる場合は、セクター１６０−２及び１６０−３に対応する画素が描画される。セクター１６０−３のｘ座標は参照点１５９−１のｘ座標から１ペン幅進んだところで、ｙ座標は参照点１５９−１から１画素分引いたものであるので、セクター１６０−３の左下コーナーのｘ座標及びｙ座標は計算で求めることができる。上述のように、１実施例として、セクター１６０−３の大きさは、メモリに記憶しておくことができる。「１画素」進み、そして「１画素」下がる移動のときに、セクター１６０−２及び１６０−３は描画される。セクター１６０−２の位置は、上述したように計算される。移動方向に関わらず、セクター１６０−２が計算され、充填されることは特筆すべきことである。そして、セクター１６０−１から１６０−３の左下コーナーの座標を計算すると共に、その計算された座標をセクター１６０−１から１６０−３の記憶された大きさといっしょに使用することにより、セクター１６０−１から１６０−３に対応する画素が識別される。移動の方向によって、セクター１６０−１あるいは１６０−３に対応する画素は、セクター１６０−２に対応する画素といっしょに描画される。その結果として、既に描画された画素に上書きすることはない。図２の説明に記載したように、ここに記述された処理にＢＣＡ（ブレゼンハム・サークル・アルゴリズム）を適用することによって、最初の八分円の点が計算されると、あとはｘ座標及びｙ座標を加えたり、引いたりすることによりその他の八分円の円上の点が計算され得ることは当業者にとっては明らかである。
【００２８】
図５Ｂは、図５Ａとは違った移動方向に動いた場合の、図５Ａにおける隣接する、重なり合わないセクターに相当するセクターの位置を示す概略図である。図５Ｂは、図５Ａを９０度回転したものであることは容易に理解できる。ここで、セクター１６０−１及び１６０−２は、下方への移動する、つまりｙ座標が減少する方向へ移動するラインとして描画される。セクター１６０−２及び１６０−３は、矢印１６３で描かれているように進むカーブとして描画される。上記のとおり、図５Ｂにより表現された画像は、ＢＣＡ（ブレゼンハム・サークル・アルゴリズム）を図５Ａの画像に適用したのと同様の方法で表示することができる。すなわち、図５Ｂのカーブは、図５Ａのカーブとは異なる八分円を有するが、ｘ座標、ｙ座標を加えるたり引いたりすることによって、図５Ｂのカーブの座標は、ＢＣＡによって確かめられる。図５Ａ及び図５Ｂにより定義されたカーブは、ＢＣＡを適用することにより、９０度の単位で回転することができ、それによって３６０度の方向が可能になるというのは特筆すべきものである。すなわち、ＢＣＡを適用することで、カーブは、図２のような円のどの八分円によっても定義することができる。
【００２９】
図６は、本願発明の１実施例において、コンピュータにより生成された画像を表示画面上に充填するためのプリント回路基板（ＰＣＢ；　Ｐｒｉｎｔｅｄ　Ｃｉｒｃｕｉｔ　Ｂｏａｒｄ）の概略を示した図である。プリント回路基板（ＰＣＢ）１６９は、中央演算処理装置（ＣＰＵ）１６２、ディスプレイコントローラ１６４、スタティック・ランダムアクセスメモリ（ＳＲＡＭ）１６８を有する。ＣＰＵ１６２は、ディスプレイコントローラ１６４とコミュニケーション可能に接続されている。ディスプレイコントローラ１６４は、ＳＲＡＭ１６８と、コミュニケーション可能に接続されている。一例として、ディスプレイコントローラ１６４は、ＬＣＤ画面上にコンピュータにより生成された画像の表示する液晶ディスプレイ（ＬＣＤ）コントローラである。もちろん、ＳＲＡＭ１６８に記憶された画像は、ＳＲＡＭとコミュニケーション可能に接続された表示画面上に表示することができる。描画エンジン回路構成（ＤＥＣ；　Ｄｒａｗｉｎｇ　Ｅｎｇｉｎｅ　Ｃｉｒｃｕｉｔｒｙ）１６６は、ディスプレイコントローラ１６４内に定義される。描画エンジン回路構成１６６は、図３Ａ、図３Ｂ、図４Ａも及び図４Ｂを参照にして、上述したように、既に描画した領域及びセクターに重なり合わないように、徐々にラインあるいはカーブの領域を充填するように設定された回路構成を有する。
【００３０】
図６のプリント回路基板（ＰＣＢ）は、パーソナル・ディジタル・アシスタント（ＰＤＡ）、携帯電話、ウエブ・タブレット等のようなポータブル電子装置に組み込まれる。例えば、このプリント回路基盤（ＰＣＢ）は、携帯電話、ＰＤＡやラップトップとのインターフェースとなり、ＰＣＢ１６９を有する携帯電話の表示画面に、図３Ａ、図３Ｂ、図４Ａ、及び図４Ｂにおいて説明した画像表示を可能にしたり、ＰＣＢ１６９を有するＰＤＡやラップトップでディスプレイ画面上に効率よく画像を表示することを可能にする。本願発明の１実施例において、後述の表２のコードを、それぞれの装置のフラッシュメモリのようなメモリに保存することが出来ることは特筆すべきことである。そのフラッシュメモリは、図６のＣＰＵ１６２とコミュニケーション可能に接続される。ＣＰＵ１６２は、そのコードをキャッシュに記憶し、実行することができる。一例として、ＰＣＢ１６９は、ハンドヘルド装置の組込み型のシステムの一部となる。
【００３１】
図７は、本願発明の１実施例における、描画エンジン回路構成の詳細を示す図である。描画エンジン回路構成１６６は、画像生成回路構成１７２、データ処理選択回路構成１７８、コントロールブロック（ｃｏｎｔｒｏｌ　ｂｌｏｃｋ）回路構成１７６を有する。描画エンジン回路構成１６６は、中央演算処理装置（ＣＰＵ）１６２及びスタティック・ランダムアクセスメモリ（ＳＲＡＭ）１６８とインターフェースを取るように設定されている。ＳＲＡＭ１６８は、表示画面１７１とコミュニケーション可能に接続される。例えば、表示画面１７１は液晶ディスプレイ（ＬＣＤ）画面である。ＣＰＵ１６２は、記憶媒体１７０とコミュニケーション可能に接続され、データ処理選択回路構成１７８に対して書き込みデータを供給するように設定されている。ＣＰＵ書き込みデータは、表示画面上に描画される画像の開始位置の座標を含む。図８を参照して後でさらに詳細に説明されるように、ＣＰＵ書き込みデータは、データ処理選択回路構成１７８によって変換され、一列に並べられる。画像生成回路構成１７２は、データ１７３として表されるように、描画されるそれぞれの画素の色を出力すると共に、描画されるそれぞれの画素が複製されているメモリ中の物理アドレス１７５を出力する。画像生成回路構成１７２は、ペン幅選択回路構成１７４を有する。ペン幅選択回路構成１７４は、表示画面上に描画される画像の各領域のペン幅を選択するように設定されている。例えば、図３Ａ、図３Ｂ、図４Ａ、及び図４Ｂに関して言えば、ペン幅選択回路構成１７４は、フットプリントにペン幅を提供したり、画像が描画される際に、フットプリント領域にそれぞれ連続する隣接し重なっていないセクターにペン幅を提供する。
【００３２】
図７における画像生成回路構成１７２及びペン幅選択回路構成１７４は、半導体チップ上に形成されたカウンター、比較器、加算器、減算器、論理ゲートを有し、表示画面上にラインまたはカーブを描画するために要求される数学的な処理を実行するように設定されていることは当業者にとって明白である。ブレゼンハム・サークル・アルゴリズム（ＢＣＡ）を画素の座標の位置を見つけるために利用したことで、二乗、平方根、サイン及びコサイン関数といった複雑な数学的な計算が避けられる。したがって、画像生成回路構成１７２の回路構成は、より小さくなり、より迅速に画像を生成できるように設定されている。１実施例として、図５Ａ及び図５Ｂを参照して説明したように、画像生成回路構成１７２は、表示画面上に画像を描画するために、表２で供給されたコードを実行するように設定されている。したがって、表示画面上に描画された連続するセクターは、重なり合うことなく前に描画されたセクターに隣接する。すなわち、それぞれの画素のアドレスが書き込まれることなく上書きされる。それによって、表示画面上に画像を描画する際の著しい処理の非能率を避けることができる。コントロールブロック回路構成１７６は、データ処理選択回路構成１７８と画像生成回路構成１７２との間の信号を管理するように設定されている。
【００３３】
図８は、本願発明の１実施例における、データ処理選択回路構成のより詳細な概要図である。データ処理選択回路構成１７８は、ＣＰＵ書き込みデータ及びＳＲＡＭ読み出しデータを受け取るように設定されている。ソースデータ整列回路構成１８２は、どのようなバイト整列アドレスからダブルワード（３２）ビットアドレスまで、ソースデータを一列に並べる。ソースデータ整列回路構成１８２は、マルチプレクサー（伝送制御装置；ＭＵＸ）１８６に、ソース読み出しデータを出力する。画像生成回路構成１７２からのデータ１７３、すなわち各画素の色は、使用するデータのソースを選択するマルチプレクサー１８６中のソース読み出しデータと共に多重送信される。すなわち、ソースデータ整列回路構成１８２からのデータ、あるいは画像生成回路構成１７２からのデータ１７３のどちらかが選択される。マルチプレクサー１８６から選択されたデータは、宛先データ整列回路構成１８４に出力される。宛先データ整列回路構成１８４は、ＳＲＡＭ中のデータをダブルワードからバイトアドレスまで一列に並べる。宛先データ整列回路構成１８４は、ラスターオペレーション（ＲＯＰ）コード回路構成１８８にデータを出力し、バイトイネーブルデータが透過伝送回路構成１９４に出力される。ラスターオペレーション（ＲＯＰ）コード回路構成１８８が、データが宛先に書き込まれる前に宛先から読み出すことを可能にすることは当業者にとって明らかである。例えば、ＲＯＰコード回路構成１８８は、それがクリックされるか、あるいはドラッグされたときに、表示画面上のアイコンの色を変えるという特徴を可能にする。透過伝送回路構成１９４は、データを透明な色と比較しデータが書き込まれたかどうかを決定する。ＲＯＰコード回路構成１８８は、ラスターオペレーションの結果のデータを先入れ先出し（ＦＩＦＯ）バッファ１９０へ出力する。ＦＩＦＯバッファ１９０は、メモリコントローラーが自由になるまで、データ及びバイトイネーブルの存在を可能にするバッファである。メモリコントローラーが自由なときは、データがメモリに書き込まれる。例えば、３２ビットの書き込みにおいて、バイトイネーブルのＦＩＦＯ１９４は、一例として、メモリに書き込まれるデータの３２ビットのうち、どの８ビットを書き込むかを決める。ＦＩＦＯバッファ１９０内のデータは、ＣＰＵによって読み出し可能であることは当業者であれば周知である。アドレス生成回路構成１９２は、画像を表示するために、表示画面上に描画される画素のアドレスデータ１７５を受け取るように設定されている。アドレス生成回路構成１９２は、ＳＲＡＭのアドレスへ画素アドレスを出力する。
【００３４】
図９は、本願発明の１実施例において、表示画面上にコンピュータ画像を描画するための方法を示すフローチャートである。このフローチャートは、第１画素グループに対応する最初のフットプリント領域が定義されるオペレーション２００で始まる。最初のフットプリント領域は、ペン幅によって定義された大きさを有する。一例として、ペン幅は「２」より大きい。それから、第１画素クループが充填されるオペレーション２０２に進む。上記のとおり、各画素のアドレス及び色は、ＬＣＤコントローラのようなディスプレイコントローラのペン幅選択回路構成によって供給される。
【００３５】
それから、移動方向が決定されるオペレーション２０４に進む。図３Ａ、図３Ｂ、図４Ａ、図４Ｂ、図５Ａ、及び図５Ｂで説明したように、動作方向はここで決定される。１実施例として、移動方向はＢＣＡ（ブレゼンハム・サークル・アルゴリズム）に基づいて決定される。次に、最初のフットプリント領域に隣接していて、そして重なり合っていないセクターの位置が計算されるオペレーション２０６に進む。図５Ａ及び図５Ｂを参照すると、セクター１６０−１から１６０−３までがここで計算される。上述したように、移動方向が知られており、そして隣接したセクターの開始座標が知られているので、最初のフットプリントに重なっていない隣接したセクターの位置が計算できる。この方法は、隣接していて、そして重なり合っていないセクターに対応する第２画素グループが充填されるオペレーション２０８に進む。図４Ａ及び図４Ｂに戻って説明すると、セクター１４６によって定義された画素はここで充填される。そして、まだ充填されていなかった画素だけが、この隣接したセクターにより定義される。最初のフットプリント領域とセクターとが重なり合わずに隣接しているので、前に書かれた画素を上書きすることによる処理時間の浪費がないことは特筆すべきことである。
【００３６】
図１０は、本願発明の１実施例において、予め定義された開始座標を有する、コンピュータにより生成された表示を充填する方法を示すフローチャートである。このフローチャートは、参照点を有するフットプリントが定義されるオペレーション２１０で始まる。一例として、フットプリントは、ペン幅によって定義される大きさを有する。フットプリントの参照点は、フットプリントのコーナーまたは中心というように、フットプリント内であればどのような点でもよい。次に、表示画面と関連付けられたフットプリントが識別されるオペレーション２１２に進む。参照点が開始座標に対応するときは、フットプリント領域は、フットプリントにより定義される。例えば、図３Ａ及び図４Ａを参照すると、これらのそれぞれの図で定義されたフットプリントは、左下コーナーの参照点を含む。フットプリントの参照点は、フットプリント領域を定義するために開始座標によって定義された座標に置かれる。開始座標が、ＣＰＵによって提供されることは当業者にとって明らかである。上記のとおり、フットプリント内のどのような点であっても、その点が一貫して参照点として用いられる限りは、参照点として用いることができる。
【００３７】
図１０の方法は、それから、フットプリント領域の画素が充填されるオペレーション２１４に進む。図３Ａ、図３Ｂ、図４Ａ、及び図４Ｂのフットプリントによって定義された領域内に含まる画素はここで充填される。それから、フットプリント領域に隣接しているセクターの位置が計算されるオペレーション２１６に進む。ここで、隣接したセクターは、フットプリント領域に重なり合わない。一例として、隣接したセクターの位置を計算するとき、移動方向が決定される。ブレゼンハム・サークル・アルゴリズム（ＢＣＡ）を適用すると、カーブは、円のどのような八分円によっても描画されうるということは当業者にとって明らかである。すなわち、円の対称性は、円の半径を有するカーブを、円の１つの八分円によって計算することを可能にするもので、それからｘ座標及びｙ座標を加えたり引いたりすることによって、弧形あるいはカーブのどのような移動方向も表示することが出来る。次に、隣接しているセクターの画素が充填されるオペレーション２１８に進む。ここで、前に書かれた画素は上書きされない。それにより、より効率的な処理が可能になる。それから、全部の画像が表示されるまで、連続して隣接するセクターの画素を計算し充填するという作業を繰り返すオペレーション２２０に進む。一例として、その画像は、ハンドヘルド装置のＬＣＤ画面上に表示される。
【００３８】
下の表２は、本願発明の１実施例に従って、表示画面上に弧形あるいはカーブの画像を充填するための例示的なコードを含むものである。もちろん、このコードは、その充填機能が、隣接する、重なり合わないものに行なわれるのであれば、どのような形式のものであっても良い。表２で定義されたコードは、そのコードを組み込んだ装置の特定のオペレーティング・システムと統合して取り入れられることができることは特筆すべきことである。しかしながら、そのコードによって定義された機能性、すなわちコンピュータにより生成された画像を充填させるために、連続している隣接して、そして重なりあわないセクターを定義するという作業は、オペレーティング・システムとは関係なく、同じである。以下、数ページに、表２を示す。
【００３９】
【表２】
2004046800.tif 000004
2004046800.tif 000005
2004046800.tif 000006
2004046800.tif 000007
2004046800.tif 000008
【００４０】
表２で定義されたコードは、セクター２を描画するもので、これは、図５Ａ及び図５Ｂのセクター１６０−２に対応するものである。それから、動作方向は、変数Ｄを通して決定される。すなわち、もし変数Ｄが０より小さい時は、図５Ａ及び図５Ｂのセクター１６０−１に対応するセクター１が描画される。セクター１が描画されるときは、図３Ａ及び図３Ｂで例証したように、移動方向は「１画素」進む。もし変数Ｄが０より小さくない（０以上）場合は、図５Ａ及び図５Ｂのセクター１６０−３に対応するセクター３が描画される。セクター３が描画されるときは、図４Ａ及び図４Ｂで例証したように、移動方向は「１画素」進みかつ「１画素」下がる。上記のとおり、カーブが１つの八分円で描画されると、図２に関して上に記載したように、カーブは、ブレゼンハム・サークル・アルゴリズム（ＢＣＡ）によって、他の７つの八分円をすべて複製することができる。
【００４１】
本願発明の１実施例において、表２のコードは、ハードウェアロジックを介して実行される。表２に記載したコードのような、画像を効率的に表示するためのコードのロジックやオペレーションを実行するための回路構成を形成するコードを合成することが可能なことは当業者であれば明らかであろう。コードのロジックやオペレーションを実行するための回路構成は、半導体チップ上に形成された、トランジスタ、論理ゲートなどによって定義される。さらに、画像生成回路構成は、隣接していて、重なり合っていないセクターを定義しそして充填するために、数学的な機能を果たすカウンター、比較器、加算器、及び減算器を有する。ハードウェアロジックを設計するために、下の表３は、本願発明の１実施例として、各変数のレジスタサイズの代表的なリストを提供するものである。レジスタサイズは、画像の幅と長さによって変化するもので、表３は、具体的な実例の一つとしてリストされているものであり、このリストに限定されるものではないことは明らかである。
【００４２】
【表３】
2004046800.tif 000009
【００４３】
上述の画面を充填するための方法や装置は、カーブのラインの画素を描画することによっても実現できるということは特筆すべきことである。すなわち、フットプリントが定義され、参照点が、適切なペン移動のアルゴリズムにしたがって、カーブのラインに沿って移動させられる。ラインに沿った各ポイントにおいて、参照点は描画される画素に対応する。１つのラインが書き上がると半径を大きくし、フットプリントは、大きくなった半径によって定義されたカーブに沿って移動し、それぞれの点において画素を描画する。これは、カーブの幅が充填されるまで繰り返される。
【００４４】
上述された本願発明は、ハンドヘルド装置、マイクロプロセッサシステム、マイクロプロセッサベースあるいはプログラム可能な家庭用エレクトロニクス（ｃｏｎｓｕｍｅｒ　ｅｌｅｃｔｒｏｎｉｃｓ）、ミニコンピュータ、メインフレームコンピュータ、そしてそれらと同種のものを含めて、他のコンピュータシステムで実行可能である。本願発明は、ハンドヘルド装置への組込み型システムとして説明したが、本願発明が、デスクトップやラップトップのコンピューティングシステムと共に同様に使用可能であることは明らかである。
【００４５】
上述の実施例を念頭において、本願発明は、コンピュータシステムに保存されたデータを必要とする、種々のコンピュータによって実行可能なオペレーションとして使用することが出来ると理解されるべきである。これらのオペレーションは、物理的な量の、物理的な操作を必要とするものである。必ずしもそうではないが、通常これらの物理量は、保存する、転送する、統合する、比較する、さもなければ操作するといった電気的または磁気的な信号の形態をとるものである。さらに、実行される操作とは、生産する、識別する、または比較する等の用語で、しばしば言及される。
【００４６】
本願発明の一部を形成する、ここに記述されたどのようなオペレーションも、有用な機械オペレーションとなる。本願発明は、これらのオペレーションを実行するデバイスや装置にも関係する。そのような装置は、ある目的のために特別に作られたものでも良いし、コンピュータに保存されたプログラムによって、選択的に作動したり、設定したりする汎用のコンピュータであっても良い。特に、種々の汎用のマシンで、本願明細書の教示に従って書かれたコンピュータ・プログラムと一緒に使用されるかもしれないし、あるいは必要なオペレーションを実行するために、より専門的な装置を構築するといっそう便利かもしれない。
【００４７】
本願発明は、コンピュータにより読み取り可能な媒体上に、コンピュータにより読み取り可能なコードとして実現することもできる。コンピュータにより読み取り可能な媒体とは、コンピュータシステムによって読み取りが可能なデータを保存したどのようなデータ記憶装置であっても良い。コンピュータにより読み取り可能な媒体の例としては、ハードドライブ、ネットワークに接続された記憶装置（ＮＡＳ；　Ｎｅｔｗｏｒｋ　Ａｔｔａｃｈｅｄ　Ｓｔｏｒａｇｅ）、リードオンリー・メモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、及びその他の光学式または非光学式のデータ記憶装置がある。コンピュータにより読み取り可能な媒体が、ネットワークに接続されたコンピュータシステムに配信され、その配信されたコードをコンピュータシステムに保存し、実行するという方法も可能である。
【００４８】
本願発明は、発明内容を理解し易いように、若干の詳細に説明したが、明細書の記述からも明らかなとおり、特許請求の範囲に記載した範囲内であれば、いかなる変更や修正も可能である。したがって、これらの実施例は、説明のためのものであってこれによって制限をするものではない。また、本願発明は、ここで行った詳細な説明に制限されるものではなく、添付の特許請求の範囲及びその均等物の範囲内で変更可能なものである。
【図面の簡単な説明】
【図１】コンピュータにより生成されたカーブの拡大された図。
【図２】対称八分円とブレゼンハム・サークル・アルゴリズム（ＢＣＡ）との関係を示す図。
【図３】Ａ　表示画面上にラインを充填するための処理を示す図。
Ｂ　図３Ａの領域１２０及びセクター１２２に対応する画素を拡大した図。
【図４】Ａ　コンピュータにより生成された表示のカーブを充填する処理を示す図。
Ｂ　図４Ａのセクター１４６及び領域１４２に対応する画素を拡大した図。
【図５】Ａ　表示画面上に画像を描画するときに定義される、隣接し、重なっていないセクターの一つの可能性のある位置を示す図。
Ｂ　別移動方向に基づき、図５Ａの隣接し、重なっていないセクターの位置を示す図。
【図６】表示画面上にコンピュータにより生成された画像を充填するための、プリント回路基板（ＰＣＢ）の概略図。
【図７】描画エンジン回路構成の概要図。
【図８】データ処理選択回路構成の概要図。
【図９】表示画面上にコンピュータ画像を描画するための方法を示すフローチャート。
【図１０】定義された開始座標を持つコンピュータにより生成された表示を充填する方法を示すフローチャート。
【符号の説明】
１６２　ＣＰＵ
１６４　ディスプレイコントローラ
１６６　描画エンジン回路構成
１６８　ＳＲＡＭ
１６９　プリント回路基板
１７０　記憶媒体
１７１　表示画像
１７２　画像生成回路構成
１７４　ペン幅選択回路構成
１７６　コントロールブロック回路構成
１７８　データ処理選択回路構成
【図１】
2004046800.tif 000010
【図２】
2004046800.tif 000011
【図３】
2004046800.tif 000012
【図４】
2004046800.tif 000013
【図５】
2004046800.tif 000014
【図６】
2004046800.tif 000015
【図７】
2004046800.tif 000016
【図８】
2004046800.tif 000017
【図９】
2004046800.tif 000018
【図１０】
2004046800.tif 000019