説明

オブジェクト編集システム、オブジェクト編集方法及びオブジェクト編集プログラム

【課題】 操作性を悪化させることなく、オブジェクトの円滑な移動を実現するスナップ機能を提供すること。
【解決手段】 本発明によると、所定の表示エリア内にオブジェクトと吸着対象とを配置する配置手段と、当該表示エリア内において当該オブジェクトを移動させる移動手段と、当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させる吸着手段と、当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにする制限手段と、を有するオブジェクト編集システムが提供される。本発明のオブジェクト編集システムにおいては、前記吸着手段は、前記オブジェクトと前記吸着対象との距離が所定の閾値より小さくなることに対応して、当該オブジェクトを当該吸着対象へ吸着させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータを用いた電子文書の編集技術に関する。特に、電子文書におけるオブジェクトを編集するシステム、オブジェクトの編集方法及びオブジェクトの編集プログラムに関する。
【背景技術】
【0002】
コンピュータを用いて電子文書のレイアウト編集を行う際に、オブジェクトのスナップ機能がよく用いられている。スナップ機能とは、電子文書のレイアウト編集ツールにおいて、オブジェクトを目的の場所に配置する際に用いられる機能であり、マウス等によりオブジェクトを保持したまま移動させ(ドラッグ)、所望のグリッドへ近づいたときに、オブジェクトを作業領域のグリッドや、他のオブジェクトに自動配置することを支援する機能である。
【0003】
図8に、電子文書のレイアウト編集画面を示す。103はスクリーンであり、複数の縦グリッド101a〜101e及び横グリッド102a〜102cが配置されている。図8には、選択オブジェクト100がスナップ機能によりオブジェクト100’で示す位置に移動した様子が示されている。オブジェクト100’は、縦グリッド101b及び横グリッド102bにスナップされていることがわかる。
【0004】
このスナップ機能は、オブジェクトを効率よく、且つグリッドや他のオブジェクト等の基準となるものに配置するために重要な機能であり、ユーザーの使用頻度は非常に高い。一方、基準となるグリッドの間隔が小さい場合や、他のオブジェクトが数多く存在する場合には、特定のオブジェクトを、目的とする場所に移動する間に必要以上にスナップ機能が働き、円滑なオブジェクトの移動を実現することが困難である場合がある。
【0005】
ここで、図9を参照する。図9は、オブジェクト100を従来のスナップ機能によりオブジェクト100’で示す位置に移動した場合における、移動中のスナップ機能の動作頻度を説明したスクリーン103の図である。104はマウス(マウスのポインタ)である。オブジェクト100の右辺、左辺、上辺及び下辺を、それぞれ、100a、100b、100c及び100dとする。オブジェクト100がオブジェクト100’で示す位置に移動する迄、即ち、右辺100aが縦グリッド101fにスナップされる迄、合計8回のスナップ(Snap1〜Snap8)が生じている。つまり、左辺100bが縦グリッド101bにスナップされ、下辺100dが横グリッド102cにスナップされ、右辺100aが縦グリッド101dにスナップされ、上辺100cが横グリッド102bにスナップされ、左辺100bが縦グリッド101cにスナップされ、右辺100aが縦グリッド101eにスナップされ、左辺100bが縦グリッド101dにスナップされ、その後、右辺100aが縦グリッド101fにスナップされている。
【0006】
このように、従来のスナップ機能を用いた場合、特定のオブジェクトを目的とする場所に移動する間に、必要以上にスナップ機能が働き、円滑なオブジェクトの移動の妨げとなっていた。
【0007】
上述した従来のスナップ機能を改善する技術が、例えば、以下の特許文献1に開示されている。特許文献1には、マウスによって選択されたオブジェクトの4個の吸着点のうちマウスカーソルから最も近い吸着点のみを吸着可能状態とし、吸着候補点にスナップさせる技術が開示されている。
【特許文献1】特開2001−281835号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
特許文献1に開示されている技術によると、オブジェクトを移動させる際に生じる不必要なスナップをある程度抑制することはできるが、オブジェクトの4個の吸着点のうちマウスカーソルから最も近い吸着点のみを吸着可能状態としているため、スナップ吸着可能状態にある吸着点に制限があり、操作性が悪化してしまうという問題があった。
【0009】
また、従来のスナップ機能においては、マウスによるドラッグ・アンド・ドロップ操作とキーボード操作とを組み合わせることで、即ち、オブジェクトをドラッグ・アンド・ドロップする際に、キーボード上のshiftキー等を押すことにより、一時的にスナップ機能を無効にして、スナップ機能を必要以上に動作させないようにする技術も知られている。
【0010】
このような従来のスナップ機能を用いることにより、比較的オブジェクトの円滑な移動を行うことができるが、ドラッグ・アンド・ドロップ操作とキーボード操作とを組み合わせるといった複数の操作を同時に行う必要があり、必然的に両手による操作が必要となり、操作性が悪化してしまう。また、ユーザーがこのような複数の操作を組み合わせた操作方法に気づき、その操作方法を習得するには困難があった。
【0011】
このような事情から、上述した従来のスナップ機能では、操作性を悪化させることなくしては、オブジェクトを円滑に移動させることができず、電子文書のオブジェクト編集におけるユーザビリティの向上を妨げることとなっていた。
【0012】
そこで、本発明は、上述の問題を鑑みてなされたものであり、操作性を悪化させることなく、オブジェクトの円滑な移動を実現するスナップ機能を提供し、オブジェクトの編集効率を高くし、且つユーザビリティを向上させることを目的とする。
【課題を解決するための手段】
【0013】
本発明によると、所定の表示エリア内にオブジェクトと吸着対象とを配置する配置手段と、当該表示エリア内において当該オブジェクトを移動させる移動手段と、当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させる吸着手段と、当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにする制限手段と、
を有するオブジェクト編集システムが提供される。
【0014】
また、前記吸着手段は、前記オブジェクトと前記吸着対象との距離が所定の閾値より小さくなることに対応して、当該オブジェクトを当該吸着対象へ吸着させるようにしてもよい。
【0015】
また、前記吸着対象は、前記オブジェクトの移動経路に沿って複数存在するようにしてもよい。
【0016】
また、前記制限手段は、前記オブジェクトの進行方向に対して反対側に存在する当該吸着対象へ前記オブジェクトを吸着させないようにしてもよい。
【0017】
また、前記オブジェクトは複数の吸着基準を有し、前記吸着手段は当該吸着基準と前記吸着対象との距離に基づいて当該吸着基準を当該吸着対象へ吸着させ、前記制限手段は、前記オブジェクトの進行方向に対して反対側に存在する当該吸着基準と当該吸着対象とを吸着させないようにしてもよい。
【0018】
また、前記制限手段は、前記オブジェクトの進行方向に対して同じ側に存在する前記吸着基準と前記吸着対象とを吸着させるようにしてもよい。
【0019】
また、前記表示エリアは縦軸と横軸とで定義される二次元表示エリアであり、前記制限手段は、前記オブジェクトの進行方向の縦成分方向に対して反対側に存在する前記吸着基準又は前記オブジェクトの進行方向の横成分方向に対して反対側に存在する前記吸着基準と前記吸着対象とを吸着させないようにしてもよい。
【0020】
また、前記表示エリアは縦軸と横軸とで定義される二次元表示エリアであり、前記制限手段は、前記オブジェクトの進行方向の縦成分方向に対して反対側に存在する前記吸着基準及び前記オブジェクトの進行方向と横成分方向に対して反対側に存在する前記吸着基準と前記吸着対象とを吸着させないようにしてもよい。
【0021】
また、前記表示エリアを縦軸と横軸とで定義される二次元表示エリアとして構成し、前記オブジェクトをその輪郭が矩形となるように構成し、前記吸着対象を複数の縦グリッド線及び複数の横グリッド線として構成し、前記吸着手段は当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線との距離に基づいて当該辺を当該縦グリッド線又は当該横グリッド線へ吸着させ、前記制限手段は、当該オブジェクトの進行方向に対して反対側に存在する当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線とを吸着させないようにしてもよい。
【0022】
また、前記吸着手段は、前記複数の横グリッド線のうち前記オブジェクトの進行方向の縦成分方向にある矩形の辺に最も近い前記横グリッド線を選択し、当該辺と当該横グリッド線との距離が第1の閾値より小さくなることに対応して、当該辺を当該横グリッド線に吸着させ、且つ、前記複数の縦グリッド線のうち当該オブジェクトの進行方向の横成分方向にある矩形の辺に最も近い前記縦グリッド線を選択し、当該辺と当該縦グリッド線との距離が第2の閾値より小さくなることに対応して、当該辺を当該縦グリッド線に吸着させるようにしてもよい。
【0023】
また、前記制限手段は、前記オブジェクトの進行方向の縦成分方向に対して反対側にある前記矩形の辺と前記横グリッド線とを吸着させないようにし、且つ当該オブジェクトの進行方向の横成分方向に対して反対側にある前記矩形の辺と前記縦グリッド線とを吸着させないようにしてもよい。
【0024】
また、前記移動手段は、前記表示エリア内にポインタを表示させるポインティングデバイスを有するようにしてもよい。
【0025】
また、ユーザーが前記ポインティングデバイスを操作することに対応して、前記移動手段は、前記ポインタで特定する前記オブジェクトを移動させるようにしてもよい。
【0026】
また、前記ポインティングデバイスはマウスであってもよい。
【0027】
また、前記表示エリア内において前記オブジェクトの進行方向と前記ポインタの進行方向とは一致している。
【0028】
また、前記表示エリアを縦軸と横軸とで定義される二次元表示エリアとして構成し、前記オブジェクトの進行方向は、右上、真右、右下、真上、真下、左上、真左又は右下の何れかである。
【0029】
また、本発明によると、所定の表示エリア内にオブジェクトと吸着対象とを配置し、当該表示エリア内において当該オブジェクトを移動させる際に、当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにしながら、当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させるオブジェクト編集方法が提供される。
【0030】
また、本発明によると、縦軸と横軸とで定義される所定の二次元表示エリア内にオブジェクトと吸着対象とを配置し、前記オブジェクトをその輪郭が矩形となるようにし、前記吸着対象を複数の縦グリッド線及び複数の横グリッド線とし、当該二次元表示エリア内において当該オブジェクトを移動させる際に、当該オブジェクトの進行方向に対して反対側に存在する当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線とを吸着させないようにしながら、前記吸着手段は当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線との距離に基づいて当該辺を当該縦グリッド線又は当該横グリッド線へ吸着させるオブジェクト編集方法が提供される。
【0031】
また、本発明のオブジェクト編集方法においては、前記オブジェクトの進行方向の縦成分方向に対して反対側にある前記矩形の辺と前記横グリッド線とを吸着させないようにし、且つ当該オブジェクトの進行方向の横成分方向に対して反対側にある前記矩形の辺と前記縦グリッド線とを吸着させないようにしてもよい。
【0032】
また、本発明によると、所定の表示エリア内にオブジェクトと吸着対象とを配置するステップと、当該表示エリア内において当該オブジェクトを移動させる際に、当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにしながら、当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させるステップと、をコンピュータに実行させるためのオブジェクト編集プログラムが提供される。
【0033】
また、本発明によると、縦軸と横軸とで定義される所定の二次元表示エリア内にオブジェクトと吸着対象とを配置するステップと、前記オブジェクトをその輪郭が矩形となるように処理するステップと、前記吸着対象を複数の縦グリッド線及び複数の横グリッド線とするステップと、当該二次元表示エリア内において当該オブジェクトを移動させる際に、当該オブジェクトの進行方向に対して反対側に存在する当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線とを吸着させないようにしながら、前記吸着手段は当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線との距離に基づいて当該辺を当該縦グリッド線又は当該横グリッド線へ吸着させるステップと、をコンピュータに実行させるためのオブジェクト編集プログラムが提供される。
【0034】
また、本発明のオブジェクト編集プログラムにおいて、前記オブジェクトの進行方向の縦成分方向に対して反対側にある前記矩形の辺と前記横グリッド線とを吸着させないようにし、且つ当該オブジェクトの進行方向の横成分方向に対して反対側にある前記矩形の辺と前記縦グリッド線とを吸着させないようにしてもよい。
【発明の効果】
【0035】
本発明によると、オブジェクトを移動させる際のスナップ機能の動作回数を抑制することができ、ユーザーの操作性を悪化させることなく、オブジェクトの円滑な移動を実現することができ、その結果、オブジェクトの編集効率を高くし、且つユーザビリティを向上させることができる。
【発明を実施するための最良の形態】
【0036】
以下、実施形態に基づいて本発明を具体的に説明する。図1を参照する。図1には、本実施形態に係る本発明のオブジェクト編集システムの概略構成図が示されている。本実施形態に係る本発明のオブジェクト編集システムは、中央演算処理装置(CPU)1、メモリ2、オブジェクト編集プログラム3、ハードディスク4、表示装置5、マウス6、キーボード7及びCD−ROMドライブ8を有している。
【0037】
CPU1は、オブジェクト編集プログラム3を実行する装置である。メモリ2は、CPU1がオブジェクト編集プログラム3を実行するために、ハードディスク4に記憶されたオブジェクト編集プログラム3を一時的に記憶する記憶装置である。表示装置5は、CPU1によるオブジェクト編集プログラム3の実行結果を表示する装置である。マウス6及びキーボード7は、ユーザーがCPU1に命令を実行させ、またオブジェクト編集プログラム3を使用する際に用いる情報入力装置である。CD−ROMドライブ8は、CD−ROMに記憶されたオブジェクト編集プログラム3をCPU1の命令によりハードディスクに転送するために用いられる装置である。
【0038】
CPU1とメモリ2に記憶されたオブジェクト編集プログラムとが共同して、本発明のオブジェクト編集方法が実行されることになる。
【0039】
次に、図2を参照する。図2には、本発明のオブジェクト編集プログラムを実行したときの表示装置5のスクリーン5aの表示例が示されている。スクリーン5aには、予め設定した二次元表示エリア内に複数の縦グリッド11a〜11g及び複数の横グリッド12a〜12cがグリッド配置手段によって配置されている。なお、グリッドとは、エリア内におけるオブジェクトの編集に用いられる基準線であり、オブジェクトの吸着対象となり得る。図2においては、グリッドをスクリーン5aに表示した場合について示したが、グリッドは、非表示とすることもできる。また、図2に示した縦グリッド11a〜11g及び横グリッド12a〜12cは、本発明のオブジェクト編集プログラムを実行した際の一部のグリッドを示したものであり、グリッドの数はこれに限定されるわけではない。13は、マウス(マウスのポインタ)である。なお、本実施形態においては、ポインタを移動させるポインティングデバイスとしては、マウスを用いたが、その他のポインティングデバイスを用いてもよい。
【0040】
また、スクリーン5aには、オブジェクト10が表示されている。このオブジェクト10は、その輪郭が矩形によって構成されており、ここでは、その矩形の右辺を10a、左辺を10b、上辺を10c、下辺を10dとしている。本発明においては、オブジェクト10の輪郭である矩形の右辺、左辺、上辺又は下辺が、オブジェクト10の吸着対象となるグリッドに対する吸着基準となる。
【0041】
本発明のオブジェクト編集方法においては、オブジェクト10を目的の場所に移動させるときに、オブジェクト10の進行方向、即ちマウス13の進行方向にあるオブジェクト10の矩形の辺に対してのみ自動的にスナップ機能を有効にし、進行方向と反対側にある矩形の辺に対しては自動的にスナップ機能を制限することを特徴としている。
【0042】
本発明のオブジェクト編集方法におけるオブジェクト10の進行方向、即ちマウス13の進行方向と、スナップ機能が有効となるオブジェクト10の矩形の辺(右辺10a、左辺10b、上辺10c、下辺10d)との関係は、以下の表1に示す8個のパターンのとおりである。
【0043】
【表1】

