(57)【特許請求の範囲】
【請求項１】
それぞれ異なるＺオーダを有する複数のオブジェクトを、前記Ｚオーダに従って所定のフィールドに表示する表示手段と、
前記複数のオブジェクトのうちの第１のオブジェクトを前記フィールド内で移動する移動手段と、
前記複数のオブジェクトのうちの２つのオブジェクトが重なりを有するか否かを判定する第１の判定手段と、
前記第１の判定手段により前記第１のオブジェクトと第２のオブジェクトが重なりを有すると判定され、前記第１のオブジェクトと前記第２のオブジェクトが他のオブジェクトを介さずに重なりを有する場合に、前記第１のオブジェクトおよび前記第２のオブジェクトが接触していると判定する第２の判定手段と、
前記移動手段による前記第１のオブジェクトの移動中に、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有すると判定された後に、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有さない状態を経て再び前記第１のオブジェクトが前記第２のオブジェクトと重なりを有すると判定されたことを検出する検出手段と、
前記第１のオブジェクトが前記第２のオブジェクトと重なりを有さないと判定された前後で、前記第２の判定手段により前記第１のオブジェクトが前記第２のオブジェクトと接触したと判定された場合に、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダにおける上下関係を入れ替え、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有さないと判定された前後で、前記第１のオブジェクトが前記第２のオブジェクトと接触したと判定されていない場合に、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダにおける上下関係を入れ替えないＺオーダ入替手段と、を備え、
前記表示手段は、前記第１のオブジェクトの移動中、前記Ｚオーダ入替手段によるＺオーダにおける入れ替えを反映して前記複数のオブジェクトを表示する
ことを特徴とする情報処理装置。
【請求項２】
前記Ｚオーダ入替手段により、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダの上下関係が入れ替えられた場合に、前記第１及び第２のオブジェクトの間のＺオーダを有する中間オブジェクトのＺオーダを修正するＺオーダ整合手段をさらに備え、
前記第２の判定手段はさらに、前記中間オブジェクトのうち、
前記第１のオブジェクトと重なりを有すると判定され、他のオブジェクトを介さずに前記第１のオブジェクトと重なりを有するオブジェクトを、前記第１のオブジェクトと接触していると判定し、
前記第１のオブジェクトに接触しているオブジェクトと重なりを有すると判定され、他のオブジェクトを介して前記第１のオブジェクトに接触するオブジェクトを、前記第１のオブジェクトと間接的に接触していると判定し、
前記第２のオブジェクトと重なりを有すると判定され、他のオブジェクトを介さずに前記第２のオブジェクトと重なりを有するオブジェクトを、前記第２のオブジェクトと接触していると判定し、
前記第２のオブジェクトに接触しているオブジェクトと重なりを有すると判定され、他のオブジェクトを介して前記第２のオブジェクトに接触するオブジェクトを、前記第２のオブジェクトと間接的に接触していると判定し、
前記Ｚオーダ整合手段は、
前記中間オブジェクトのうち、前記第２のオブジェクトに接触していたと判定されたオブジェクト及び前記第２のオブジェクトに間接的に接触していたと判定されたオブジェクトについてはＺオーダを入れ替える前の前記第２のオブジェクトとのＺオーダにおける上下関係を維持し、
前記中間オブジェクトのうち、前記第１のオブジェクトに接触していたと判定されたオブジェクト及び前記第１のオブジェクトに間接的に接触していたと判定されたオブジェクトについてはＺオーダを入れ替える前の前記第１のオブジェクトとのＺオーダにおける上下関係を維持するように、
前記中間オブジェクトのＺオーダを修正する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記Ｚオーダ入替手段は、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダの値を交換することにより、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダにおける上下関係を入れ替えることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記Ｚオーダ入替手段は、前記第１のオブジェクトあるいは前記第２のオブジェクトのＺオーダの値を、接触する他方のオブジェクトのＺオーダの直上あるいは直下となるように変更することにより、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダにおける上下関係を入れ替えることを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
情報処理装置の表示手段が、それぞれ異なるＺオーダを有する複数のオブジェクトを、前記Ｚオーダに従って所定のフィールドに表示する表示工程と、
前記情報処理装置の移動手段が、前記複数のオブジェクトのうちの第１のオブジェクトを前記フィールド内で移動する移動工程と、
前記情報処理装置の第１の判定手段が、前記複数のオブジェクトのうちの２つのオブジェクトが重なりを有するか否かを判定する第１の判定工程と、
前記第１の判定工程において前記第１のオブジェクトと第２のオブジェクトが重なりを有すると判定され、前記第１のオブジェクトと前記第２のオブジェクトが他のオブジェクトを介さずに重なりを有する場合に、前記第１のオブジェクトおよび前記第２のオブジェクトが接触していると判定する第２の判定工程と、
前記情報処理装置の検出手段が、前記移動工程における前記第１のオブジェクトの移動中に、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有すると判定された後に、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有さない状態を経て再び前記第１のオブジェクトが前記第２のオブジェクトと重なりを有すると判定されたことを検出する検出工程と、
前記情報処理装置のＺオーダ入替手段が、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有さないと判定された前後で、前記第２の判定工程において前記第１のオブジェクトが前記第２のオブジェクトと接触したと判定された場合に、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダにおける上下関係を入れ替え、前記第１のオブジェクトが前記第２のオブジェクトと重なりを有さないと判定された前後で、前記第１のオブジェクトが前記第２のオブジェクトと接触していたと判定されていない場合に、前記第１のオブジェクトと前記第２のオブジェクトのＺオーダにおける上下関係を入れ替えないＺオーダ入替工程と、を備え
前記表示手段は前記表示工程において、前記第１のオブジェクトの移動中、前記Ｚオーダ入替工程におけるＺオーダについての入れ替えを反映して、前記複数のオブジェクトを表示する
ことを特徴とする情報処理装置の制御方法。
【請求項６】
コンピュータを、請求項１乃至４のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【請求項７】
コンピュータを、請求項１乃至４のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のオブジェクトを重ねて配置し、オブジェクト同士の重なり順を変更する技術に関する。
【背景技術】
【０００２】
従来、ユーザがパーソナルコンピュータにインストールされたアプリケーションプログラムを使って文書やプレゼンテーションのスライド等を作成する際に、アイコンや図形、画像等のオブジェクトを重ねて配置することが行われている。
【０００３】
そして、複数のオブジェクトが重なり合って配置されている場合、オブジェクトの重なっている順番（Ｚオーダ）を入れ替えることがある。
【０００４】
例えば、ユーザの操作に応答して、オブジェクトのＺオーダの入れ替えを指示するためのＵＩが表示され、所望の重なり順に変更することが行われている。ＵＩには例えば、「最前面に移動」、「前面に移動」、「背面に移動」、「最背面に移動」の４つのコマンドが表示され、これらから選択を繰り返すことでオブジェクトの重なり順を変更する（特許文献１参照）。
【０００５】
また、重なりを有するオブジェクトの一方を選択して移動し、一度重なりを解消した後に当該オブジェクトを元の位置に移動し、再び重ねることで、選択したオブジェクトと他方のオブジェクトの上下関係を入れ替える方法が開示されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−３２８０２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した特許文献１の方法では、重なりを有する２つのオブジェクトの間に、当該２つのオブジェクトと重なりを有する別のオブジェクトが存在する場合であってもＺオーダが変更される。このため、ユーザが意図していない重なり関係になってしまうことがある。
【０００８】
例えば、図１２（ａ）に示すように、フィールド内にオブジェクトＡ、Ｂ、及びＣが、Ｚオーダが前面からＣ、Ｂ、Ａの順に重ねて配置され、オブジェクトＣはオブジェクトＡとＢのそれぞれに直接重なっている場合を考える。このとき、図１２（ｂ）に示すように、オブジェクトＣを移動させてオブジェクトＡとＣとの重なりを解除されたが、オブジェクトＢとＣの重なりは維持された状態になったとする。その後に、オブジェクトＣを図１２（ａ）での位置まで移動させて再びオブジェクトＡに重ならせると、Ｚオーダの変更が生じる。Ｚオーダの変更後、特許文献１によればオブジェクトＣはオブジェクトＡの下に重なるように制御されるため、図１２（ｃ）のような重なり関係となる。
【０００９】
このとき、図１２（ｂ）の状態ではオブジェクトＣとオブジェクトＢとの重なりは解除されていなかったにも関わらず、当該２つのオブジェクトのＺオーダも変更されることになってしまう。よって、ユーザが意図していない、物理的に不自然な順番の変更がなされることになる。即ち、ユーザにとって直感的ではない、オブジェクトの重なり関係の変更が生じる。
【００１０】
また、ユーザがオブジェクトＣを図１２（ｂ）での位置に移動した後、図１２（ａ）の状態に再び戻したいために、オブジェクトＣを元の位置に移動した場合であっても、特許文献１の方法では一度図１２（ｃ）の状態を経由するため、操作が煩雑になる。
【００１１】
本発明は、上述の問題点に鑑みてなされたものであり、配置された複数のオブジェクトの重なり関係を直感的に変更することを目的とする。
【課題を解決するための手段】
【００１２】
前述の目的を達成するために、本発明の情報処理装置は、以下の構成を備える。
それぞれ異なるＺオーダを有する複数のオブジェクトを、Ｚオーダに従って所定のフィールドに表示する表示手段と、複数のオブジェクトのうちの第１のオブジェクトをフィールド内で移動する移動手段と、複数のオブジェクトのうちの２つのオブジェクトが重なりを有するか否かを判定する第１の判定手段と、第１の判定手段により第１のオブジェクトと第２のオブジェクトが重なりを有すると判定され、第１のオブジェクトと第２のオブジェクトが他のオブジェクトを介さずに重なりを有する場合に、第１のオブジェクトおよび第２のオブジェクトが接触していると判定する第２の判定手段と、移動手段による第１のオブジェクトの移動中に、第１のオブジェクトが第２のオブジェクトと重なりを有すると判定された後に、第１のオブジェクトが第２のオブジェクトと重なりを有さない状態を経て再び第１のオブジェクトが第２のオブジェクトと重なりを有すると判定されたことを検出する検出手段と、第１のオブジェクトが第２のオブジェクトと重なりを有さないと判定された前後で、第２の判定手段により第１のオブジェクトが第２のオブジェクトと接触したと判定された場合に、第１のオブジェクトと第２のオブジェクトのＺオーダにおける上下関係を入れ替え、第１のオブジェクトが第２のオブジェクトと重なりを有さないと判定された前後で、第１のオブジェクトが第２のオブジェクトと接触したと判定されていない場合に、第１のオブジェクトと第２のオブジェクトのＺオーダにおける上下関係を入れ替えないＺオーダ入替手段と、を備え、表示手段は、第１のオブジェクトの移動中、Ｚオーダ入替手段によるＺオーダにおける入れ替えを反映して複数のオブジェクトを表示することを特徴とする。
【発明の効果】
【００１３】
このような構成により本発明によれば、配置された複数のオブジェクトの重なり関係を直感的に変更することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係るＰＣの機能構成を示したブロック図
【図２】本発明の実施形態に係る、それぞれ異なるＺオーダを有するオブジェクトが配置されたＧＵＩを説明するための図
【図３】本発明の実施形態に係るオブジェクト移動時処理の動作例を説明するための図
【図４】本発明の実施形態に係るオブジェクト移動時処理の動作例を説明するための別の図
【図５】本発明の実施形態に係るオブジェクト移動時処理の動作例を説明するためのさらに別の図
【図６】本発明の実施形態に係る接触オブジェクトの定義を説明するための図
【図７】本発明の実施形態に係るオブジェクト移動時処理のフローチャート
【図８】本発明の実施形態に係る接触判定処理のフローチャート
【図９】本発明の実施形態に係るオブジェクト抜き出し処理のフローチャート
【図１０】本発明の実施形態に係るオブジェクト挿入処理のフローチャート
【図１１】本発明の実施形態に係るＺオーダ変更処理のフローチャート
【図１２】従来技術の問題点を説明するための図
【発明を実施するための形態】
【００１５】
以下、本発明の好適な一実施形態について、図面を参照して詳細に説明する。なお、以下に説明する一実施形態は、情報処理装置の一例としての、ユーザが移動可能な複数のオブジェクトを、重なり合わせて所定のフィールドに表示可能なＰＣに、本発明を適用した例を説明する。しかし、本発明は、ユーザが移動可能な複数のオブジェクトを、Ｚオーダに従って所定のフィールドに表示することが可能な任意の機器に適用可能である。また、本明細書において、「Ｚオーダ」とは、複数のオブジェクトが配置されるフィールドの面に直交する方向（法線方向）についての、当該複数のオブジェクトの位置関係を示す情報である。なお、複数のオブジェクトは、それぞれ異なるＺオーダを有するものとする。
【００１６】
図１は、本発明の実施形態に係るＰＣ１００の機能構成を示すブロック図である。
【００１７】
ＣＰＵ１０１は、ＰＣ１００が備える各ブロックの動作を制御する。本実施形態では、後述する複数のオブジェクトを配置し、オブジェクトのＺオーダを変更可能にするアプリケーション（画像レイアウトアプリケーション）に係るプログラムは、例えば記録媒体１０６に記録されているものとする。ＣＰＵ１０１は、当該アプリケーションに係るプログラムを後述する記録媒体１０６より読み出し、ＲＡＭ１０３に展開して実行することにより、ＰＣ１００が備える各ブロックの動作を制御する。
【００１８】
ＲＯＭ１０２は、書き換え可能な不揮発性メモリであり、例えばＰＣ１００が備える各ブロックの制御プログラムや、各ブロックの動作において必要な設定パラメータ等の情報を格納する記憶領域である。またＲＡＭ１０３は、揮発性メモリであり、上述したアプリケーションに係るプログラムの展開領域としてだけでなく、各ブロックの動作において出力された中間データ等の一時的な格納領域としても用いられる。
【００１９】
描画制御部１０４は、後述する表示部１０７に表示するための表示画像の生成、及び表示部１０７への当該表示画像の出力を制御するためのブロックである。描画制御部１０４は、ＣＰＵ１０１の制御の下、ＲＯＭ１０２、あるいは記録媒体１０６に格納されているＧＵＩデータ等のオブジェクトを読み出し、表示するための画像が記憶されるＶＲＡＭ１０５において所定の位置に配置されるように描画させる。ＶＲＡＭ１０５は、表示画像が記憶される描画用の記憶領域である。本実施形態ではＶＲＡＭ１０５において、複数のオブジェクトはＺオーダに従って重畳され、これにより表示画像が生成される。
【００２０】
記録媒体１０６は、例えばＨＤＤやメモリカード等のＰＣ１００に着脱可能に装着される記録装置であり、Ｚオーダを変更可能に複数のオブジェクトを配置するアプリケーションに係るプログラム、及び配置するオブジェクト等が記録されている。なお、本実施形態では当該アプリケーションのプログラム及び配置するオブジェクトは、記録媒体１０６に記録されているものとして以下に説明するが、本発明の実施はこれに限らない。当該プログラム及びオブジェクトは、例えば不図示のネットワークインタフェースを介して、インターネット等のネットワーク上のサーバより取得するものであってもよいことは容易に想像されよう。
【００２１】
表示部１０７は、例えば液晶モニタ等の表示装置である。本実施形態では当該表示部１０７はＰＣ１００に内蔵されているものとして説明するが、本発明の実施はこれに限らず、表示部１０７はＰＣ１００に接続された外部の表示装置であってもよい。
【００２２】
操作入力部１０８は、例えばマウスやキーボード等のＰＣ１００に接続されたユーザインタフェースをユーザが操作を受け、当該操作に対応した制御信号をＣＰＵ１０１に伝送する。本実施形態では、ユーザは表示部１０７に表示された表示画像を閲覧しながら、当該表示画像に配置されたオブジェクトをマウスにより選択及びドラッグ（移動）することによりオブジェクトのＺオーダを変更するものとする。
【００２３】
なお、本実施形態ではマウス操作によりオブジェクトのＺオーダを変更するものとして説明するが、本発明の実施はこれに限らず、キーボード操作、あるいは表示部１０７がタッチセンサを有するタッチパネルである場合は、当該センサの出力に従って操作してもよい。
【００２４】
なお、タッチパネルは、表示部１０７に重ね合わせて平面的に構成され、接触された位置に応じた座標情報が出力されるようにした入力デバイスである。操作入力部１０８にタッチパネルが含まれる場合、ＣＰＵ１０１はタッチパネルへの以下の操作を検出できる。タッチパネルを指やペンで触れたこと（以下、タッチダウンと称する）。タッチパネルを指やペンで触れている状態であること（以下、タッチオンと称する）。タッチパネルを指やペンで触れたまま移動していること（以下、ムーブと称する）。タッチパネルへ触れていた指やペンを離したこと（以下、タッチアップと称する）。タッチパネルに何も触れていない状態（以下、タッチオフと称する）。これらの操作や、タッチパネル上に指やペンが触れている位置座標は、ＣＰＵ１０１に通知され、ＣＰＵ１０１は通知された情報に基づいてタッチパネル上にどのような操作が行なわれたかを判定する。ムーブについてはタッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分・水平成分毎に判定できる。またタッチパネル上をタッチダウンから所定の距離以上のムーブを経てタッチアップをしたとき、ドラッグを経てドロップが行われたこと（ドラッグアンドドロップ）とする。タッチパネルは、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【００２５】
なお、本実施形態においては、本発明をＰＣに適用する場合を例にして説明するが、これに限定されない。すなわち、本発明は、デジタルカメラなどの撮像装置に適用してもよい。すなわち、メモリカードなどの、デジタルカメラが読み取り可能な記録媒体に記録された撮影画像を、デジタルカメラの有する背面液晶装置などのディスプレイに再生表示する際にも、本発明は適用可能である。さらに、ＰＤＡ、携帯電話端末や携帯型の画像ビューワ、ディスプレイを備えるプリンタ装置、デジタルフォトフレーム、音楽プレーヤー、ゲーム機、電子ブックリーダーなど、画像やテキスト、イラスト図形などのオブジェクトを表示可能な装置であれば、本発明は適用可能である。
【００２６】
＜アプリケーションＧＵＩ＞
図２（ａ）は、本実施形態における画像レイアウトアプリケーションのウィンドウを例示している。本実施形態では、ユーザの指示に応答して、ＣＰＵ１０１は当該アプリケーションを起動し、記録媒体１０６に記録されている画像データをウィンドウ内のフィールド内にドラッグアンドドロップ操作により配置し、レイアウトを管理する。また、複数の画像データには、例えばウィンドウに配置された順に、それぞれ異なるＺオーダの値が割り当てられており、Ｚオーダが小さいほど背面に配置され、Ｚオーダが大きいほど前面に配置されるものとする。
【００２７】
なお、本実施形態ではフィールド上に配置するオブジェクトとして画像データを用いるものとして以下に説明するが、本発明の実施はこれに限らず、例えば図形、表、文字列等であってもよい。
【００２８】
＜動作の概要＞
まず、本実施形態において、図２（ａ）に示すようにオブジェクトＡ乃至Ｅが配置された状態で、オブジェクトＢやＣと重なりを有するオブジェクトＡが選択された場合を説明する。そして、図３（ａ）に示すようにオブジェクトＡがウィンドウの縦方向の下に移動し、オブジェクトＡとＢの重なりは保持されたまま、オブジェクトＡとオブジェクトＣの重なりがない状態になったとする。その後、引き続いてオブジェクトＡがウィンドウの縦方向の上に移動して元の位置に戻り、オブジェクトＣと重なると、図２（ａ）に示す状態に戻る。すなわち、このような場合、本実施形態では、オブジェクトＡとＣのＺオーダも元の順位を維持し、図１２（ａ）乃至（ｃ）に示した従来技術のようにオブジェクトＡとオブジェクトＣのＺオーダの順番が入れ替わることが無い。
【００２９】
次に、本実施形態において、図３（ａ）に示す状態から、さらにオブジェクトＡがウィンドウの水平方向の右に移動し、図４（ａ）に示すようにオブジェクトＡがどのオブジェクトとも重なりがない状態になった場合を説明する。その後、引き続いてオブジェクトＡがウィンドウの水平方向の左に移動し、オブジェクトＤと重なると、図５（ａ）に示すようにオブジェクトＡとオブジェクトＤのＺオーダの順位が入れ替わる。ここで、オブジェクトＡとオブジェクトＢ及びオブジェクトＣとの上下関係は変わらないように、オブジェクトＢ及びオブジェクトＣのＺオーダも修正される。また、オブジェクトＤとオブジェクトＥの上下関係も変わらないように、オブジェクトＥのＺオーダも修正される。
【００３０】
＜オブジェクトのＺオーダ管理＞
ここで、本実施形態において、画像レイアウトアプリケーションに配置された複数の画像データのＺオーダを管理するために用いる、図２（ｂ）に示すような「重なりグラフ」について説明する。なお、図２（ｂ）の重なりグラフは、図２（ａ）に示した複数の画像データのＺオーダを管理している。
【００３１】
重なりグラフでは、それぞれのＺオーダの値ごとにオブジェクトについての情報をノードとして管理している。本実施形態では、Ｚオーダは値が小さいほど、オブジェクトがより背面に存在することを指すものとし、オブジェクト同士が重なって配置された場合は、Ｚオーダの大きいオブジェクトが前面に重なる。また、配置された複数のオブジェクトのそれぞれについては、Ｚオーダの値として、重なっている順に連続した自然数が割り当てられるものとする。図２（ｂ）の例では、図２（ａ）に示すウィンドウに、背面から順に、オブジェクトＥ、オブジェクトＤ、オブジェクトＡ、オブジェクトＢ、オブジェクトＣが配置されており、それぞれ０から４のＺオーダの値が割り当てられていることを示している。
【００３２】
また重なりグラフでは、以下に定義する接触しているオブジェクトについて、当該オブジェクトのノード間を線分で接続することにより示している。図２（ａ）の例では、オブジェクトＡはオブジェクトＢ及びＤとそれぞれ接触しており、オブジェクトＢ及びＤそれぞれのノードとオブジェクトＡのノードとが線分で接続されている。また、オブジェクトＢはさらにオブジェクトＣと接触し、オブジェクトＣのノードとオブジェクトＢのノードとが線分で接続されている。また、オブジェクトＤはさらにオブジェクトＥと接触し、オブジェクトＥのノードとオブジェクトＤのノードとが線分で接続されている。
【００３３】
＜接触オブジェクト＞
（接触オブジェクトの定義）
本実施形態では１つの注目オブジェクトについて、注目オブジェクトと重なりを有するオブジェクトのうち、当該注目オブジェクトと直接的に重なるオブジェクトを接触しているオブジェクト（接触オブジェクト）と定義する。具体的には接触オブジェクトとは、注目オブジェクトと当該接触オブジェクトとの間のＺオーダに存在する他のオブジェクトを経由した重なり（間接的な重なり）を有さないオブジェクトを指すものとする。
【００３４】
例えば図６（ａ）に示すようにオブジェクトＡ’乃至Ｄが配置される場合、オブジェクトＡ’とオブジェクトＤ’とは重なりを有する。しかしながら、当該オブジェクトＡ’とオブジェクトＤ’との間のＺオーダに存在するオブジェクトＢ’及びオブジェクトＣ’を考慮すると、オブジェクトＡ’とオブジェクトＢ’、オブジェクトＢ’とオブジェクトＣ’、オブジェクトＣ’とオブジェクトＤ’は重なりを有する。このような場合、オブジェクトＡ’からオブジェクトＤ’の間には間接的な重なりが存在することになるため、オブジェクトＤ’はオブジェクトＡ’の接触オブジェクトには該当しないものと判断する。
【００３５】
これに対し、例えば図６（ｂ）に示すようにオブジェクトＡ”乃至Ｄ”が配置される場合を考える。このとき、オブジェクトＡ”とオブジェクトＤ”との間のＺオーダに存在するオブジェクトＢ”及びオブジェクトＣ”は、オブジェクトＣ”とオブジェクトＤ”とは重なりを有するが、オブジェクトＢ”もオブジェクトＣ”もオブジェクトＡ”との重なりを有さない。よって、オブジェクトＡ”からオブジェクトＤ”の間には間接的な重なりは存在しない。即ち、オブジェクトＡ”とオブジェクトＤ”との間には直接的な重なりが存在することになるため、オブジェクトＤ”はオブジェクトＡ”の接触オブジェクトに該当すると判断することができる。
【００３６】
従って、図２（ａ）の例ではオブジェクトＡを注目オブジェクトとした場合、接触オブジェクトはオブジェクトＢ及びオブジェクトＤとなる。しかし、オブジェクトＡとオブジェクトＣは重なりを有するが、オブジェクトＡとオブジェクトＣの間のＺオーダにオブジェクトＢが存在し、オブジェクトＢはオブジェクトＡと重なりを有するので、オブジェクトＣはオブジェクトＡの接触オブジェクトではない。
【００３７】
本実施形態では、さらに接触オブジェクトのうち、注目オブジェクトの前面に重なる、即ちＺオーダの値が大きいオブジェクトを前面接触オブジェクトと定義する。また、接触オブジェクトのうち、注目オブジェクトの背面に重なる、即ちＺオーダの値が小さいオブジェクトを背面接触オブジェクトとして定義する。図２（ａ）の例では、オブジェクトＢ及びＤはオブジェクトＡの前面接触オブジェクトとなる。
【００３８】
（系列オブジェクトの定義）
また本実施形態ではさらに、注目オブジェクトから、前面あるいは背面の方向に接触オブジェクトとして順に重なっている全てのオブジェクトを、前面系列オブジェクト、あるいは背面系列オブジェクトとして定義する。なお、前面系列オブジェクトと背面系列オブジェクトとを合わせて、系列オブジェクトと定義する。
【００３９】
例えば図２（ａ）に示すように、オブジェクトＡ乃至Ｅが配置されており、オブジェクトＡを注目オブジェクトとした場合を考える。このとき、オブジェクトＡの前面接触オブジェクトはオブジェクトＢであり、オブジェクトＢの前面接触オブジェクトはオブジェクトＣであり、オブジェクトＣの前面接触オブジェクトは存在しない。従って、オブジェクトＡの前面系列オブジェクトは、オブジェクトＢ及びオブジェクトＣとなる。また同様に背面系列オブジェクトは、オブジェクトＡの背面接触オブジェクトが存在しないのでオブジェクトＡは背面系列オブジェクトを持たない。一方、図３（ｂ）に示すように、オブジェクトＡ”乃至Ｄ”が配置されており、オブジェクトＢ”を注目オブジェクトとする。ここで、オブジェクトＢ”の背面接触オブジェクトはオブジェクトＣ”であり、オブジェクトＣ”の背面接触オブジェクトはオブジェクトＤ”であり、オブジェクトＤ”の背面接触オブジェクトは存在しない。したがって、オブジェクトＢ”の背面系列オブジェクトはオブジェクトＣ”及びオブジェクトＤ”となる。
【００４０】
＜オブジェクト移動時処理＞
上述のような構成をもつ本実施形態のＰＣ１００のオブジェクト移動時処理について、図７乃至１３のフローチャートを用いて具体的な処理を説明する。当該フローチャートに対応する処理は、ＣＰＵ１０１が、例えば記録媒体１０６に記憶されている対応する処理プログラムを読み出し、ＲＡＭ１０３に展開して実行することにより実現することができる。
【００４１】
なお、本オブジェクト移動時処理は、例えばユーザがマウスを操作することによりウィンドウに配置されているオブジェクトのうちの１つのオブジェクトを選択した際に開始され、オブジェクトの選択中繰り返し実行されるものとして説明する。また、以下のオブジェクト移動時処理の説明において、ユーザ操作により選択され、移動させられているオブジェクトを「注目オブジェクト」として説明する。
【００４２】
まず、ＣＰＵ１０１は、ウィンドウに配置されたオブジェクトのうち１つが選択されたか否かを判定する（Ｓ７０１）。オブジェクトが選択されれば（Ｓ７０１でＹｅｓ）、相手オブジェクト候補リスト、抜出フラグ、挿入フラグを初期化し（Ｓ７０２）、ＣＰＵ１０１はウィンドウに配置された全てのオブジェクトについて接触オブジェクトリスト作成処理を実行する（Ｓ７０３）。そして、ＣＰＵ１０１は注目オブジェクトが移動したかどうかを判定し（Ｓ７０４）、注目オブジェクトが移動すれば（Ｓ７０４でＹｅｓ）、注目オブジェクトの抜き出し処理（Ｓ７０５）を実行する。その後、ＣＰＵ１０１は抜出フラグが初期値のオフからオンに更新されていれば（Ｓ７０６でＹｅｓ）、さらに注目オブジェクトが移動したかどうかを判定する（Ｓ７０７）。注目オブジェクトが移動すれば（Ｓ７０７でＹｅｓ）、注目オブジェクトの挿入処理を実行する（Ｓ７０８）。
【００４３】
ＣＰＵ１０１は、注目オブジェクトが移動しない場合（Ｓ７０４でＮｏ）や注目オブジェクトの抜き出し処理後も抜出フラグがオフの場合（Ｓ７０６でＮｏ）、注目オブジェクトの選択状態が解除されたか否かを判定する（Ｓ７０９）。選択状態が維持されていれば（Ｓ７０９でＮｏ）、ステップＳ７０４に戻り、選択状態が解除されていれば（Ｓ７０９でＹｅｓ）、注目オブジェクトと相手オブジェクトとのＺオーダの入れ替えを行わずに、本処理を終了する。
【００４４】
また、ＣＰＵ１０１は、注目オブジェクトが移動しない場合（Ｓ７０７でＮｏ）や注目オブジェクトの挿入処理後も挿入フラグがオフの場合（Ｓ７１０でＮｏ）も、注目オブジェクトの選択状態が解除されたか否かを判定する（Ｓ７１１）。選択状態が維持されていれば（Ｓ７１１でＮｏ）、ステップＳ７０７に戻って処理を実行し、選択状態が解除されていれば（Ｓ７１１でＹｅｓ）、注目オブジェクトと相手オブジェクトとのＺオーダの入れ替えを行わずに、本処理を終了する。
【００４５】
（Ｓ７０３、接触オブジェクトリストの作成処理）
次に、アプリケーションのウィンドウに配置されている、第１のオブジェクト及び第２のオブジェクトが接触しているか否かを判定するための、接触判定処理について、図８のフローチャートを用いて具体的な処理を説明する。当該フローチャートに対応する処理は、ＣＰＵ１０１が、例えば記録媒体１０６に記憶されている対応する処理プログラムを読み出し、ＲＡＭ１０３に展開して実行することにより実現することができる。
【００４６】
Ｓ８０１で、ＣＰＵ１０１は、配置されている第１のオブジェクトと第２のオブジェクトとが重なりを有するか否かを判断する。具体的にはＣＰＵ１０１は、第１のオブジェクト及び第２のオブジェクトそれぞれの配置座標、オブジェクトサイズ等の情報を取得し、配置されている第１のオブジェクトと第２のオブジェクトとが重なって表示される領域が存在するか否かを判断する。ここで、第１のオブジェクトまたは第２のオブジェクトが矩形ではなく、曲線である場合に、これらのオブジェクトを囲む矩形の領域を用いて重なりの有無を判断してもよい。また、ユーザに対するオブジェクトの画面上での実際の見え方やユーザが用いるカーソルや指などの操作部材の大きさも考慮して、第１のオブジェクトまたは第２のオブジェクトの実際の表示領域よりも所定の割合だけ大きなまたは小さな領域を用いて重なりの有無を判断してもよい。ＣＰＵ１０１は、第１のオブジェクトと第２のオブジェクトとが重なりを有すると判断した場合は処理をＳ８０２に移し、重ならないと判断した場合は処理をＳ８０７に移す。
【００４７】
第１のオブジェクトと第２のオブジェクトとが重なりを有する場合、ＣＰＵ１０１は、第１のオブジェクトと第２のオブジェクトとの間のＺオーダに存在する全てのオブジェクト（中間オブジェクト）について、Ｓ８０２からＳ８０５のループ処理を実行する。そのため、Ｓ８０２においてＣＰＵ１０１は、ループ処理を実行していない中間オブジェクトが存在する場合はループ処理を実行し、全ての中間オブジェクトについてループ処理を実行している場合は処理をＳ８０６に移す。
【００４８】
Ｓ８０３で、ＣＰＵ１０１は、選択された１つの中間オブジェクトと第１のオブジェクトとが重なりを有するか否かを判断する。本ステップの処理は、Ｓ８０１において第１のオブジェクトと第２のオブジェクトについて実行した処理と同様であるため、説明を省略する。ＣＰＵ１０１は、選択された中間オブジェクトと第１のオブジェクトとが重なりを有すると判断した場合は処理をＳ８０４に移す。またＣＰＵ１０１は、選択された中間オブジェクトと第１のオブジェクトとが重ならないと判断した場合は当該中間オブジェクトについてのループ処理を終了し、次の中間オブジェクトについてループ処理を実行する。
【００４９】
Ｓ８０４で、ＣＰＵ１０１は、選択された中間オブジェクトと第２のオブジェクトについて、本接触判定処理を実行する。即ち、本ステップでは第１のオブジェクトと第２のオブジェクトとの間に、選択された中間オブジェクト、あるいは当該中間オブジェクト及び他の中間オブジェクトを介した間接的な重なりが存在する可能性があるため、再帰的処理を実行する。
【００５０】
Ｓ８０５で、ＣＰＵ１０１は、選択された中間オブジェクトと第２のオブジェクトとが接触しているか否かを判断する。具体的にはＣＰＵ１０１は、Ｓ８０４で実行された選択された中間オブジェクトと第２のオブジェクトとについての接触判定処理の結果、接触していると判定されたか否かを判断する。
【００５１】
本ステップでは、第１のオブジェクトと第２のオブジェクトとの間のＺオーダに存在する中間オブジェクトについて再帰的処理を実行することで、重なりを有するオブジェクトを辿った先に第２のオブジェクトに接触するオブジェクトが存在するか否かを判断できる。即ち、最終的に重なりを有するオブジェクトを辿った先に、第２のオブジェクトに接触するオブジェクトが存在する場合は、間接的な重なりが存在することを意味する。
【００５２】
ＣＰＵ１０１は、選択された中間オブジェクトと第２のオブジェクトとが接触していると判断した場合は処理をＳ８０７に移す。またＣＰＵ１０１は、選択された中間オブジェクトと第２のオブジェクトとが接触していないと判断した場合は当該中間オブジェクトについてのループ処理を終了し、次の中間オブジェクトについてループ処理を実行する。
【００５３】
第１のオブジェクトと第２のオブジェクトとの間のＺオーダに存在する全ての中間オブジェクトについてのループ処理の実行が完了した場合、Ｓ８０６でＣＰＵ１０１は第１のオブジェクトと第２のオブジェクトとが接触していると判断する。そしてＣＰＵ１０１は、第１のオブジェクトの接触オブジェクトリストに第２のオブジェクトに関する情報を出力し（Ｓ８０８）、本接触判定処理を完了する。ここで、Ｚオーダの値が、第１のオブジェクトよりも第２のオブジェクトの方が小さいとき、第２のオブジェクトが背面接触オブジェクトであることを示す情報も出力される。一方、Ｚオーダの値が第１のオブジェクトよりも第２のオブジェクトの方が大きいとき、第２のオブジェクトが前面接触オブジェクトであることを示す情報も出力される。
【００５４】
またＳ８０７で、ＣＰＵ１０１は、第１のオブジェクトと第２のオブジェクトとが接触していないと判断し、接触していない旨を示す判定結果を出力し、本接触判定処理を完了する。
【００５５】
（Ｓ７０５、注目オブジェクトの抜き出し処理）
次に、注目オブジェクトが移動し、その接触オブジェクトとの重なりがなくなったときの、抜き出し処理について図９のフローチャートを用いて具体的な処理を説明する。当該フローチャートに対応する処理は、ＣＰＵ１０１が、例えば記録媒体１０６に記憶されている対応する処理プログラムを読み出し、ＲＡＭ１０３に展開して実行することにより実現することができる。
【００５６】
まず、ＣＰＵ１０１は注目オブジェクトの接触オブジェクトに関する情報を接触オブジェクトリストから取得し（Ｓ９０１）、接触オブジェクトの個数をＮに代入し（Ｓ９０２）、カウンタｉを初期化してｉに“１”を代入する（Ｓ９０３）。そして、ＣＰＵ１０１は、注目オブジェクトがｉ番目の接触オブジェクトと未だ重なったままであるか否かを判定する（Ｓ９０４）。未だ重なっていれば（Ｓ９０４でＹｅｓ）、ステップＳ９０７に進む。一方、注目オブジェクトがｉ番目の接触オブジェクトと重なっていなければ（Ｓ９０４でＮｏ）、相手オブジェクト候補リストにｉ番目の接触オブジェクトに関する情報を追加する（Ｓ９０５）。そして、抜出フラグを初期値“オフ”から“オン”に変更し（Ｓ９０６）、カウンタｉに１を加算する（Ｓ９０７）。カウンタｉの値が接触オブジェクトの個数よりも小さければ（Ｓ９０８でＮｏ）、ＣＰＵ１０１はステップＳ９０４に戻り、次の接触オブジェクトについて同様の処理を繰り返す。カウンタｉの値が接触オブジェクトの個数Ｎよりも大きければ（Ｓ９０８でＹｅｓ）、ＣＰＵ１０１は上述と同様に、ウィンドウに配置されている全てのオブジェクトについて接触オブジェクトリストの作成処理を実行する（Ｓ９０９）。
【００５７】
（Ｓ７０８、注目オブジェクトの挿入処理）
次に、注目オブジェクトが移動し、その接触オブジェクトとの重なりが無くなった後、再び重なったときの、挿入処理について図１０のフローチャートを用いて具体的な処理を説明する。当該フローチャートに対応する処理は、ＣＰＵ１０１が、例えば記録媒体１０６に記憶されている対応する処理プログラムを読み出し、ＲＡＭ１０３に展開して実行することにより実現することができる。
【００５８】
まず、ＣＰＵ１０１は接触オブジェクトリストを参照し、ウィンドウに配置されているオブジェクトのうち、注目オブジェクトの系列オブジェクトではないオブジェクト（以下、別系列オブジェクトと言う。）を取得し（Ｓ１００１）、別系列オブジェクトの個数をＮに代入し（Ｓ１００２）、カウンタｉを初期化してｉに“１”を代入する（Ｓ１００３）。そして、ＣＰＵ１０１は、注目オブジェクトがｉ番目の別系列オブジェクトと重なったかどうかを判定する（Ｓ１００４）。注目オブジェクトがｉ番目の別系列オブジェクトと重なっていなければ（Ｓ１００４でＮｏ）、ステップＳ１００８に進む。注目オブジェクトがｉ番目の別系列オブジェクトと重なっていれば（Ｓ１００４でＹｅｓ）、ｉ番目の別系列オブジェクトが相手オブジェクト候補リストに含まれているか否かを判定する（Ｓ１００５）。ｉ番目の別系列オブジェクトが相手オブジェクト候補リストに含まれていなければ、ステップＳ１００８に進む。一方、ｉ番目の別系列オブジェクトが相手オブジェクト候補リストに含まれていれば（Ｓ１００５でＹｅｓ）、相手オブジェクト確定リストにｉ番目の別系列オブジェクトに関する情報を追加する（Ｓ１００６）。そして、挿入フラグを初期値“オフ”から“オン”に更新し（Ｓ１００７）、カウンタｉに１を加算する（Ｓ１００８）。カウンタｉの値が別系列オブジェクトの個数よりも小さければ（Ｓ１００９でＮｏ）、ＣＰＵ１０１はステップＳ１００４に戻り、次の別系列オブジェクトについて同様の処理を繰り返す。カウンタｉの値が別系列オブジェクトの個数Ｎよりも大きく（Ｓ１００９でＹｅｓ）、挿入フラグがオンであれば、Ｚオーダの変更処理を実行する（Ｓ１０１１）。ＣＰＵ１０１は上述と同様に、ウィンドウに配置されている全てのオブジェクトについて接触オブジェクトリストの作成処理を実行する（Ｓ１０１２）。
【００５９】
（Ｓ１０１１、Ｚオーダ変更処理）
次に、注目オブジェクトと相手オブジェクトの重なりの順番を変更するときの、Ｚオーダの変更処理について図１１のフローチャートを用いて具体的な処理を説明する。当該フローチャートに対応する処理は、ＣＰＵ１０１が、例えば記録媒体１０６に記憶されている対応する処理プログラムを読み出し、ＲＡＭ１０３に展開して実行することにより実現することができる。
【００６０】
まず、ＣＰＵ１０１は注目オブジェクトと相手オブジェクトのＺオーダを比較し（Ｓ１１０１）、注目オブジェクトの方が大きければ（Ｓ１１０１でＹｅｓ）、注目オブジェクトをオブジェクトｐとし、相手オブジェクトをオブジェクトｑとする（Ｓ１１０２）。一方、注目オブジェクトの方が小さければ（Ｓ１１０１でＮｏ）、相手オブジェクトをオブジェクトｐとし、注目オブジェクトをオブジェクトｑとする（Ｓ１１０３）。つまり、Ｚオーダが大きく、上に重なっている方をオブジェクトｐとする。ＣＰＵ１０１は、接触オブジェクトリストを参照し、オブジェクトｑの前面接触オブジェクトを取得し（Ｓ１１０４）、オブジェクトｐの背面接触オブジェクトを取得する（Ｓ１１０５）。そして、ＣＰＵ１０１はオブジェクトｐとオブジェクトｑのＺオーダを交換する（Ｓ１１０６）。ＣＰＵ１０１は、オブジェクトｑの前面接触オブジェクトの個数をＮに代入し（Ｓ１１０７）、Ｎが０より大きいか否かを判定する（Ｓ１１０８）。なお、Ｓ１１０４やＳ１１０５では相手オブジェクト以外の接触オブジェクトを取得する。
【００６１】
Ｎが０より大きければ（Ｓ１１０８でＹｅｓ）、ＣＰＵ１０１はｉに１を代入し（Ｓ１１０９）、オブジェクトｑとその前面接触オブジェクト[ｉ]のＺオーダを比較する（Ｓ１１１０）。ＣＰＵ１０１は、オブジェクトｑの方が大きければ（Ｓ１１１０でＹｅｓ）、オブジェクトｑと、前面接触オブジェクト[ｉ]のＺオーダを交換する（Ｓ１１１１）。そして、ＣＰＵ１０１はｉに１を加算し（Ｓ１１１２）、ｉがＮより大きいか否かを判定する（Ｓ１１１３）。ＣＰＵ１０１は、ｉがＮより小さければ（Ｓ１１１３でＮｏ）、ステップＳ１１１０へ戻り、ｉがＮより大きければ（Ｓ１１１３でＹｅｓ）、ステップＳ１１１４へ進み、各処理を実行する。
【００６２】
すなわち、オブジェクトｑに対してオブジェクトｐとのＺオーダは入れ替わっても、オブジェクトｑに対するオブジェクトｐ以外の前面接触オブジェクトとの上下関係は変わらないようにする。
【００６３】
次に、ＣＰＵ１０１はオブジェクトｐの背面接触オブジェクトの個数をＮに代入し（Ｓ１１１４）、Ｎが０より大きいか否かを判定する（Ｓ１１１５）。
【００６４】
Ｎが０より大きければ（Ｓ１１１５でＹｅｓ）、ＣＰＵ１０１はｉに１を代入し（Ｓ１１１６）、オブジェクトｐと背面接触オブジェクト［ｉ］のＺオーダを比較する（Ｓ１１１７）。ＣＰＵ１０１は、オブジェクトｐの方が小さければ（Ｓ１１１７でＹｅｓ）、オブジェクトｐと背面接触オブジェクト[ｉ]のＺオーダを交換する（Ｓ１１１８）。そして、ＣＰＵ１０１はｉに１を加算し（Ｓ１１１９）、ｉがＮより大きいか否かを判定する（Ｓ１１２０）。ＣＰＵ１０１は、ｉがＮより小さければ（Ｓ１１２０でＮｏ）、ステップＳ１１１７へ戻り、処理を実行し、ｉがＮより大きければ（Ｓ１１２０でＹｅｓ）終了する。
【００６５】
すなわち、オブジェクトｐに対してオブジェクトｑとのＺオーダは入れ替わっても、オブジェクトｐに対するオブジェクトｑ以外の背面系列オブジェクトとの上下関係は維持されるようにする。一方、オブジェクトｐの方が大きければ本処理を終了する。
【００６６】
このようにすることで、注目オブジェクトと他のオブジェクトの上下関係は維持したまま、相手オブジェクトとのＺオーダの入れ替えを行うことができる。また、ユーザに対し、物理的に自然な入れ替えを反映した、直感的に操作結果を提示することができる。
【００６７】
なお、本実施形態では注目オブジェクトと相手オブジェクトについてＺオーダの入れ替えが生じた場合に相手オブジェクト候補リストを初期化するようにしてもよい。または、相手オブジェクト候補リストを初期化せずに保持しておくことにより、連続的に接触したオブジェクトとのＺオーダの入れ替えが可能なように構成してもよい。
【００６８】
なお、上述したＺオーダ入替処理においては、注目オブジェクトと相手オブジェクトのＺオーダを入れ替えるものとして説明したが、本発明は注目オブジェクトと相手オブジェクトの上下関係を逆転させればよく、本発明の実施はこれに限らない。例えば相手オブジェクトが相手オブジェクトの前面に接触する場合、相手オブジェクトのＺオーダの１つ下のＺオーダを追加し、注目オブジェクトに当該Ｚオーダを割り当ててもよい。即ち、一方のオブジェクトのＺオーダの値が、接触する他方のオブジェクトのＺオーダの直上あるいは直下の値となるように変更してもよい。このようにすることで、少なくとも相手オブジェクトの前面接触オブジェクトの重なり関係は維持されるため、第１のオブジェクトの背面接触オブジェクトについてのみＺオーダ整合処理を実行すればよいことになる。
【００６９】
以上のように、本実施形態の情報処理装置は、それぞれ異なるＺオーダを有する複数のオブジェクトが、ユーザの操作に応じて移動可能にフィールドに表示されている場合に、配置された複数のオブジェクトの重なり関係をユーザに直感的に配置された複数のオブジェクトの重なり関係を直感的に変更することができる。具体的には情報処理装置は、２つのオブジェクトが、他のオブジェクトを介さずに重なりを有する場合に、当該２つのオブジェクトが接触していると判定する。そして、第１のオブジェクトの移動中に、第１のオブジェクトと重なりを有する状態になった後に、重なりを有さない状態を経て再び重なりを有する状態となった第２のオブジェクトを検出する。情報処理装置は、第１のオブジェクトと第２のオブジェクトが重なりを有さない状態の前後で接触していると判定されている場合は第１のオブジェクトと第２のオブジェクトのＺオーダにおける上下関係を入れ替える。
【００７０】
このようにすることで、２つのオブジェクトのＺオーダを入れ替えても、他のオブジェクトとの重なり関係は維持することができるため、違和感を与えることのない、直感的で分かりやすいオブジェクトのＺオーダを入れ替えられる操作方法をユーザに提供できる。
【００７１】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005520343.tif 000002
【図２】
0005520343.tif 000003
【図３】
0005520343.tif 000004
【図４】
0005520343.tif 000005
【図５】
0005520343.tif 000006
【図６】
0005520343.tif 000007
【図７】
0005520343.tif 000008
【図８】
0005520343.tif 000009
【図９】
0005520343.tif 000010
【図１０】
0005520343.tif 000011
【図１１】
0005520343.tif 000012
【図１２】
0005520343.tif 000013