(57)【要約】【課題】既に配置されている複数のオブジェクトの位置を簡単に入れ替えることが可能な装置と方法とを提供することである。【解決手段】複数のオブジェクトから構成される画像を表示し、その画像を表現するデータを編集して複数のオブジェクトのいくつかの配置を入れ替える処理を行う処理方法は次の構成を備える。即ち、表示画像から表示の位置を移動させたい少なくとも１つのオブジェクトを選択し、その選択された少なくとも１つのオブジェクトを画面上で指示手段を用いてドラッグして移動させる。ドラッグして移動させられた位置に少なくとも１つのオブジェクトを除く他のオブジェクトが位置しているかどうかを判定し、その判定の結果に従って、少なくとも１つのオブジェクトの配置と他のオブジェクトの配置とが入れ替え可能であるかどうかを判断する。そして、その判断の結果に従って、少なくとも１つのオブジェクトと他のオブジェクトの配置を入れ替える。【選択図】  図１０
2010238135.tif 000002
【特許請求の範囲】
【請求項１】
モニタの表示画面に複数のオブジェクトから構成される画像を表示し、前記画像を表現するデータを画像処理装置により編集して、前記複数のオブジェクトのいくつかの配置を入れ替える処理を行う画像処理方法であって、
前記表示画面に表示された画像から表示の位置を移動させたい少なくとも１つのオブジェクトを選択する工程と、
前記選択された前記少なくとも１つのオブジェクトを前記表示画面上で指示手段を用いてドラッグして移動させる工程と、
前記ドラッグして移動させられた位置に前記少なくとも１つのオブジェクトを除く他のオブジェクトが位置しているかどうかを判定する工程と、
前記判定の結果に従って、前記少なくとも１つのオブジェクトの配置と前記他のオブジェクトの配置とが入れ替え可能であるかどうかを判断する工程と、
前記判断の結果に従って、前記少なくとも１つのオブジェクトと前記他のオブジェクトの配置を入れ替える工程とを有することを特徴とする画像処理方法。
【請求項２】
前記配置が入れ替られた前記少なくとも１つのオブジェクトと前記他のオブジェクトとを前記表示画面に表示する工程をさらに有することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記入れ替え可能であるかどうかは、前記少なくとも１つのオブジェクトと前記他のオブジェクトの配置を入れ替えた場合、入れ替え後に、前記少なくとも１つのオブジェクトと前記他のオブジェクトとが重なり合うかどうかにより判断することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記少なくとも１つのオブジェクトと前記他のオブジェクトの配置が入れ替え可能ではないと判断された場合、前記指示手段によりドラッグして移動させられた前記少なくとも１つのオブジェクトを移動前の位置に戻して表示する工程をさらに有することを特徴とする請求項１に記載の画像処理方法。
【請求項５】
複数のオブジェクトから構成されるデータが表現する画像を表示し、前記データを編集処理する画像処理装置であって、
前記画像を表示するモニタと、
前記モニタの表示画面に表示された画像から表示の位置を移動させたい少なくとも１つのオブジェクトを選択する選択手段と、
前記選択された前記少なくとも１つのオブジェクトを前記表示画面上でドラッグして移動させる指示手段と、
前記指示手段によりドラッグして移動させられた位置に前記少なくとも１つのオブジェクトを除く他のオブジェクトが位置しているかどうかを判定する判定手段と、
前記判定の結果に従って、前記少なくとも１つのオブジェクトの配置と前記他のオブジェクトの配置とが入れ替え可能であるかどうかを判断する判断手段と、
前記判断の結果に従って、前記少なくとも１つのオブジェクトと前記他のオブジェクトの配置を入れ替える入れ替え手段とを有することを特徴とする画像処理装置。
【請求項６】
請求項１乃至４のいずれか１項に記載の画像処理方法の各工程をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置及び画像処理方法に関する。特に本発明は、テキストや画像などのオブジェクトの位置を入れ替えるなどの編集を行うことにより印刷文書を作成する画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
印刷画像のデザイン編集において、その画像を構成するテキストや画像などのオブジェクトの位置を入れ替えるために、オブジェクトの移動を補助するガイドなどの手段を用いて位置を入れ替え編集する方法がある。この方法をコンピュータを用いて実行する際に、位置を入れ替えたいオブジェクトをポインティングデバイスで選択し、これをドラッグして入れ替えたい位置に移動させる。このとき、オブジェクトの位置を正確に合わせる手段が必要で、その手段の一つに“ガイド”と呼ばれるオブジェクトの位置を合わせるための線を編集画面上に表示する。
【０００３】
具体的には、編集画面上において、入れ替えるオブジェクトを含む領域の外側にガイドを設定し、オブジェクトを移動したときにオブジェクトの位置をガイドに合わせることでオブジェクトの位置を合わせる。縦方向または横方向だけにオブジェクトを移動させる場合は縦方向または横方向だけにガイドを設定し、縦方向と横方向の両方にオブジェクトを移動させるときは、ガイドも縦方向と横方向の両方に設定する。さらに別のオブジェクトとの位置を入れ替えたいときは、新たに入れ替えたいオブジェクトを含む領域の外側にガイドを設定する。
【０００４】
また、このような編集方法には、入れ替えたいオブジェクトの位置の属性に、移動した後の位置を設定する方法がある。この方法では、入れ替えたいオブジェクトのサイズの属性を確認し、オブジェクトのサイズと移動前の位置から移動後の位置を計算し、オブジェクトの属性に移動後の位置を設定する。複数のオブジェクトを移動するときは、複数のオブジェクトを含む領域を一つのオブジェクトと見なし、移動後の位置を計算する。
【０００５】
また、選択した一つのオブジェクトを別の一つのオブジェクトに重ねることで、位置およびサイズを入れ替える方法がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３７８０６０１号（第６頁、図４）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ガイドなどのオブジェクトの移動を補助する手段と共に、ポインティングデバイスを用いてオブジェクトの位置を入れ替える方法では多くの操作ステップを必要とする。加えて、連続して他のオブジェクトと入れ替える作業を行う場合は何度もガイドの設定をやり直す必要があった。これはさらに多くの操作ステップを必要とする。
【０００８】
また、入れ替えたいオブジェクトの位置の属性に移動後の位置を設定する方法では、移動したいオブジェクトの属性を確認し、移動後の位置を計算しなくてはならなかった。
【０００９】
また、特許文献１の方法では、片方のオブジェクトのサイズが大きい場合は、オブジェクトを入れ替えたときにオブジェクトが重なる場合があった。また、一つのオブジェクトと別の一つのオブジェクトの位置とサイズの入れ替えしか対応できず、片方または両方が複数のオブジェクトである場合には、その位置の入れ替えを行うことができなかった。
【００１０】
本発明は上記従来例に鑑みてなされたもので、既に配置されている複数のオブジェクトの位置を簡単に入れ替えることが可能な画像処理装置及び画像処理方法を提供することを目的としている。
【課題を解決するための手段】
【００１１】
上記目的を達成するために本発明の画像処理装置は次のような構成からなる。
【００１２】
即ち、モニタの表示画面に複数のオブジェクトから構成される画像を表示し、前記画像を表現するデータを画像処理装置により編集して、前記複数のオブジェクトのいくつかの配置を入れ替える処理を行う画像処理方法であって、前記表示画面に表示された画像から表示の位置を移動させたい少なくとも１つのオブジェクトを選択する工程と、前記選択された前記少なくとも１つのオブジェクトを前記表示画面上で指示手段を用いてドラッグして移動させる工程と、前記ドラッグして移動させられた位置に前記少なくとも１つのオブジェクトを除く他のオブジェクトが位置しているかどうかを判定する工程と、前記判定の結果に従って、前記少なくとも１つのオブジェクトの配置と前記他のオブジェクトの配置とが入れ替え可能であるかどうかを判断する工程と、前記判断の結果に従って、前記少なくとも１つのオブジェクトと前記他のオブジェクトの配置を入れ替える工程とを有することを特徴とする。
【００１３】
また他の発明によれば、複数のオブジェクトから構成されるデータが表現する画像を表示し、前記データを編集処理する画像処理装置であって、前記画像を表示するモニタと、前記モニタの表示画面に表示された画像から表示の位置を移動させたい少なくとも１つのオブジェクトを選択する選択手段と、前記選択された前記少なくとも１つのオブジェクトを前記表示画面上でドラッグして移動させる指示手段と、前記指示手段によりドラッグして移動させられた位置に前記少なくとも１つのオブジェクトを除く他のオブジェクトが位置しているかどうかを判定する判定手段と、前記判定の結果に従って、前記少なくとも１つのオブジェクトの配置と前記他のオブジェクトの配置とが入れ替え可能であるかどうかを判断する判断手段と、前記判断の結果に従って、前記少なくとも１つのオブジェクトと前記他のオブジェクトの配置を入れ替える入れ替え手段とを有することを特徴とする画像処理装置を備える。
【００１４】
さらに他の発明によれば、上記画像処理方法の各工程をコンピュータに実行させるプログラムを備える。
【発明の効果】
【００１５】
従って本発明によれば、オブジェクトの移動を補助する手段を必要とせず、簡単な操作でオブジェクトを正確かつ連続的に入れ替えることができるという効果がある。また、オブジェクトの属性を確認したり、移動後の位置を計算したりする必要もなく、複数のオブジェクトと別の複数のオブジェクトを入れ替えることも可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の代表的な実施例である画像処理装置の構成を示すブロック図である。
【図２】画像処理装置の機能構成を示すブロック図である。
【図３】、
【図４】オブジェクトを入れ替える一連の処理を示すフローチャートである。
【図５】対象領域の設定方法を示すフローチャートである。
【図６】、
【図７】移動方向決定部５６が実行するオブジェクトの移動方向処理を示すフローチャートである。
【図８】対象領域の別の設定処理を示すフローチャートである。
【図９】複数のオブジェクトからなる画像を示した図である。
【図１０】選択オブジェクトを移動中に非選択のオブジェクトと重なった状態を示す図である。
【図１１】対象領域と、移動対象オブジェクトの領域、或は、選択されたオブジェクトの移動前領域との関係を示す図である。
【図１２】選択オブジェクトと移動対象オブジェクトを夫々、移動させた状態を示した図である。
【図１３】対象領域の別の設定方法を説明する図である。
【発明を実施するための形態】
【００１７】
以下添付図面を参照して本発明の好適な実施例について、さらに具体的かつ詳細に説明する。ただし、この実施例に記載されている構成要素の相対配置等は、特定の記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１８】
図１は本発明の代表的な実施例である画像処理装置の構成を示すブロック図である。
【００１９】
この画像処理装置は、複数のオブジェクトからなる画像を表現するデータを編集して印刷画像を生成する装置である。画像処理装置は、ＣＰＵ１とメモリ２とハードディスクドライブ等の補助記憶装置３と外部インタフェース４と内部インタフェース５とモニタ６と指示入力装置７と印刷装置８とによって構成されている。従って、この画像処理装置は、印刷装置８を除けば、通常のパーソナルコンピュータ（ＰＣ）に特定のプログラムをインストールして実行することにより実現される。
【００２０】
画像処理装置において、ＣＰＵ１とメモリ２と補助記憶装置３と外部インタフェース４とは内部インタフェース５を介して互いに接続されている。さらに、外部インタフェース４を介して、モニタ６とポインティングデバイスやキーボード等の指示入力装置７と印刷装置８とが接続されている。また、指示入力装置にはジョイスティックなども含まれる。
【００２１】
ＣＰＵ１は、装置各部への処理指示や、各種データ処理や各種情報処理を実行して、システム全体の制御を行う。補助記憶装置３にはプログラムＰ１が予め格納されている。メモリ２にはプログラムＰ１がロードされ、ＣＰＵ１はプログラムＰ１を実行して、以下説明する種々の制御や処理を実行する。モニタ６は、ＬＣＤディスプレイやＣＲＴ等で構成され、その画面に操作指示／処理結果を表示する。指示入力装置７はユーザからの指示／入力を受け付ける。印刷装置８は電子写真方式やインクジェット方式に従うプリンタやその付属機構（ソータ、フィーダなど）からなる。
【００２２】
図２は画像処理装置の機能構成を示すブロック図である。
【００２３】
ここで示す種々の機能は、ＣＰＵがプログラムＰ１を実行することにより、上述の装置各部と連携して実現される。統括処理実行部１０は、画像処理装置における印刷画像のデザイン編集処理の機能を実行するために、各種処理を行うためのデータ転送や各制御部の実行などを統括的に管理する。
【００２４】
オブジェクト操作部２０は、指示入力装置７からのユーザの指示を受け付け、これをオブジェクトに対する操作として統括処理実行部１０に通知する。オブジェクト選択指示部２１は、ユーザにより指示選択されたオブジェクトを通知する。オブジェクト移動指示部２２は、ユーザにより選択されたオブジェクトの移動指示を通知する。
【００２５】
表示部４０は、デザイン編集処理の実行中に種々の処理結果などを表示する。オブジェクト表示部４１は、モニタ６にオブジェクトを表示する。選択状態表示部４２は、モニタ６にオブジェクトの選択状態を表示する。
【００２６】
判定処理部５０は、デザイン編集処理における各種判定や各種処理を実行する。オブジェクト重なり判定部５１は、オブジェクトが画像上で重なっているかどうかを判定する。対象領域設定部５２は、オブジェクトの入れ替えを行う対象領域を設定する。オブジェクト選択部５３は、オブジェクト選択指示部２１より通知されたオブジェクトを選択状態にする。重なりオブジェクト設定部５４は、オブジェクト重なり判定部５１で重なっていると判定されたオブジェクトを重なりオブジェクトとして設定する。移動対象オブジェクト設定部５５は、対象領域内で移動対象であるオブジェクトを移動対象オブジェクトとして設定する。移動方向決定部５６は、オブジェクトの移動方向を決定する。移動距離算出部５７は、オブジェクトの移動距離を算出する。オブジェクト仮移動部５８は、オブジェクトを仮想的に移動させる処理を実行する。オブジェクト移動部５９は、オブジェクトを移動させる処理を実行する。
【００２７】
次に、以上の構成の画像処理装置が実行するオブジェクト入れ替え処理について、図面を参照しながら説明する。
【００２８】
図３〜図４はオブジェクトを入れ替える一連の処理を示すフローチャートである。
【００２９】
この処理では、ユーザが画像を構成するオブジェクトを選択し、マンマシン操作により選択したオブジェクトを移動させるとともに、入れ替え対象オブジェクトも移動させ、選結果的に相互のオブジェクトの位置を入れ替える。なお、統括処理実行部１０は各種処理を行うためのデータ転送や各制御部の実行などを統括的に管理するために常に実行されるものであるため、下記の説明では特に記述しない。
【００３０】
図９は複数のオブジェクトからなる画像を示した図である。特に、図９（ａ）はオブジェクトを入れ替える前の状態を表した図であり、図９（ｂ）は入れ替え対象オブジェクトが選択された状態を表した図である。
【００３１】
図９から分かるように、編集画像Ｄ１にはオブジェクトＪ１〜Ｊ４が配置されており、このうちのオブジェクトＪ１、Ｊ２を移動してオブジェクトＪ３、Ｊ４との位置を入れ替えることとする。
【００３２】
ステップＳ１では、オブジェクト選択指示部２１でユーザがオブジェクトＪ１、Ｊ２を選択すると、オブジェクト選択部５３がオブジェクトＪ１、オブジェクトＪ２を選択状態にする。図９（ｂ）に示されているように、選択状態表示部４２は、選択状態になったオブジェクトＪ１、Ｊ２に、選択状態になったことを示す選択枠Ｗ１を表示する。
【００３３】
ステップＳ２では、ユーザがオブジェクト移動指示部２２で選択したオブジェクトＪ１、Ｊ２の移動を指示するまで処理待ちとなる。ここで、移動が指示されたと判断された場合、オブジェクト移動部５９によりオブジェクトＪ１、Ｊ２を移動させ、オブジェクト表示部４１で移動後のオブジェクトＪ１、Ｊ２を表示し、処理はステップＳ３に進む。この移動指示は、選択したオブジェクトをユーザやポンティングデバイスやキーボードのカーソルキーなどを用いて表示画面上でドラッグさせるように操作することによりなされる。そして、この操作により選択されたオブジェクトが現在画面上で位置している場所がその時点での移動先となる。
【００３４】
図１０は選択オブジェクトを移動中に非選択のオブジェクトと重なった状態を示す図である。これは上述の移動指示により選択オブジェクトがドラッグされて移動したことにより発生した状態である。
【００３５】
図１０（ａ）に示すように、移動中の選択オブジェクトＪ１１、Ｊ１２の内、移動中の選択オブジェクトＪ１１がオブジェクトＪ３と重なっている。Ｍ１は選択されたオブジェクトＪ１が移動前に存在していた領域であり、Ｍ２は選択されたオブジェクトＪ２が移動前に存在していた領域である。
【００３６】
ステップＳ３では、移動中の選択オブジェクトＪ１１、Ｊ１２と、オブジェクトＪ３、Ｊ４とが重なっているかどうかを調べる。これはオブジェクト重なり判定部５１で実行される。ここで、これらに重なりがあると判定された場合、処理はステップＳ４に進む。これに対して、重なりがないと判定された場合、処理はステップＳ１５に進む。ステップＳ４では、図１０に示す例の場合、重なりオブジェクト設定部５４が移動中の選択オブジェクトＪ１１と重なっているオブジェクトＪ３を重なりオブジェクトＪ１３として設定する。
【００３７】
次に、処理はステップＳ５において、対象領域設定部５２で対象領域を設定する。この対象領域は図１０（ｂ）では点線で囲まれた矩形領域して示されている。そして、この対象領域Ｒ１内で、オブジェクトの入れ替え処理が実行される。次に、対象領域Ｒ１の設定方法について説明する。
【００３８】
図５は、対象領域の設定方法を示すフローチャートである。
【００３９】
ステップＳ２１では、対象領域設定部５２は、図１０（ｂ）にも示されているように、選択されたオブジェクトＪ１、Ｊ２の移動前領域Ｍ１、Ｍ２と、重なりオブジェクトＪ１３の領域とを含む領域を対象領域Ｒ１として設定する。
【００４０】
対象領域は、オブジェクトを移動する範囲を規定する領域である。この対象領域の設定方法は上記の方法に限定されるものではなく他の方法もある。これについては後述する。
【００４１】
ステップＳ６では、移動対象オブジェクト設定部５５が対象領域Ｒ１に含まれる非選択オブジェクトである重なりオブジェクトＪ１３とオブジェクトＪ４を移動対象オブジェクトＪ２３、Ｊ２４として設定する。さらにステップＳ７では、移動方向決定部５６が選択されたオブジェクトＪ１、オブジェクトＪ２を含む対象領域Ｒ１内でのオブジェクトの移動方向を決定する。ステップＳ８で、移動方向決定部５６が移動対象オブジェクトＪ２３、Ｊ２４の対象領域Ｒ１内での移動方向を決定する。
【００４２】
オブジェクトの移動方向には、縦方向の移動として上または下、横方向の移動として左または右があるので、縦方向のみの移動、横方向のみの移動、または、縦横両方向の移動のいずれかに決定される。
【００４３】
次に、オブジェクトの移動方向の決定方法の詳細について説明する。オブジェクトの移動方向は、対象領域内で移動させるオブジェクトをどの方向に移動させるかを決定する方法である。以下に、その方法の一例を説明するが、オブジェクトの移動方向の決定方法としてはこれに限るものではない。
【００４４】
図６〜図７は移動方向決定部５６が実行するオブジェクトの移動方向処理を示すフローチャートである。
【００４５】
ステップＳ４１では、移動するオブジェクトを含む領域が対象領域でどの辺を構成しているかを検知する。まず、左右（横）方向に関する移動方向を決定する。そのため、ステップＳ４２では、左右の両方の辺を構成しているかどうかを調べる。ここで、左右の両方の辺を構成していると判定された場合、処理はステップＳ４３に進み、左右方向に移動なしと設定し、その後、処理はステップＳ４９に進む。これに対して、左右の両方の辺を構成していないと判定された場合、処理はステップＳ４４に進む。
【００４６】
ステップＳ４４では、さらに左辺のみを構成しているかどうかを調べる。ここで、左辺のみを構成していると判定された場合、処理はステップＳ４５に進み、左右方向（横方向）に関しては、右方向に移動すると設定し、その後、処理はステップＳ４９に進む。これに対して、左辺を構成していないと判定された場合、処理はステップＳ４６に進む。
【００４７】
ステップＳ４６では、さらに右辺のみを構成しているかどうかを調べる。ここで、右辺のみを構成していると判定された場合、処理はステップＳ４７に進み、左右方向（横方向）に関しては、左方向に移動すると設定し、その後、処理はステップＳ４９に進む。これに対して、右辺を構成していないと判定された場合、処理はステップＳ４８に進み、そこでは、左右方向に移動なしと設定する。
【００４８】
次に、上下方向に関する移動方向を決定する。そのため、ステップＳ４９では、上下の両方の辺を構成しているかどうかを調べる。ここで、上下の両方の辺を構成していると判定された場合、処理はステップＳ５０に進み、上下方向に移動なしと設定し、その後、処理を終了する。これに対して、上下の両方の辺を構成していないと判定された場合、処理はステップＳ５１に進む。
【００４９】
ステップＳ５１では、さらに上辺のみを構成しているかどうかを調べる。ここで、上辺のみを構成していると判定された場合、処理はステップＳ５２に進み、上下方向には下方向に移動すると設定し、その後、処理は終了する。これに対して、上辺を構成していないと判定された場合、処理はステップＳ５３に進む。
【００５０】
ステップＳ５３では、さらに下辺のみを構成しているかどうかを調べる。ここで、下辺のみを構成していると判定された場合、処理はステップＳ５４に進み、上下方向には上方向に移動すると設定し、その後、処理は終了する。これに対して、下辺を構成していないと判定された場合、処理はステップＳ５５に進み、上下方向に移動なしと設定する。
【００５１】
以上のような処理の結果、この実施例の説明では、選択されたオブジェクトＪ１、Ｊ２は下および左方向に、移動対象オブジェクトＪ２３、Ｊ２４は上および右方向に移動することが決定される。
【００５２】
図１１は対象領域Ｒ１と、移動対象オブジェクトの領域Ｒ２、或は、選択されたオブジェクトの移動前領域Ｒ３との関係を示す図である。
【００５３】
図１１（ａ）はＲ１とＲ２の関係を示している。図１１（ａ）から分かるように、移動対象オブジェクトの領域Ｒ２は、対象領域Ｒ１の左辺および下辺を構成している。よって、移動対象オブジェクトＪ２３、Ｊ２４の移動方向は、左右方向には右、上下方向には上となる。図１１（ｂ）はＲ１とＲ３の関係を示している。図１１（ｂ）から分かるように、選択されたオブジェクトの移動前領域Ｒ３は、対象領域Ｒ１の右辺および上辺を構成している。よって、選択されたオブジェクトＪ１、Ｊ２の移動方向は、左右方向には左、上下方向には下となる。
【００５４】
再び、図４のフローチャートに戻って説明を続ける。ステップＳ９では、移動距離算出部５７が移動対象オブジェクトＪ２３、Ｊ２４の移動距離をで算出する。さらに、ステップＳ１０では、移動距離算出部５７が選択されたオブジェクトＪ１、Ｊ２の移動前の位置からの移動距離を算出する。
【００５５】
図１１は移動距離を算出する方法についても示しており、図１１（ａ）が移動対象オブジェクトの移動距離の算出方法を説明し、図１１（ｂ）が選択されたオブジェクトの移動前の位置からの移動距離の算出方法を説明している。
【００５６】
図１１（ａ）に示すように、対象領域Ｒ１の高さと幅を夫々、Ｈ１、Ｗ１とし、移動対象オブジェクトＪ２３とＪ２４を含む領域を移動対象オブジェクトの領域Ｒ２とし、移動対象オブジェクトの領域Ｒ２の高さと幅を夫々、Ｈ２、Ｗ２とする。移動対象オブジェクトの縦方向の移動距離Ｈ３とその横方向の移動距離Ｗ３は下記の式で求められる。即ち、
Ｈ３  ＝  Ｈ１  −  Ｈ２
Ｗ３  ＝  Ｗ１  −  Ｗ２
である。
【００５７】
図１１（ｂ）に示すように、移動前の領域Ｍ１と移動前の領域Ｍ２を含む領域を移動前選択オブジェクト領域Ｒ３の高さと幅を夫々、Ｈ４、Ｗ４とすれば、選択オブジェクトの縦方向の移動距離Ｈ５とその横方向の移動距離Ｗ５は下記の式で求められる。即ち、
Ｈ５  ＝  Ｈ１  −  Ｈ４
Ｗ５  ＝  Ｗ１  −  Ｗ４
である。
【００５８】
ステップＳ１１では、選択されたオブジェクトと移動対象オブジェクトとを移動させたときにこれらが重なるかどうかを調べる。このために、オブジェクト仮移動部５８は選択されたオブジェクトＪ１、Ｊ２を、移動前の位置から縦方向に移動距離Ｈ５、横方向に移動距離Ｗ５だけ仮想的に移動させる。さらに、オブジェクト仮移動部５８は移動対象オブジェクトＪ２３、Ｊ２４を、縦方向に移動距離Ｈ３、横方向に移動距離Ｗ３だけ仮想的に移動させる。
【００５９】
図１２は選択オブジェクトと移動対象オブジェクトを夫々、移動させた状態を示した図である。
【００６０】
オブジェクト重なり判定部５１は、移動後の移動対象オブジェクトＪ３３、Ｊ３４がそれぞれ、移動後の選択オブジェクトＪ２１、Ｊ２２のいずれかに重ならないかどうかを調べる。ここで、仮想的に移動したオブジェクトに重なりがあると判定された場合は移動不可として処理はステップＳ１６へ進み、図１２に示すように、オブジェクトに重なりがないと判定された場合は移動可能として処理はステップＳ１２へ進む。
【００６１】
このように、この実施例では、ユーザのポンティングデバイスやキーボードの操作により選択されたオブジェクトをドラッグして移動させる。そして、他のオブジェクト（図１０の例ではオブジェクトＪ３）と重なり、これらのオブジェクトを入れ替えても、重なりが生じないと判定された時点で、自動的に選択されたオブジェクトの移動先が決定される。図１０の例では、オブジェクトＪ１がドラッグされて移動し、オブジェクトＪ３の一部を重なった時点でそのドラッグをリリースしても、移動先としてオブジェクトＪ３が選択されたことになる。同時に、オブジェクトＪ１と共に選択されたオブジェクトＪ２についても移動先としてオブジェクトＪ４が選択される。
【００６２】
ステップＳ１２では、ステップＳ１１で仮想的に移動した方法と同じように、移動対象オブジェクトＪ２３とＪ２４を移動する。さらにステップＳ１３では、オブジェクト移動指示部２２で選択したオブジェクトの移動を完了したかどうかを調べる。ここで、選択されたオブジェクトの移動手続き全てを完了したと判断された場合、処理はステップＳ１４へ進み、まだその移動のための手続きを続けていると判定された場合、処理はステップＳ２へ戻る。
【００６３】
ステップＳ１４で、ステップＳ１１で仮想的に移動した方法と同じように、選択されたオブジェクトＪ１１、Ｊ１２を移動する。選択されたオブジェクトの移動は、移動中の位置ではなく移動前の位置を基準に実行する。
【００６４】
以上のようにして、選択されたオブジェクトと移動対象オブジェクトが移動され、図１２に示すように、オブジェクト表示部４１は移動させられたオブジェクトＪ１〜Ｊ４を表示する。その後、一連の処理を終了する。
【００６５】
さて、ステップＳ３において、移動中の選択オブジェクトＪ１１、Ｊ１２とオブジェクトＪ３、Ｊ４とが重なりがないと判定された場合、処理はステップＳ１５に進み、移動対象オブジェクトＪ２３、Ｊ２４をオブジェクト移動部５９により移動前の位置に戻す。このことはステップＳ１２の処理により、これらのオブジェクトを元の位置より移動させていた場合に生じる。ステップＳ１５の後、処理はステップＳ２へ戻る。
【００６６】
また、ステップＳ１６で、移動対象オブジェクトＪ２３、Ｊ２４をオブジェクト移動部５９により移動前の位置に戻す。このことは、ステップＳ１２の処理により元の位置より移動させていたにも係わらず、ステップＳ１１でオブジェクト移動不可と判定された場合に生じる。ステップＳ１６の後、処理はステップＳ１７へ進む。
【００６７】
ステップＳ１７では、オブジェクト移動指示部２２で選択されたオブジェクトの移動を完了したかどうかを調べる。ここで、選択されたオブジェクトの移動の手続きを全て完了させたと判断された場合、処理はステップＳ１８へ進む。これに対して、まだその移動のための手続きを続けていると判断された場合、処理はステップＳ２へ戻る。
【００６８】
ステップＳ１８で、移動中の選択オブジェクトＪ１１、Ｊ１２の位置をオブジェクト移動部５９で元に戻す。これは、ステップＳ１１でオブジェクト移動不可と判定されたためである。この状態で、選択されたオブジェクトは全て元の位置に戻り、オブジェクト表示部４１は図９（ａ）に示すように、オブジェクトＪ１〜Ｊ４を表示する。
【００６９】
従って以上説明した実施例に従えば、ガイドなどのオブジェクトの移動を補助する手段を必要とせず、簡単な操作でオブジェクトを正確かつ連続的に入れ替えることができる。また、オブジェクトの属性を確認したり、移動後の位置を計算したりする必要もなく、複数のオブジェクトと別の複数のオブジェクトを入れ替えることも可能となる。
【００７０】
なお、以上の説明では２つのオブジェクトＪ１、Ｊ２を移動させて別のオブジェクトとその位置を入れ替える処理について説明したが本発明はこれにより限定されるものではない。例えば、３つ以上のオブジェクトを選択して移動させ、これらの対応する別のオブジェクトとその位置を入れ替えることも上述のような条件が満たされれば可能である。
【００７１】
ここで、対象領域の別の設定方法について、図面を参照して説明する。
【００７２】
図８は、対象領域の別の設定処理を示すフローチャートである。また、図１３は対象領域の別の設定方法を説明する図である。図１３に示す例では、編集画像Ｄ２にはオブジェクトＪ１〜Ｊ６が配置されており、このうちのオブジェクトＪ１、Ｊ２を移動するために選択する。
【００７３】
ステップＳ３１では、対象領域設定部５２は、選択されたオブジェクトの移動前領域Ｍ１、Ｍ２と、重なりオブジェクトＪ１３の領域を含む領域を仮の対象領域Ｒ４として設定する。次に、ステップＳ３２では、重なりオブジェクト設定部５４は、仮の対象領域Ｒ４と重なる選択されていないオブジェクトＪ４とオブジェクトＪ５を夫々、追加重なりオブジェクトＪ１４、Ｊ１５として設定する。
【００７４】
最後に、ステップＳ３３では、対象領域設定部５２は、選択されたオブジェクトの移動前領域Ｍ１〜Ｍ２、重なりオブジェクトＪ１３の領域、追加重なりオブジェクトＪ１４〜Ｊ１５を含む領域を対象領域Ｒ１として設定する。
【００７５】
このとき、図３のステップＳ６では、移動対象オブジェクト設定部５５は、対象領域Ｒ１に含まれる選択されていないオブジェクトＪ３〜Ｊ６を移動対象オブジェクトＪ２３〜Ｊ２６として設定する。
【００７６】
このように、編集画像を構成するオブジェクトの数や配置が異なると、移動対象オブジェクトは変化する。
【図１】
2010238135.tif 000003
【図２】
2010238135.tif 000004
【図３】
2010238135.tif 000005
【図４】
2010238135.tif 000006
【図５】
2010238135.tif 000007
【図６】
2010238135.tif 000008
【図７】
2010238135.tif 000009
【図８】
2010238135.tif 000010
【図９】
2010238135.tif 000011
【図１０】
2010238135.tif 000012
【図１１】
2010238135.tif 000013
【図１２】
2010238135.tif 000014
【図１３】
2010238135.tif 000015