(57)【要約】【課題】  スクロール時における１フレームに描画する情報を充分に維持しながら、スムーズなスクロールを実現する。【解決手段】  描画スクロールモードにおいて、描画判定部９は、制御レジスタ部１１のスキップライン数レジスタに設定された値に基づいて書き込み命令の有効／無効の判断を行う。たとえば、最初のラインの書き込み命令が有効、次のラインの書き込み命令が無効といったように書き込み命令に有効なラインを判定する。有効ラインの画素データはメモリ部４に格納される。読み出し画素判定部１２は、スキップライン数レジスタの値を参照して有効ラインの画素データをメモリ部４から読み出してスキャンバッファ１３に格納する。表示出力部１４はスキャンバッファ１３の画素データを表示手段６に出力する。無効ラインは、前回読み出した有効ラインの画素データを割り付けて補完を行う。【選択図】  図１
2006349733.tif 000002
【特許請求の範囲】
【請求項１】
描画スクロールモードが設定された際に、描画フレームをライン単位で無効ラインと有効ラインとに任意に設定し、前記有効ラインの画素配置処理のみを行うスクロール描画処理部を備え、
前記スクロール描画処理部は、
前記無効ラインの直前に読み出された前記有効ラインの画素情報を前記無効ラインの画素として補完して配置することを特徴とする描画表示装置。
【請求項２】
請求項１記載の描画表示装置において、
前記スクロール描画処理部は、
前記無効ライン数を設定する無効ライン設定部と、
前記無効ライン設定部に設定された無効ライン数から、前記有効ラインと前記無効ラインとの判定を行い、前記有効ラインの画素データのみを出力する描画判定部と、
前記描画判定部から出力された画素データを格納する画素格納部と、
前記無効ライン設定部に設定された無効ライン数から、画素配置処理が行われる前記有効ラインを特定し、前記有効ラインの画素データを前記画素格納部から読み出す読み出し画素判定部と、
前記読み出し画素判定部が読み出した画素データをライン毎に出力する表示出力部とを備えたことを特徴とする描画表示装置。
【請求項３】
請求項２記載の描画表示装置において、
前記スクロール描画処理部は、
前記読み出し画素判定部が読み出した画素データを一時的に格納するスキャン格納部を備え、
前記表示出力部は、前記スキャン格納部に格納された画素データをライン毎に出力することを特徴とする描画表示装置。
【請求項４】
請求項１〜３のいずれか１項に記載の描画表示装置において、
前記スクロール描画処理部は、
前記フレームの先頭ラインを必ず有効ラインとして設定することを特徴とする描画表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図形などの描画表示技術に関し、特に、スクロール時におけるスムーズで高精度な図形などの描画に有効な技術に関する。
【背景技術】
【０００２】
カーナビゲーションシステムなどに用いられる表示システムにおいて、たとえば、平面地図などを描画スクロールする際には、通常の表示画面よりも大きな地図を予め描画しておき、表示開始位置を周期的に一定量移動させるスムーズなスクロールを実現している。
【０００３】
また、現在のカーナビゲーションシステムでは必須の機能となっている鳥瞰地図の場合、前記した平面地図と異なり地図の更新毎に図形形状が変化するために、１フレーム毎に新たな描画を行っている。
【０００４】
この鳥瞰地図のスクロール処理では、地図が、たとえば、道路、建物、および文字列から構成される場合、スクロール中は、主要幹線道路や地名といったその場所を特定する簡易的な地図情報のみを描画して図形を割愛することで１フレームの描画に要する時間を短縮し、スムーズなスクロールを表現している。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、上記のような表示システムにおけるスクロール技術では、次のような問題点があることが本発明者により見い出された。
【０００６】
すなわち、前述したように、スクロール時には、すべての地図情報を描画しないので、地図をスクロールさせながら目的地を検索する際に、その目的地を見過ごしてしまう可能性が生じてしまう恐れがある。
【０００７】
たとえば、地図上のある建物を目的として検索する場合は、スクロール中であっても目的とする建物の描画が不可欠であるが、描画速度の高速化のために、その建物の情報が割愛されている場合には、見過ごしてしまうことになる。
【０００８】
逆に、スクロール時において、地図情報の忠実な描画を優先した場合には、１フレームの描画に要する時間が大きくなり、操作性、ならびにレスポンスが大幅に損なわれてしまうという問題がある。
【０００９】
本発明の目的は、スクロール時における１フレームに描画する情報を充分に維持しながら、スムーズなスクロールを実現することのできる技術を提供することにある。
【００１０】
本発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１２】
本発明による描画表示装置は、描画スクロールモードが設定された際に、描画フレームをライン単位で無効ラインと有効ラインとに任意に設定し、該有効ラインの画素配置処理のみを行うスクロール描画処理部を備え、該スクロール描画処理部は、無効ラインの直前に読み出された有効ラインの画素情報を無効ラインの画素として補完して配置するものである。
【００１３】
また、本発明による描画表示装置は、前記スクロール描画処理部が、無効ライン数を設定する無効ライン設定部と、該無効ライン設定部に設定された無効ライン数から、有効ラインと無効ラインとの判定を行い、有効ラインの画素データのみを出力する描画判定部と、該描画判定部から出力された画素データを格納する画素格納部と、無効ライン設定部に設定された無効ライン数から、画素配置処理が行われる有効ラインを特定し、有効ラインの画素データを画素格納部から読み出す読み出し画素判定部と、読み出し画素判定部が読み出した画素データをライン毎に出力する表示出力部とを備えたものである。
【００１４】
さらに、本発明による描画表示装置は、前記スクロール描画処理部が、読み出し画素判定部が読み出した画素データを一時的に格納するスキャン格納部を備え、表示出力部は、スキャン格納部に格納された画素データをライン毎に出力するものである。
【００１５】
また、本発明による描画表示装置は、前記スクロール描画処理部がフレームの先頭ラインを必ず有効ラインとして設定するものである。
【００１６】
さらに、本願のその他の発明の概要を簡単に示す。
【００１７】
本発明は、描画するフレーム毎に描画するが素数を全体的に削減し、フレームメモリである画素格納部へのアクセス回数を減少させることで、描画時間の短縮を行うものである。
【００１８】
画素数の削減は、フレームを構成するすべての描画処理において、設定されたライン数の画素配置処理をスキップすることにより行う。通常の描画処理は、たとえば、線や多角形といった図形単位で行われるために、このスキップするラインの間隔が大きいほど描画時間の短縮につながるが、１フレームを構成する最終図形としては画素抜けが目立ってしまう結果となる。
【００１９】
この配置されなかった画素データは、表示処理で補完する。この場合、フレームメモリからの画素読み出しの際に、画素配置処理がスキップされなかったライン、すなわち有効ラインの内容をスキャン格納部がバッファリングし、画素配置処理がスキップされたライン、すなわち無効ラインの画素データとして補完する。
【００２０】
以上により、描画する内容を維持しながら、描画時間を短縮することが可能となり、結果、スムーズな描画スクロールを実現することができる。
【発明の効果】
【００２１】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００２２】
描画スクロールモードにおいて、描画速度を低下させることなく、高精度でスムーズな描画を実現することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２４】
図１は、本発明の一実施の形態による描画表示装置のブロック図、図２は、図１の描画表示装置における通常描画の一例を示す説明図、図３は、図２の四角形の塗りつぶし画像におけるスクロール描画の一例を示す説明図、図４は、図１の描画表示装置に設けられた表示出力部から出力される表示データの補完例を示す説明図、図５は、図１の描画表示装置に設けられた制御部に用いられるアプリケーションの処理例を示すフローチャートである。
【００２５】
本実施の形態において、描画表示装置１は、たとえば、カーナビナゲーションシステムなどにおける地図情報などの描画を行う。描画表示装置１は、図１に示すように、制御部２、描画制御部３、メモリ部（スクロール描画処理部、画素格納部）４、表示制御部５、および表示手段６から構成されている。
【００２６】
制御部２は、アプリケーションに基づいて、描画表示装置１における全体の制御を司る。描画制御部３は、制御部２の命令に基づいて描画スクロール処理、または通常の描画処理いずれかを実行する。
【００２７】
この描画制御部３は、描画命令入力部７、描画命令解釈／実行部８、描画判定部（スクロール描画処理部）９、画素出力部１０、ならびに制御レジスタ部（スクロール描画処理部）１１から構成されている。描画命令入力部７は、制御部２が発行した描画する図形を指示するコマンドである描画命令を取り込む。
【００２８】
描画命令解釈／実行部８は、取り込んだ命令を解釈して実行する。描画判定部９は、制御レジスタ部１１におけるスキップライン数レジスタに設定されたレジスタ値に基づいて描画命令解釈／実行部８によって生成された画素データの書き込み命令を取捨選択する。
【００２９】
画素出力部１０は、描画判定部９が選択した書き込みデータをメモリ部４に描画イメージとして出力する。制御レジスタ部１１は、モードレジスタ、およびスキップライン数レジスタを有している。モードレジスタは、描画スクロールに移行するモードを設定する。スキップライン数レジスタは、画素の配置をスキップするライン数を設定する。
【００３０】
メモリ部４は、制御部２から出力された複数の描画命令を描画命令群として蓄積するとともに、前述した描画イメージを格納する。
【００３１】
表示制御部５は、描画制御部３によって描画される内容を実際に表示する処理を行う。表示制御部５は、読み出し画素判定部（スクロール描画処理部）１２、スキャンバッファ（スクロール描画処理部、スキャン格納部）１３、および表示出力部（スクロール描画処理部）１４から構成されている。
【００３２】
読み出し画素判定部１２は、制御レジスタ部１１のスキップライン数レジスタから有効な画素の配置処理が行われたラインを特定し、そのラインの画像データをメモリ部４に描画イメージから読み出す。
【００３３】
スキャンバッファ１３は、読み出し画素判定部１２が読み出した画像データを一時的に格納する。表示出力部１４は、スキャンバッファ１３が格納した画像データを出力する。
【００３４】
表示手段は、たとえば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などのモニタからなり、表示出力部１４から出力された画像データを地図情報として表示する。
【００３５】
次に、本実施の形態による描画表示装置１の作用について説明する。
【００３６】
まず、アプリケーションによって制御部２が描画スクロールモードを設定する描画命令を行うと、描画命令入力部７がその命令を取り込む。描画命令は、特に制限されないが、制御部２から直接取り込む場合と、ある一定の描画命令をメモリ部４に蓄え、描画起動命令を開始合図として、これら蓄えられた命令を描画命令群として取り込む場合とが考えられる。
【００３７】
そして、描画命令入力部７によって取り込まれた描画命令は、描画命令解釈／実行部８によって描画する図形の形状や位置などが特定され、メモリ部４に格納される画素データが生成される。
【００３８】
たとえば、描画命令が四角形の塗りつぶしを行う命令の場合、描画命令解釈／実行部８は、指定された４つの頂点座標から画素を書き込むメモリアドレスを計算し、そのアドレスに対して画素データを書き込む命令を生成する。
【００３９】
続いて、描画判定部９は、描画命令解釈／実行部８が生成したメモリ部４に対する書き込み命令の有効／無効の判断を行う。この書き込み命令の有効／無効の判断は、制御レジスタ部１１のスキップライン数レジスタに設定された値を基準に行う。
【００４０】
たとえば、スキップライン数レジスタの値が’１’の場合には、フレームを構成する最初のライン（１ライン目）の書き込み命令が有効（必須）、次のライン（２ライン目）の書き込み命令が無効、その次のライン（３ライン目）の書き込み命令が有効、といったように、書き込み命令に有効なラインが１ラインおきに発生するように判定し、書き込み命令が有効判定となった有効ラインの画素データのみを画素出力部１０を介してメモリ部４に出力する。
【００４１】
ここで、描画判定部９は、フレームを構成する最初のライン（１ライン目）の書き込み命令が必ず有効となるように判定する。
【００４２】
図２は、１０画素×１０画素の四角形の塗りつぶし画像における通常描画の一例を示す説明図である。図３は、図２の四角形の塗りつぶし画像におけるスクロール描画の一例を示す説明図であり、スキップライン数レジスタの値が’１’に設定された際の四角形の塗りつぶし画像例を示している。
【００４３】
通常の描画の際には、１ライン目から１０ライン目までにおいて、図２に示すように、四角形の塗りつぶし画像（図中、網掛けで示す範囲）が描画されることになる。
【００４４】
一方、スキップライン数レジスタの値が’１’に設定された際には、１ラインおきに書き込みが有効な有効ライン（図中、白抜きで示す）と書き込みが無効な無効ライン（図中、黒抜きで示す）とが存在することになり、図３に示すような四角形の塗りつぶし画像（図中、網掛けで示す範囲）が描画される。
【００４５】
スキップライン数レジスタの値は、アプリケーションによって制御部２が任意に設定することができる。たとえば、制御部２がスキップライン数レジスタの値を’２’に設定した場合には、フレームを構成する最初のライン（１ライン目）の書き込み命令が有効な有効ラインとなり、その次の連続する２つのライン（２ライン目、および３ライン目）の書き込み命令が無効な無効ラインとなる。
【００４６】
同様に、スキップライン数レジスタの値が’３’に設定された場合には、フレームを構成する最初のライン（１ライン目）の書き込み命令が有効、となり、その次の連続する３つのライン（２ライン目〜４ライン目）の書き込み命令が無効となる。
【００４７】
続いて、図１において、読み出し画素判定部１２は、スキップライン数レジスタの値を参照し、有効な画素の配置処理が行われたラインを特定し、有効な描画が行われたラインの画素データをメモリ部４から読み出し、その情報をスキャンバッファ１３に格納する。また、読み出し画素判定部１２は、メモリ部４から、無効となったラインにおける画素データ読み出しを行わない。
【００４８】
この読み出し画素判定部１２による処理は、描画制御部３の画像判定部９が行う判定処理と同じであり、フレームの先頭ライン（１ライン目）が必ず画素配置処理が有効と判定する。
【００４９】
これは、フレームの先頭ラインの画素配置処理を無効とした場合、スキャンバッファ１３に格納されている画素データが前のフレームの画素データとなるので使用することができないからである。
【００５０】
また、異なる方法で補完するとしても、これまで説明してきたシンプルな構成で補完を行うことができず、先頭ラインからの数ラインの画素データを補完するためにだけに複雑な処理を組み込む必要が生じてしまい、デメリットとなってしまう。
【００５１】
スキャンバッファ１３に格納された有効ラインの画素データは、表示出力部１４によって読み出されて表示手段６に出力される。その後、表示出力部１４は、前回読み出した有効ラインの画素データをスキャンバッファ１３から再び読み出し、無効ラインである２ライン目の画素データとして割り付けることによって画素データの補完を行う。
【００５２】
これらを読み出し動作を交互に繰り返すことによって表示出力部１４から出力された表示データが表示手段６に入力され、該表示手段６によって図形が表示される。
【００５３】
このように、無効ラインを１ラインおきに設定することにより、画素配置処理を１ライン毎にスキップすることが可能となる。よって、スクロール時におけるメモリ部４へのアクセス回数（メモリアクセス時間）を低減することができるので、すべてのラインに画素配置処理を行う場合と比べて描画速度を２倍にすることができる。
【００５４】
図４は、表示出力部１４から出力される表示データの補完例を示す説明図である。
【００５５】
四角形の塗りつぶしを描画する場合、表示出力部１４は、図示するように、１ライン目の書き込み命令が有効（図３）であるので、該１ライン目の画素データがスキャンバッファ１３から読み出された出力される。
【００５６】
続いて、２ライン目の書き込み命令は無効（図３）であるので、表示出力部１４は、再び１ライン目の画素データをスキャンバッファ１３から読み出し、その画素データを２ライン目の画素データとして出力する。
【００５７】
そして、表示出力部１４は、３ライン目の書き込み命令が有効であるので、該３ライン目の画素データをスキャンバッファ１３から読み出して出力する。４ライン目の書き込み命令が無効となっているので、表示出力部１４は、再び３ライン目の画素データをスキャンバッファ１３から読み出し、その画素データを４ライン目の画素データとして出力する。
【００５８】
このように、書き込み命令が有効となっている１ライン目、３ライン目、５ライン目、７ライン目、９ライン目の画素データを、書き込み命令が無効となっている２ライン目、４ライン目、６ライン目、８ライン目、１０ライン目の画素データをとして出力することによってラインの補完が行われる。
【００５９】
このように、図形情報を補完して表示することにより、より原型に近い描画内容を表示することができる。
【００６０】
次に、以上説明した補完技術において、描画スクロールを効果的に行うことのできる制御部２に用いられるアプリケーションの処理例について図５のフローチャートを用いて説明する。
【００６１】
描画スクロール処理は、スクロール開始時点から徐々にスクロール速度が上がり、ある速度に達するとその速度ピーク速度として維持し、スクロール終了時は徐々に速度が下がっていくというのが一般的である。
【００６２】
まず、図５に示すように、スクロールの開始時点で、制御レジスタ１１のモード設定レジスタを設定し、’描画スクロールモード’に移行する（ステップＳ１０１）。描画スクロールモードに移行した際には、スクロールが開始したばかりであるので高速のスクロール速度が要求されないために、スキップライン数レジスタの値は’０’としておく（ステップＳ１０２）。
【００６３】
続いて、スクロール周期（周期Ａ）、およびスクロールの見直し周期（周期Ｂ）をそれぞれ設定する（ステップＳ１０３）。ここで、周期Ｂ＞周期Ａとする。その後、描画命令を発行し（ステップＳ１０４）、１フレーム分の描画が終了したか否かを判断する（ステップＳ１０５）。
【００６４】
そして、１フレーム分の描画が終了すると、スクロールが終了したか否かを判断する（ステップＳ１０６）。ステップ１０６の処理において、スクロールが終了したと判断された場合には、モード設定レジスタの設定を’描画スクロールモード’から’通常モード’に移行させる（ステップＳ１０７）。
【００６５】
その後、スキップライン数レジスタの値を’０’に設定し（ステップＳ１０８）、再び描画命令を発行し（ステップＳ１０９）、最後の１フレーム分の描画を行うことによって終了となる（ステップＳ１１０）。
【００６６】
また、ステップ１０６の処理において、スクロールが終了でない場合、ステップＳ１０３の処理において設定した周期Ａの期間を経過していないか否かの判断を行う（ステップＳ１１１）。
【００６７】
ステップＳ１１１の処理で、スクロール周期が周期Ａを経過している場合には、座標を一定量移動してスクロールの描画を行う（ステップＳ１１２）。その後、周期Ｂの時間が経過したかを判断する（ステップＳ１１３）。ステップＳ１１３の処理において、周期Ｂの時間が経過している際には、スクロール速度が上限値／下限値以外となっているか否かを判断し（ステップＳ１１４）、該スクロール速度が上限値／下限値以外の場合には、周期Ａの時間を変更し（ステップＳ１１５）、該周期Ａの間隔を短縮する。
【００６８】
続いて、周期Ａの時間変更に伴い、スキップライン数レジスタの値を変更する（ステップＳ１１６）。たとえば、周期Ａが短くなる場合には、’１’を加算し、周期Ａが長くなる場合には、’１’を減算する。
【００６９】
このように、スクロール速度は、周期Ｂの間隔によって周期Ａの間隔を短縮することで行う。この周期Ｂのタイミングによってスキップライン数レジスタの値をインクリメントする。
【００７０】
こうすることによって、フレームの更新周期に同期して描画速度を変化させることができる。たとえば、フレームの更新周期を速くしたい場合には、描画速度も速くすることができる。
【００７１】
その後、スクロールが終了するまで、ステップＳ１１１〜Ｓ１１６の処理を繰り返し、スクロールが終了した際には、ステップＳ１０７〜Ｓ１１０の処理を行い、スクロール処理が終了となる。
【００７２】
それにより、本実施の形態によれば、メモリ部４へのアクセス回数を低減するとともに、有効ラインの画素データによって無効ラインを補完することにより、描画速度を低下させることなく、高精度でスムーズなスクロール描画を実現することができる。
【００７３】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００７４】
本発明の描画表示装置は、詳細で、かつスムーズな描画スクロールを実現する技術に適している。
【図面の簡単な説明】
【００７５】
【図１】本発明の一実施の形態による描画表示装置のブロック図である。
【図２】図１の描画表示装置における通常描画の一例を示す説明図である。
【図３】図２の四角形の塗りつぶし画像におけるスクロール描画の一例を示す説明図である。
【図４】図１の描画表示装置に設けられた表示出力部から出力される表示データの補完例を示す説明図である。
【図５】図１の描画表示装置に設けられた制御部に用いられるアプリケーションの処理例を示すフローチャートである。
【符号の説明】
【００７６】
１  描画表示装置
２  制御部
３  描画制御部
４  メモリ部（スクロール描画処理部、画素格納部）
５  表示制御部
６  表示手段
７  描画命令入力部
８  描画命令解釈／実行部
９  描画判定部（スクロール描画処理部）
１０  画素出力部
１１  制御レジスタ部（スクロール描画処理部）
１２  読み出し画素判定部（スクロール描画処理部）
１３  スキャンバッファ（スクロール描画処理部、スキャン格納部）
１４  表示出力部（スクロール描画処理部）
【図１】
2006349733.tif 000003
【図２】
2006349733.tif 000004
【図３】
2006349733.tif 000005
【図４】
2006349733.tif 000006
【図５】
2006349733.tif 000007