(57)【要約】  描画装置は、複数の画素からなる画面に描画され、画面上の２点によって規定される線の線幅に応じて、２点を端点とする線分に対する補間範囲を規定する。また、描画装置は、画素が補間範囲に含まれるか否かを判断する。そして、描画装置は、線分上の画素と、補間範囲に含まれると判断された画素とによる線を描画する。このため、描画装置は、線幅に関する情報のみに基づいて、線を描画するための画素を特定することが可能となる。したがって、描画処理の際に取り扱う情報が少なくなり、描画処理を高速に行うことができる。また、描画処理を行うために予め用意しておく情報が少なくてすむので、装置の小型化を図ることができる。
2012165238.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素からなる画面に、２点によって規定される線を描画する描画装置であって、
前記線の線幅に応じて、前記２点を端点とする線分に対する補間範囲を規定する補間範囲規定手段と、
前記画素が、前記補間範囲に含まれるか否かを判断する判断手段と、
前記線分上の画素と、前記補間範囲に含まれると判断された画素とによる線を描画する描画手段と、
を備える描画装置。
【請求項２】
前記補間範囲規定手段は、前記補間範囲を規定する指標値を算出し、
前記判断手段は、所定の条件式による算出結果と、前記指標値との比較結果に基づいて、前記画素が前記補間範囲に含まれるか否かを判断する請求項１に記載の描画装置。
【請求項３】
前記判断手段は、前記算出結果の絶対値が前記指標値よりも小さい場合に、前記画素が、前記補間範囲に含まれると判断する請求項２に記載の描画装置。
【請求項４】
前記線分上の画素についての前記条件式による前記算出結果は０である請求項２又は３に記載の描画装置。
【請求項５】
複数の画素からなる画面に、２点によって規定される線を描画する描画方法であって、
前記線の線幅に応じて、前記２点を端点とする線分に対する補間範囲を規定する工程と、
前記画素が、前記補間範囲に含まれるか否かを判断する工程と、
前記線分上の画素と、前記補間範囲に含まれると判断された画素とによる線を描画する工程と、
を含む描画方法。
【請求項６】
コンピュータに、
複数の画素からなる画面上の２点を端点とする線分に対する補間範囲を、描画する線の線幅に応じて、規定する手順と、
前記画素が、前記補間範囲に含まれるか否かを判断する手順と、
前記線分上の画素と、前記補間範囲に含まれると判断された画素とによる線を描画する手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、描画装置、描画方法及びプログラムに関し、更に詳しくは、画面に線を描画する描画装置、画面に線を描画するための描画方法及びプログラムに関する。
【背景技術】
【０００２】
近年、車両の車庫入れや、縦列駐車等をアシストするための支援装置が登場するに至っている。この種の支援装置は、例えば、車両後方の映像に重ねて、車幅を示す直線や、車両の移動先を示す軌跡をモニタ画面に表示する。この種の線を描画する際には、例えばＤＤＡ（Digital Differential Analyzer）がよく用いられる。支援装置は、ＤＤＡを用いることで、直線を描画する際に必要な演算を簡単に行うことができ、モニタ画面に短時間に直線を描画することができる。【０００３】
ＤＤＡを用いて、異なる２点によって規定される直線が描画される場合には、描画対象となる直線の線幅は、基本的には、画素の横幅或いは高さ等、画素の大きさに依存する。そこで、ＤＤＡを用いて、所望の線幅の直線を描画する技術が種々提案されている（例えば特許文献１及び２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平４−２３１７９号公報
【特許文献２】特開平８−２７９０３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１に記載された装置は、描画対象となる直線をＤＤＡのアルゴリズムに従って描画するとともに、当該直線の線幅に応じたドットパターンを描画する。また、特許文献２に記載された装置は、描画対象となる直線をＤＤＡのアルゴリズムに従って描画するとともに、線幅に等しい長さの法線を当該直線に重ねて描画する。上記２つの装置は、直線の線幅に応じたドットパターン或いは法線を描画することにより、所望の線幅の直線を表示する。【０００６】
しかしながら、特許文献１に記載された装置は、線幅に応じたドットパターンを予め記憶しておく必要がある。このため、ドットパターンを記憶しておくために、ある程度の容量のメモリが必要になる。その結果、装置が大型化するという問題がある。【０００７】
また、特許文献２に記載された装置は、描画対象となる直線の法線を、複雑な演算により算出する。このため、演算回路が複雑になると考えられる。また、モニタ画面に短時間に直線を表示することが困難になることが考えられる。【０００８】
本発明は、上述の事情の下になされたもので、装置の簡素化を図りつつ、描画処理を高速に行うことを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の第１の観点に係る描画装置は、
複数の画素からなる画面に、２点によって規定される線を描画する描画装置であって、
前記線の線幅に応じて、前記２点を端点とする線分に対する補間範囲を規定する補間範囲規定手段と、
前記画素が、前記補間範囲に含まれるか否かを判断する判断手段と、
前記線分上の画素と、前記補間範囲に含まれると判断された画素とによる線を描画する描画手段と、
を備える。【００１０】
上記目的を達成するため、本発明の第２の観点に係る描画方法は、
複数の画素からなる画面に、２点によって規定される線を描画する描画方法であって、
前記線の線幅に応じて、前記２点を端点とする線分に対する補間範囲を規定する工程と、
前記画素が、前記補間範囲に含まれるか否かを判断する工程と、
前記線分上の画素と、前記補間範囲に含まれると判断された画素とによる線を描画する工程と、
を含む。【００１１】
上記目的を達成するため、本発明の第３の観点に係るプログラムは、
コンピュータに、
複数の画素からなる画面上の２点を端点とする線分に対する補間範囲を、描画する線の線幅に応じて、規定する手順と、
前記画素が、前記補間範囲に含まれるか否かを判断する手順と、
前記線分上の画素と、前記補間範囲に含まれると判断された画素とによる線を描画する手順と、
を実行させる。
【発明の効果】
【００１２】
本発明によれば、２点によって定まる線分の周囲に、線幅に関する情報に基づいて補間範囲が規定される。そして、補間範囲に含まれる画素によって線が描画される。このため、描画処理の際に取り扱う情報が少なくなり、描画処理を高速に行うことができる。また、描画処理を行うために予め記憶しておく情報が少なくてすむので、装置の小型化を図ることができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係るバックモニタシステムのブロック図である。
【図２】撮影装置の配置を示す図である。
【図３】表示部の画面を模式的に示す図である。
【図４】ＣＰＵによって実行される一連の処理を示すフローチャートである。
【図５】ＣＰＵによって実行される描画処理を示すフローチャートである。
【図６】描画範囲を示す図である。
【図７】描画手順を説明するための図である。
【図８】描画手順を説明するための図である。
【図９】描画手順を説明するための図である。
【図１０】描画手順を説明するための図である。
【図１１】描画手順を説明するための図である。
【図１２】補間範囲を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の一実施形態を、図面を参照しつつ説明する。図１は本実施形態に係るバックモニタシステム１０の概略的な構成を示すブロック図である。バックモニタシステム１０は、例えば車両の後方の画像に重ねて、車両の軌跡や車幅を示す線を表示する装置である。図１に示されるように、バックモニタシステム１０は、描画装置２０と、撮影装置３０を有している。
【００１５】
撮影装置３０は、例えば図２に示されるように、車両１００の後方に取り付けられている。この撮影装置３０は、視野内に車両後方の路面が位置するように、取り付け姿勢や視野角が調整されている。そして、撮影装置３０は、撮影により得た画像を電気信号に変換して出力する。
【００１６】
図１に戻り、描画装置２０は、ＣＰＵ（Central Processing Unit）２１、主記憶部２２、補助記憶部２３、表示部２４、入力部２５、及びインタフェース部２６を有するコンピュータである。
【００１７】
ＣＰＵ２１は、補助記憶部２３に記憶されたプログラムを読み出して実行することにより、表示部２４の画面に、車両１００の後方の画像に重ねて、車両１００の軌跡や車幅等を示す線を描画する。このＣＰＵ２１は、上述のプログラムを実行することで、所望の幅の線を描画することができる。
【００１８】
主記憶部２２は、ＲＡＭ（Random Access Memory）等の揮発性メモリを有している。主記憶部２２は、ＣＰＵ２１の作業領域として用いられる。
【００１９】
補助記憶部２３は、ＲＯＭ（Read Only Memory）、磁気ディスク、半導体メモリ等の不揮発性メモリを有している。補助記憶部２３は、ＣＰＵ２１が実行するプログラム、及び各種パラメータなどを記憶している。また、補助記憶部２３は、撮影装置３０から出力される画像に関する情報、及びＣＰＵ２１による処理結果などを含む情報を順次記憶する。
【００２０】
表示部２４は、ＬＣＤ（Liquid Crystal Display）などの表示装置を有している。表示部２４は、ＣＰＵ２１の処理結果等を表示する。
【００２１】
入力部２５は、入力キーや、タッチパネル等のポインティングデバイスを有している。オペレータの指示は、入力部２５を介して入力され、システムバス２７を経由してＣＰＵ２１へ通知される。
【００２２】
インタフェース部２６は、シリアルインターフェイスまたはＬＡＮ（Local Area Network）インタフェース等を含んで構成されている。撮影装置３０は、インタフェース部２６を介してシステムバス２７に接続される。
【００２３】
次に、ＣＰＵ２１による線の描画動作について説明する。説明の便宜上、上述の表示部２４の画面は、図３に示されるように、１０行２０列のマトリクス状に配列された画素から構成されていると仮定する。そして、ｍ行目のｎ列目にある画素は画素Ｄ（ｍ，ｎ）と表記する。なお、（ｍ，ｎ）は、表示部２４の画面上の座標と等価である。
【００２４】
また、前提として、ＣＰＵ２１によって描画される直線は、丸印が付された画素Ｄ（３，３）と三角印が付された画素Ｄ（１３，６）の２点によって規定される右下がりの直線であるものとする。また、描画される直線の縦方向の線幅は３であるものとする。
【００２５】
図４及び図５のフローチャートは、ＣＰＵ２１によって実行されるプログラムの一連の処理（アルゴリズム）に対応している。以下、図４及び図５を参照しつつ、バックモニタシステム１０の動作について説明する。図４及び図５のフローチャートに示される一連の処理は、例えばドライバによって車両１００のギアが、後退ギアにギアチェンジされることにより開始される。
【００２６】
まず、ステップＳ２０１では、ＣＰＵ２１は、描画開始画素を基準とする描画終点画素までの距離Ｘａ、及び距離Ｙａを算出する。例えば、描画開始画素が画素Ｄ（Ｘｓｔ，Ｙｓｔ）であり、描画終了画素が画素Ｄ（Ｘｅｐ，Ｙｅｐ）である場合には、距離Ｘａ及び距離Ｙａは、それぞれ次式（１）及び（２）で示される。なお、Ａｂｓ（ｘ）関数は、ｘの絶対値を出力する関数である。
【００２７】
Ｘａ＝Ａｂｓ（Ｘｅｐ−Ｘｓｔ）  …（１）
Ｙａ＝Ａｂｓ（Ｙｅｐ−Ｙｓｔ）  …（２）
【００２８】
上述した前提のように、描画開始画素が画素Ｄ（３，３）であり、描画終了画素が画素Ｄ（１３，６）である場合には、距離Ｘａは１０と、距離Ｙａは３とそれぞれ算出される。
【００２９】
また、ＣＰＵ２１は、線幅を規定するシフト量ＸＹｓｆｔを、次式（３）に基づいて算出する。なお、Ｉｎｔ（ｘ）関数は、ｘを超えない最大の整数を出力する関数である。また、ｓ_ｗｄｔは、描画される線の幅であり、上述の前提では３である。したがって、シフト量ＸＹｓｆｔは、１と算出される。
【００３０】
ＸＹｓｆｔ＝Ｉｎｔ（ｓ_ｗｄｔ／２）  …（３）
【００３１】
次のステップＳ２０２では、ＣＰＵ２１は、線幅に依存するパラメータＸｂ，Ｙｂを次式（４）及び（５）に基づいて算出する。
【００３２】
Ｘｂ＝０−ＸＹｓｆｔ  …（４）
Ｙｂ＝０−ＸＹｓｆｔ  …（５）
【００３３】
このパラメータＸｂ，Ｙｂは、描画開始位置を線幅に応じて調整するためのパラメータである。上述した前提のように線幅が３である場合には、パラメータＸｂ，Ｙｂは、それぞれ−１（＝０−１）と算出される。図３を参照するとわかるように、このときのパラメータＸｂ，Ｙｂは、描画開始画素Ｄ（３，３）からＸ方向へ−１、Ｙ方向へ−１だけ離れた画素Ｄ（２，２）から線の描画が開始されることを意味する。
【００３４】
次のステップＳ２０３では、ＣＰＵ２１は、パラメータＸａＹｂ及びパラメータＹａＸｂを、次式（６）及び（７）に基づいて算出する。そして、ＣＰＵ２１は、算出したパラメータＹａＸｂの値を初期値ＹａＸｂＩｎｔとして設定する。
【００３５】
ＸａＹｂ＝Ｘａ・Ｙｂ  …（６）
ＹａＸｂ＝Ｙａ・Ｘｂ  …（７）
【００３６】
上述の前提の下では、距離Ｘａが１０で、パラメータＹｂが−１であるため、パラメータＸａＹｂの値は−１０と算出される。また、距離Ｙａが３で、パラメータＸｂが−１であるため、パラメータＹａＸｂの値は−３と算出される。また、初期値ＹａＸｂＩｎｔは、−３と設定される。
【００３７】
また、ＣＰＵ２１は、パラメータＸａ２、Ｙａ２をそれぞれ次式（８）及び（９）に基づいて算出する。
【００３８】
Ｘａ２＝Ｉｎｔ（Ｘａ／２）  …（８）
Ｙａ２＝Ｉｎｔ（Ｙａ／２）  …（９）
【００３９】
上述の前提の下では、距離Ｘａが１０で、距離Ｙａが３である。したがって、パラメータＸａ２が５と、パラメータＹａ２が１とそれぞれ算出される。
【００４０】
次のステップＳ２０４では、ＣＰＵ２１は、次式（１０）及び（１１）に示される演算を実行することで、パラメータＸａ２，Ｙａ２を線幅に応じて更新する。上述の前提では、線幅が３であるため、Ｉｎｔ（ｓ_ｗｄｔ／２）が１と算出される。そして、パラメータＸａ２に距離Ｘａの値を一回加えた値が、新たにパラメータＸａ２（指標値）の値となる。また、パラメータＹａ２に距離Ｙａの値を一回加えた値が、新たにパラメータＹａ２（指標値）の値となる。
【００４１】
Ｘａ２＝Ｘａ２＋Ｘａ・Ｉｎｔ（ｓ_ｗｄｔ／２）  …（１０）
Ｙａ２＝Ｙａ２＋Ｙａ・Ｉｎｔ（ｓ_ｗｄｔ／２）  …（１１）
【００４２】
上述の前提の下では、パラメータＸａ２の値は、５から１５（＝５＋１０）に更新される。また、パラメータＹａ２の値は、１から４（＝１＋３）に更新される。
【００４３】
次のステップＳ２０５では、ＣＰＵ２１は、表示部２４の画面を構成する画素を指定するためのパラメータＸｄｐ，Ｙｄｐそれぞれの値を０に初期化する。
【００４４】
次のステップＳ２０６では、ＣＰＵ２１は、描画処理を実現するためのサブルーチン３００を実行する。サブルーチン３００において、まず、ステップＳ３０１では、ＣＰＵ２１は、パラメータＹｄｐをインクリメントする。
【００４５】
次のステップＳ３０２では、ＣＰＵ２１は、パラメータＸｄｐをインクリメントする。
【００４６】
次のステップＳ３０３では、ＣＰＵ２１は、画素Ｄ（Ｘｄｐ、Ｙｄｐ）が、描画範囲内にあるか否かを確認する。図６には、描画範囲Ｆが示されている。この描画範囲Ｆは、描画開始画素Ｄ（Ｘｓｔ，Ｙｓｔ）と描画終了画素Ｄ（Ｘｅｐ，Ｙｅｐ）と、シフト量ＸＹｓｆｔによって規定される。具体的には、描画範囲Ｆは、図６に二重丸で示される画素Ｄ（Ｘｓｔ−ＸＹｓｆｔ，Ｙｓｔ−ＸＹｓｆｔ）と、画素Ｄ（Ｘｅｐ＋ＸＹｓｆｔ，Ｙｅｐ＋ＸＹｓｆｔ）とがコーナーに位置する矩形の範囲として規定される。
【００４７】
ＣＰＵ２１は、画素Ｄ（Ｘｄｐ、Ｙｄｐ）が、描画範囲Ｆに含まれない場合には（ステップＳ３０３：Ｎｏ）、ステップＳ３１０へ移行する。
【００４８】
ステップＳ３１０では、ＣＰＵ２１は、パラメータＸｄｐの値が２０以上であるか否かを判断する。そして、パラメータＸｄｐの値が２０未満である場合には（ステップＳ３１０：Ｎｏ）、ＣＰＵ２１は、ステップＳ３０２へ戻る。
【００４９】
例えば図７を参照するとわかるように、パラメータＹｄｐの値が１の場合に、パラメータＸｄｐの値が１から２０まで変化することにより指定される画素Ｄ（Ｘｄｐ，Ｙｄｐ）は、網掛けが付された１行目の画素である。したがって、この場合には、ステップＳ３０３での判断が肯定されることがなく、ＣＰＵ２１は、ステップＳ３０２、ステップＳ３０３、ステップＳ３１０の処理を繰り返す。これにより、１行目の画素の状態がオフに指定される。
【００５０】
そして、パラメータＸｄｐの値が２０になると、ステップＳ３１０での判断が肯定され（ステップＳ３１０：Ｙｅｓ）、ＣＰＵ２１は、ステップＳ３１１へ移行する。
【００５１】
ステップＳ３１１では、ＣＰＵ２１は、パラメータＸａＹｂを、次式（１２）に基づいて更新する。
【００５２】
ＸａＹｂ＝ＸａＹｂ＋Ｘａ  …（１２）
【００５３】
上述の前提の下では、パラメータＸａＹｂの値は−１０であり、距離Ｘａの値は１０である。このため、パラメータＸａＹｂの値は０に更新される。
【００５４】
次のステップＳ３１２では、ＣＰＵ２１は、パラメータＹａＸｂの値を、初期値ＹａＸｂＩｎｔの値と等価に設定する。上述の前提の下では、初期値ＹａＸｂＩｎｔの値は−３であるから、パラメータＹａＸｂの値は−３に設定される。
【００５５】
次のステップＳ３１３では、ＣＰＵ２１は、パラメータＹｄｐの値が１０以上であるか否かを判断する。そして、パラメータＹｄｐの値が１０未満である場合には（ステップＳ３１３：Ｎｏ）、ＣＰＵ２１は、ステップＳ３１４へ移行する。
【００５６】
ステップＳ３１４では、ＣＰＵ２１は、パラメータＸｄｐの値を０に初期化する。そして、ステップＳ３０１へ戻り、パラメータＹｄｐの値をインクリメントする。例えば、２回目に実行されるステップＳ３０１において、パラメータＹｄｐの値は２になる。
【００５７】
以降のステップでは、ＣＰＵ２１によって、ステップＳ３０２、ステップＳ３０３、及びステップＳ３１０の処理が実行される。次に、ステップＳ３０２での処理により、パラメータＸｄｐの値が２になる。したがって、パラメータＸｄｐ，Ｙｄｐによって規定される画素Ｄ（Ｘｄｐ，Ｙｄｐ）は、画素Ｄ（２、２）となる。
【００５８】
図８を参照するとわかるように、画素Ｄ（２，２）は、描画範囲Ｆ内に位置する。このため、ステップＳ３０３での判断は肯定され（ステップＳ３０３：Ｙｅｓ）、ＣＰＵ２１は、ステップＳ３０６へ移行する。
【００５９】
ステップＳ３０６では、ＣＰＵ２１は、所定の条件式としての次式（１４）に基づいて、パラメータｓ_ａｂｓの値を算出する。パラメータＸｄｐ、Ｙｄｐの双方が２である場合には、パラメータＸａＹｂの値は−１０であり、パラメータＹａＸｂの値は−３である。このため、パラメータｓ_ａｂｓの値は７と算出される。
【００６０】
ｓ_ａｂｓ＝Ａｂｓ（ＸａＹｂ−ＹａＸｂ）  …（１４）
【００６１】
次のステップＳ３０７では、ＣＰＵ２１は、パラメータｓ_ａｂｓの値が、パラメータＸａ２の値以下であるか否かを判断する。上述の前提の下では、パラメータＸａ２の値が１５であるから、ステップＳ３０７での判断は肯定される（ステップＳ３０７：Ｙｅｓ）。そして、ＣＰＵ２１は、ステップＳ３０８へ移行して、画素Ｄ（２，２）の状態をオンに指定する。これにより、図８の星印が付された画素Ｄ（２，２）がオンとなる。
【００６２】
次のステップＳ３０９では、ＣＰＵ２１は、次式（１５）に基づいて、パラメータＹａＸｂの値を更新する。パラメータＸｄｐ、Ｙｄｐの双方が２である場合には、パラメータＹａＸｂの値が−３であり、パラメータＹａの値が３である。このため、パラメータＹａＸｂの値は０に更新される。
【００６３】
ＹａＸｂ＝ＹａＸｂ＋Ｙａ  …（１５）
【００６４】
次のステップＳ３１０では、パラメータＸｄｐの値が２であるため（ステップＳ３１０：Ｎｏ）、ＣＰＵ２１は、ステップＳ３０２に戻る。
【００６５】
以降のステップでは、ステップＳ３０２の処理で、パラメータＸｄｐの値が３になる。そして、ＣＰＵ２１は、ステップＳ３０３を経てステップＳ３０６へ移行する。続いて、ステップＳ３０６の処理により、パラメータｓ_ａｂｓの値として１０（＝Ａｂｓ（−１０−０））が算出される。パラメータＸａ２が１５であるから、ステップＳ３０７での判断が肯定され（ステップＳ３０７：Ｙｅｓ）、画素Ｄ（２，３）がオンとなる（ステップＳ３０８）。
【００６６】
同様に、ステップＳ３０２の処理で、パラメータＸｄｐの値が４になると、ＣＰＵ２１は、ステップＳ３０３を経てステップＳ３０６へ移行する。続いて、ステップＳ３０６の処理により、パラメータｓ_ａｂｓの値として１３（＝Ａｂｓ（−１０−３））が算出される。パラメータＸａ２が１５であるから、ステップＳ３０７での判断が肯定され（ステップＳ３０７：Ｙｅｓ）、画素Ｄ（２，４）がオンとなる。これにより、図９に示されるように、星印が付された連続する画素Ｄ（２，２），画素Ｄ（２，３），画素Ｄ（２，４）がオンとなる（ステップＳ３０８）。
【００６７】
その後、ステップＳ３０２の処理で、パラメータＸｄｐの値が５になると、ステップＳ３０３に続くステップＳ３０６の処理により、パラメータｓ_ａｂｓの値として１６（＝Ａｂｓ（−１０−６））が算出される。したがって、パラメータＸａ２が１５であるから、ステップＳ３０７での判断が否定され（ステップＳ３０７：Ｎｏ）、画素Ｄ（２，５）がオフとなる。以降、ステップＳ３１０での判断が肯定されるまで、ステップＳ３０２〜ステップＳ３１０の処理が繰り返される。これにより、図１０において網掛けが付された画素Ｄ（２，５）から画素Ｄ（２，２０）がオフとなる。
【００６８】
以降、ステップＳ３１３での判断が肯定されるまで、ＣＰＵ２１によって、上述したステップＳ３０１〜Ｓ３１４までの処理が、繰り返し実行される。これにより、図１１の星印が付された画素Ｄで示されるように、縦方向の線幅が３の線が描画される。ＣＰＵ２１は、ステップＳ３１３での判断を肯定すると、一連の処理を終了する。
【００６９】
以上説明したように、本実施形態に係るバックモニタシステム１０は、図４及び図５に示される処理を実行する。これにより、図１２に模式的に示されるように、丸印が付された画素Ｄ（３，３）と、三角印が付された画素Ｄ（１３，６）によって規定される線分を含む補間範囲Ｒが規定される。この補間範囲Ｒは、ステップＳ２０４で線幅に応じて更新されたパラメータＸａ２によって、間接的に規定される。
【００７０】
このため、線幅に関する情報のみに基づいて、線を描画するための画素を特定することが可能となる。したがって、描画処理の際に取り扱う情報が少なくなり、描画装置２０は、描画処理を高速に行うことができる。また、描画処理を行うために予め用意しておく情報が少なくてすむので、主記憶部２２及び補助記憶部２３の小型化を図ることができる。ひいてはバックモニタシステム１０の小型化及び低下価格を図ることが可能となる。
【００７１】
以上、本発明の実施形態について説明したが、本発明は上記実施形態によって限定されるものではない。
【００７２】
例えば、上記実施形態では、図３を参照するとわかるように、距離Ｘａの方が距離Ｙａよりも大きい場合について説明した。一方、距離Ｙａの方が距離Ｘａよりも大きい場合には、ＣＰＵ２１は、ステップＳ３０７において、ステップＳ２０４で算出したパラメータＹａ２の値と、パラメータｓ_ａｂｓの値とを比較する。これにより、ＣＰＵ２１は、所望の線幅の線を描画することができる。
【００７３】
上記実施形態では、例えば図３に示されるように、右下がりの線を描画する場合について説明した。これに限らず、右上がりの線を描画することも同様の要領で実現することができる。
【００７４】
上記実施形態では、表示部２４の画面が、１０行２０列のマトリクス状に配列された画素から構成されていると仮定した。これに限らず、表示部２４を構成する画素は、例えば４８０行８００列のマトリクス状に配列されていてもよい。
【００７５】
上記各実施形態に係る描画装置２０の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
【００７６】
上記実施形態において描画装置２０の補助記憶部２３に記憶されているプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto-Optical disk）等のコンピュータで読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の処理を実行する装置を構成することとしてもよい。
【００７７】
上述の機能を、ＯＳ（Operating System）が分担して実現する場合又はＯＳとアプリケーションとの協働により実現する場合等には、ＯＳ以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロード等してもよい。
【００７８】
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。
【００７９】
本出願は、２０１１年５月３０日に出願された日本国特許出願２０１１−１２１１０５号に基づく。本明細書中に日本国特許出願２０１１−１２１１０５号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。
【産業上の利用可能性】
【００８０】
本発明の描画装置、描画方法及びプログラムは、画面に線を描画するのに適している。
【符号の説明】
【００８１】
１０  バックモニタシステム
２０  描画装置
２１  ＣＰＵ
２２  主記憶部
２３  補助記憶部
２４  表示部
２５  入力部
２６  インタフェース部
２７  システムバス
３０  撮影装置
１００  車両
Ｄ  画素
Ｆ  描画範囲
Ｒ  補間範囲
【図１】
2012165238.tif 000003
【図２】
2012165238.tif 000004
【図３】
2012165238.tif 000005
【図４】
2012165238.tif 000006
【図５】
2012165238.tif 000007
【図６】
2012165238.tif 000008
【図７】
2012165238.tif 000009
【図８】
2012165238.tif 000010
【図９】
2012165238.tif 000011
【図１０】
2012165238.tif 000012
【図１１】
2012165238.tif 000013
【図１２】
2012165238.tif 000014
【国際調査報告】
2012165238.tif 000015
2012165238.tif 000016
2012165238.tif 000017
2012165238.tif 000018