【0044】
本発明のオブジェクト編集方法においては、表1に示した8個のマウス13の進行方向パターンに基づき、スナップ機能が有効となる矩形の辺と無効となる矩形の辺とを決定することによって、スナップの回数を減少させ、オブジェクト10の円滑な移動を実現することができるものである。
【0045】
図3を参照する。図3には、本発明のオブジェクト編集方法のフローチャートが示されている。本実施形態においては、ユーザーのマウス13の操作(例えば、マウスの左クリックを押下し、その状態を保持する操作)により、オブジェクト10が選択・保持された後、マウス13の位置(マウスのポインタの位置)が変化することを「イベント」と呼んでいる。
【0046】
まず、ユーザーのマウス13の操作により、移動手段が動作し、オブジェクト10が選択・保持された後、マウス13の位置が変化し、イベントが発生する(ステップS1)。
【0047】
次に、マウス13の縦方向及び横方向の進行方向(マウス13の進行方向の縦成分及び横成分)を計算する(ステップS2)。このステップS2は、詳しくは、図4に示すとおり、3つのステップによって実行される(ステップS2a、S2b、S2c)。ステップS2においては、マウス13の前回位置座標(イベントが発生する前の位置座標)(Xp,Yp)を求める(ステップS2a)。次に、マウスの現在の位置座標(イベントが発生した後の位置座標)(Xc,Yc)を求める(ステップS2b)。そして、前回の位置座標(Xp,Yp)と現在の位置座標(Xc,Yc)との差分(ΔX,ΔY)=(Xc−Xp,Yc−Yp)を求める。この差分(ΔX,ΔY)によって、マウス13の進行方向が決定される。この差分(ΔX,ΔY)とマウス13の進行方向との関係は、以下の表2に記載のとおりである。
【0048】
【表2】

