JP3322697B2 - 手書き情報表示装置 - Google Patents
手書き情報表示装置Info
- Publication number
- JP3322697B2 JP3322697B2 JP23726892A JP23726892A JP3322697B2 JP 3322697 B2 JP3322697 B2 JP 3322697B2 JP 23726892 A JP23726892 A JP 23726892A JP 23726892 A JP23726892 A JP 23726892A JP 3322697 B2 JP3322697 B2 JP 3322697B2
- Authority
- JP
- Japan
- Prior art keywords
- line
- information
- handwritten information
- straight line
- skeleton
- 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.)
- Expired - Fee Related
Links
Landscapes
- Processing Or Creating Images (AREA)
Description
【0001】
【産業上の利用分野】この発明は、マウスやタッチペン
等の入力装置によって自由描画した図等の情報を表示す
る手書き情報表示装置に関する。
等の入力装置によって自由描画した図等の情報を表示す
る手書き情報表示装置に関する。
【0002】
【従来の技術】近年、パーソナルコンピュータやワーク
ステーション等においては、マウスやタッチペン等の入
力装置を用いて各種の図形等を自由に描画して表示する
手書き情報表示装置の機能を有するものが多用されてい
る。例えば、表示装置の表示画面上で任意の2点を指定
入力すると、その指定された2点を結ぶ直線や曲線を描
画して表示する。
ステーション等においては、マウスやタッチペン等の入
力装置を用いて各種の図形等を自由に描画して表示する
手書き情報表示装置の機能を有するものが多用されてい
る。例えば、表示装置の表示画面上で任意の2点を指定
入力すると、その指定された2点を結ぶ直線や曲線を描
画して表示する。
【0003】ところで、その表示装置は年々高精細化が
進んできており、表示画面に表示可能な1ドット当たり
の面積がしだいに小さくなってきている。その結果、上
述したような自由に描画された直線や曲線等の情報をよ
り細密に表示することができる。しかし、そのために描
画領域内にドット欠如部が発生し、描画した情報が人間
の目で見た場合に不自然なものになってしまうことがあ
った。
進んできており、表示画面に表示可能な1ドット当たり
の面積がしだいに小さくなってきている。その結果、上
述したような自由に描画された直線や曲線等の情報をよ
り細密に表示することができる。しかし、そのために描
画領域内にドット欠如部が発生し、描画した情報が人間
の目で見た場合に不自然なものになってしまうことがあ
った。
【0004】そのため、例えば特開平2−93877号
公報に見られるように、X軸に対する傾斜角θで任意の
縦辺及び横辺の長さを持つ長方形を描画する際、その傾
斜角θに相当するX軸及びY軸方向の微小変化分ΔX,
ΔY(ΔX/ΔY=tan θ)に従って描画するときに生
ずるドット欠如部を発生させないような情報処理装置が
あった。
公報に見られるように、X軸に対する傾斜角θで任意の
縦辺及び横辺の長さを持つ長方形を描画する際、その傾
斜角θに相当するX軸及びY軸方向の微小変化分ΔX,
ΔY(ΔX/ΔY=tan θ)に従って描画するときに生
ずるドット欠如部を発生させないような情報処理装置が
あった。
【0005】
【発明が解決しようとする課題】しかしながら、上述の
ような情報処理装置では、オペレータによって指定され
た点から忠実に情報を描画するため、その点がズレてい
たりすると描画後の情報に凹凸等が生じてしまうことに
なる。
ような情報処理装置では、オペレータによって指定され
た点から忠実に情報を描画するため、その点がズレてい
たりすると描画後の情報に凹凸等が生じてしまうことに
なる。
【0006】例えば、すでに描画されている線の終端に
続けて他の線を描画する場合、オペレータがその終端を
正確に指定しないと、2線の接続部分に突出部(これを
「ヒゲ部分」と称する)が発生したり2線が接続せずに
欠け部分が生じたりしてしまう。
続けて他の線を描画する場合、オペレータがその終端を
正確に指定しないと、2線の接続部分に突出部(これを
「ヒゲ部分」と称する)が発生したり2線が接続せずに
欠け部分が生じたりしてしまう。
【0007】つまり、上述のように表示画面が高精細化
されるにつれて、オペレータが正確な点を指定する作業
も難しくなり、ヒゲ部分や欠け部分による凹凸のない綺
麗な情報を自由描画することが難しくなるという問題が
あった。
されるにつれて、オペレータが正確な点を指定する作業
も難しくなり、ヒゲ部分や欠け部分による凹凸のない綺
麗な情報を自由描画することが難しくなるという問題が
あった。
【0008】また、水平線や垂直線を引きたい場合、水
平線では始点のY座標値と終点のY座標値が同じ値にな
る点を入力し、垂直線では始点のX座標値と終点のX座
標値が同じ値になる点を入力することが必要であるが、
オペレータにとってマウスやタッチペンによる入力で
は、その点の入力位置が微妙にずれてしまって水平線や
垂直線を引くことが難しいという問題があった。
平線では始点のY座標値と終点のY座標値が同じ値にな
る点を入力し、垂直線では始点のX座標値と終点のX座
標値が同じ値になる点を入力することが必要であるが、
オペレータにとってマウスやタッチペンによる入力で
は、その点の入力位置が微妙にずれてしまって水平線や
垂直線を引くことが難しいという問題があった。
【0009】この発明は上記の点に鑑みてなされたもの
であり、自由描画した情報の補正作業を軽減させること
を目的とする。
であり、自由描画した情報の補正作業を軽減させること
を目的とする。
【0010】
【課題を解決するための手段】この発明による手書き情
報表示装置は、上記の目的を達成するため図1に示すよ
うに、点や線等の手書き情報を入力する手書き情報入力
手段20と、その手段によって入力された手書き情報を
記憶する手書き情報記憶手段21と、その手段に記憶さ
れた手書き情報を表示する手書き情報表示手段22を備
えると共に、手書き情報表示手段22に表示された手書
き情報中の外部入力によって交差する線が入力された直
線を補正対象の直線として指定する補正対象直線指定手
段32と、その手段によって指定された直線に該当する
骨格線情報記憶手段23に記憶されている骨格線情報に
基づいて上記直線と上記交差する線とが交差する座標点
を抽出し、その座標点の8近傍をチェックして最終的に
1の値となる2つの終端点を求め、その2つの終端点に
基づいて上記直線の斜度を判定する直線斜度判定手段3
3と、それによって判定された斜度に応じて上記直線を
水平線,垂直線,又は45度線のいずれかになるように
補正する直線斜度補正手段34とを設けたものである。
報表示装置は、上記の目的を達成するため図1に示すよ
うに、点や線等の手書き情報を入力する手書き情報入力
手段20と、その手段によって入力された手書き情報を
記憶する手書き情報記憶手段21と、その手段に記憶さ
れた手書き情報を表示する手書き情報表示手段22を備
えると共に、手書き情報表示手段22に表示された手書
き情報中の外部入力によって交差する線が入力された直
線を補正対象の直線として指定する補正対象直線指定手
段32と、その手段によって指定された直線に該当する
骨格線情報記憶手段23に記憶されている骨格線情報に
基づいて上記直線と上記交差する線とが交差する座標点
を抽出し、その座標点の8近傍をチェックして最終的に
1の値となる2つの終端点を求め、その2つの終端点に
基づいて上記直線の斜度を判定する直線斜度判定手段3
3と、それによって判定された斜度に応じて上記直線を
水平線,垂直線,又は45度線のいずれかになるように
補正する直線斜度補正手段34とを設けたものである。
【0011】
【0012】
【0013】
【0014】
【作用】この発明による図1に示した手書き情報表示装
置は、点や線等の手書き情報を入力して記憶し、その記
憶された手書き情報を表示する。ユーザがタッチペン等
の入力装置からその表示された手書き情報中の直線に交
差する線を入力することによって補正対象の直線を指定
すると、その指定された直線に該当する骨格線情報に基
づいて直線と交差する線とが交差する座標点を抽出し、
その座標点の8近傍をチェックして最終的に1の値とな
る2つの終端点を求め、その2つの終端点に基づいて直
線の斜度を判定し、その判定した斜度に応じて直線を水
平線,垂直線,又は45度線のいずれかになるように補
正するので、手書き情報による直線を水平線,垂直線,
又は45度線のいずれかになるように自動的に補正する
ことができる。
置は、点や線等の手書き情報を入力して記憶し、その記
憶された手書き情報を表示する。ユーザがタッチペン等
の入力装置からその表示された手書き情報中の直線に交
差する線を入力することによって補正対象の直線を指定
すると、その指定された直線に該当する骨格線情報に基
づいて直線と交差する線とが交差する座標点を抽出し、
その座標点の8近傍をチェックして最終的に1の値とな
る2つの終端点を求め、その2つの終端点に基づいて直
線の斜度を判定し、その判定した斜度に応じて直線を水
平線,垂直線,又は45度線のいずれかになるように補
正するので、手書き情報による直線を水平線,垂直線,
又は45度線のいずれかになるように自動的に補正する
ことができる。
【0015】
【0016】
【0017】
【実施例】以下、この発明の実施例を図面に基づいて具
体的に説明する。図5はこの発明及び発明の参考となる
手書き情報表示装置の外観斜視図である。この手書き情
報表示装置は、オペレータが手書き情報を入力するため
のタッチペン1と、各種入力キーによって操作情報を入
力するためのキーボード2と、手書き情報を表示するた
めのタッチパネル付きLCDディスプレイ3と、この装
置全体の制御処理等を行なう制御装置4とからなる。
体的に説明する。図5はこの発明及び発明の参考となる
手書き情報表示装置の外観斜視図である。この手書き情
報表示装置は、オペレータが手書き情報を入力するため
のタッチペン1と、各種入力キーによって操作情報を入
力するためのキーボード2と、手書き情報を表示するた
めのタッチパネル付きLCDディスプレイ3と、この装
置全体の制御処理等を行なう制御装置4とからなる。
【0018】この手書き情報表示装置は、タッチペン1
によって自由描画した情報中の突出した部分であるヒゲ
部分や足りない部分である欠け部分を含む補正範囲を入
力すると、その補正範囲内のヒゲ部分については消去
し、欠け部分については補充して表示させることができ
る。
によって自由描画した情報中の突出した部分であるヒゲ
部分や足りない部分である欠け部分を含む補正範囲を入
力すると、その補正範囲内のヒゲ部分については消去
し、欠け部分については補充して表示させることができ
る。
【0019】例えば、図6はオペレータが自由描画した
情報中に発生したヒゲ部分の一例を示す図、図7はオペ
レータが自由描画した情報中に発生した欠け部分の一例
を示す図である。
情報中に発生したヒゲ部分の一例を示す図、図7はオペ
レータが自由描画した情報中に発生した欠け部分の一例
を示す図である。
【0020】オペレータがタッチペン1によって点a及
び点bを指定して点a〜b間を結ぶ直線l1を描画させ
た後に、点b及び点dを指定して点b〜d間を結ぶ直線
l2を描画させたいとき、オペレータにとってタッチペ
ン1によって点bを再度正確に指定することは難しい作
業になる(マウスを使用して描画する場合も同様であ
る)。
び点bを指定して点a〜b間を結ぶ直線l1を描画させ
た後に、点b及び点dを指定して点b〜d間を結ぶ直線
l2を描画させたいとき、オペレータにとってタッチペ
ン1によって点bを再度正確に指定することは難しい作
業になる(マウスを使用して描画する場合も同様であ
る)。
【0021】そのため、図6に示すように、点bからず
れた点cが指定された場合は点b〜c間を結ぶ余分な線
であるヒゲ部分が発生する。または、図7に示すよう
に、点bからずれた点c′が指定された場合は点b〜
c′間に欠け部分が発生する。
れた点cが指定された場合は点b〜c間を結ぶ余分な線
であるヒゲ部分が発生する。または、図7に示すよう
に、点bからずれた点c′が指定された場合は点b〜
c′間に欠け部分が発生する。
【0022】そこで、この手書き情報表示装置では、上
述のようなヒゲ部分又は欠け部分を囲む補正エリアを入
力することにより、その補正エリア内のヒゲ部分は削除
し、欠け部分は補充する補正を自動的に行なう。
述のようなヒゲ部分又は欠け部分を囲む補正エリアを入
力することにより、その補正エリア内のヒゲ部分は削除
し、欠け部分は補充する補正を自動的に行なう。
【0023】また、この手書き情報表示装置は、この発
明に係る機能としてタッチペン1によって自由描画した
直線を指定すると、その直線の斜度に応じて水平線,垂
直線,又は45度線のいずれかに補正して表示させるこ
とができる。
明に係る機能としてタッチペン1によって自由描画した
直線を指定すると、その直線の斜度に応じて水平線,垂
直線,又は45度線のいずれかに補正して表示させるこ
とができる。
【0024】例えば、図8はオペレータが自由描画した
直線を表示した場合の一例を示す図である。図中に示す
直線l3,l4,l5は、オペレータがそれぞれ水平
線,垂直線,及び45度線のつもりで自由描画したもの
であるが、それぞれ正確に描画されていない。
直線を表示した場合の一例を示す図である。図中に示す
直線l3,l4,l5は、オペレータがそれぞれ水平
線,垂直線,及び45度線のつもりで自由描画したもの
であるが、それぞれ正確に描画されていない。
【0025】つまり、正確な水平線,垂直線,及び45
度線を描画するためには、オペレータは正確な位置に各
線の2点を指定しなければならない。例えば、水平線を
引くためにはタッチペン1によって指定した2点e,f
の表示画面上におけるY軸方向の座標値が一致しなけれ
ばならないが、それはオペレータにとって難しい作業に
なる(マウスを使用する場合も同様である)。
度線を描画するためには、オペレータは正確な位置に各
線の2点を指定しなければならない。例えば、水平線を
引くためにはタッチペン1によって指定した2点e,f
の表示画面上におけるY軸方向の座標値が一致しなけれ
ばならないが、それはオペレータにとって難しい作業に
なる(マウスを使用する場合も同様である)。
【0026】そこで、この手書き情報表示装置では、こ
の発明に係る機能として上述のような水平線,垂直線,
及び45度線の斜度に近い直線を指定することにより、
それぞれ正確な水平線,垂直線,及び45度線になるよ
うにその斜度を自動的に補正して再表示させる。
の発明に係る機能として上述のような水平線,垂直線,
及び45度線の斜度に近い直線を指定することにより、
それぞれ正確な水平線,垂直線,及び45度線になるよ
うにその斜度を自動的に補正して再表示させる。
【0027】図4は図5に示した手書き情報表示装置に
おける制御装置4の内部構成を示すブロック図であり、
この制御装置4は、CPU5,ROM6,RAM7,タ
イマ8,割り込み(INT)コントローラ9から構成さ
れる制御部(マイクロコンピュータ)10を備えてい
る。
おける制御装置4の内部構成を示すブロック図であり、
この制御装置4は、CPU5,ROM6,RAM7,タ
イマ8,割り込み(INT)コントローラ9から構成さ
れる制御部(マイクロコンピュータ)10を備えてい
る。
【0028】また、グラフィック・コントローラ11,
LCD/タッチペン(TP)コントローラ12,及びビ
デオラム(VRAM)13から構成される入出力部14
と、DMAコントローラ15と、システムバス16をも
備えている。
LCD/タッチペン(TP)コントローラ12,及びビ
デオラム(VRAM)13から構成される入出力部14
と、DMAコントローラ15と、システムバス16をも
備えている。
【0029】CPU5はこの装置全体の制御処理や各種
の情報処理を行なう。ROM6は読み出し専用メモリで
あり、CPU5が参照する各種の処理プログラムを記憶
している。RAM7は読み出し書き込み可能なメモリで
あり、CPU5が各種の処理を行なうとき等に使用する
データエリアである。
の情報処理を行なう。ROM6は読み出し専用メモリで
あり、CPU5が参照する各種の処理プログラムを記憶
している。RAM7は読み出し書き込み可能なメモリで
あり、CPU5が各種の処理を行なうとき等に使用する
データエリアである。
【0030】タイマ8は初期設定のできるレジスタとイ
ンクリメンタ等を備えており、キャリーの発生によって
内部割り込み信号を発生させる処理を行なう。INTコ
ントローラ9は入出力部からの割り込みを受け付ける処
理、優先順位の最も高いものを受け付ける処理、CPU
5に割り込みを掛ける処理、及びCPU5から割り込み
受け付け信号を受け取ってそれを入出力部へ知らせる処
理等を行なう。
ンクリメンタ等を備えており、キャリーの発生によって
内部割り込み信号を発生させる処理を行なう。INTコ
ントローラ9は入出力部からの割り込みを受け付ける処
理、優先順位の最も高いものを受け付ける処理、CPU
5に割り込みを掛ける処理、及びCPU5から割り込み
受け付け信号を受け取ってそれを入出力部へ知らせる処
理等を行なう。
【0031】グラフィック・コントローラ11はVRA
M13に対するデータの書き込み及び読み出しの制御処
理を行なう。LCD/タッチペン(TP)コントローラ
12はタッチパネル付きLCDディスプレイ3に対する
表示制御処理及びタッチペン1からの入力制御処理を司
る。ビデオラム(VRAM)13はLCDディスプレイ
3に表示する情報を記憶するメモリである。
M13に対するデータの書き込み及び読み出しの制御処
理を行なう。LCD/タッチペン(TP)コントローラ
12はタッチパネル付きLCDディスプレイ3に対する
表示制御処理及びタッチペン1からの入力制御処理を司
る。ビデオラム(VRAM)13はLCDディスプレイ
3に表示する情報を記憶するメモリである。
【0032】DMAコントローラ15は、制御部10と
入出力部14との間におけるDMA転送を行なう。この
DMA転送とは、CPU5を介さずに直接にメモリとメ
モリとの間でデータ転送を行なうものである。システム
バス16は、上述した各部間において各種のデータの遣
り取りを行なうための信号線である。
入出力部14との間におけるDMA転送を行なう。この
DMA転送とは、CPU5を介さずに直接にメモリとメ
モリとの間でデータ転送を行なうものである。システム
バス16は、上述した各部間において各種のデータの遣
り取りを行なうための信号線である。
【0033】また、入出力部14のVRAM13内に
は、入力された手書き情報の骨格線ラスタ情報を蓄積し
て表示しない骨格線ラスタ情報蓄積/非表示VRAMエ
リアと、手書き情報に対して指定された補正範囲を抽出
するための補正範囲抽出用蓄積/非表示VRAMエリア
と、手書き情報を表示するためのラスタ情報を蓄積する
ラスタ情報蓄積/表示VRAMエリアとを持つ。
は、入力された手書き情報の骨格線ラスタ情報を蓄積し
て表示しない骨格線ラスタ情報蓄積/非表示VRAMエ
リアと、手書き情報に対して指定された補正範囲を抽出
するための補正範囲抽出用蓄積/非表示VRAMエリア
と、手書き情報を表示するためのラスタ情報を蓄積する
ラスタ情報蓄積/表示VRAMエリアとを持つ。
【0034】さらに、制御部10のRAM7内には、骨
格線情報の付属情報としてその骨格線の線種/線幅を記
憶するための線種情報蓄積RAMエリアを持つ。これら
の各部からなる制御装置4によって、図1〜図3の機能
ブロック図に示した各手段の機能を果たす。すなわち、
この発明に係る機能として図1に示した各手段の機能を
果たす。また、図2に示すように、点や線等の手書き情
報を入力する手書き情報入力手段20と、その手段によ
って入力された手書き情報を記憶する手書き情報記憶手
段21と、その手段に記憶された手書き情報を表示する
手書き情報表示手段22を備えると共に、手書き情報入
力手段20によって入力された手書き情報の骨格線を示
す骨格線情報を記憶する骨格線情報記憶手段23と、手
書き情報表示手段22に表示された手書き情報に対する
補正領域を入力する補正領域入力手段24と、その手段
によって入力された補正領域に対応する補正範囲を抽出
する補正範囲抽出手段25と、その手段によって抽出さ
れた補正範囲内に該当する骨格線情報記憶手段23に記
憶されている骨格線情報中の突出した部分であるヒゲ部
分を判別するヒゲ部分判別手段26と、それによって判
別されたヒゲ部分を削除するヒゲ部分削除手段27と、
手書き情報記憶手段21に記憶されている手書き情報中
のヒゲ部分削除手段によって削除されたヒゲ部分に対応
する部分を消去するように手書き情報を補正する手書き
情報補正手段28の機能も果たす。したがって、点や線
等の手書き情報を入力して記憶し、その記憶された手書
き情報を表示する。さらに入力された手書き情報の骨格
線を示す骨格線情報を記憶し、表示された手書き情報に
対する補正領域が入力されると、その入力された補正領
域に対応する補正範囲を抽出し、その補正範囲内に該当
する骨格線情報中の突出した部分であるヒゲ部分を判別
して削除し、その削除されたヒゲ部分に対応する手書き
情報中の部分を消去するように手書き情報を補正するの
で、手書き情報を入力したときに発生したヒゲ部分を自
動的に消去することができる。さらに、図3に示すよう
に、上述した手書き情報入力手段20,手書き情報記憶
手段21,手書き情報表示手段22,骨格線情報記憶手
段23,補正領域入力手段24,及び補正範囲抽出手段
25の各手段を備えると共に、補正範囲抽出手 段25に
よって抽出された補正範囲内に該当する骨格線情報記憶
手段23に記憶されている骨格線情報中の欠けた部分で
ある欠け部分を判別する欠け部分判別手段29と、それ
によって判別された欠け部分を延長する欠け部分延長手
段30と、手書き情報記憶手段21に記憶されている手
書き情報中の欠け部分延長手段30によって延長された
欠け部分に対応する部分を補充するように手書き情報を
補正する手書き情報補正手段31の機能も果たす。した
がって、その補正範囲内に該当する骨格線情報中の欠け
た部分である欠け部分を判別し、その欠け部分に相当す
る部分を延長し、その延長された欠け部分に対応する手
書き情報中の部分を補充するように手書き情報を補正す
るので、手書き情報を入力したときに発生した欠け部分
を自動的に補充することができる。
格線情報の付属情報としてその骨格線の線種/線幅を記
憶するための線種情報蓄積RAMエリアを持つ。これら
の各部からなる制御装置4によって、図1〜図3の機能
ブロック図に示した各手段の機能を果たす。すなわち、
この発明に係る機能として図1に示した各手段の機能を
果たす。また、図2に示すように、点や線等の手書き情
報を入力する手書き情報入力手段20と、その手段によ
って入力された手書き情報を記憶する手書き情報記憶手
段21と、その手段に記憶された手書き情報を表示する
手書き情報表示手段22を備えると共に、手書き情報入
力手段20によって入力された手書き情報の骨格線を示
す骨格線情報を記憶する骨格線情報記憶手段23と、手
書き情報表示手段22に表示された手書き情報に対する
補正領域を入力する補正領域入力手段24と、その手段
によって入力された補正領域に対応する補正範囲を抽出
する補正範囲抽出手段25と、その手段によって抽出さ
れた補正範囲内に該当する骨格線情報記憶手段23に記
憶されている骨格線情報中の突出した部分であるヒゲ部
分を判別するヒゲ部分判別手段26と、それによって判
別されたヒゲ部分を削除するヒゲ部分削除手段27と、
手書き情報記憶手段21に記憶されている手書き情報中
のヒゲ部分削除手段によって削除されたヒゲ部分に対応
する部分を消去するように手書き情報を補正する手書き
情報補正手段28の機能も果たす。したがって、点や線
等の手書き情報を入力して記憶し、その記憶された手書
き情報を表示する。さらに入力された手書き情報の骨格
線を示す骨格線情報を記憶し、表示された手書き情報に
対する補正領域が入力されると、その入力された補正領
域に対応する補正範囲を抽出し、その補正範囲内に該当
する骨格線情報中の突出した部分であるヒゲ部分を判別
して削除し、その削除されたヒゲ部分に対応する手書き
情報中の部分を消去するように手書き情報を補正するの
で、手書き情報を入力したときに発生したヒゲ部分を自
動的に消去することができる。さらに、図3に示すよう
に、上述した手書き情報入力手段20,手書き情報記憶
手段21,手書き情報表示手段22,骨格線情報記憶手
段23,補正領域入力手段24,及び補正範囲抽出手段
25の各手段を備えると共に、補正範囲抽出手 段25に
よって抽出された補正範囲内に該当する骨格線情報記憶
手段23に記憶されている骨格線情報中の欠けた部分で
ある欠け部分を判別する欠け部分判別手段29と、それ
によって判別された欠け部分を延長する欠け部分延長手
段30と、手書き情報記憶手段21に記憶されている手
書き情報中の欠け部分延長手段30によって延長された
欠け部分に対応する部分を補充するように手書き情報を
補正する手書き情報補正手段31の機能も果たす。した
がって、その補正範囲内に該当する骨格線情報中の欠け
た部分である欠け部分を判別し、その欠け部分に相当す
る部分を延長し、その延長された欠け部分に対応する手
書き情報中の部分を補充するように手書き情報を補正す
るので、手書き情報を入力したときに発生した欠け部分
を自動的に補充することができる。
【0035】図9は図4に示した制御部10による手書
き情報中に発生したヒゲ部分に対する補正処理を示すフ
ローチャートである。まず、補正領域が入力されると、
その補正領域に対応する補正範囲を抽出する処理を行な
い、X=0,Y=0の初期設定をし、(X,Y)座標は
「1」か否かを判断する。
き情報中に発生したヒゲ部分に対する補正処理を示すフ
ローチャートである。まず、補正領域が入力されると、
その補正領域に対応する補正範囲を抽出する処理を行な
い、X=0,Y=0の初期設定をし、(X,Y)座標は
「1」か否かを判断する。
【0036】(X,Y)座標が「1」なら、その8近傍
に「1」が1つか否かを判断し、1つなら骨格線ラスタ
情報蓄積/非表示VRAMエリア及びラスタ情報蓄積/
表示VRAMエリア上のX,Y座標のクリアをして、X
=X+1とする。また、(X,Y)座標が「1」でない
か(X,Y)座標が「1」であるがその8近傍に「1」
が1つでなければ、そのままX=X+1とする。
に「1」が1つか否かを判断し、1つなら骨格線ラスタ
情報蓄積/非表示VRAMエリア及びラスタ情報蓄積/
表示VRAMエリア上のX,Y座標のクリアをして、X
=X+1とする。また、(X,Y)座標が「1」でない
か(X,Y)座標が「1」であるがその8近傍に「1」
が1つでなければ、そのままX=X+1とする。
【0037】次に、X座標は右側一杯か否かを判断し、
NOならX=X+1とし、YESならY=Y+1とす
る。そして、Y座標は下側一杯か否かを判断して、NO
なら(X,Y)座標は「1」か否かを判断する処理に戻
り、YESならこの処理を終了する。
NOならX=X+1とし、YESならY=Y+1とす
る。そして、Y座標は下側一杯か否かを判断して、NO
なら(X,Y)座標は「1」か否かを判断する処理に戻
り、YESならこの処理を終了する。
【0038】図10は手書き情報中に発生した欠け部分
に対する補正処理を示すフローチャートであり、図9と
共通する部分の説明は省略する。つまり、この処理では
(X,Y)座標が「1」のときに、その8近傍に「1」
が1つなら骨格線ラスタ情報蓄積/非表示VRAMエリ
ア及びラスタ情報蓄積/表示VRAMエリア上の8近傍
「1」の逆(反対側)に位置するX,Y座標をオンにす
る。
に対する補正処理を示すフローチャートであり、図9と
共通する部分の説明は省略する。つまり、この処理では
(X,Y)座標が「1」のときに、その8近傍に「1」
が1つなら骨格線ラスタ情報蓄積/非表示VRAMエリ
ア及びラスタ情報蓄積/表示VRAMエリア上の8近傍
「1」の逆(反対側)に位置するX,Y座標をオンにす
る。
【0039】さらに、図11乃至図23を用いて、タッ
チペンによって自由描画された手書き情報中に発生した
ヒゲ部分及び欠け部分に対する補正処理について説明す
る。図11はオペレータがタッチペン1による自由描画
によって入力した手書き情報の一例を示す図である。
チペンによって自由描画された手書き情報中に発生した
ヒゲ部分及び欠け部分に対する補正処理について説明す
る。図11はオペレータがタッチペン1による自由描画
によって入力した手書き情報の一例を示す図である。
【0040】例えば、タッチパネル付きLCDディスプ
レイ3の表示画面3aにオペレータによって描画された
手書き情報D1が表示されている。その手書き情報D1
には、手書きの際に余分に描画された突出部であるヒゲ
部分(図中に円Hで囲んで示す部分)と、足りない部分
である欠け部分(図中に円Kで囲んで示す部分)とが生
じている。
レイ3の表示画面3aにオペレータによって描画された
手書き情報D1が表示されている。その手書き情報D1
には、手書きの際に余分に描画された突出部であるヒゲ
部分(図中に円Hで囲んで示す部分)と、足りない部分
である欠け部分(図中に円Kで囲んで示す部分)とが生
じている。
【0041】図12は図11に示した手書き情報D1を
図4のVRAM13のラスタ情報蓄積/表示VRAMエ
リアに展開したときの図である。このように、ラスタ情
報蓄積/表示VRAMエリアE1には、手書き情報D1
の太線,細線,及び飾り線をそのまま描画する。
図4のVRAM13のラスタ情報蓄積/表示VRAMエ
リアに展開したときの図である。このように、ラスタ情
報蓄積/表示VRAMエリアE1には、手書き情報D1
の太線,細線,及び飾り線をそのまま描画する。
【0042】図13は図11に示した手書き情報D1に
対する骨格線ラスタ情報を図4のVRAM13の骨格線
ラスタ情報蓄積/非表示VRAMエリアに展開したとき
の図である。このように、骨格線ラスタ情報蓄積/非表
示VRAMエリアE2には、手書き情報D1の骨格を表
わす骨格線Dkを描画する。
対する骨格線ラスタ情報を図4のVRAM13の骨格線
ラスタ情報蓄積/非表示VRAMエリアに展開したとき
の図である。このように、骨格線ラスタ情報蓄積/非表
示VRAMエリアE2には、手書き情報D1の骨格を表
わす骨格線Dkを描画する。
【0043】図14は図11に示した手書き情報D1に
対して入力された補正領域を図4のVRAM13の補正
範囲抽出用蓄積/非表示VRAMエリアに展開したとき
の図である。このように、補正範囲抽出用蓄積/非表示
VRAMエリアE3には、手書き情報D1に対して入力
された補正領域を示す円40,41の軌跡を描画する。
対して入力された補正領域を図4のVRAM13の補正
範囲抽出用蓄積/非表示VRAMエリアに展開したとき
の図である。このように、補正範囲抽出用蓄積/非表示
VRAMエリアE3には、手書き情報D1に対して入力
された補正領域を示す円40,41の軌跡を描画する。
【0044】図15は手書き情報D1の骨格線に対する
線種や線幅等の線種情報を図4に示したRAM7に格納
するときのフォーマットを示す図である。このように、
手書き情報D1の骨格線について、その直線,長方形,
円等の描画種別と、開始XY座標及び終了XY座標と、
実線,点線等の線種と、線幅とをブロック毎に格納す
る。
線種や線幅等の線種情報を図4に示したRAM7に格納
するときのフォーマットを示す図である。このように、
手書き情報D1の骨格線について、その直線,長方形,
円等の描画種別と、開始XY座標及び終了XY座標と、
実線,点線等の線種と、線幅とをブロック毎に格納す
る。
【0045】その描画種別毎の使用ブロックは、直線,
長方形,円等のグラフィックデータ毎に1ブロックで管
理する。また、自由描画は直線データの集まりであるた
め、最初の直線データで1ブロック、最後の直線データ
で1ブロックの2ブロックで管理する。
長方形,円等のグラフィックデータ毎に1ブロックで管
理する。また、自由描画は直線データの集まりであるた
め、最初の直線データで1ブロック、最後の直線データ
で1ブロックの2ブロックで管理する。
【0046】そして、図16の(a)と(b)は手書き
情報D1に対して入力された補正領域に対応する補正範
囲を抽出するときの処理の説明図である。まず、オペレ
ータがタッチペン1によって図11に示したような手書
き情報D1を入力すると、図4に示したLCD/TPコ
ントローラ12によってその手書き情報D1を座標情報
に変換した後、その座標情報をシステムバス16を介し
て制御部10へ通知する。
情報D1に対して入力された補正領域に対応する補正範
囲を抽出するときの処理の説明図である。まず、オペレ
ータがタッチペン1によって図11に示したような手書
き情報D1を入力すると、図4に示したLCD/TPコ
ントローラ12によってその手書き情報D1を座標情報
に変換した後、その座標情報をシステムバス16を介し
て制御部10へ通知する。
【0047】制御部10では、CPU5がその座標情報
を基にして入力された手書き情報D1が自由描画,直
線,円,長方形等のうちいずれの描画であるかを管理
し、予め設定された線種,線幅に従ってそれぞれの描画
を行なうため、図12に示したように、ラスタ情報蓄積
/表示VRAMエリアE1に手書き情報D1の描画を行
なう。
を基にして入力された手書き情報D1が自由描画,直
線,円,長方形等のうちいずれの描画であるかを管理
し、予め設定された線種,線幅に従ってそれぞれの描画
を行なうため、図12に示したように、ラスタ情報蓄積
/表示VRAMエリアE1に手書き情報D1の描画を行
なう。
【0048】この時、同時に図13に示したように、骨
格線ラスタ情報蓄積/非表示VRAMエリアE2に手書
き情報D1についての骨格線(実線,1ドット幅の固定
線)Dkを描画し、その骨格線Dkに対する線種情報を
作成し、その線種情報を図15に示したようなフォーマ
ットで図4のRAM7の線種情報蓄積RAM内に格納す
る。つまり、この骨格線ラスタ情報を基本描画情報とし
て管理し、その基本描画情報に基づいて手書き情報のヒ
ゲ部分及び欠け部分の補正機能を実行する。
格線ラスタ情報蓄積/非表示VRAMエリアE2に手書
き情報D1についての骨格線(実線,1ドット幅の固定
線)Dkを描画し、その骨格線Dkに対する線種情報を
作成し、その線種情報を図15に示したようなフォーマ
ットで図4のRAM7の線種情報蓄積RAM内に格納す
る。つまり、この骨格線ラスタ情報を基本描画情報とし
て管理し、その基本描画情報に基づいて手書き情報のヒ
ゲ部分及び欠け部分の補正機能を実行する。
【0049】また、手書き情報D1中のヒゲ部分や欠け
部分の補正機能を実行するための補正範囲の抽出処理
は、図14に示したように、補正範囲抽出用蓄積/非表
示VRAMエリアE3で管理する。
部分の補正機能を実行するための補正範囲の抽出処理
は、図14に示したように、補正範囲抽出用蓄積/非表
示VRAMエリアE3で管理する。
【0050】次に、ヒゲ部分と欠け部分の補正の場合、
オペレータがタッチペン1によって、図11に示したよ
うな手書き情報D1対してヒゲ部分と欠け部分を含む補
正領域を円で囲むようにして入力すると、例えば、図1
7に示すように、補正領域として円40,41を入力す
ると、その囲んだ部分を表示するための描画処理と共
に、囲んだ部分を抽出するために、図14に示したよう
に、補正範囲抽出用蓄積/非表示VRAMエリアE3に
描画する。
オペレータがタッチペン1によって、図11に示したよ
うな手書き情報D1対してヒゲ部分と欠け部分を含む補
正領域を円で囲むようにして入力すると、例えば、図1
7に示すように、補正領域として円40,41を入力す
ると、その囲んだ部分を表示するための描画処理と共
に、囲んだ部分を抽出するために、図14に示したよう
に、補正範囲抽出用蓄積/非表示VRAMエリアE3に
描画する。
【0051】つまり、その補正範囲抽出用蓄積/非表示
VRAMエリアE3にオペレータによって入力された円
40,41に対応する軌跡を描画し、その軌跡によって
囲まれた補正範囲の抽出処理を行なう。
VRAMエリアE3にオペレータによって入力された円
40,41に対応する軌跡を描画し、その軌跡によって
囲まれた補正範囲の抽出処理を行なう。
【0052】その補正範囲の抽出処理は、図16の
(a)に示すように、円40の部分を内包する最も面積
の小さい長方形のエリアである補正抽出エリア42を設
定し、その補正抽出エリア42の左上の点S(補正範囲
開始XY座標値)を基点にして左側から右側の方向(補
正範囲抽出用蓄積/非表示VRAMエリアE3に設定し
たX軸の正方向)に順次下側(補正範囲抽出用蓄積/非
表示VRAMエリアE3に設定したY軸の方向)へずら
すようにして右下の点E(補正範囲終了XY座標値)ま
でサーチする。また、円41についても同様のサーチを
行なう。
(a)に示すように、円40の部分を内包する最も面積
の小さい長方形のエリアである補正抽出エリア42を設
定し、その補正抽出エリア42の左上の点S(補正範囲
開始XY座標値)を基点にして左側から右側の方向(補
正範囲抽出用蓄積/非表示VRAMエリアE3に設定し
たX軸の正方向)に順次下側(補正範囲抽出用蓄積/非
表示VRAMエリアE3に設定したY軸の方向)へずら
すようにして右下の点E(補正範囲終了XY座標値)ま
でサーチする。また、円41についても同様のサーチを
行なう。
【0053】補正範囲抽出用蓄積/非表示VRAMエリ
アE3には円40,41の囲み線のみが描画されてお
り、2値データ「0」「1」を用いて、その囲み線の部
分を「1」の値、それ以外の部分を「0」の値に対応さ
せることができる。そこで、この補正範囲の抽出では図
16の(b)の矢示方向にサーチしていき、「1」の値
を見つけ出す。
アE3には円40,41の囲み線のみが描画されてお
り、2値データ「0」「1」を用いて、その囲み線の部
分を「1」の値、それ以外の部分を「0」の値に対応さ
せることができる。そこで、この補正範囲の抽出では図
16の(b)の矢示方向にサーチしていき、「1」の値
を見つけ出す。
【0054】つまり、そのサーチによって「1」の値を
見つけると、図16の(a)に示すように、最初の
「1」の点をA点とし次の「1」の点をB点とした時、
そのA点とB点で挟まれた部分が補正エリアであり、こ
のようなアルゴリズムで補正範囲の抽出を行なう。
見つけると、図16の(a)に示すように、最初の
「1」の点をA点とし次の「1」の点をB点とした時、
そのA点とB点で挟まれた部分が補正エリアであり、こ
のようなアルゴリズムで補正範囲の抽出を行なう。
【0055】そして、図14に示した補正範囲抽出用蓄
積/非表示VRAMエリアE3上の座標値は図13に示
した骨格線ラスタ情報蓄積/非表示VRAMエリアE2
上の座標値と対応付けられており、補正範囲抽出用蓄積
/非表示VRAMエリアE3において抽出した補正範囲
を骨格線ラスタ情報蓄積/非表示VRAMエリアE2上
で展開する。
積/非表示VRAMエリアE3上の座標値は図13に示
した骨格線ラスタ情報蓄積/非表示VRAMエリアE2
上の座標値と対応付けられており、補正範囲抽出用蓄積
/非表示VRAMエリアE3において抽出した補正範囲
を骨格線ラスタ情報蓄積/非表示VRAMエリアE2上
で展開する。
【0056】手書き情報D1に対して入力された円40
内のヒゲ部分の補正は、抽出した補正範囲内の骨格線ラ
スタ情報よりヒゲ部分の終端点を見つけ出し、その終端
点から1ドットづつ削除していく。そして、その削除に
より図15に示した線種情報に変更が発生するため同時
にその修正も行なう。
内のヒゲ部分の補正は、抽出した補正範囲内の骨格線ラ
スタ情報よりヒゲ部分の終端点を見つけ出し、その終端
点から1ドットづつ削除していく。そして、その削除に
より図15に示した線種情報に変更が発生するため同時
にその修正も行なう。
【0057】その円40内のヒゲ部分の終端点は次のよ
うにして見つける。図13に示したように、骨格線ラス
タ情報蓄積/非表示VRAMエリアE2上の骨格線Dk
は、そのエリア上で「1」の値を示すため、まず、円4
0の補正範囲内の座標上で「1」の値をサーチする。
うにして見つける。図13に示したように、骨格線ラス
タ情報蓄積/非表示VRAMエリアE2上の骨格線Dk
は、そのエリア上で「1」の値を示すため、まず、円4
0の補正範囲内の座標上で「1」の値をサーチする。
【0058】例えば、図18に示すように、「1」の値
の座標点M1を見つけるとその座標点M1の8近傍をチ
ェックする。その8近傍に「1」の値が1つしかなけれ
ば座標点M1を終端点と判断して、「1」の値が2つ以
上あればその座標値は線の1部であって終端点ではない
と判断する。
の座標点M1を見つけるとその座標点M1の8近傍をチ
ェックする。その8近傍に「1」の値が1つしかなけれ
ば座標点M1を終端点と判断して、「1」の値が2つ以
上あればその座標値は線の1部であって終端点ではない
と判断する。
【0059】つまり、座標点M1の8近傍の「1」の値
は座標点M2のみだから、この場合の座標点M1は終端
点である。また、座標点M2の8近傍の「1」の値は座
標点M1,M3の2つあるから、この場合の座標点M2
は終端点ではない。その座標点M1の8近傍とは、座標
点M1を中心として上下左右,右下,右上,左下,及び
左上の8方向に隣接する座標点を指す。
は座標点M2のみだから、この場合の座標点M1は終端
点である。また、座標点M2の8近傍の「1」の値は座
標点M1,M3の2つあるから、この場合の座標点M2
は終端点ではない。その座標点M1の8近傍とは、座標
点M1を中心として上下左右,右下,右上,左下,及び
左上の8方向に隣接する座標点を指す。
【0060】このようにして、図19に示したように、
補正範囲内の骨格線ラスタ情報より終端点P1を見つけ
出し、その終端点P1を1ドット削除し、再度上述した
サーチによって終端点を見つけ出し、その終端点を1ド
ット削除する。このような削除処理を終端点がなくなる
まで繰り返し、最後の終端点P2の無くなった後の点P
3を見つける。
補正範囲内の骨格線ラスタ情報より終端点P1を見つけ
出し、その終端点P1を1ドット削除し、再度上述した
サーチによって終端点を見つけ出し、その終端点を1ド
ット削除する。このような削除処理を終端点がなくなる
まで繰り返し、最後の終端点P2の無くなった後の点P
3を見つける。
【0061】次に、その座標点P1をキー情報として、
図15に示した線種情報から該当するXY座標値を見つ
ける。そのXY座標値を含むブロックの線幅データを用
い、骨格線ラスタ情報蓄積/非表示VRAMエリアE2
上における座標点P1と座標点P2を結ぶ直線に該当す
る図12に示したラスタ情報蓄積/表示VRAMエリア
E1上の直線を白線(ブランク)で引く。すると、図2
0に示すように表示画面上の手書き情報D1のヒゲ部分
(円H′で囲んで示す)が消去される。
図15に示した線種情報から該当するXY座標値を見つ
ける。そのXY座標値を含むブロックの線幅データを用
い、骨格線ラスタ情報蓄積/非表示VRAMエリアE2
上における座標点P1と座標点P2を結ぶ直線に該当す
る図12に示したラスタ情報蓄積/表示VRAMエリア
E1上の直線を白線(ブランク)で引く。すると、図2
0に示すように表示画面上の手書き情報D1のヒゲ部分
(円H′で囲んで示す)が消去される。
【0062】このようにして、ラスタ情報蓄積/表示V
RAMエリアE1上に描画されているヒゲ部分に相当す
る線に白線を描画することにより、そのヒゲ部分の線を
削除することと同様の処理が行なわれることになり、手
書き情報D1中のヒゲ部分の補正が完了する。そして、
見つけ出したXY座標値を座標点P3の値に変更するよ
うに図15に示した線種情報蓄積RAMのテーブルの更
新を行なう。
RAMエリアE1上に描画されているヒゲ部分に相当す
る線に白線を描画することにより、そのヒゲ部分の線を
削除することと同様の処理が行なわれることになり、手
書き情報D1中のヒゲ部分の補正が完了する。そして、
見つけ出したXY座標値を座標点P3の値に変更するよ
うに図15に示した線種情報蓄積RAMのテーブルの更
新を行なう。
【0063】次に、手書き情報D1の欠け部分の補正に
ついて説明する。欠け部分の補正は、上述したヒゲ部分
の補正と同じように、まずオペレータによって入力され
た補正範囲内から終端点を見つけ、その終端点の延長上
に「1」があれば、それを欠け部分の終端点であると判
断する。
ついて説明する。欠け部分の補正は、上述したヒゲ部分
の補正と同じように、まずオペレータによって入力され
た補正範囲内から終端点を見つけ、その終端点の延長上
に「1」があれば、それを欠け部分の終端点であると判
断する。
【0064】そして、終端点の延長線は見つけた終端点
の座標値をキー情報として、図15に示した線種情報中
から該当するXY座標値を見つけ、それと同じ傾きの線
を引くことで不足する線を補充する延長線とし、その補
充により図15に示した線種情報に変更が発生するため
同時にその修正も行なう。
の座標値をキー情報として、図15に示した線種情報中
から該当するXY座標値を見つけ、それと同じ傾きの線
を引くことで不足する線を補充する延長線とし、その補
充により図15に示した線種情報に変更が発生するため
同時にその修正も行なう。
【0065】その円41内の欠け部分の終端点も、図1
3に示したように、骨格線ラスタ情報蓄積/非表示VR
AMエリアE2上の骨格線Dkは、そのエリア上で
「1」の値を示すため、まず、円41の補正範囲内の座
標上で「1」の値をサーチする。
3に示したように、骨格線ラスタ情報蓄積/非表示VR
AMエリアE2上の骨格線Dkは、そのエリア上で
「1」の値を示すため、まず、円41の補正範囲内の座
標上で「1」の値をサーチする。
【0066】つまり、図18に示したように、「1」の
値の座標点M1を見つけるとその座標点M1の8近傍を
チェックし、その8近傍に「1」の値が1つしかなけれ
ば座標点M1を終端点と判断して、「1」の値が2つ以
上あればその座標値は線の1部であって終端点ではない
と判断する。
値の座標点M1を見つけるとその座標点M1の8近傍を
チェックし、その8近傍に「1」の値が1つしかなけれ
ば座標点M1を終端点と判断して、「1」の値が2つ以
上あればその座標値は線の1部であって終端点ではない
と判断する。
【0067】図21は図13に示した骨格線ラスタ情報
Dk中の欠け部分を補充するときの説明図である。次
に、欠け部分を補充する補正は、図21に示したよう
に、終端点Zの8近傍に「1」の値である座標点P4を
見つけ、その座標点P4の180度反対側の座標点P
4′を求めて終端点か否かの判断を行なう。その座標点
P4′は終端点であるので続けて座標点P4の8近傍の
「1」の値である座標点P5を見つける。
Dk中の欠け部分を補充するときの説明図である。次
に、欠け部分を補充する補正は、図21に示したよう
に、終端点Zの8近傍に「1」の値である座標点P4を
見つけ、その座標点P4の180度反対側の座標点P
4′を求めて終端点か否かの判断を行なう。その座標点
P4′は終端点であるので続けて座標点P4の8近傍の
「1」の値である座標点P5を見つける。
【0068】さらに、その座標点P5の終端点Zに対し
て180度反対側の座標点P5′を求めて再び終端点か
否かの判断を行なう。そして、座標点P5′にて終端点
でなくなったのでこの処理をやめる。このようにして、
終端点Zから欠け部分を補充する座標点P4′,P5′
を順次求めていく。
て180度反対側の座標点P5′を求めて再び終端点か
否かの判断を行なう。そして、座標点P5′にて終端点
でなくなったのでこの処理をやめる。このようにして、
終端点Zから欠け部分を補充する座標点P4′,P5′
を順次求めていく。
【0069】そして、図21に示した終端点Z,座標点
P4′,P5′を結ぶ直線について、図22に示すよう
に、骨格線ラスタ情報蓄積/非表示VRAMエリアE2
上において該当する図12に示したラスタ情報蓄積/表
示VRAMエリアE1上の部分を黒で引くことにより、
欠け部分の補正を完了する。
P4′,P5′を結ぶ直線について、図22に示すよう
に、骨格線ラスタ情報蓄積/非表示VRAMエリアE2
上において該当する図12に示したラスタ情報蓄積/表
示VRAMエリアE1上の部分を黒で引くことにより、
欠け部分の補正を完了する。
【0070】その際、ヒゲ部分の補正の場合と同様に、
終端点ZのXY座標値から終端点Z,座標点P4′,P
5′を結ぶ直線に該当する線種情報を参照し、欠け部分
の補正が終わった段階で終端点ZのXY座標値を座標点
P5′の座標値に変更して更新を行なう。したがって、
図23に示すように表示画面上の手書き情報D1の欠け
部分(円K′で囲んで示す)に延長線が補充されて表示
される。
終端点ZのXY座標値から終端点Z,座標点P4′,P
5′を結ぶ直線に該当する線種情報を参照し、欠け部分
の補正が終わった段階で終端点ZのXY座標値を座標点
P5′の座標値に変更して更新を行なう。したがって、
図23に示すように表示画面上の手書き情報D1の欠け
部分(円K′で囲んで示す)に延長線が補充されて表示
される。
【0071】次に、図24乃至図30を用いて、タッチ
ペンによって自由描画された水平線,垂直線,45度線
の斜度補正の処理について説明する。図24はオペレー
タがタッチペン1による自由描画によって入力した直線
の一例を示す図である。
ペンによって自由描画された水平線,垂直線,45度線
の斜度補正の処理について説明する。図24はオペレー
タがタッチペン1による自由描画によって入力した直線
の一例を示す図である。
【0072】直線L1,L2,L3はそれぞれオペレー
タが太線による水平線,垂直線,45度線のつもりで入
力したものであり、それらの直線L1,L2,L3は正
確に水平,垂直,及び45度の斜度になっていない。
タが太線による水平線,垂直線,45度線のつもりで入
力したものであり、それらの直線L1,L2,L3は正
確に水平,垂直,及び45度の斜度になっていない。
【0073】図25は図24に示した直線L1,L2,
L3を図4のVRAM13のラスタ情報蓄積/表示VR
AMエリアに展開したときの図である。このように、ラ
スタ情報蓄積/表示VRAMエリアE1に直線L1,L
2,L3を太線で描画する。
L3を図4のVRAM13のラスタ情報蓄積/表示VR
AMエリアに展開したときの図である。このように、ラ
スタ情報蓄積/表示VRAMエリアE1に直線L1,L
2,L3を太線で描画する。
【0074】図26は図24に示した直線L1,L2,
L3の骨格線ラスタ情報を図4のVRAM13の骨格線
ラスタ情報蓄積/非表示VRAMエリアに展開したとき
の図である。このように、骨格線ラスタ情報蓄積/非表
示VRAMエリアE2に直線L1,L2,L3の骨格を
表わす骨格線L1′,L2′,L3′を描画する。
L3の骨格線ラスタ情報を図4のVRAM13の骨格線
ラスタ情報蓄積/非表示VRAMエリアに展開したとき
の図である。このように、骨格線ラスタ情報蓄積/非表
示VRAMエリアE2に直線L1,L2,L3の骨格を
表わす骨格線L1′,L2′,L3′を描画する。
【0075】直線データの補正の場合、まず、オペレー
タがタッチペン1によって斜度を補正したい直線に交差
する線を入力する。例えば、図27に示すように、補正
したい直線L1,L2,L3と交差する線50,51,
52をタッチペン1で引く。
タがタッチペン1によって斜度を補正したい直線に交差
する線を入力する。例えば、図27に示すように、補正
したい直線L1,L2,L3と交差する線50,51,
52をタッチペン1で引く。
【0076】次に、図28に示すように、骨格線ラスタ
情報蓄積/非表示VRAMエリアE2上において、直線
L1と線50、直線L2と線51、直線L3と線52と
の交差する座標点P10,P11,P12を抽出する。
そして、その抽出した座標点P10,P11,P12の
8近傍をチェックして「1」の値となる座標点を見つけ
る。
情報蓄積/非表示VRAMエリアE2上において、直線
L1と線50、直線L2と線51、直線L3と線52と
の交差する座標点P10,P11,P12を抽出する。
そして、その抽出した座標点P10,P11,P12の
8近傍をチェックして「1」の値となる座標点を見つけ
る。
【0077】最初は、「1」の値となる座標点が2つ見
つかるので、そのうちの一方の座標点の8近傍を再度チ
ェックする。このようにして、座標点P10,P11,
P12から順次「1」の値となる座標点を見つけてい
き、最終的に8近傍に「1」の値が1つしかない座標点
が現れるので、その座標点を直線の終端点とする。
つかるので、そのうちの一方の座標点の8近傍を再度チ
ェックする。このようにして、座標点P10,P11,
P12から順次「1」の値となる座標点を見つけてい
き、最終的に8近傍に「1」の値が1つしかない座標点
が現れるので、その座標点を直線の終端点とする。
【0078】図29は直線の終端点を見つけるときの処
理の説明図である。つまり、直線Lの座標点Qの8近傍
をチェックすると、「1」の値となる座標点Q1,Q2
が見つかる。ここで、座標点Q1の方向に対して順次8
近傍をチェックして「1」の値となる座標点を見つけて
いくと、最終的に「1」の値となる座標点が1つである
座標点Qeが見つかり、その座標点Qeが終端点とな
る。
理の説明図である。つまり、直線Lの座標点Qの8近傍
をチェックすると、「1」の値となる座標点Q1,Q2
が見つかる。ここで、座標点Q1の方向に対して順次8
近傍をチェックして「1」の値となる座標点を見つけて
いくと、最終的に「1」の値となる座標点が1つである
座標点Qeが見つかり、その座標点Qeが終端点とな
る。
【0079】次に、その直線の反対側の終端点を求め
る。これは、上述した処理のうち最後に現れた「1」の
値の座標点をたどっていくことによって求められる。こ
のうにして、直線L1,L2,L3のそれぞれについて
2つの終端点を求める。
る。これは、上述した処理のうち最後に現れた「1」の
値の座標点をたどっていくことによって求められる。こ
のうにして、直線L1,L2,L3のそれぞれについて
2つの終端点を求める。
【0080】次に、その2つの終端点を結ぶ直線の斜度
を算出し、その斜度が水平,垂直,又は45度のいずれ
に最も近いかを判断する。その判断によって、直線L1
は水平に、直線L2は垂直に、直線L3は45度に近い
ことが判別される。
を算出し、その斜度が水平,垂直,又は45度のいずれ
に最も近いかを判断する。その判断によって、直線L1
は水平に、直線L2は垂直に、直線L3は45度に近い
ことが判別される。
【0081】そして、直線L1,L2,L3の2つの終
端点を含む座標値に該当する開始XY座標値及び終了X
Y座標値を、図15に示した線種情報から抽出し、その
開始XY座標値及び終了XY座標値と上記判別結果を基
にして、図25に示した直線L1,L2,L3の斜度を
それぞれ水平線,垂直線,45度線になるように補正
し、その斜度によって各直線L1,L2,L3の図25
に示したラスタ情報蓄積/表示VRAMエリアE1上に
描画をやり直すことで直線データの補正処理が完了す
る。
端点を含む座標値に該当する開始XY座標値及び終了X
Y座標値を、図15に示した線種情報から抽出し、その
開始XY座標値及び終了XY座標値と上記判別結果を基
にして、図25に示した直線L1,L2,L3の斜度を
それぞれ水平線,垂直線,45度線になるように補正
し、その斜度によって各直線L1,L2,L3の図25
に示したラスタ情報蓄積/表示VRAMエリアE1上に
描画をやり直すことで直線データの補正処理が完了す
る。
【0082】したがって、図30に示すように、破線で
示す最初に入力された直線L1,L2,L3は、それぞ
れ水平線L11,垂直線L22,45度線L33に補正
されて表示される。
示す最初に入力された直線L1,L2,L3は、それぞ
れ水平線L11,垂直線L22,45度線L33に補正
されて表示される。
【0083】このように、補正する直線の抽出方法は、
基本的に上述したヒゲ部分と欠け部分の補正の場合と同
じであり、違うところは補正範囲が囲み線で示される閉
領域であるか、囲み線ではない線であるかである。その
囲み線とただの線との判定方法としては、図16の
(a)によって説明した補正範囲の抽出において、サー
チ結果がA点のみでB点がないときに、囲み線ではない
と判断する。
基本的に上述したヒゲ部分と欠け部分の補正の場合と同
じであり、違うところは補正範囲が囲み線で示される閉
領域であるか、囲み線ではない線であるかである。その
囲み線とただの線との判定方法としては、図16の
(a)によって説明した補正範囲の抽出において、サー
チ結果がA点のみでB点がないときに、囲み線ではない
と判断する。
【0084】また、ヒゲ部分と欠け部分の関係において
も、欠け部分でない終端点がヒゲ部分と判断できるた
め、補正の操作方法は統一化が可能であり、同じ操作に
より制御部側で切り分け、補正処理を行なうことができ
る。
も、欠け部分でない終端点がヒゲ部分と判断できるた
め、補正の操作方法は統一化が可能であり、同じ操作に
より制御部側で切り分け、補正処理を行なうことができ
る。
【0085】このようにして、図5に示した手書き情報
表示装置では、高精度なディスプレイにおいても凹凸の
ない綺麗な手書き情報の自由描画が可能となる。また、
グラフィックデータの直線をひくときに、水平線,垂直
線,45度線を簡単に引くことができる。さらに、補正
動作を実行する場合、線種や線幅の制約を受けることな
く自動補正することができる。
表示装置では、高精度なディスプレイにおいても凹凸の
ない綺麗な手書き情報の自由描画が可能となる。また、
グラフィックデータの直線をひくときに、水平線,垂直
線,45度線を簡単に引くことができる。さらに、補正
動作を実行する場合、線種や線幅の制約を受けることな
く自動補正することができる。
【0086】
【発明の効果】以上説明してきたように、この発明によ
る手書き情報表示装置によれば、入力された手書き情報
の骨格線を示す骨格線情報を記憶し、ユーザがタッチペ
ン等の入力装置によってその表示された手書き情報中の
補正対象の直線を指定すると、その指定された直線に該
当する骨格線情報を基にして直線の斜度を判定し、その
判定した斜度に応じて直線を水平線,垂直線,又は45
度線のいずれかになるように補正するので、手書き情報
による直線を水平線,垂直線,又は45度線のいずれか
になるように自動的に補正することができる。このよう
にして、自由描画した情報中の直線を水平線,垂直線,
又は45度線にするための斜度補正を自動的に行なえ
る。したがって、オペレータの作業負担が軽減され、水
平線,垂直線,又は45度線を正確な斜度によって容易
に描画させることができる。
る手書き情報表示装置によれば、入力された手書き情報
の骨格線を示す骨格線情報を記憶し、ユーザがタッチペ
ン等の入力装置によってその表示された手書き情報中の
補正対象の直線を指定すると、その指定された直線に該
当する骨格線情報を基にして直線の斜度を判定し、その
判定した斜度に応じて直線を水平線,垂直線,又は45
度線のいずれかになるように補正するので、手書き情報
による直線を水平線,垂直線,又は45度線のいずれか
になるように自動的に補正することができる。このよう
にして、自由描画した情報中の直線を水平線,垂直線,
又は45度線にするための斜度補正を自動的に行なえ
る。したがって、オペレータの作業負担が軽減され、水
平線,垂直線,又は45度線を正確な斜度によって容易
に描画させることができる。
【0087】
【0088】
【0089】
【図1】図5に示した制御装置4におけるこの発明に係
る直線の補正に係わる機能を示すブロック図である。
る直線の補正に係わる機能を示すブロック図である。
【図2】図5に示した制御装置4における情報中のヒゲ
部分の補正に係わる機能を示すブロック図である。
部分の補正に係わる機能を示すブロック図である。
【図3】図5に示した制御装置4における情報中の欠け
部分の補正に係わる機能を示すブロック図である。
部分の補正に係わる機能を示すブロック図である。
【図4】図5に示した手書き情報表示装置における制御
装置4の内部構成を示すブロック図である。
装置4の内部構成を示すブロック図である。
【図5】この発明による手書き情報表示装置の外観斜視
図である。
図である。
【図6】オペレータが自由描画した情報中に発生したヒ
ゲ部分の一例を示す図である。
ゲ部分の一例を示す図である。
【図7】オペレータが自由描画した情報中に発生した欠
け部分の一例を示す図である。
け部分の一例を示す図である。
【図8】オペレータが自由描画した直線を表示した場合
の一例を示す図である。
の一例を示す図である。
【図9】図4に示した制御装置4における手書き情報中
に発生したヒゲ部分に対する補正処理を示すフローチャ
ートである。
に発生したヒゲ部分に対する補正処理を示すフローチャ
ートである。
【図10】図4に示した制御装置4における手書き情報
中に発生した欠け部分に対する補正処理を示すフローチ
ャートである。
中に発生した欠け部分に対する補正処理を示すフローチ
ャートである。
【図11】オペレータがタッチペン1による自由描画に
よって入力した手書き情報の一例を示す図である。
よって入力した手書き情報の一例を示す図である。
【図12】図11に示した手書き情報D1を図4のVR
AM13のラスタ情報蓄積/表示VRAMエリアに展開
したときの図である。
AM13のラスタ情報蓄積/表示VRAMエリアに展開
したときの図である。
【図13】図11に示した手書き情報D1に対する骨格
線ラスタ情報を図4のVRAM13の骨格線ラスタ情報
蓄積/非表示VRAMエリアに展開したときの図であ
る。
線ラスタ情報を図4のVRAM13の骨格線ラスタ情報
蓄積/非表示VRAMエリアに展開したときの図であ
る。
【図14】図11に示した手書き情報D1に対して入力
された補正領域を図4のVRAM13の補正範囲抽出用
蓄積/非表示VRAMエリアに展開したときの図であ
る。
された補正領域を図4のVRAM13の補正範囲抽出用
蓄積/非表示VRAMエリアに展開したときの図であ
る。
【図15】手書き情報D1の骨格線に対する線種や線幅
等の線種情報を図4に示したRAM7に格納するときの
フォーマットを示す図である。
等の線種情報を図4に示したRAM7に格納するときの
フォーマットを示す図である。
【図16】手書き情報D1に対して入力された補正領域
に対応する補正範囲を抽出するときの処理の説明図であ
る。
に対応する補正範囲を抽出するときの処理の説明図であ
る。
【図17】図11に示した手書き情報D1に対する補正
領域を入力するときの表示例の図である。
領域を入力するときの表示例の図である。
【図18】手書き情報D1に対して入力された補正領域
内のヒゲ部分及び欠け部分の終端点を見つける方法の説
明図である。
内のヒゲ部分及び欠け部分の終端点を見つける方法の説
明図である。
【図19】図13に示した骨格線ラスタ情報Dkからヒ
ゲ部分を削除するときの説明図である。
ゲ部分を削除するときの説明図である。
【図20】図11に示した手書き情報D1からヒゲ部分
を消去したときの表示例を示す図である。
を消去したときの表示例を示す図である。
【図21】図13に示した骨格線ラスタ情報Dk中の欠
け部分を補充するときの説明図である。
け部分を補充するときの説明図である。
【図22】図13に示した骨格線ラスタ情報Dkの欠け
部分を補充したときの図である。
部分を補充したときの図である。
【図23】図11に示した手書き情報D1の欠け部分を
補充したときの表示例を示す図である。
補充したときの表示例を示す図である。
【図24】オペレータがタッチペン1による自由描画に
よって入力した直線の一例を示す図である。
よって入力した直線の一例を示す図である。
【図25】図24に示した直線L1,L2,L3を図4
のVRAM13のラスタ情報蓄積/表示VRAMエリア
に展開したときの図である。
のVRAM13のラスタ情報蓄積/表示VRAMエリア
に展開したときの図である。
【図26】図24に示した直線L1,L2,L3の骨格
線ラスタ情報を図4のVRAM13の骨格線ラスタ情報
蓄積/非表示VRAMエリアに展開したときの図であ
る。
線ラスタ情報を図4のVRAM13の骨格線ラスタ情報
蓄積/非表示VRAMエリアに展開したときの図であ
る。
【図27】図24に示した直線L1,L2,L3に対し
て補正対象を示す交差線40,41,42を入力したと
きの表示例を示す図である。
て補正対象を示す交差線40,41,42を入力したと
きの表示例を示す図である。
【図28】図26に示した直線L1′,L2′,L3′
とその交差線を示す図である。
とその交差線を示す図である。
【図29】図26に示した直線L1′,L2′,L3′
のそれぞれの終端点を求めるときの処理を示す説明図で
ある。
のそれぞれの終端点を求めるときの処理を示す説明図で
ある。
【図30】図24に示した直線L1,L2,L3をそれ
ぞれ水平線,垂直線,及び45度線に補正して表示した
ときの図である。
ぞれ水平線,垂直線,及び45度線に補正して表示した
ときの図である。
1 タッチペン 2 キーボー
ド 3 タッチパネル付きLCDディスプレイ 3a 表示画面 4 制御装置 5 CPU 6 ROM 7 RAM 8 タイマ 9 割り込み(INT)コントローラ 10 制御部 11 グラフィック・コントローラ 12 LCD/TP(タッチペン)コントローラ 13 ビデオラム(VRAM) 14 入出力
部 15 DMAコントローラ 16 システ
ムバス 20 手書き情報入力手段 21 手書き
情報記憶手段 22 手書き情報表示手段 23 骨格線
情報記憶手段 24 補正領域入力手段 25 補正範
囲抽出手段 26 ヒゲ部分判別手段 27 ヒゲ部
分削除手段 28 手書き情報補正手段 29 欠け部
分判別手段 30 欠け部分延長手段 31 手書き
情報補正手段 32 補正対象直線指定手段 33 直線斜
度判定手段 34 直線斜度補正手段 40,41
補正範囲を示す円 42 補正抽出エリア 50,51,
52 交差線 D1 手書き情報 Dk 手書き
情報の骨格線 E1 ラスタ情報蓄積/表示VRAMエリア E2 骨格線ラスタ情報蓄積/非表示VRAMエリア E3 補正範囲抽出用蓄積/非表示VRAMエリア l1〜l5,L,L1〜L3 直線 L1′〜L3′ 直線L1〜L3の骨格線 L11 水平線 L22 垂直線 L
33 45度線 H 手書き情報のヒゲ部分を示す円 H′ 手書き情報のヒゲ部分を削除した後の部分を示す
円 K 手書き情報の欠け部分を示す円 K′ 手書き情報の欠け部分を延長した後の部分を示す
円 S 補正範囲開始XY座標点 E 補正範囲終了XY座標点 Q 交差点 Qe,Z 終
端点 M1〜M3,P1〜P5,P4′,P5′,Q1,Q2
座標点
ド 3 タッチパネル付きLCDディスプレイ 3a 表示画面 4 制御装置 5 CPU 6 ROM 7 RAM 8 タイマ 9 割り込み(INT)コントローラ 10 制御部 11 グラフィック・コントローラ 12 LCD/TP(タッチペン)コントローラ 13 ビデオラム(VRAM) 14 入出力
部 15 DMAコントローラ 16 システ
ムバス 20 手書き情報入力手段 21 手書き
情報記憶手段 22 手書き情報表示手段 23 骨格線
情報記憶手段 24 補正領域入力手段 25 補正範
囲抽出手段 26 ヒゲ部分判別手段 27 ヒゲ部
分削除手段 28 手書き情報補正手段 29 欠け部
分判別手段 30 欠け部分延長手段 31 手書き
情報補正手段 32 補正対象直線指定手段 33 直線斜
度判定手段 34 直線斜度補正手段 40,41
補正範囲を示す円 42 補正抽出エリア 50,51,
52 交差線 D1 手書き情報 Dk 手書き
情報の骨格線 E1 ラスタ情報蓄積/表示VRAMエリア E2 骨格線ラスタ情報蓄積/非表示VRAMエリア E3 補正範囲抽出用蓄積/非表示VRAMエリア l1〜l5,L,L1〜L3 直線 L1′〜L3′ 直線L1〜L3の骨格線 L11 水平線 L22 垂直線 L
33 45度線 H 手書き情報のヒゲ部分を示す円 H′ 手書き情報のヒゲ部分を削除した後の部分を示す
円 K 手書き情報の欠け部分を示す円 K′ 手書き情報の欠け部分を延長した後の部分を示す
円 S 補正範囲開始XY座標点 E 補正範囲終了XY座標点 Q 交差点 Qe,Z 終
端点 M1〜M3,P1〜P5,P4′,P5′,Q1,Q2
座標点
フロントページの続き (56)参考文献 特開 平4−235686(JP,A) 特開 昭62−290979(JP,A) 特開 平2−245986(JP,A) 特開 平4−153886(JP,A) 特開 平3−282890(JP,A) 特開 平4−141788(JP,A) 特開 昭63−229583(JP,A) 実開 平1−127055(JP,U) (58)調査した分野(Int.Cl.7,DB名) G06T 11/80 G06T 7/60 G06K 9/46 - 9/52 G06T 11/20
Claims (1)
- 【請求項1】 点や線等の手書き情報を入力する手書き
情報入力手段と、該手段によって入力された手書き情報
を記憶する手書き情報記憶手段と、該手段に記憶された
手書き情報を表示する手書き情報表示手段とを備えた手
書き情報表示装置において、 前記手書き情報入力手段によって入力された手書き情報
の骨格線を示す骨格線情報を記憶する骨格線情報記憶手
段と、前記手書き情報表示手段に表示された手書き情報
中の外部入力によって交差する線が入力された直線を補
正対象の直線として指定する補正対象直線指定手段と、 該補正対象直線指定手段によって指定された直線に該当
する前記骨格線情報記憶手段に記憶されている骨格線情
報に基づいて前記直線と前記交差する線とが交差する座
標点を抽出し、その座標点の8近傍をチェックして最終
的に1の値となる2つの終端点を求め、その2つの終端
点に基づいて 前記直線の斜度を判定する直線斜度判定手
段と、該直線斜度判定手段によって判定した斜度に応じ
て前記直線を水平線,垂直線,又は45度線のいずれか
になるように補正する直線斜度補正手段とを設けたこと
を特徴とする手書き情報表示装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23726892A JP3322697B2 (ja) | 1992-09-04 | 1992-09-04 | 手書き情報表示装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23726892A JP3322697B2 (ja) | 1992-09-04 | 1992-09-04 | 手書き情報表示装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0683920A JPH0683920A (ja) | 1994-03-25 |
| JP3322697B2 true JP3322697B2 (ja) | 2002-09-09 |
Family
ID=17012883
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23726892A Expired - Fee Related JP3322697B2 (ja) | 1992-09-04 | 1992-09-04 | 手書き情報表示装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3322697B2 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4879592A (en) * | 1988-05-02 | 1989-11-07 | Polaroid Corporation | Camera with two-bladed shutter mechanism with multiple filter apertures disposed for relative movement to provide sequential color separation exposures |
| JP3938928B1 (ja) * | 2006-06-22 | 2007-06-27 | 株式会社コナミデジタルエンタテインメント | 線形状処理装置、線形状処理方法、ならびに、プログラム |
| JP4905282B2 (ja) * | 2007-07-25 | 2012-03-28 | 大日本印刷株式会社 | 皺画像生成装置 |
-
1992
- 1992-09-04 JP JP23726892A patent/JP3322697B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0683920A (ja) | 1994-03-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2689433B2 (ja) | 図形描画方法および図形描画システム | |
| CN101398938B (zh) | 图像处理装置、图像处理系统及图像处理方法 | |
| JP3322697B2 (ja) | 手書き情報表示装置 | |
| JPH03119387A (ja) | デジタル活字面の輪郭を形成する方法およびその装置 | |
| JPH10312407A (ja) | 図面表示装置 | |
| JPH06274303A (ja) | マルチウィンドウ表示方法 | |
| JP3353957B2 (ja) | 手書き入力表示装置および方法 | |
| JPS63217393A (ja) | ポインタ表示方法 | |
| JPH07129149A (ja) | 文字描画装置 | |
| US5748779A (en) | Method and apparatus for inputting handwritten alphanumeric characters and for displaying the input characters | |
| JP2773127B2 (ja) | 画像編集方法 | |
| EP0339588B1 (en) | Coordinate input method employing touch panel | |
| JPH0652243A (ja) | 図面入力・処理装置 | |
| JPH05314269A (ja) | グラフ作成装置 | |
| JP3139805B2 (ja) | 画像処理方法及びその装置 | |
| JP2614111B2 (ja) | 直線表示要素と矩形ウインドウの相互関係の検出方法 | |
| JP3637638B2 (ja) | 楕円作図装置 | |
| JPH0610447Y2 (ja) | 画像処理装置 | |
| JPS63211466A (ja) | 図形入力装置 | |
| JPH0348519B2 (ja) | ||
| JP2006113630A (ja) | 情報表示装置 | |
| JP2019117639A (ja) | 表示装置及びプログラム | |
| JPH0377127A (ja) | 表罫線表示制御方法及びその装置並びにデータ処理装置 | |
| JPH0328987A (ja) | 文字処理方法 | |
| JPH0793484A (ja) | 入力表示装置及び同装置の機能指示入力方法及び情報処理装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |