以下、本発明の描画制御装置、レーザ照射装置、描画制御方法、描画制御プログラム、及びこれを記録した記録媒体を適用した実施の形態について説明する。
ここでは、「描画対象」なる文言は、文字、数字、記号、図形等の描画の対象を表すものとして用いる。また、「文字」とは、遍(へん)や旁(つくり)、又は、更にその一部等、文字の全体又は一部を表す文言として用いる。同様に、「数字」、「記号」、「図形」は、数字、記号、図形の全体又は一部を表す文言として用いる。
また、「線分」とは、文字等の描画対象に含まれ、描画対象を描画するために両端の座標が決まっている区間をいう。この線分は、直線の一部だけでなく、曲線の一部も含み、太さを有する。
また、「一筆部品」とは、描画が開始される位置から次に描画が終了される位置までに連続的に描画される一又は複数の線分を含むものとして用いる。例えば、レーザ照射で描画を行う場合は、レーザの1回の照射開始点から照射終了点までに描画される文字等の一画が一筆部品となる。
このため、文字、数字、記号、図形等の描画対象は、1以上の一筆部品を含み、一筆部品は、1以上の線分を含む。
なお、実施の形態の一筆部品(一画)は、従来のストロークフォントのストロークに対応するが、実施の形態の一筆部品は、レーザマーキング装置100による文字の描画に最適化されるものであって、公的機関(例えば、日本規格協会、ISO等)等が定める一画と同じであってもよいし異なっていてもよい。実施の形態のレーザマーキング装置100は、レーザ光により媒体を発色させて一筆部品を描画するため、一筆部品を適切な形状に調整する。
また、「描画順」なる文言は、描画対象に含まれる線分を描画する順(線分をどちらの端部から描画するかという描画順も含む)と、文章等に含まれる複数の描画対象の各々を描画する順との2つの意味を有するものとして用いる。
[実施の形態1]
図2は、実施の形態1のレーザマーキング装置100のハードウェア構成の一例を示す図である。
レーザマーキング装置100は、レーザを照射する描画装置10、及び、描画装置10の描画を制御する描画制御装置20を有する。描画装置10は、レーザを照射するレーザ発振器11、レーザの照射方向を変える方向制御ミラー13、方向制御ミラー13を駆動する方向制御モータ12、光学レンズ14、及び集光レンズ15を含む。
レーザ発振器11は、半導体レーザ(LD(Laser Diode))であるが、気体レーザ、固体レーザ、液体レーザ等でもよい。方向制御モータ12は、方向制御ミラー13の反射面の向きを2軸に制御する例えばサーボモータである。方向制御モータ12と方向制御ミラー13とによりガルバノミラーを構成する。光学レンズ14は、レーザ光のスポット径を大きくするレンズであり、集光レンズ15はレーザ光を収束させるレンズである。
リライタブル媒体50は、180℃以上の温度に加熱して急冷することで発色し、130〜170℃の温度に加熱することで消色する書き換え可能な感熱媒体である。通常の感熱紙やサーマルリライタブル媒体は近赤外領域のレーザ光を吸収しないので、近赤外レーザ波長を発振するレーザ光源(半導体レーザや固体レーザのYAG等)を用いる場合は、感熱紙、サーマルリライタブル媒体にレーザ光を吸収する材料の添加や層を追加する必要がある。なお、書き換えとは、レーザ光で加熱して記録を行い、レーザ光又は温風、ホットスタンプ等で加熱して消去することである。また、書き換えができないサーマルペーパとは、加熱により消色が困難な感熱紙をいう。本実施の形態では、使用する媒体の例として、リライタブル媒体50を使用した場合を説明するが、書き換えができないサーマルペーパ、プラスチック、金属等のように書き換えが可能でない媒体に対しても、好適に適用できる。
図3は、描画制御装置20のハードウェア構成の一例を示す図である。図3は、主にソフトウェアによって描画制御装置20を実装する場合のハードウェア構成図であり、コンピュータを実体としている。コンピュータを実体とせず描画制御装置20を実現する場合、ASIC((Application Specific Integrated Circuit))等の特定機能向けに生成されたICを利用する。
描画制御装置20は、CPU31、メモリ32、ハードディスク35、入力装置36、CD−ROMドライブ33、ディスプレイ37、及びネットワーク装置34を有する。ハードディスク35には、ストロークフォントの一連の文字のフォントデータを記憶するフォントデータDB41、フォントデータから重複を排除した描画命令を生成し描画装置10を制御する文字描画プログラム42、速度出力調整DB43、描画条件DB44、及び処理対象DB45が記憶されている。
CPU31は、ハードディスク35から文字描画プログラム42を読み出して実行し、後述する手順で、リライタブル媒体50に文字を描画する。メモリ32は、DRAM等の揮発性メモリで、CPU31が文字描画プログラム42を実行する際の作業エリアとなる。
入力装置36は、マウスやキーボード等の描画装置10を制御する指示をユーザが入力するための装置である。リライタブル媒体50に描画する文章又は図形(以下、文章等)や、文章等に含まれる描画対象のサイズ等を表す描画条件は、例えば、入力装置36を介してユーザによって入力される。入力された描画条件は、描画条件DB44として、例えば、ハードディスク35に記憶される。描画条件には、文章等の中における各描画対象の位置、及びサイズ等を表すデータが含まれる。描画条件のデータ構造については図6を用いて後述する。
また、入力装置36には、実施の形態1の描画制御装置20による描画対象の描画速度・描画出力を調整する処理を実行するモード(実行モード)、又は当該処理を実行しないモード(非実行モード)を選択的に設定するための操作もユーザによって入力される。実行モードが設定された場合は、実行モードを実行する対象であることを表す対象フラグが処理対象DB45の処理対象データに設定される。対象フラグの設定は、すべての描画対象について一律に行われてもよく、平仮名、片仮名、漢字、数字、アルファベット、記号、図形等にグループ分けしてグループ毎に行われてもよく、あるいは、各描画対象について行われてもよい。
また、描画対象の描画速度・描画出力の調整には、速度出力調整DB43に記憶される速度出力調整データが用いられる。処理対象DB45の処理対象データと、速度出力調整DB43の速度出力調整データのデータ構造については図6を用いて後述する。
ディスプレイ37は、例えば文字描画プログラム42が指示する画面情報に基づき所定の解像度や色数で、GUI(Graphical User Interface)画面を表示するユーザインターフェイスとなる。例えば、リライタブル媒体50に描画する文字の入力欄が表示される。
CD−ROMドライブ33は、CD-ROM38を脱着可能に構成され、CD−ROM38からデータを読み出し、また、記録可能な記録媒体にデータを書き込む際に利用される。フォントデータDB41、及び文字描画プログラム42は、CD-ROM38に記憶された状態で配布され、CD-ROM38から読み出されてハードディスク35にインストールされる。CD−ROM38は、この他、DVD、ブルーレイディスク、SDカード、メモリースティック(登録商標)、マルチメディアカード、xDカード等、不揮発性のメモリで代用することができる。
ネットワーク装置34は、LANやインターネット等のネットワークに接続するためのインターフェイス(例えばイーサネット(登録商標)カード)であり、OSI基本参照モデルの物理層、データリンク層に規定されたプロトコルに従う処理を実行して、描画装置10に文字コードに応じた描画命令を送信することを可能とする。フォントデータDB41、及び文字描画プログラム42は、ネットワークを介して接続した所定のサーバからダウンロードすることができる。なお、ネットワーク経由でなく、USB(Universal Serial Bus)、IEEE1394、ワイヤレスUSB、Bluetooth等で直接、描画制御装置20と描画装置10を接続してもよい。
リライタブル媒体50に描画される描画対象の文字は、上述のように入力装置36から入力され、例えばリスト状のデータとしてハードディスク35に記憶されている。なお、リライタブル媒体50に描画される描画対象である文字等を含む文章等や、文章等に含まれる描画対象のサイズは、描画条件を構成する。
文字は、UNICODEやJISコード等の文字コードで特定され、描画制御装置20は文字コードに対応する文字のフォントデータをフォントデータDB41から読み出し、描画装置10を制御するための描画命令を生成する際に用いる。また、描画制御装置20は、速度出力調整DB43に記憶される速度出力調整データを読み出し、描画速度及び描画出力の決定の際に参照する。
また、描画対象の文字の文字コードは、入力装置36から入力される場合と、予めハードディスク35に記憶されている場合(ネットワーク経由で入力される場合を含む)とがある。
入力装置36から入力される場合は、キーボードのキーを押下することで入力されるキーコードに対応した文字コード、又は、IME(Input Method Editor)が起動している場合にキーコードからIMEが変換した文字コードが対象文字コード取得手段25に入力される。また、ハードディスク35に予め記憶されている場合は、例えば、宛先等の文字列がリスト状に記憶されているので、文字列の文字を指定する文字コードが読み出され、対象文字コード取得手段25に入力される。
また、描画対象が数字の「1」のように、全て直線状の線分で構成されている場合は、各線分の座標を容易に抽出することができる。しかしながら、アウトラインフォントでは曲線をスケーラブルに描画できるように、例えばベジェ曲線のような曲線で描画できるようになっている。曲線で描画されていると、線分間の距離の算出が複雑になるので、曲線を含む描画対象であっても直線状の線分に変換して描画することが好適になる。
そこで、実施の形態1の描画制御装置20は、フォントデータが曲線を含む場合、曲線部分を直線に変換し、各直線の線分の座標を検出する。なお、文字が曲線を含む場合、フォントデータには曲線制御用のデータが含まれているので、その文字が曲線を含むか否かはフォントデータから判定される。
図4は、フォントデータ、座標データ、及び座標データに基づいて描画された文字の一例を表す図である。図4(a)は、描画情報としてのフォントデータの一例を示す。図4(a)のフォントデータはアルファベットの「r」という文字のフォントデータを示し、4つの線分で定義するためのデータを含む。フォントデータは、各線分の端点の座標と、描画順を有する。フォントデータに含まれる端点の座標は、文字をビットマップに配置した場合のビットマップの所定画素を原点に指定されている。
ストロークフォントをレーザ等で描画する場合、座標だけではレーザを照射しながら移動するのか、レーザを照射しないで移動するのかを判別できない。このため、ストロークフォントのフォントデータには、レーザの描画開始位置(人間が書くとすると筆をおろす位置)と移動命令、レーザの描画終了位置(人間が書くとすると筆を上げる位置)と移動命令が含まれている。
図4(a)では、「m」はレーザの描画開始位置とその座標までの移動命令を示し、「d」は描画終了位置とその座標までの移動命令を示す。従って、「m」は筆を上げて移動することを意味し、「d」は筆を下ろして移動することを意味する。このように、フォントデータは、座標による文字の形状、描画の順番、描画の方向(図では矢印を有する線分)を規定し、「m」と「d」によりレーザ照射の有無を規定する。すなわち、一以上の連続した「d」に対応づけられた座標により表される線分が一筆部品である。
従って、図4(a)に示す描画情報としてのフォントデータは、座標(100,500)から座標(100、50)まで線分が描かれ、座標(100,50)から座標(120、220)までは線分を描かずに移動し、座標(120、220)から座標(230、500)まで線分が描かれ、座標(230、500)から座標(300、500)まで線分が描かれ、さらに、座標(300、500)から座標(400、450)まで線分が描かれることを表す。
一方、描画される文字の形状は、線分を指定する2点の座標が線分の数だけあれば特定できることになる。図4(b)は、媒体に実際に描画される文字(ここでは「r」)を構成する各線分の座標の一例を示す。図4(b)は、媒体に描画対象を描画する描画位置を表すデータとしての座標データを示しており、描画情報としてのフォントデータに基づき文字の大きさを2倍に拡大した場合の座標データを表す。ストロークフォントは、アウトラインフォントようにスケーラブルフォントの一種なので、例えば、リライタブル媒体50に描画する際の文字の大きさを指定できるようになっている。
ストロークフォントの文字の大きさの調整方法はいくつか知られているが、ここでは説明のため単にフォントデータの座標をそれぞれ2倍にした。例えば文字の中心からの距離に応じて線分の座標を調整してもよい。
アルファベットの「r」のように4つの線分を含む文字の場合、線分の座標は4組となる。図4(b)に示す[0]〜[3]は、各線分の描画順を示し、描画順の右側に続く4つの数字のうち、最初の2つの数値は線分の始点の座標を表し、残りの(右側の)2つの数値は線分の終点の座標を表す。
図4(b)に示す描画位置を表すデータとしての座標データを用いると、描画対象であるアルファベットの「r」は、図4(c)に示すように、点A→点B、点C→点D→点E→点Fの順に描画される。この場合に、点Bから点Cへは描画を行わずに移動するため、空走区間となる。なお、描画対象としてのアルファベットの「r」は、線分ABで構成される一筆部品と、線分CD、DE、及びEFで構成される一筆部品との2つの一筆部品を含む。
次に、図5を用いて実施の形態1の描画制御装置の機能ブロックについて説明する。
図5は、実施の形態1の描画制御装置20の機能ブロックを示す図である。各ブロックをソフトウェアで実現する場合、各ブロックはCPU31が文字描画プログラム42を実行することで実現される。
描画制御装置20は、描画位置決定手段21、モード設定手段22、描画順決定手段23、描画命令生成手段24、対象文字コード取得手段25、フォントデータ取得手段26、描画条件取得手段27、方向変化度合演算手段28、方向変化度合判定手段29、描画速度演算手段30、描画出力演算手段51、及び待機時間演算手段52を含む。
描画位置決定手段21は、フォントデータ取得手段26によってフォントデータDB41から読み出されるフォントデータと、描画条件取得手段27によって描画条件DB44から読み出される描画条件とに基づいて、描画対象をリライタブル媒体50に描画する描画位置である座標データを決定する。なお、描画条件には、文章等の中における各描画対象の位置、及びサイズ等を表すデータが含まれる。描画条件を表すデータについては図6を用いて後述する。
モード設定手段22は、実施の形態1の描画制御装置20による描画対象の描画速度・描画出力を調整する処理を実行する実行モードを設定するための処理手段である。
描画順決定手段23は、描画対象に含まれる線分を描画する描画順と、文章等に含まれる複数の描画対象の各々を描画する描画順との両方の描画順を決定する。
描画命令生成手段24は、描画位置決定手段21によって決定される座標データ、描画順決定手段23によって決定される描画順、描画速度演算手段30によって演算される描画速度、描画出力演算手段51によって演算される描画出力、及び待機時間演算手段52によって演算される待機時間を反映した描画命令を生成する。生成された描画命令は、描画装置10に入力され、この結果、ユーザによって入力装置36に入力された文章等を表す描画対象が描画装置10によってリライタブル媒体50に描画される。
対象文字コード取得手段25は、ユーザによって入力装置36に入力された文章等に含まれる描画対象の文字コードを取得する。
フォントデータ取得手段26は、対象文字コード取得手段25によって取得された文字コードに基づいてフォントデータDB41を参照し、文字コードに対応づけられたフォントデータを読み出す。
描画条件取得手段27は、リライタブル媒体50に描画する描画対象である文字等を含む文章等や、文章等に含まれる描画対象のサイズの条件を表す描画条件をハードディスク35に記憶された描画条件DB44から取得する。
方向変化度合演算手段28は、描画位置決定手段21によって決定される座標データに基づき、相連続する線分同士のなす角度を方向変化度合として演算する。なお、方向変化度合は、フォントデータ取得手段26によってフォントデータDB41から読み出されるフォントデータに基づいて演算されるように構成されていてもよい。
方向変化度合判定手段29は、方向変化度合演算手段28によって演算された方向変化度合が所定度合より大きいか否かの判定を行う。実施の形態1では、所定度合は30°に設定されており、方向変化度合判定手段29は、相連続する線分同士のなす角度が30°より大きいか否かを判定する。相連続する線分同士のなす角度の定義の仕方については、図6を用いて後述する。
描画速度演算手段30は、速度出力調整DB43に記憶される速度出力調整データを参照し、相連続する線分同士のなす角度(すなわち、方向変化度合)に応じた描画速度を演算する。
描画出力演算手段51は、速度出力調整DB43に記憶される速度出力調整データを参照し、描画速度演算手段30によって演算される描画速度に応じた描画出力を演算する。
待機時間演算手段52は、描画出力演算手段51によって演算される描画出力と、描画順決定手段23によって決定される描画順とに基づき、描画処理を待機させるための待機時間を演算する。一般的に、レーザ発振器11(図2参照)の出力を変更する際には時間を要する。このため、待機時間演算手段52は、描画順が1つ前の描画対象と描画出力が異なる場合に、待機時間を挿入する。一般的に、レーザ発振器11(図2参照)の出力を変更する際には時間を要し、特に、出力を下げる際には、出力を上げる際よりも長い時間を要するため、待機時間は、例えば、出力を下げる際の待機時間が出力を上げる際の待機時間の2倍になるように設定される。このような待機時間は、例えば、予め入力装置36を介してユーザが入力・設定できるように構成すればよい。待機時間演算手段52によって演算される待機時間を表すデータは、描画命令生成手段24によって生成される描画命令に組み込まれる。
図6(a)は、描画条件DB44の一例を示す図であり、図6(b)は、相連続する線分同士のなす角度の定義の仕方を説明するための図であり、図6(c)は、実施の形態1の描画制御装置20で用いる速度出力調整DB43の一例を示す図であり、図6(d)は、実施の形態1の描画制御装置20で用いる処理対象DB45の一例を示す図である。
図6(a)に示すように、描画条件DB44は、描画対象の種別を特定するための文字コードの一例としてのJISコード、文章等を表す描画対象の各々が配置される位置(x、y座標)を表す位置データ、及びサイズを表すデータを含む。描画対象の位置を示す座標値は、例えば、描画対象が配置される領域の左上の点の座標である。図6(a)に示す位置データは、例えば、描画対象が配列される領域内において、左上から右下に向かって格納順が決められており、文字コードを格納順に並べると文章等を表せるように構成されている。
図6(b)に示すように、相連続する線分同士のなす角度(すなわち、方向変化度合)は、相連続する線分ABと線分BCに対して、線分ABの延長線lと線分BCとがなす角度θとして求められる。
図6(c)に示すように、速度出力調整DB43は、方向変化度合θ(°)と描画速度(%)及びレーザ出力(%)とを関連付けたテーブル形式の速度出力調整データを含む。ここで、速度出力調整DB43は、描画速度情報としての描画速度を表すデータを格納する描画速度情報格納手段を構成する。
方向変化度合が30(°)以下の場合は、描画速度は100(%)であり、レーザ出力は100(%)に設定される。ここで、描画速度及び描画出力は、直線を描画する場合の描画速度及び描画出力を100(%)として表している。このため、方向変化度合が30(°)以下の場合は、描画速度及び描画出力は、ともに100(%)に設定されることになる。なお、図6(c)に示す速度出力調整DBでは、方向変化度合θ(°)の最小単位を1(°)に設定してある。方向変化度合演算手段28は、例えば、小数点第1位を四捨五入して方向変化度合θ(°)を求める。
また、速度出力調整データは、図6(c)に示すように、方向変化度合が増大するに連れ、描画速度及びレーザ出力がともに減少するように構成されている。方向変化度合が比較的大きい場合(すなわち、描画対象の形状が大きく曲がるような場合)に、描画速度を低下させるのは、方向変化度合が比較的大きい場合は、描画装置10の追従遅れが生じ易い状況であり、このような状況では、描画速度が高いほど慣性の影響等で描画の歪みが大きくなるため、描画速度を低下させることにより、描画の歪みを低減あるいは抑制するためである。
また、描画速度の低下に伴って描画出力を低下させるのは、描画速度が高い場合は、描画速度が低い場合よりも、単位線分長当たりのレーザ照射量が増大し、これによりリライタブル媒体50に伝達されるエネルギが多くなり、リライタブル媒体50に含まれる分子構造が熱変性によって破壊され、繰返し書き換えによる劣化での消え残り(消去しても消えない)や発色部の濃度低下が生じる可能性があるため、これを抑制するためである。
なお、図6(c)に示す描画速度と描画出力の値は一例に過ぎない。速度出力調整データに含まれる描画速度は、方向変化度合の増大に応じて低下するように設定されていればよい。また、速度出力調整データに含まれる描画出力は、描画速度の低下に応じて低下するように設定されていればよい。描画出力は、例えば、描画速度の如何に拘わらず、リライタブル媒体50に照射されるレーザ光の単位面積当たりのエネルギが略一定となるように設定すればよい。
図6(d)に示すように、処理対象DB45に記憶される処理対象データは、テーブル形式のデータであり、文字コード、及び対象フラグを含む。ここでは、文字コードとして、描画対象の種別を特定するための文字コードの一例としてのJISコードを用いる例を示す。対象フラグは、描画制御装置20による描画対象の描画速度・描画出力を調整する処理を行う実行モードを実行する対象になっているか否かを示すフラグである。
対象フラグが"1"に設定されている描画対象は、描画対象の描画速度・描画出力を調整する対象になっている描画対象であり、対象フラグが"0" に設定されている描画対象は、描画対象の描画速度・描画出力を調整する対象になっていない描画対象である。対象フラグの設定は、ユーザが実行モードの対象とする描画対象であるか否かを入力装置36を介して設定することによって行われる。ユーザは、実行モードの設定対象をすべての描画対象について一律に設定することができ、あるいは、平仮名、片仮名、漢字、数字、アルファベット、記号、図形等のグループ毎に設定することもでき、又は、各描画対象について個別的に設定することもできる。
なお、JISコード、x座標値、y座標値、及び描画対象のサイズとして、アルファベットと数字を組み合わせた記号を示すが、実際の描画制御装置では具体的なコード番号、x座標値、y座標値、及び描画対象のサイズを表す数値が与えられる。
実施の形態1の描画制御装置20は、処理対象データで実行モードの対象として設定されている描画対象について、座標データに基づいて相連続する線分同士のなす角度(方向変化度合)を演算し、速度出力調整DB43の速度出力データを参照しながら、方向変化度合に応じて、描画速度及び描画出力を決定する。
次に、図7を用いて、実施の形態1の描画制御装置20による描画制御処理について説明する。
図7は、実施の形態1の描画制御装置20による描画制御処理を表すフローチャートである。
まず、描画位置決定手段21は、フォントデータ取得手段26によってフォントデータDB41から読み出されるフォントデータと、描画条件取得手段27によって描画条件DB44から読み出される描画条件とに基づいて、描画対象をリライタブル媒体50に描画する描画位置を決定する(ステップS1)。
このステップS1の処理に際し、フォントデータ取得手段26は、対象文字コード取得手段25によって取得された文字コードに基づいてフォントデータDB41を参照し、文字コードに対応づけられたフォントデータを読み出す。そして、描画位置決定手段21は、フォントデータ取得手段26によってフォントデータDB41から読み出されるフォントデータと、描画条件取得手段27によって描画条件DB44から読み出される描画条件に含まれるサイズのデータとに基づいて、描画対象をリライタブル媒体50に描画する描画位置である座標データを決定する。以上により、ステップS1の処理が行われる。
例えば、図8(a)に示すような文字列を描く場合は、図8(b)に示すように描画基点(例えば、左上の点を基点とし、基点の座標値は(x0,y0)とする)を設定し、描画条件に含まれる文字サイズ等から、描画対象に含まれる各線分を描画する位置を表す座標データを決定する。
次に、描画順決定手段23は、描画するすべての描画対象の各々を描画する描画順を決定する(ステップS2)。描画する全ての描画対象は、描画条件取得手段27がハードディスク35内の描画条件DB44に記憶される描画条件から文章等を表すデータを取得し、描画順決定手段23に受け渡す。描画順決定手段23は、空走距離が短くなり、かつ、全体の描画時間を短縮できるように、すべての描画対象の各々を描画する順序を決定する。
例えば、図9(a)に示す描画順1のように、1〜2行目の全てにわたって文字コードの格納順(左から右に上から下に向かう順)ではなく、図9(b)に示すように2行目は右から左に描画する描画順2の方が、図9(a)に矢印Aで示す分を空走せずに済むため、空想距離が短くなる。ステップS2では、描画順決定手段23は、例えば、図9(b)に示す要領で空走距離が短くなり、かつ、全体の描画時間を短縮できるように、すべての描画対象の各々を描画する順序を決定する。なお、ステップS2で決定する描画順は、複数の描画対象の各々を描画する順序であり、各描画対象に含まれる線分を描画する描画順については、後に説明する工程で決定する。
次に、モード設定手段22は、実行モードが設定されているか否かを判定する(ステップS3)。実施の形態1では、実行モードが設定されているか否かの判定は、モード設定手段22が図6(d)に示す処理対象DB45の対象フラグを参照することによって行われ、フローがステップS3〜S10の間で繰り返されることにより描画対象毎に行われる。
ステップS3において実行モードが設定されていると判定された場合は、方向変化度合演算手段28は、ステップS1で決定した座標データに基づき、描画対象に含まれるすべての相連続する線分同士の方向変化度合(θ)を演算する(ステップS4)。
次いで、方向変化度合判定手段29は、ステップS4で演算した方向変化度合が所定度合いより大きいか否かを判定する(ステップS5)。実施の形態1では、所定度合は30°に設定されているため、方向変化度合判定手段29は、描画対象に含まれる相連続する線分同士のなす角度が30°より大きいか否かを判定する。
ここで、実施の形態1では、一筆部品毎に描画速度を設定するため、描画対象が複数の一筆部品を含む場合は、ステップS3で実行モードが設定されていると判定された描画対象に含まれる一筆部品毎に方向変化度合が判定される。
また、相連続する線分が一筆部品に複数組含まれる場合は、例えば、複数組の相連続する線分の方向変化度合のうち最大の値が30°より大きいか否かを判定すればよい。なお、複数組の相連続する線分の方向変化度合のうち最大の値の代わりに、平均値やその他の処理で求められる値を一筆部品の方向変化度合として用いてもよい。
ステップS5において、所定度合より大きいと判定された場合は、描画速度演算手段30は、図6(c)に示す速度出力調整DB43を参照し、方向変化度合に応じた描画速度を求める(ステップS6Y)。描画速度の設定は、描画対象に含まれる一筆部品毎に行われる。
ステップS6Yで描画速度が求められると、描画出力演算手段51は、図6(c)に示す速度出力調整DB43を参照し、ステップS6Yで求められた描画速度に応じた描画出力を求める(ステップS7)。求められた描画出力は、レーザ発振器11(図2参照)の出力を表す。なお、描画出力の設定は、描画対象に含まれる一筆部品毎に行われる。
次いで、描画順決定手段23は、描画対象に含まれる線分の描画順を決定する(ステップS8)。ステップS8では、例えば、空走距離が短くなり、かつ、全体の描画時間を短縮できるように、描画対象に含まれるすべての線分を描画する順序を決定すればよい。
次に、待機時間演算手段52は、描画順に待機時間を挿入するタイミングと待機時間の長さを演算する(ステップS9)。実施の形態1では、ステップS7で求めた一筆部品の描画出力が1つ前の描画順の一筆部品と異なる場合に、待機時間を挿入する。待機時間は、例えば、出力を下げる際の待機時間が出力を上げる際の待機時間の2倍になるように設定される。
ステップS9の処理が終了すると、描画順決定手段23は、すべての描画対象について、各々の描画対象に含まれる線分の描画順を決定する処理が終了したか否かを判定する(ステップS10)。ステップS10の処理は、例えば、ステップS2において描画順が決定されたすべての描画対象についての処理が終了したか否かを判定することによって行われる。
ステップS10において、描画順決定手段23がすべての描画対象についての処理が終了したと判定した場合は、描画命令生成手段24は、描画命令を生成する(ステップS11)。
次いで、描画制御装置20により、描画命令に基づいて描画装置10が駆動される(ステップS12)。これにより、所望の描画がリライタブル媒体50に行われる。
以上により、一連の処理が終了する。
なお、ステップS3で実行モードが設定されていない(No)と判定された場合は、フローはステップS6Nに進行し、描画速度は100%に設定される(ステップS6N)。実行モードが設定されていないため、描画速度を低下させる処理は行われないからである。
また、ステップS5でNoと判定された場合もフローはステップS6Nに進行し、描画速度は100%に設定される。方向変化度合が所定度合(実施の形態1では30°)以下の場合は、描画速度を低下させる必要はないからである。
また、ステップS10において、すべての描画対象についての処理が終了していないと判定された場合は、フローはステップS3にリターンし、次に描画順が早い描画対象について実行モードが設定されているか否かが判定される。
以上、実施の形態1の描画制御装置20によれば、描画対象の方向変化度合が大きい場合には描画速度を低下させるので、描画の歪みを低減あるいは抑制することができる。また、描画速度を低下させる際には、描画出力も低下させるので、リライタブル媒体50の消え残り(消去しても消えない)や発色部の濃度低下等の発生を抑制することができる。
図10は、実施の形態1の描画制御装置20によって生成される描画命令と描画対象の一例を示す図である。図10(a)に示すように、アルファベットの「r」という描画対象は、1つの線分ABで構成される一筆部品(1)と、3つの線分CD、DE、及びEFで構成される一筆部品(2)との2つの一筆部品で構成される。一筆部品(1)、(2)は、この順で描画が行われる。
そして、一筆部品(2)には、相連続する線分同士の方向変化度合が上述の所定度合(30°)よりも大きい線分CDと線分DEを含む。ここで、線分CDと線分DEのなす角度は65°であるものとする。
図10(b)は、図10(a)に示すアルファベットの「r」を描画するための描画命令を示しており、図4に示す描画命令にさらに「t」、「p」、「s」、「w」を追加してある。「t」は線分の太さを表し、「p」は描画出力を表し、「s」は描画速度を表し、「w」は待機時間を表す。
一筆部品(1)は直線状の線分ABで構成されるので、一筆部品(1)を描画する描画速度「s」、及び描画出力「p」は、ともに100(%)に設定されている。
一方、一筆部品(2)は所定度合い以上の方向変化度合を含むので、一筆部品(2)を描画する描画速度「s」、及び描画出力「p」は、ともに80(%)に設定されている。また、一筆部品(2)の描画出力(80%)は、一筆部品(1)の描画出力(100%)より下げられているので、一筆部品(1)の描画命令と一筆部品(2)の描画命令の間には、待機時間を表す「w」が挿入されている。ここで、「w」は、一例として50ミリ秒に設定されている。
実施の形態1の描画制御装置20によれば、図10(b)に示すような描画命令により、図10(a)に示すアルファベットの「r」が描画されることになる。一筆部品(2)は湾曲部分を含むが、描画速度と描画出力は下げられているので、描画の歪みを低減あるいは抑制することができ、また、リライタブル媒体50の消え残り(消去しても消えない)や発色部の濃度低下等の発生を抑制することができる。
なお、ここでは、一筆部品毎に描画速度及び描画出力を設定する形態について説明したが、各描画対象に含まれる線分毎に描画速度及び描画出力を設定してもよいし、描画対象毎に描画速度及び描画出力を設定してもよい。
また、描画出力を変更する場合に待機時間を挿入する形態について説明したが、全体での描画時間を短縮したいような場合や、待機時間を挿入しなくても大丈夫な場合には、待機時間を省略してもよい。
図10(c)は、描画速度及び描画出力を線分毎に設定し、かつ、待機時間を省略した場合の描画命令を示す。図10(c)に示す描画命令によっても、図10(a)に示すアルファベットの「r」が描画される。
以上では、レーザを用いた描画装置10を制御する形態について説明したが、実施の形態1の描画制御装置20は、X−Yプロッタのように2軸方向にヘッド等を走査する描画装置に適用することが可能である。これは、2軸方向にヘッド等を走査する際に、レーザマーキング装置と同様に、追従遅れによる描画対象の歪みが生じるからである。実施の形態1の描画制御装置20をX−Yプロッタに適用した場合には、描画対象に含まれる線分同士の方向変化度合に応じて描画速度が制御されることにより、描画における歪みが抑制されるとともに、描画出力が制御されてインクの吐出量が最適化されることにより、文字潰れ等を抑制することができる。
[実施の形態2]
実施の形態2の描画制御装置220は、実施の形態1の描画制御装置20のように一筆部品に含まれる線分の方向変化度合を所定度合と比較して描画速度及び描画出力を決定する代わりに、一筆部品に含まれる線分を描画する際に生じうる歪みの最大許容値を設定し、最大許容値を用いて描画速度及び描画出力を決定する。
以下では、相違点を中心に説明を行うこととし、実施の形態1の描画制御装置20と同一の構成要素には同一符号を付し、その説明を省略する。
図11は、実施の形態2の描画制御装置220の機能ブロックを示す図である。各ブロックをソフトウェアで実現する場合、各ブロックはCPU31が文字描画プログラム42を実行することで実現される。
描画制御装置220は、描画位置決定手段21、モード設定手段22、描画順決定手段23、描画命令生成手段24、対象文字コード取得手段25、フォントデータ取得手段26、描画条件取得手段27、方向変化度合演算手段228、描画速度演算手段230、描画出力演算手段51、及び待機時間演算手段52を含む。
描画位置決定手段21、モード設定手段22、描画順決定手段23、描画命令生成手段24、対象文字コード取得手段25、フォントデータ取得手段26、描画条件取得手段27、描画出力演算手段51、及び待機時間演算手段52については、実施の形態1の各々の手段と基本的に同一であるため、説明を省略する。
方向変化度合演算手段228は、描画位置決定手段21によって決定される座標データに基づき、一筆部品に含まれるすべての相連続する線分同士のなす角度を方向変化度合として演算する。方向変化度合演算手段228は、演算した方向変化度合の最大値を描画速度演算手段230に受け渡す。
描画速度演算手段230は、方向変化度合演算手段228から受け渡された方向変化度合の最大値に基づき、後述する式(2)を満たす描画速度vを演算し、描画速度が直線状の線分用の描画速度(100%)でない場合は、後述する(2)式で求まる速度に描画速度を設定する。
図12は、実施の形態2の描画制御装置220における描画の歪みの最大許容値の計算手法を説明するための図である。
ここで、Δtが描画命令が描画装置10に繰り返し入力される間隔を表し、vが描画速度を表すものとすると、1つの描画命令によって描画される線分の長さはΔt×vで表される。
例えば、描画対象が図12に示すように線分AB、BC、及びCDを含む場合に、追従遅れにより、点Bよりも手前の点B1で点Cへの描画命令が入力されると、描画装置10(図2参照)は、点B1からΔt×vだけ進んだ点C1を目標地点として描画を行うことになる。また、追従遅れにより、点Bよりも手前の点B2で点Cへの描画命令が入力された場合は、描画装置10(図2参照)は、点C2を目標地点として描画を行うことになる。ここには、2つのパターンの追従遅れによる描画の歪みを示すが、実際には、様々なパターンが生じうる。なお、点B1、C1は、点B1及び点Bの距離と、点C1及び点Bの距離が等しい場合を示す。
このように様々なパターンの描画の歪みが生じうる中で、次の目標地点までの長さΔt×vの線分に、点Bから下ろした垂線の距離dが最も大きくなるのは、点B1、C1を結ぶ長さΔt×vの線分が形成されるように、点B1及び点Bの距離と、点C1及び点Bの距離が等しい二等辺三角形が形成される場合である。
このため、実施の形態2では、上述の二等辺三角形によって得られる垂線の距離dに対して所定の最大許容値thr(歪みの最大許容値)を設定し、歪みの距離dが最大許容値thr以上にならないように描画速度vを決定し、また、描画速度vに応じた描画出力を決定する。
具体的には、線分ABと線分BCが挟む角度をθaとすると、点B1及び点Bの距離と、点C1及び点Bの距離が等しい二等辺三角形について式(1)が成立する。
d・tan(θa/2)=vΔt/2 ・・・(1)
ここで、垂線の長さdが歪みの最大許容値thrになる場合の描画速度vは式(2)で与えられる。このように、式(2)を満たす描画速度は、最大許容描画速度となる。
v={2tan(θa/2)・thr}/Δt ・・・(2)
実施の形態2の描画制御装置220の描画速度演算手段230は、式(2)を満たす最大許容描画速度vを演算し、描画速度及び描画出力の制御を行う。
図13は、実施の形態2の描画制御装置220による描画制御処理を表すフローチャートである。
ステップS21乃至S23は、実施の形態1のステップS1乃至S3と同一であるため、説明を省略する。
ステップS23で実行モードが設定されていると判定されると、方向変化度合演算手段228は、描画対象に含まれるすべての相連続する線分同士のなす角度を方向変化度合として演算し、演算した方向変化度合の最大値を描画速度演算手段230に受け渡す(ステップS24)。
次いで、描画速度演算手段230は、方向変化度合演算手段228から受け渡された方向変化度合の最大値に基づき、式(2)を満たす最大許容描画速度vを演算する(ステップS25)。
さらに、描画速度演算手段230は、ステップS25で求めた最大許容描画速度vが100%であるか否かを判定する(ステップS26)。
描画速度演算手段230は、ステップS25で求めた最大許容描画速度vが100%でない場合は、描画速度演算手段230は、描画速度をステップS25で求めた最大許容描画速度vに設定する(ステップS27N)。
一方、ステップS23で実行モードが設定されていないと判定した場合と、ステップS26で最大許容描画速度vが100%であると判定した場合は、フローはステップS27Yに進行し、描画速度を100%に設定する(ステップS27Y)。
ステップS27N又はS27Yで描画速度が設定されると、フローはステップS28に進行し、描画出力演算手段51は、描画速度に応じた描画出力を求める(ステップS28)。このステップS28の処理は、実施の形態1のステップS7の処理と同一であり、描画出力は、描画出力演算手段51が速度出力調整DB43を参照することによって求められる。
以下、実施の形態1のステップS8乃至S12と同一のステップS29乃至S33が実行される。
以上、実施の形態2の描画制御装置220によれば、描画対象の方向変化度合が大きい場合には、追従遅れによる描画の歪みが最大許容値thrより大きくならないように、描画速度を最大許容描画速度まで低下させるので、描画の歪みを低減あるいは抑制することができる。また、描画速度を低下させる際には、描画出力も低下させるので、リライタブル媒体50の消え残り(消去しても消えない)や発色部の濃度低下等の発生を抑制することができる。
なお、実施の形態2では、相隣接する線分同士の方向変化度合θaに応じて、上述の式(2)を用いて求めた最大許容描画速度vを描画速度に設定する形態について説明したが、上述の(2)式で得る最大許容描画速度vに所定のマージン用の係数k(k<1)を乗じて得る速度(許容描画速度)を描画速度としてもよい。また、この係数kを描画対象の種類(漢字、片仮名、平仮名、アルファベット、数字、記号等の種類)によって設定してもよい。
以上、本発明の例示的な実施の形態の描画制御装置、レーザ照射装置、描画制御方法、描画制御プログラム、及びこれを記録した記録媒体について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。