【0049】
次に、ステップS2で求めたマウス13の進行方向から、スナップ機能が有効となるオブジェクト10の矩形の辺、言い換えると、オブジェクト10を吸着させる候補となるグリッド(吸着候補グリッド)を計算する対象となる矩形の辺を計算する(ステップS3)。このステップS3は、上記表2に示すとおり、8個のマウスの進行方向パターンと、それに対応する吸着候補グリッドを計算する対象となる矩形の辺に基づいて実行される。表2に示すとおり、例えば、差分(ΔX>0,ΔY>0)に対応する、吸着候補グリッドを計算する対象となる矩形の辺は、上辺及び右辺であり、また、差分(ΔX>0,ΔY=0)に対応する、吸着候補グリッドを計算する対象となる矩形の辺は、右辺となる。このようにして、差分(ΔX,ΔY)の計算結果に基づき、最大2つ、少なくとも1つの矩形の辺が算出される。なお、表2に示すとおり、本発明の性質上、2つの矩形の辺が算出される場合には、上辺及び下辺のうち何れか1つと右辺及び左辺のうち何れか1つとが算出されることになる。また、表2における符号(S4)、(S5)、(S6)及び(S7)は、図3におけるそれらと一致している。
【0050】
次に、ステップS3の計算結果に基づき、ステップS4〜S7のうち、最大2つ、少なくとも1つのステップが実行される。例えば、ステップS3によって上辺及び右辺が算出された場合は、上辺(ステップS4)及び右辺(ステップS6)が選択され、また、ステップS3によって下辺及び左辺が算出された場合は、下辺(ステップS5)及び左辺(ステップS7)が選択される。
【0051】
次に、ステップS4が選択された場合はステップS8が実行され、ステップS5が選択された場合はステップS9が実行され、ステップS6が選択された場合はステップS10が実行され、また、ステップS7が選択された場合はステップS11が実行される。
【0052】
ステップS8及びS9においては、それぞれ、選択された矩形の辺に最も隣接する吸着候補グリッド(横グリッド)が計算される。また、ステップS10及びS11においては、それぞれ、選択された矩形の辺に最も隣接する吸着候補グリッド(縦グリッド)が計算される。例えば、ステップS8においては、矩形の上辺に最も隣接する吸着候補グリッドが計算され、また、ステップS10においては、矩形の右辺に最も隣接する吸着候補グリッドが計算される。こうすることにより、マウス13の進行方向に応じて、最大2つ、少なくとも1つの吸着候補グリッドが計算される。
【0053】
次に、ステップS8〜ステップS11によって計算された吸着候補グリッドと、対象となる矩形の辺との距離が、予め定めた閾値(X方向の閾値Xth、Y方向の閾値Yth)よりも小さいかどうかを計算し(ステップ12)、小さければ矩形の対象となる辺をその吸着候補グリッドへ吸着させ(ステップS13)終了し(END)、大きければ矩形の対象となる辺をその吸着候補グリッドへ吸着させないで(ステップS14)終了する(END)。例えば、マウス13の移動方向が右下で、ステップS9及びステップS10が実行され、矩形の下辺に最も隣接する吸着候補グリッドとして上側に隣接する横グリッドが算出され、矩形の右辺に最も隣接する吸着候補グリッドとして左側に隣接する縦グリッドが算出された場合において、矩形の下辺と算出された横グリッドとの距離が閾値Ythよりも小さく、矩形の右辺と算出された縦グリッドとの距離が閾値Xthよりも小さい場合は、矩形の下辺及び右辺は、それぞれ、当該横グリッド及び当該縦グリッドに吸着される。一方、上述の場合において、矩形の下辺と算出された横グリッドとの距離が閾値Ythよりも小さく、矩形の右辺と算出された縦グリッドとの距離が閾値Xth以上である場合は、矩形の下辺は当該横グリッドに吸着されるが、矩形の右辺は当該縦グリッドに吸着されない。なお、垂直方向の閾値Ythと水平方向の閾値Xthは、それぞれ同じ値を設定しておいても良いし、それぞれ異なる値を設定しておいても良い。
【0054】
なお、吸着基準であるオブジェクトの矩形の辺と吸着対象となるグリッドとの距離が閾値(Xth,Yth)以下の場合に、当該辺をグリッドに吸着させるようにしてもよい。
【0055】
以上説明した図3に示すフローを繰り返すことにより、オブジェクト10の進行方向にある矩形の辺に対してのみスナップ機能を動作させ、進行方向と反対側にある矩形の辺に対してはスナップ機能を無効とすることができ、スナップの回数が減少し、マウス13によるオブジェクトの円滑な移動を実現することができ、オブジェクトのドラッグ・アンド・ドロップ操作の作業性、ユーザビリティを向上させることができる。
【0056】
また、本発明のオブジェクト編集方法によると、shiftキー等との組み合わせ操作により一時的にスナップ機能を無効にするといった従来用いられていたような複雑なスナップ機能と比較して、自動的に、片手で、且つ複雑なスナップ機能を学習する必要なく、スナップ機能の発生頻度を減少させることができるという優れた効果を奏する。
【0057】
なお、本発明のオブジェクト編集方法によると、オブジェクト10の進行方向の先にあるグリッドにしかオブジェクト10を吸着させることができない。そこで、例えば、図2において、オブジェクト10の矩形の左辺10bを縦グリッド11cに吸着させたいときは、オブジェクト10の矩形の左辺10bを、一端、縦グリッド11cよりも右側に移動させたあと、オブジェクト10を左に移動させることによって、オブジェクト10の矩形の左辺10bを縦グリッド11cに吸着させることができる。
【実施例1】
【0058】
本実施例においては、上述の実施形態で説明した本発明のオブジェクト編集システム及び編集方法において、図5を参照しながら、オブジェクト10を図5に示す矢印の方向(右上)に移動させる場合を例にとって、そのフローを具体的に説明する。
【0059】
図5(a)は、イベント発生前のオブジェクト10の状態を示した図である。図5(b)には、イベント発生後、スナップ機能が動作した後のオブジェクト10’の状態を示した図である。
【0060】
本実施例においては、図5(b)に示すとおり、イベント発生後のオブジェクト10’の右辺と縦グリッド11dとの距離が閾値Xthよりも小さく、且つオブジェクトの上辺と横グリッド12bとの距離が閾値Ythよりも小さい場合を想定しており、オブジェクト10’の右辺及び上辺が、それぞれ、縦グリッド11d、横グリッド12bに吸着されていることがわかる。
【0061】
次に、図6を参照し、本実施例における本発明のオブジェクト編集方法のフローについて説明する。
【0062】
まず、ユーザーのマウス13の操作により、オブジェクト10が選択・保持された後、マウス13(マウスのポインタ)の位置が変化し、イベントが発生する(ステップS1)。本実施例では、マウス13の位置が右上に変化する場合について考える。
【0063】
次に、マウス13の進行方向を計算する(ステップS2)。このステップS2は、上述したとおり、図4に示す3つのステップによって実行される(ステップS2a、S2b、S2c)。ステップS2においては、マウス13の前回位置座標(イベントが発生する前の位置座標)(Xp,Yp)を求める(ステップS2a)。次に、マウスの現在の位置座標(イベントが発生した後の位置座標、即ちマウス13’の位置座標)(Xc,Yc)を求める(ステップS2b)。そして、前回の位置座標(Xp,Yp)と現在の位置座標(Xc,Yc)との差分(ΔX,ΔY)=(Xc−Xp,Yc−Yp)を求める。本実施においては、差分(ΔX>0,ΔY>0)となる。
【0064】
次に、ステップS2で求めたマウス13の進行方向から、オブジェクト10を吸着させる候補となるグリッド(吸着候補グリッド)を計算する対象となる矩形の辺を計算する(ステップS3)。本実施例においては、上述の表2により、差分(ΔX>0,ΔY>0)に対応する、吸着候補グリッドを計算する対象となる矩形の辺は、上辺及び右辺となる。
【0065】
次に、ステップS3の計算結果により、上辺及び右辺が算出されているので、上辺(ステップS4)及び右辺(ステップS6)が選択される。
【0066】
次に、ステップS8及びステップS10が実行される。ステップS8においては、選択された矩形の上辺に最も隣接する吸着候補グリッドが計算され、また、ステップS10においては、選択された矩形の右辺に最も隣接する吸着候補グリッドが計算される。
【0067】
図5(b)に示すとおり、本実施例の場合は、ステップS8を実行することによって横グリッド12bが算出され、また、ステップS10を実行することによって縦グリッド11dが算出される。
【0068】
次に、ステップS8及びステップS10によって計算された吸着候補グリッドと、対象となる矩形の辺との距離が、予め定めた閾値(X方向の閾値Xth、Y方向の閾値Yth)よりも小さいかどうかを計算し(ステップ12)、小さければ矩形の対象となる辺をその吸着候補グリッドへ吸着させ(ステップS13)終了し(END)、大きければ矩形の対象となる辺をその吸着候補グリッドへ吸着させないで(ステップS14)終了する(END)。本実施例においては、矩形の上辺と横グリッド12bとの距離が閾値Ythより小さく、且つ矩形の右辺と縦グリッド11dとの距離が閾値Ythより小さいので、矩形の上辺及び右辺は、それぞれ、横グリッド12b、縦グリッド11dに吸着される。
【0069】
オブジェクト10を保持しながら右上に移動するマウス13に基づくイベントが連続的に発生した場合に、図6に示すフローを繰り返すことにより、オブジェクト10の進行方向の矩形の辺である上辺及び右辺に対してのみスナップ機能を動作させ、進行方向と反対側にある矩形の辺である下辺及び左辺に対してはスナップ機能を無効とすることができ、スナップの回数が減少し、マウス13によるオブジェクト10の円滑な移動を実現することができ、オブジェクト10のドラッグ・アンド・ドロップ操作の作業性、ユーザビリティを向上させることができる。
【0070】
図7には、イベントが繰り返し発生し、オブジェクト10がオブジェクト10’で示す位置まで移動した場合における、移動中のスナップ機能の動作頻度を説明した図である。オブジェクト10がオブジェクト10’で示す位置に移動する迄、即ち、右辺10aが縦グリッド11fにスナップされる迄、従来のスナップ機能を用いた場合は合計8回のスナップが発生していたにも拘わらず、合計4回のスナップ(Snap1〜Snap4)しか発生していない。つまり、右辺10aが縦グリッド11dにスナップされ、上辺10cが横グリッド12bにスナップされ、右辺10aが縦グリッド11eにスナップされ、その後、右辺10aが縦グリッド11fにスナップされている。
【0071】
このように、本発明のオブジェクト編集方法を用いると、スナップの回数が約半分に減少し、マウス13によるオブジェクト10の円滑な移動を実現することができ、オブジェクト10のドラッグ・アンド・ドロップ操作の作業性、ユーザビリティを向上させることができることがわかる。
【0072】
以上、本発明の具体的な実施形態及び実施例について説明したが、本発明は、これら実施形態及び実施例に限定されるわけではなく、本発明の技術的開示範囲を逸脱することなく、適時設計変更が可能である。
【産業上の利用可能性】
【0073】
本発明のオブジェクト編集システム及びオブジェクト編集方法によると、オブジェクトの進行方向矩形の辺に対してのみスナップ機能を動作させ、進行方向と反対側にある矩形の辺に対してはスナップ機能を無効とすることができ、スナップの回数が減少し、マウスによるオブジェクトの円滑な移動を実現することができ、オブジェクトのドラッグ・アンド・ドロップ操作の作業性、ユーザビリティを向上させることができる。
【0074】
また、本発明のオブジェクト編集システム及びオブジェクト編集方法によると、shiftキー等との組み合わせ操作により一時的にスナップ機能を無効にするといった従来用いられていたような複雑なスナップ機能と比較して、自動的に、片手で、且つ複雑なスナップ機能を学習する必要なく、スナップ機能の発生頻度を減少させることができるという優れた効果を奏する。
【0075】
よって、本発明は、オブジェクトの編集機能を備えたワード・プロセッサ・ソフトウェア、CADソフトウェア、WEBデザイン・ソフトウェア等の種々のソフトウェアや、それらを用いたコンピュータシステムに適用することができる。
【図面の簡単な説明】
【0076】
【図1】一実施形態に係る本発明のオブジェクト編集システムの概略構成図である。
【図2】一実施形態に係る本発明のオブジェクト編集プログラムを実行したときの表示装置5のスクリーン5aの表示例である。
【図3】一実施形態に係る本発明のオブジェクト編集方法のフローチャートである。
【図4】一実施形態に係る本発明のオブジェクト編集方法におけるマウス13の進行方向を計算するフローチャートである。
【図5】(a)は、イベント発生前のオブジェクト10の状態を示した図であり、(b)には、イベント発生後、スナップ機能が動作した後のオブジェクト10’の状態を示した図である。
【図6】一実施例に係る本発明のオブジェクト編集方法のフローチャートである。
【図7】一実施例に係る本発明のオブジェクト編集方法におけるオブジェクト移動中のスナップ機能の動作頻度を説明した図である。
【図8】従来の電子文書のオブジェクト編集画面である。
【図9】従来の電子文書のオブジェクト編集画面におけるオブジェクト移動中のスナップ機能の動作頻度を説明した図である。
【符号の説明】
【0077】
1 中央演算処理装置
2 メモリ
3 プログラム
4 ハードディスク
5 表示装置
5a スクリーン
6 マウス
7 キーボード
8 CD−ROM
10 オブジェクト
10’ (移動後の)オブジェクト
11a〜11g 縦グリッド
12a〜12c 横グリッド
13 マウス
13’ (移動後の)マウス
100 オブジェクト
100’ (移動後の)オブジェクト
101a〜101f 縦グリッド
102a〜102c 横グリッド
103 スクリーン
104 マウス
104’ (移動後の)マウス

【特許請求の範囲】
【請求項1】
所定の表示エリア内にオブジェクトと吸着対象とを配置する配置手段と、
当該表示エリア内において当該オブジェクトを移動させる移動手段と、
当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させる吸着手段と、
当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにする制限手段と、
を有するオブジェクト編集システム。
【請求項2】
前記吸着手段は、前記オブジェクトと前記吸着対象との距離が所定の閾値より小さくなることに対応して、当該オブジェクトを当該吸着対象へ吸着させる請求項1に記載のオブジェクト編集システム。
【請求項3】
前記吸着対象は、前記オブジェクトの移動経路に沿って複数存在する請求項1に記載のオブジェクト編集システム。
【請求項4】
前記制限手段は、前記オブジェクトの進行方向に対して反対側に存在する当該吸着対象へ前記オブジェクトを吸着させないようにする請求項1に記載のオブジェクト編集システム。
【請求項5】
前記オブジェクトは複数の吸着基準を有し、
前記吸着手段は当該吸着基準と前記吸着対象との距離に基づいて当該吸着基準を当該吸着対象へ吸着させ、
前記制限手段は、前記オブジェクトの進行方向に対して反対側に存在する当該吸着基準と当該吸着対象とを吸着させないようにする請求項1に記載のオブジェクト編集システム。
【請求項6】
前記制限手段は、前記オブジェクトの進行方向に対して同じ側に存在する前記吸着基準と前記吸着対象とを吸着させる請求項5に記載のオブジェクト編集システム。
【請求項7】
前記表示エリアは縦軸と横軸とで定義される二次元表示エリアであり、
前記制限手段は、前記オブジェクトの進行方向の縦成分方向に対して反対側に存在する前記吸着基準又は前記オブジェクトの進行方向の横成分方向に対して反対側に存在する前記吸着基準と前記吸着対象とを吸着させないようにする請求項5に記載のオブジェクト編集システム。
【請求項8】
前記表示エリアは縦軸と横軸とで定義される二次元表示エリアであり、
前記制限手段は、前記オブジェクトの進行方向の縦成分方向に対して反対側に存在する前記吸着基準及び前記オブジェクトの進行方向と横成分方向に対して反対側に存在する前記吸着基準と前記吸着対象とを吸着させないようにする請求項5に記載のオブジェクト編集システム。
【請求項9】
前記表示エリアを縦軸と横軸とで定義される二次元表示エリアとして構成し、
前記オブジェクトをその輪郭が矩形となるように構成し、
前記吸着対象を複数の縦グリッド線及び複数の横グリッド線として構成し、
前記吸着手段は当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線との距離に基づいて当該辺を当該縦グリッド線又は当該横グリッド線へ吸着させ、
前記制限手段は、当該オブジェクトの進行方向に対して反対側に存在する当該オブジェクトの辺と当該縦グリッド線又は当該横グリッド線とを吸着させないようにする請求項1に記載のオブジェクト編集システム。
【請求項10】
前記吸着手段は、前記複数の横グリッド線のうち前記オブジェクトの進行方向の縦成分方向にある矩形の辺に最も近い前記横グリッド線を選択し、当該辺と当該横グリッド線との距離が第1の閾値より小さくなることに対応して、当該辺を当該横グリッド線に吸着させ、且つ、前記複数の縦グリッド線のうち当該オブジェクトの進行方向の横成分方向にある矩形の辺に最も近い前記縦グリッド線を選択し、当該辺と当該縦グリッド線との距離が第2の閾値より小さくなることに対応して、当該辺を当該縦グリッド線に吸着させる請求項9に記載のオブジェクト編集システム。
【請求項11】
前記制限手段は、前記オブジェクトの進行方向の縦成分方向に対して反対側にある前記矩形の辺と前記横グリッド線とを吸着させないようにし、且つ当該オブジェクトの進行方向の横成分方向に対して反対側にある前記矩形の辺と前記縦グリッド線とを吸着させないようにする請求項9に記載のオブジェクト編集システム。
【請求項12】
前記移動手段は、前記表示エリア内にポインタを表示させるポインティングデバイスを有する請求項1に記載のオブジェクト編集システム。
【請求項13】
ユーザーが前記ポインティングデバイスを操作することに対応して、前記移動手段は、前記ポインタで特定する前記オブジェクトを移動させる請求項12に記載のオブジェクト編集システム。
【請求項14】
前記ポインティングデバイスはマウスである請求項12に記載のオブジェクト編集システム。
【請求項15】
前記表示エリア内において前記オブジェクトの進行方向と前記ポインタの進行方向とは一致する請求項13に記載のオブジェクト編集システム。
【請求項16】
前記表示エリアを縦軸と横軸とで定義される二次元表示エリアとして構成し、
前記オブジェクトの進行方向は、右上、真右、右下、真上、真下、左上、真左又は右下の何れである請求項1に記載のオブジェクト編集システム。
【請求項17】
所定の表示エリア内にオブジェクトと吸着対象とを配置し、
当該表示エリア内において当該オブジェクトを移動させる際に、当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにしながら、当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させる、オブジェクト編集方法。
【請求項18】
請求項17に記載のオブジェクト編集方法において、前記オブジェクトの進行方向の縦成分方向に対して反対側にある前記矩形の辺と前記横グリッド線とを吸着させないようにし、且つ当該オブジェクトの進行方向の横成分方向に対して反対側にある前記矩形の辺と前記縦グリッド線とを吸着させないようにするオブジェクト編集方法。
【請求項19】
所定の表示エリア内にオブジェクトと吸着対象とを配置するステップと、
当該表示エリア内において当該オブジェクトを移動させる際に、当該オブジェクトの進行方向に基づいて当該オブジェクトを当該吸着対象へ吸着させないようにしながら、当該オブジェクトと当該吸着対象との距離に基づいて当該オブジェクトを当該吸着対象へ吸着させるステップと、
をコンピュータに実行させるためのオブジェクト編集プログラム。
【請求項20】
請求項19に記載のオブジェクト編集プログラムにおいて、前記オブジェクトの進行方向の縦成分方向に対して反対側にある前記矩形の辺と前記横グリッド線とを吸着させないようにし、且つ当該オブジェクトの進行方向の横成分方向に対して反対側にある前記矩形の辺と前記縦グリッド線とを吸着させないようにするオブジェクト編集プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2006−189989(P2006−189989A)
【公開日】平成18年7月20日(2006.7.20)
【国際特許分類】
【出願番号】特願2005−7(P2005−7)
【出願日】平成17年1月4日(2005.1.4)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100121267
【弁理士】
【氏名又は名称】林 佳輔
【復代理人】
【識別番号】230106714
【弁護士】
【氏名又は名称】高橋 雄一郎
【Fターム(参考)】