(57)【要約】【課題】３Ｄに表示された仮想ブックにおいて、実際の物理的なブックのページめくり動作を再現するような機能を具現化した方法及びシステムを提供する。【解決手段】３次元電子ブックのページめくりが、回転アニメーションとしてモデル化される。回転対象のページ３３８は、ベース線３２０に対して回転及び並進され得て、回転しているページ３３８の前面及び裏面の点（例えばG´及びK´）を仮想ジオメトリ形状４００の外側部の周囲にカーリングすることによって変形され得る。【選択図】図２１
2006172465.tif 000002
【特許請求の範囲】
【請求項１】
電子的に表示された３次元物体の一部を回転する方法であって、
前記３次元物体の回転部分の回転をアニメーションするステップを含み、
前記アニメーションは、前記回転部分の少なくとも一部を仮想ジオメトリ形状の周りでカールすることによって、前記回転部分を変形するステップを含み、
前記カールするステップは、前記回転部分の上の点を前記仮想ジオメトリ形状の上の点にマッピングするステップを含む方法。
【請求項２】
電子的に表示された３次元物体の一部を回転する方法であって、
前記３次元物体の上の位置を示すユーザ入力を受け取るステップと、
前記３次元物体の回転部分の回転をアニメーションするステップと、
を含み、
前記アニメーションは、前記ユーザによって示された前記位置に依存して異なる方法。
【請求項３】
電子的に表示された３次元物体の一部を回転するコントローラであって、前記コントローラは、前記３次元物体の回転部分の回転をアニメーションし、
前記アニメーションは、前記回転部分の少なくとも一部を仮想ジオメトリ形状の周りでカールすることによって、前記回転部分を変形することを含み、
前記カールするステップは、前記回転部分の上の点を前記仮想ジオメトリ形状の上の点にマッピングすることを含むコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元電子文書におけるシステム及び方法に関する。
【背景技術】
【０００２】
雑誌、貿易ジャーナルや科学ジャーナルのようなジャーナル、教科書、写真アルバム、新聞などが、電子的な形態でますます利用可能になってきている。しかし、多くの読者は、これらの文書を電子的な形態で読むことに消極的である。なぜなら、電子文書は、読者が慣れている紙文書の特性を欠いているからである。
【０００３】
紙文書の特性を電子文書に再現する技法が、高く望まれている。
【０００４】
仮想ブック表示システム、例えばｅ−ブックシステム、ＰＣ、ＰＤＡなどは、仮想のブックを２次元（「２Ｄ」）方式又は３次元（「３Ｄ」）方式で表示する。ここで「３次元」とは、本開示を通して使用されているように、物体の３次元的な外観を２次元ディスプレーの上に実現することを指している。
【０００５】
ページめくりは、静止した開位置又は閉位置のブックで開始されるだけでなくそれで終わる動的アニメーションであるので、ブックの静止位置がどのように表示されるかは、ページめくりアニメーションの間にブックがどのように表示されるべきかという点にかなりの程度まで影響を与え、その逆も言える。
【０００６】
【非特許文献１】Ｙｉ‐Ｃｈｕｎ  Ｃｈｕ著、「Ｈｏｗ  ｔｏ  Ｔｕｒｎ  ｔｈｅ  Ｐａｇｅ」 、Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＪＣＤＬ、２００３年、ｐ．１８６〜１８８
【発明の開示】
【発明が解決しようとする課題】
【０００７】
３Ｄに表示された仮想ブックにおいて、実際の物理的なブックのページめくり動作を再現するような機能を取り込むことが望まれている。
【課題を解決するための手段】
【０００８】
本発明による方法は、電子的に表示された３次元物体の一部を回転する方法であって、前記３次元物体の回転部分の回転をアニメーションするステップを含み、前記アニメーションは、前記回転部分の少なくとも一部を仮想ジオメトリ形状の周りでカールすることによって、前記回転部分を変形するステップを含み、前記カールするステップは、前記回転部分の上の点を前記仮想ジオメトリ形状の上の点にマッピングするステップを含む方法をとすることができる。
【０００９】
本発明による他の方法は、電子的に表示された３次元物体の一部を回転する方法であって、前記３次元物体の上の位置を示すユーザ入力を受け取るステップと、前記３次元物体の回転部分の回転をアニメーションするステップと、を含み、前記アニメーションは、前記ユーザによって示された前記位置に依存して異なる方法とすることができる。
【００１０】
本発明によるシステムは、電子的に表示された３次元物体の一部を回転するコントローラであって、前記コントローラは、前記３次元物体の回転部分の回転をアニメーションし、前記アニメーションは、前記回転部分の少なくとも一部を仮想ジオメトリ形状の周りでカールすることによって、前記回転部分を変形することを含み、前記カールするステップは、前記回転部分の上の点を前記仮想ジオメトリ形状の上の点にマッピングすることを含むコントローラとすることができる。
【発明を実施するための最良の形態】
【００１１】
例示的な実施形態は、以下の図面を参照して詳細に記述される。これらの図面では、同様の要素には同様の符号で示している。
【００１２】
３Ｄ仮想ブックのページめくり機能には、いくつかの欠点がある。図１に示されているように、WebBooks（米国登録商標）のような３Ｄ仮想ブックを含む仮想環境１００は、閉じた仮想ブック１１０、又は開いた仮想ブック１２０の前面１２２、１２４が仮想カメラで見られると、適度に実在するもののように見える。WebBooks（米国登録商標）では、閉じた仮想ブック１１０は、ブックの頂面と底面の一部とをモデル化し、開いた仮想ブック１２０はブックの頂面１２２、１２４をモデル化する。
【００１３】
図２は、図１のＡ−Ａ線に沿う閉じたWebBooks（米国登録商標）の切断面を、四角形の箱ＡＢＣＤとして示している。図３は、図１のＢ−Ｂ線に沿う開いたWebBooks（米国登録商標）の切断面を、それぞれ（線分Ａ−Ｂ、Ｂ−Ｃ、Ｃ−Ｄなどを含む）線Ａ−Ｓとして示している。ブック切断面では、ブックが、ブックの前面及び裏面、例えばカバーに垂直な方向に、半分にカットされている。図３に示されているように、開いた仮想ブック１２０は、ブックの裏側ではなく頂面１２２、１２４をモデル化している。開いた仮想ブックを表示している仮想環境では、例えば前面及び裏面のカバーのような裏側又は底面は、仮想カメラには見えないことがある。閉じたブック１１０と開いたブック１２０との間の移行は、図２の閉じたブックの描写と図３の開いたブックの描写との間に変化を必要とする。
【００１４】
図４は、回転しているWebBooks（米国登録商標）のページを表す回転ページブロック１２６のモデル図である。回転ページブロック１２６が矢印１３０の方向に回転すると、点Ｊは、回転ページブロックが最初の開始位置から９０度回転するまで、矢印１４０の方向に移動する。点Ｊはそれから、回転ページブロック１２６が最初の開始位置から１８０度回転するまで、矢印１４０とは反対の方向に移動する。
【００１５】
WebBooks（米国登録商標）はまた、WebBooks（米国登録商標）のページセット複数枚を一度にめくることをシミュレーションするページラフリング技法（図示されず）も含む。ページめくり対象のページは、複数の回転ページブロックにより表わされる。しかし、ページラフリング技法は、関心のある情報を求めてページセットを迅速に探査する能力を提供するが、ラフリング技法では、回転している全ページの構成が表示される必要がある。そのために、WebBooks（米国登録商標）では、ページ構成の全てが、事前にロードされ且つメインメモリに保存される。ページ構成の全てを事前にロードし且つメインメモリに保存することは、システムが大規模なものとなり実現可能性を著しく制約し、仮想ブック内に許容されるページ数を限定することになる。さらに、ページラフリング間に、ページめくり数を決定することは困難である。
【００１６】
他の３次元仮想ブックは、実際の物理的な本のページめくりをモデル化することも試みている。図５は、左及び右側２２２、２２４にページを有する開位置２２０にある３次元仮想ブックを含む仮想環境２００を示している。図６は、閉じたブック位置２１０にある３次元電子ブックの切断面を、四角形ＡＢＣＤとして示している。仮想ブックはまた、線Ａ−Ｂに沿って且つ閉位置２１０におけるブックの底面に位置する静止ベース線２２８もまた有している。静止平面は、ページの回転の間に、仮想ブックのページの相対運動を決定する助けとなる静止参照線として使用される。「前」及び「裏」という用語は、前カバー及び裏カバーがそれぞれ置かれる切断面の側を指している。読者は、前側の上方の位置（すなわち前側に垂直な平面）から、前側を見ることがある。
【００１７】
図７は、開位置２２０にある３次元ブックの、図５におけるＣ−Ｃ線に沿う切断面を示す。図７に示されているように、開いた仮想ブックは、少なくとも、それぞれ四角形のポリゴンＡＢＣＤ及びＢＥＦＧによってそれぞれ表された左側ページブロック２２２及び右側ページブロック２２４としてモデル化される。線Ａ−Ｅに対応する静止ベース線２２８は、ページの回転の間に、仮想ブックのページの相対運動を決定する助けとなる静止参照線として使用される。
【００１８】
図８は、ページがめくられている仮想ブックのページを表す回転ページブロック２２６のモデル図である。ページ回転アニメーションの間に、線Ａ−Ｂ及び線Ｂ−Ｅにそれぞれ対応している左側ページブロック２２２及び右側ページブロック２２４の底面は、ベース線２２８上に静止したままであり、回転ページブロック２２６は、接続点Ｊ、Ｈのまわりを矢印２３０の方向に回転する。
【００１９】
３次元仮想ブックを底面ベース線２２８に対して位置した四角形としてモデル化することは、いくつかの短所を含む。第１に、アニメーション終了時に回転ページブロック２２６を落とすことは、視覚的な不連続性につながる。第２に、仮想ブックがあるページから次のページにめくられると、左側ページブロック２２２及び右側ページブロック２２４の頂面の位置は、動的に変化する。このことは、静止カメラと仮想ブックの最上部ページとの間の距離が一定ではないことを意味しており、これにより、開いたブックの最上部ページは、どの２ページが表示されているかに依存して異なるサイズに見えることになる。第３に、ページがめくられるとき、ページは平坦なままである。
【００２０】
以下の詳細な議論は、特定のアプリケーション、すなわち３次元電子ブックに関するものであり、本発明のページめくりシステム及び方法の例示的な実施形態は、それとともに使用可能である。しかし、これは、理解及び熟知の容易さのためのものであり、例示的な実施形態のシステム及び方法が、使用可能なアプリケーションのタイプを制限するものとして解釈されるべきではない。
【００２１】
ページめくり方法及びシステムは、３つの同時プロセス、すなわち、１）回転プロセス、２）並進プロセス、及び３）変形プロセスを含んでいる。回転プロセスは、回転ページブロックと称される１ページ又はページのグループを、仮想ブックの綴じ目のような回転軸の周囲を、ブックの一方の側からブックの他方の側へ、ページめくり移動経路に沿って次第に回転させる。ページがブックの一方の側からブックの他方の側へ回転軸（例えば綴じ目）の周囲を回転するとき、ページめくり移動経路は、ページの異なる位置の軌跡を含む。回転軸は固定されている必要はなく、図４を参照して上述したように、ブックの残りに対して相対的に移動し得る。回転プロセスの間、ブック綴じ目に取り付けられたページブロックの一部、例えば（ページブロックがブックの右側からブックの左側に回転されるときには）回転ページブロックの左側は、読者によって静止していると見られ、ページブロックの残り部分は動いている。図１４〜１６に示された例では、回転ページブロックの断面、すなわち平行四辺形ＪＫＧＣは、ブックの綴じ目に垂直な切断面から見ると、堅固で現実的ではなく見える。変形プロセスは、本発明の例示的な実施形態では、回転ページブロック、すなわち平行四辺形ＪＫＧＣのより現実的なモデルを、ページめくりの間に回転ページブロックをより現実的に変形することによって生成する。
【００２２】
例示的な実施形態の変形プロセスでは、回転ページブロックの頂面及び底面が、例えば円錐のような仮想のジオメトリ形状の周囲にカールされる。カーリングは、回転ページブロックの点がジオメトリ物体の上の対応する点にマッピングされるプロセスである。ジオメトリ形状は、各面について同じ寸法を有している。ページがブックの一方の側からブックの他方の側へ移動経路に沿って移動して、異なるフレームで、すなわちページめくり経路に沿った異なる点で様々な湾曲した形状を作り出すときに、ジオメトリ形状のサイズは異なり得る。回転プロセス、並進プロセス及び変形プロセスが同時になされるとき、回転ページブロックの断面、すなわち図２１に示される湾曲した物体ＪＫＧＣは、読者によってフレキシブルに見られる。
【００２３】
図９は、閉位置３１０における３次元電子ブック３００の例示的な実施形態を描いたものである。図１０は、図９のＤ−Ｄ線に沿った３次元電子ブックの例示的な実施形態の切断面を描いたものである。仮想ブック３００の長さは、例えばページの頂端とページの底端との間の距離のような個々のページの長さであるので、仮想ブック３００の長さはページめくりアニメーションを通じて一定に保たれる。
【００２４】
図１０に描かれているように、閉じたブック３１０は平行四辺形ＡＢＣＤとして描かれている。「前」及び「裏」という用語は、前カバー及び裏カバーがそれぞれ位置している切断面の側を指している。読者は、前側の上方の位置から「前」側を見てもよい。ブックの幅、例えば線Ａ−Ｂ及びＤ−Ｃの長さは、個々のページの幅によって、あるいは前又は裏カバーの幅によって決定され得る。ブックの厚さ、例えば、線Ｄ−Ａと線Ｃ−Ｂとの間の最短距離は、ブック内の累積ページ数の厚さ、並びに前及び裏カバーの厚さによって、決定される。傾斜角ＡＢＣ及びＡＤＣは、所定の定数であり得る。仮想ブック３００は、線ＤＣに対応し且つ閉じたブック３１０の頂部平面、例えば前面に位置した静止ベース線３２０も有し得て、これは、ページめくりの間に、仮想ブック３００のページの相対運動を決定する助けとなる静止参照線として使用される。
【００２５】
図１１は、開位置３３０における図９の３次元電子ブック３００の例示的な実施形態を描いたものであり、ブック３００の左側３３２及び右側３３４の厚さを示す斜視図における３次元電子ブック３００を示している。ブック３００の左側３３２及び右側３３４の厚さは、それぞれ開いたブック３３０の左及び右側３３２、３３４のページ数を表している。図１２は、開位置３３０における３次元電子ブック３００の例示的な実施形態の、図１１のＥ−Ｅ線に沿った切断面を描いている。図１２において、静止ベース線３２０は、図１１における線Ｅ−Ｅ及び見られているページの正面に対応している。
【００２６】
図１２に描かれているように、図１１の開位置３３０における３次元電子ブック３００の例示的な実施形態の静止状態は、少なくとも２つのページブロックを含むものとしてモデル化される。具体的には、左側のページブロック３３２は平行四辺形ＡＢＣＤによって表され、右側のページブロック３３４は別の平行四辺形ＥＦＧＣによって表される。平行四辺形が描かれているが、ページブロックが平行四辺形である必要はない。この及び他の図において、より緩和した形状もまた許容可能である。左側のページブロック３３２及び右側のページブロック３３４は、点Ｃで接続している。点Ｃは、ブックの綴じ目に対応している。図９に示されている閉位置３１０における仮想ブック３００と同様に、線Ａ−Ｂに対応する左側のページブロックの幅、及び線Ｅ−Ｆに対応する右側のページブロックの幅は、個々のページの幅によって決定され得る。また、図９に示されている閉位置３１０における仮想ブック３００と同様に、左側のページブロックの幅、例えば線Ｄ−Ｃ及び線Ａ−Ｂの間の距離、及び右側のページブロックの幅、例えば線Ｃ−Ｇ及び線Ｅ−Ｆの間の距離は、個々のページの幅及びブックの各々の累積ページ数によって決定され得る。仮想ブック３００の静止ベース線３２０は、読者によって見られるときにはブックの頂面に対応している頂部平面に位置し得て、且つ開位置３３０の線ＤＣＧに対応し得る。静止ベース線３２０は、ページめくりの間、静止参照線として使用され得て、仮想ブック３００のページの相対運動を決定する助けとなる。「前」及び「裏」という用語は、読者が見る切断面の側を指している。例えば、図１２の実施形態では、ブックが「前」側から見られるとき、読者はブックの開いたページを見る。一方、「裏」側は、読者の視線からは隠される。
【００２７】
上述した寸法は、当業者に既知の様々な方法及びシステムによって計算され及び／又は決定されるブックの本質的な特性である。例えば、閉じた仮想ブックの個々のページの長さ、幅、及び厚さはあらかじめ決定され得るので、閉じた仮想ブックの厚さもまた、あらかじめ決定され得て、閉じた仮想ブックにおける全ページ数に個々のページの厚さを乗算したものに等しくなり得る。個々のページとは異なる厚さを有し得るブックの他の部分、例えばページとともに、カバーを考慮するために、厚さの計算にある値を加算してもよい。加えて、図１２の静止状態の間の左側のページブロック及び右側のページブロックのページ数はあらかじめ決定され得るので、静止ベース線に対する左側ページブロック及び右側ページブロックの座標又は点もまた、あらかじめ決定され得る。さらに、仮想環境における仮想ブックの位置もまた、あらかじめ決定される。多くの寸法及び座標はあらかじめ決定されるので、ブックが読者によって見るために選択されると、例えば図１０及び図１２におけるブックの点の座標のようなブックのジオメトリと静止ベース線の位置とは、好ましくは前もって決定される。したがって、読者は、見る対象の仮想ブックと前進又は後進する仮想ブックのページ数とを選ぶ必要があるのみである。
【００２８】
以下の詳細な記述は、図１１（又は図１２）の３次元電子ブック３００のページが回転されるときの、一連のページ位置の実施形態を描いている。この例示的な実施形態は、仮想ブックのページを前進又は反時計回り方向にめくることを描いているが、仮想ブックのページがまた、後進又は時計回り方向、あるいはブックの綴じ目の位置に依存する他の方向にめくられることができることを理解されたい。また、ブックの一つ又はそれ以上のページを同時にめくることができる点も、理解されたい。
【００２９】
ブックのページを前進（例えば反時計回り）方向にめくる前に、めくられるべきページ数が決定される。ページめくりシステムは、ブックの右側から開いた仮想ブック３３０の左側へめくられるべき右側ページブロック３３４の、めくられるべきページ数を表す位置を決定する。
【００３０】
図１３は、ページが初期ページめくり位置にある仮想ブック３３０のページめくりアニメーションの開始を描いている。最初に、右側ページブロック３３４が、回転されるべきページ数を表す第１の部分と、第１の部分が除去された後に右側ページブロックに残されるページを表す第２の部分とに分割される。第１の部分は、平行四辺形ＪＫＧＣによって現される回転ページブロック３３８である。回転ページブロック３３８の厚さ、例えば線Ｊ−Ｋと線Ｃ−Ｇとの間の距離は、回転対象のページ数に個々のページの厚さを乗算することによって決定され得る。さらに、平行四辺形ＥＦＩＨによって表される第２の部分、新しい右側ページブロック３３６は、先の右側ページブロック３３４と回転ページブロック３３８との間の差を描いている。第２の部分は、このアニメーションでは回転されない。最後に、左側ページブロック３３２の線Ｄ−Ｃに対応する頂面と、回転ページブロック３３８の線Ｃ−Ｇに対応する頂面とは、静止ベース線３２０と同一線上であり得る。
【００３１】
図１４〜１７は、回転ページブロック３３８の１８０度反時計周り回転の例示的な状態を描いており、ここでは、回転ページブロックが図１３の初期開始位置に対して反時計方向にそれぞれ４５度、９０度、１３５度、及び１８０度回転されている。回転ページブロック３３８の回転の間、左側ページブロック３３２の線Ｄ−Ｃに対応する頂面と回転ページブロック３３８の線Ｃ−Ｇに対応する頂面とは、静止ベース線３２０とは並ばない。以下の議論は、左側ページブロック３３２、右側ページブロック３３６、及び回転ページブロック３３８の動きを、より詳細に記述している。
【００３２】
図１４〜１７に描かれているように、回転ページブロック３３８は、点Ｊ、Ｈの周りに矢印３４０の方向に回転する。同時に、点Ｊ、Ｈは、静止ベース線３２０に向かって、点Ｃがアニメーションの最初に位置していた位置に向かって上方に沿って、すなわち図１３の線Ｊ−Ｃの方向に沿って、移動し始める。しかし、アニメーションを通じて、左側ページブロック３３２と回転ページブロック３３８とは点Ｃで接続されたままであり、結果として、左側ページブロック３３２が静止ベース線３２０から離れる方向に下向き並進移動３５０することになる。同様に、左側ページブロック３３２の移動と同時に、右側ページブロック３３６及び回転ページブロック３３８は点Ｊ、Ｈで接続されたままであり、結果として、右側ページブロック３３６は静止ベース線３２０に向かって上向き並進移動３６０を行う。
【００３３】
ページめくりアニメーションが進むと、回転ページブロック３３８の傾斜角ＣＪＫは、図１３の鈍角から図１６の鋭角に次第に変化する。しかし、回転ページブロック３３８の厚さ、すなわち線Ｃ−Ｊ及びＧ−Ｋの間の距離は、一定のままである。
【００３４】
図１７に示されているように、回転ページブロック３３８が初期ページめくり位置から反時計回りに１８０度回転した後、左側ページブロック３３２の線Ｂ−Ｃ及びＡ−Ｄに対応している側面は、回転ページブロック３３８の線Ｃ−Ｊ及びＧ−Ｋにそれぞれ対応する側面と同一面になっても良い。加えて、回転ページブロック３３８の線Ｋ−Ｊに対応している頂面と右側ページブロック３３６の線Ｊ−Ｉに対応している頂面とは、静止ベース線３２０と同一線上になってもよい。
【００３５】
図１８は、ページめくりアニメーションの終了時における開位置にある３次元電子ブック３００の例示的な実施形態のモデル化を描いている。図１８に示されているように、新しい左側ページブロック３７０が、図１７の回転ページブロック３３８を左側ページブロック３３２に合体する結果として生成される。これより、新しい右側ページブロック３７０の線Ｋ−Ｊに対応している頂面と右側ページブロック３３６の線Ｊ−Ｉに対応している頂面とは、静止ベース線３２０と同一線上になる。
【００３６】
図１４〜１６に開示されている実施形態は、堅固な回転ページブロック３３８を示している。しかし、上述のように、図１４〜１６に開示された技法を使用してページをめくると、いくらか非現実的なページめくり効果が生成される。これは、読者によって見られる回転ページブロックの頂面及び底面が、ページめくり中に平坦表面のままであるからである。回転ページブロック３３８の平坦面はページめくりの間に変形しないので、ページめくりブロック３３８はむしろ堅固に見え、実際の物理的なブックがめくられるときに見えるように、１枚の紙のようには見えない。
【００３７】
上述のように、ページ形状のセットをページめくり経路に沿った異なる点に対応する前処理ステージで生成し、前処理されたページ形状を回転されている個々のページに適用することによって、より現実的なページめくり効果を生成することが可能である。例えば、回転ページブロック３３８が実際の物理的なブックで回転されたとすれば、回転ページブロックは、回転ページブロック３３８が右側ページブロック３３４のようなブックの一方の側から左側ページブロック３３２のようなブックの他方の側に移動されるにつれて、移動経路に沿った異なる点に対応した異なるジオメトリ形状を有するであろう。ページめくりの間、あらかじめ計算された形状のセットがページに適用されて、ページがブックの一方の側からブックの他方の側に回転するにつれて、ページめくりの特定の点に対応した特定のフレームで、特定のページ形状（すなわち「回転ページ形状」）をもたらす。ページ形状のセットは、当業者によって構築され得る。あるいは、ページ形状のセットは、数学的シミュレーションモデルを使用して自動的に計算され得る。
【００３８】
非特許文献１は、完全３次元ページめくりをアニメーションするプロトタイプのページめくりシステムが開示されている。非特許文献１において、動的なページめくり動作は、小片の四角形グリッド上に規定された質量−ばね構造を用いた布地的なシミュレーションモデルによって、あらかじめ計算される。このシミュレーションモデルは、読者によって見られるように、ページめくりに弾力性効果を与えるものであり、これは、ブックのページのような堅固な物体のモデル化では、一般に非現実的である。さらに、このシミュレーションモデルの持つ反復性から、プロトタイプの具現化において、単一のページめくりの計算に数分から数時間かかる。非特許文献１に開示された方法の他の不都合は、この方法が、読者が触れるページ上の位置の関数として、回転ページの形状がどのように変形するか、あるいはページが回転するかを考慮していない点である。非特許文献１に開示された方法の他の不都合は、ページ形状が、ある解像度（例えば１６×１６の小片）の四角形グリッドを使用してページをモデル化して前処理した形状により計算される点である。このことは、繰り返しポリゴンメッシュが同じ四角形グリッドにて表されることを意味する。すなわち、３２×３２頂点のポリゴンメッシュを使用して回転ページを表すことはできない。これは、回転ページのポリゴンメッシュを動的に変える必要があるときには、潜在的な問題点になる。
【００３９】
ページめくりは、読者によって見られるときに、ある性質及び／又は特性を有する。これらの「ページめくり」特性は、現実的なページめくり効果を提供することによりページめくり効果を自然に且つ読者にアピールするものにし続けるために、仮想ブックでページがめくられるときに、保持されるべきである。ページがめくられるときに保持されるべき「ページめくり」の特性は、１）湾曲したページがめくられるときに湾曲ページの滑らかさを維持すること、２）めくられているページのコーナでは直角を維持すること、３）めくられているときにページの伸張又は圧縮を最小限にすること、及び４）ページめくり動作においてページが最初に持ち上げられたページ上の位置に従ってページ形状を次第に変えること、を含む。これらの特性を維持し且つ計算されたページ形状を「移動中の」特定のフレームに適用することによって、平坦なページを湾曲した形状に変形し、実際の物理的なブックにおけるめくられているページの見た目と感触とを保持することが、可能になる。
【００４０】
図１９は、回転ページブロック３３８の頂面に対するページ変形を描いている。回転ページブロックの底面に対する変形は、同様な方法で実行される。例えば、底面、円錐は、ｙ軸に平行で点Ｊ´を通る線に沿って配置される。ひとたび頂面及び底面の湾曲された形状が計算されると、回転ページブロックの他の面（例えば、回転ページブロックの左、右、前、及び裏）は容易に構築されることができる。
【００４１】
図１９において、回転ページブロック３３８の頂面はｘｙ平面に対応する。線Ｃ´−Ｇ´に対応する回転ページブロック３３８の頂面の底辺は、ｘ軸に位置合わせされている。線Ｓ−Ｃ´に対応する回転ページブロック３３８の頂面の左辺は、ｙ軸に位置合わせされている。ｚ軸は、ブックの頂面の読者の視線に対応している。３次元円錐４００は、ｘｙ平面に置かれている。この例では、線Ｖ−Ｓに対応している円錐の側部は、ｙ軸に置かれ得る。そのため、この例では、円錐の軸Ｖ−Ｃはｘｙ平面とは平行ではない。しかし、軸は好ましくはｙｚ平面にある。線Ｓ−Ｖに対応している円錐の側部は、回転ページブロック３３８がブックの一方の側からブックの他方の側まで回転されるときに、ブックの綴じ目に対応して回転ページブロック３３８の頂面の左辺を静止状態に保つか、又は図２０〜２２における点Ｃ´によって示されるように綴じ目を移動させるように、モデル化され得る。
【００４２】
読者は、例えば点Ｇ´のような回転ページブロック３３８の点にタッチすることによって、回転ページブロック３３８を回転する。「タッチすること」は、タッチスクリーン技術が使用されるならばディスプレースクリーンに物理的にタッチすることによって、あるいは例えばマウスを使用して指示クリックすることによって、行われ得る。読者がＧ´にタッチした後に、回転ページブロック３３８の頂面及び底面の両方が変形を始める。頂面は、円錐４００の外側部の周囲にカールすることによって変形を始める。上述のように、円錐４００の側部は、線Ｓ−Ｃ´に対応している線に位置している。底面は、円錐４００の辺が線Ｓ−Ｃ´に対応している線に位置している第２の円錐４１０（図２０及び２１を参照）の裏面（over side）の周りでカールすることによって、変形を始める。しかし、第２の円錐の側部は、点Ｊ´に位置している。円錐４００の外側部の周囲での回転ページブロック３３８の頂面及び底面のカールの結果として、湾曲したページブロックが生じる。円錐角θと円錐頂点Ｖｙの値とは、各々の円錐について同一であり、且つ回転されたページブロックの異なるビュー又は位相、すなわち異なる湾曲されたページブロックを得るために、アニメーション時間ｔ´に渡って変えられることができる。アニメーション時間ｔ´は、右側ページブロック３３６に対応しているブックの一方の側から左側ページブロック３３２に対応しているブックの他方の側まで回転ページブロック３３８を回転するために必要とされる全時間に対応している。
【００４３】
上述のように、円錐角θと円錐頂点Ｖｙの値、すなわち位置は、各々の円錐に対して同一であることができる。しかし、回転ページブロックの頂面の回転を、回転ページブロックの底面の回転について使用されるジオメトリ形状とは異なるジオメトリ形状を使用してモデル化することができる。これより、頂面は円錐を利用して回転し、底面は円筒を使用して回転されることができる。好ましくは、計算の各々について、第１のジオメトリ形状を使用して頂面をモデル化し、第２のジオメトリ形状を使用して底面をモデル化する。以下では、頂面に対しては第１の円錐を使用し且つ底面に対しては第２の同一の円錐を使用して、回転ページブロックを回転することを記述している。
【００４４】
ページの回転に先立って、例えば回転ページブロック３３８を回転するために読者が点Ｇ´にタッチする前に、この例では、両円錐に対する円錐角θは９０度に等しい。そのため、円錐４００、４１０の周りでのページのカールはなく、あるいは、その代わりに理解され得るように、円錐４００、４１０の周りでのページのカールは平坦である。ページめくりが進行するにつれて、円錐４００、４１０の円錐角θ及び円錐頂点Ｖｙの位置は、次第に変化する。円錐角θ及び円錐頂点Ｖｙの位置は、回転ページブロック３３８が右側ページブロック３３６から左側ページブロック３３２に回転するにつれて、回転ページブロック３３８の位置に対応している。
【００４５】
例えば、回転ページブロック３３８が右側ページブロック３３６から左側ページブロック３３２に回転するとき、円錐角θは、ページめくりアニメーションの開始時における９０度から、次第に、ページ変形の半分が生じたときの最小円錐角θまで減少する。最小円錐角θ及び／又はページ変形の１／２に等しい点は、全アニメーション時間ｔ´の半分に一致する。円錐角θが変化し始めると、ｙ軸に対応している円錐頂点Ｖの位置は、矢印Ｌの方向に負の無限大に向かってｙ軸を移動する。回転ページブロック３３８の頂面及び底面の点は、円錐の形状が変化するにつれて（例えば円錐角θ及び円錐頂点位置Ｖｙが変わるにつれて）、仮想円錐４００、４１０の上の対応する点にマッピングされるので、回転ページブロック３３８は、回転ページブロック３３８の頂面及び底面の点がページめくりアニメーションの各々の連続したフレームにて異なる形状の円錐４００、４１０にマッピングされるにつれて、変形される。これより、点Ｐが一つの円錐形状から次のものにマッピングされると、ページは、ｘｙ平面から円錐４００の外側部の周りを、Ｇ´に対応しているその右下のコーナが最初に持ち上げられてカールされる。そのため、Ｇ´は、回転ページブロック３３８の残りより先に変形されて回転される。
【００４６】
回転ページブロック３３８が変形プロセスの中間点に達すると、円錐角θは次第に９０度まで増加し、円錐頂点Ｖｙは、矢印Ｌの方向とは逆方向に並進する。これより、変形プロセスでは、円錐角θは、最初は９０度から次第に最小円錐角θに減少し、円錐頂点Ｖｙはｙ軸に沿って負の無限大に向かって矢印Lの方向に並進する。それから、変形プロセスが中間点に近付くと、円錐角θ及び円錐頂点位置Ｖｙは同時に最小値に到達し、そこから、円錐角θは９０度に向かって増加し、円錐頂点位置Ｖｙは矢印Ｌの方向とは逆の方向に並進し、原点Ｃ´（又はＪ´）に向かって進む。これより、例示的な実施形態では、変形プロセスの第２の半分は、変形プロセスの第１の半分のミラーイメージであり得る。
【００４７】
例えば、時間ｔ´の任意の所与の点にて、図１９に示されるように、回転ページブロック３３８の頂面上の所与の点Ｐ（Ｐｘ、Ｐｙ、０）が円錐上４００の特定の点にマッピングされる。点Ｐがマッピングされる円錐４００上の特定の点は、半径Ｒが
【数１】
2006172465.tif 000003
で表される円をｘｙ平面上のＶの周囲に描くことによって、計算されることができる。ここで、Ｒは線Ｖ−Ｐの長さに対応している。円とｙ軸との交点は、点Ｓとする。円錐ジオメトリに基づいて、回転ページブロック３３８が円錐４００の周囲に巻き付けられると、弧ＳＰは、円錐の底面に平行で点Ｓと交わる円形断面に一致する。点Ｐが円錐の断面上の点Ｔにマッピングされるとすれば、弧ＳＴと弧ＳＰの長さは等しくなる（｜ＳＴ｜＝｜ＳＰ｜）。断面の中心をＣとし、角∠ＳＣＴをβとすると、以下の関係式が導出される。
【数２】
2006172465.tif 000004
ここで、ｒは断面の半径であり、（注釈：角ＳＡＰはＳＶＰに変えられるべきである）また、
【数３】
2006172465.tif 000005
である。
【００４８】
点Ｔ（Ｔｘ、Ｔｙ、Ｔｚ）は、点Ｓを線（ｘ＝０、ｚ＝ｒ）の周りに点Ｓ´（Ｓｘ´、Ｓｙ´、Ｓｚ´）までβだけ回転し、それからＳ´を線（ｙ＝ｓｙ、ｚ＝０）の周りにθだけ回転することによって、計算されることができる。点Ｔは、以下のように計算されることができる。
【数４】
2006172465.tif 000006
【００４９】
関数θ（ｔ）及びＶｙ（ｔ）は、滑らかなアニメーションを確実にするために経験的に構築され得る。回転ページブロックの並進、回転、及び変形の組み合わせは、以下で詳細に議論される。
【００５０】
図２０〜２３は、ページめくりアニメーションの間における回転ページブロック３３８の並進、回転、及び変形の例示的な状態を描いており、ここでは、回転ページブロックは、図１３に示された初期回転位置に関して反時計回り方向に１８０度回転している。以下の議論は、左側ページブロック３３２、右側ページブロック３３６、及び回転ページブロック３３８の動きを、より詳細に記述している。
【００５１】
図１９に示されているように、円形錐４００のようなジオメトリ形状は、ｘｙ平面に位置している。円錐の側部は、ｙ軸に沿って点Ｃ´でｘｙ平面に接している。図２０は、開いたブックの左側及び右側を通した切断面の図を示している。図２０から分かるように、円錐４００の底面が円形であっても、円錐４００の切断面はわずかに楕円である。なぜなら、円錐のビューは円錐の軸に垂直ではないからである。ｙ軸に沿って位置し且つ図２０の点Ｃ´でｙ軸に接するようにモデル化された円錐の側部は、静止ベース線３２０に対応したｘ軸に沿って水平にも、あるいはｚ軸に沿って垂直にも移動しない。これに関して、円錐４００は、ベース線３２０のように静止したままであり得る。θ及びＶｙを含む円錐サイズは、アニメーション時間ｔ´の間の特定の点（すなわち、ページがブックの一方の側からブックの他方の側に回転するときのページめくりの特定のフレーム）に依存して可変であるので、図２０〜２１に示された円錐４００は、特定の縮尺には描かれていない。例えば、ページめくりアニメーションは図２０ではまだ始まっていないので、この点で、円錐角θが９０度に等しくなる。一方、図２１に示された円錐は、９０度よりも小さい円錐角θを有している。
【００５２】
上述のように、特定の円錐形状が、ページめくりプロセスの各フレームについて生成される。円錐の形状は、読者が回転ページブロックのどこに最初にタッチしたか、及びページめくり移動経路に沿った回転ページブロックの回転の特定の点（すなわちアニメーション時間ｔ´の間の点）のような要因に依存して決定される。例えば、本明細書を通して議論されている実施形態は右側ページブロックの右下のコーナからのページめくりに対応しているが、ここに開示されている方法及びシステムを、ページの他の位置からページを回転させるために使用することも可能である。例えば、右側ページブロックは、ページの右上コーナから回転されることもできる。この場合、図１９に示された円錐４００は、右側ページブロックと左側ページブロックとの間の共通の境界に関して、１８０度回転される。ここで論じられているプロセスは、それから回転ページブロックを生成し回転させるために適用され、回転ページブロックの右上のコーナ、例えば図１９の点Ｎが最初に持ち上げられて、回転ページブロックの他の点に先立って回転される。
【００５３】
ページめくりアニメーションは、回転ページブロックがブックの綴じ目の一方の側、例えば図２０に示されているように、右側ページブロック３３６から左側ページブロック３３２まで、アニメーション時間ｔ´の間に回転し、並進し、且つ変形するにつれて、読者が見る累積フレームを指している。各フレームは、回転、並進、及び変形プロセスに基づいて生成され、回転ページブロックの移動経路の特定の点に対応している。
【００５４】
図２０〜２３は、回転ページブロックを回転、並進、及び変形させるために図１９に関連して上記で記述された技術を使用している３次元電子ブックの例示的なページめくりを描いている。図２０〜２３は、ｘ軸に沿って取られた仮想ブックの切断面の図を描いている。
【００５５】
図２０は、例えば図１１のページの断面を描いている。図２０は、回転ページブロック３３８が回転される直前の回転アニメーションのフレームを示している。ベース線３２０は左側及び右側ページブロックの頂面に対応している。回転ページブロックはまだ回転されていないので、円錐角θは９０度に等しい。上述のように、ユーザはページブロック上の一点にタッチして、ページめくりアニメーションを開始する。
【００５６】
図２１に描かれているように、回転ページブロック３３８は、点Ｊ´、Ｈ´の周りに矢印３４０の方向に回転する。回転ページブロック３３８が回転すると、点Ｊ´、Ｈ´は静止ベース線３２０に向かって、上向き方向に沿って、アニメーションの開始時に点Ｃ´が位置していた位置に向かって、例えば図１３の線Ｊ−Ｃの方向に沿って移動する（注釈：これは、回転ページブロックの並進プロセスである）。しかし、アニメーションを通じて、左側ページブロック３３２及び回転ページブロック３３８は点Ｃ´に接続されたままであり、この結果として、左側ページブロック３３２の静止ベース線３２０から離れるような下向き並進運動３５０をもたらす。同様に、左側ページブロック３３２の動きと同時に、右側ページブロック３３６及び回転ページブロック３３８は点Ｊ´、Ｈ´で接続されたままであり、この結果として右側ページブロック３３６の静止ベース線３２０に向けた上向き並進運動３６０がもたらされる。
【００５７】
回転ページブロック３３８が点Ｊ´、Ｈ´の周りを回転するのと同時に、回転ページブロック３３８の頂面及び底面は円錐４００にマッピングされ、ｙ軸に沿って点Ｃ´でｘｙ平面に接する円錐の側部の周りでカールされる。図１９を参照して上述したように、回転ページブロック３３８は、回転ページブロックの点（例えば点Ｇ´及びＰ）が円錐４００の上の点に対応しているので変形する。円錐の形状が変化する（あるいは、代わりに理解され得るように、特定の形状の円錐がページめくりアニメーションの各フレームに対して生成される）ために円錐４００の上の点がアニメーション時間ｔ´に関連して変わると、回転ページブロック３３８は、その頂面及び底面を円錐の周りにカールすることによって変形される。上述のように、ひとたびページめくりアニメーションが始まって円錐４００の周りにカールすることによってページが変形し始めると、円錐の角度θは９０度から減少し、円錐の頂点Ｖは矢印Lの方向に移動する。次のページめくりアニメーションフレームがそれから、９０度よりも小さい円錐角θ及びｙ軸のさらに下方に位置する円錐の頂点Ｖについて計算される。
【００５８】
図２２に示されているように、回転ページブロック３３８が初期ページめくり位置から反時計回りに１８０度回転した後に、左側ページブロック３３２のＢ´−Ｃ´及びＡ´−Ｄ´に対応する側部は、回転ページブロック３３８の線Ｃ´−Ｊ´及びＧ´−Ｋ´にそれぞれ対応する側部と同一線上になる。加えて、回転ページブロック３３８のＫ´−Ｊ´に対応する頂面と右側ページブロック３３６のＪ´−Ｉ´に対応する頂面とは、ベース線３２０と同一線上になる。
【００５９】
図２３は、ページめくりアニメーションの終了時における開位置３３０の３次元電子ブロックの例示的な状態を描いている。図２３に示されているように、新しい左側ページブロック３７０が、回転ページブロック３３８を図２２の左側ページブロック３３２に合体した結果として生成される。これより、新しい右側ページブロック３７０のＫ´−Ｊ´に対応する頂面と右側ページブロック３３６のＪ´−Ｉ´に対応する頂面とは、ベース線３２０と同一線上になる。
【００６０】
図１０の閉じた仮想ブック３１０の静止状態は左側又は右側ページブロックを有さないので、閉じた仮想ブック３１０の静止状態は、図１１における開いた仮想ブック３３０の静止状態の特別な場合と考えられる。言い換えると、閉じた仮想ブック３１０では、右側ページブロック及び左側ページブロックの一方が、目に見えないものと考えられる。これより、閉じたブック３１０と開いたブック３３０との間の移行は、上述したような図２０の静止状態における開いたブック３３０と図２３の静止状態における開いたブック３３０との間の移行と同様である。したがって、初期／最終静止状態の閉じた位置３１０から／への仮想ブックのページの回転は、詳細には議論されない。これより、読者は、ページめくり動作（例えば、回転、並進、及び変形）を、仮想環境におかれた静止状態の閉じたブックから又は開いたブックから始めることにより、実行することができる。言い換えると、ページめくりサイクルは、例えば図２０に示されているような静止状態にあるブックから始まり、図２１及び２２に描かれたようなアニメーションを通過し、これが例えば図２３に示されているような他の静止状態にブックを戻すのである。
【００６１】
図２４及び図２５は、ページめくりアニメーションの間のページのフレームの例示的な実施形態を個別に描いている。図２４は、約４５度回転して９０度よりも小さな円錐角θに対応して変形したページを描いている。図２５は、９０度よりもわずかに小さく回転して円錐角θがさらに減少したページを描いている。さらに、図２５に示された例示的な実施形態では、円錐頂点Ｖは、図２４に示された例示的な実施形態と比較すると、負の無限大に向かってｙ軸のさらに下方に位置している。
【００６２】
図２６は、３次元仮想文書のページめくりを表す方法の例示的な実施形態の概略フローチャート図である。図２６に示されるように、この方法の処理はステップＳ１０００で始まり、ステップＳ１１００に続き、そこで見られるべき３次元文書が読者によって得られる。それから、ステップＳ１２００で、選択された３次元文書が、所定の寸法に基づいて、静止状態で、右側ページブロックに接続された左側ページブロックとして表示される。次に、ステップＳ１３００で、前進又は後進のいずれかにめくられるべきページ数が、読者によって選択される。ページ数の選択は、直接又は間接であり得る。直接選択の例は、読者が「１０」のような数を手入力するときである。間接選択の例は、読者は単に現時点で表示されているページにタッチし、システムがそのページのみがめくられるべきであることを理解するときである（注釈：ステップＳ１３００の中に、オプションとして例えば図示しないＳ１４３０を設けることにより、直接選択の場合に、システムはどこでページを最初にカールすべきか、例えば最後のページめくりで行われたものに続くか、又はランダム方式かを、決定することができる）。処理は、それからステップＳ１４００に続く。
【００６３】
ステップＳ１４００で、左側ページブロック、右側ページブロック、及び回転ページブロックの動きが、選択されたページ数に基づいて且つ静止ベース線と側部がｙ軸上に置かれたジオメトリ物体とによって形成された平面に関して、アニメーションされる。それから、ステップＳ１５００で、より多くのページがめくられるべきかどうかが決定される。この決定は、例えば、文書の全ページがめくられたかどうか、あるいは少なくとも所定の時間量に対してページが開かれているかどうかに基づいてよい。そうであれば、処理はステップＳ１３００にジャンプして戻る。そうでなければ、この方法の処理はステップＳ１６００に続き、そこでこの方法の処理が終了する。
【００６４】
図２７Ａ及びＢは、選択されたページ数に基づいて且つベース線及びジオメトリ物体に関して、左側ページブロック、右側ページブロック、及び回転ページブロックの動きをアニメーションするための例示的な方法の概略フローチャート図である。
【００６５】
この方法の処理はステップＳ１４００で始まり、ステップＳ１４０５に続いて、ここで例えば右側ページブロックが回転ページブロックと新しい右側ページブロックとに分割される。先に論じたように、回転ページブロックは回転されるべきページ数を表す第１の部分であり、新しい右側ページブロックは、第１の部分が取り除かれた後に右側ページブロックに残るページを表す第２の部分である。先に述べたように、回転ページブロックの厚さは、回転対象のページ数と個々のページの厚さとを乗算することによって決定され得て、新しい右側ページブロックの厚さは、最初の右側ページブロックと回転ページブロックとの間の差であり得て、左側ページブロックの頂面と回転ページブロックの頂面とはベース線と同一線上のままであり得る。処理はそれから、ステップＳ１４１５に続く。
【００６６】
ステップＳ１４１５にて、アニメーション時間ｔ´が、回転ページブロックをブックの一方の側からブックの他方の側に回転するために必要とされる時間に等しく設定され、アニメーション時間ｔは零に設定される。同時に、ベース線の座標、ならびに、９０度に等しい円錐角とｙ軸上の特定の位置に存在する円錐頂点とを有するジオメトリ円錐のような３次元形状の座標が計算される。
【００６７】
次に、ステップＳ１４２０において、左側ページブロック、右側ページブロック、及び回転ページブロックの並進及び回転が、アニメーション時間ｔにおいて、例えば上述の式を使用して決定される。
【００６８】
ステップＳ１４２５において、ジオメトリ円錐が、左側ページブロックと右側ページブロックとの間に、好ましくは円錐の側部がｙ軸上に位置するように置かれる。
【００６９】
次に、例えば図示しないステップＳ１４３０において、読者は、ページめくりを開始するためのページ位置を選択し、この選択がシステムによって受けとられる。
【００７０】
それからステップＳ１４３５にて、ページめくりが開始される回転ページブロック上の選択された点、例えば図１９の点Ｇ´の位置の座標、及び円錐上のその対応する点の座標が、特定の円錐角及び円錐頂点位置に対する円錐のジオメトリの関数に基づいて決定される。同時に、回転ページブロック上の残りの点がマッピングされる円錐上の他の点の座標が、円錐のジオメトリに基づいて計算される。
【００７１】
次に、例えば図示しないステップＳ１４４５にて、回転ページブロックの並進された／第２の接続点、例えば図２０の点（単数又は複数）Ｊ´、Ｈ´が、ページめくりアニメーションの開始時、例えば図２０におけるアニメーション時間ｔ、点Ｊ´、Ｈ´、及び点Ｃ´の関数に基づいて、例えば上述の式を使用して決定される。
【００７２】
次に、ステップＳ１４５０において、回転ページブロックは、回転ページブロック上の点（例えば点Ｐ）を円錐上のそれらの対応する点（例えば点Ｔ）にマッピングすることによって、変形される。同時に、回転ページブロックは、仮想ブックの綴じ目の周りを回転する。点、例えばＪ´、Ｈ´、及びＰは、アニメーション時間ｔにおいて決定され得るので、点Ｊ´、Ｈ´、及びＰ、並びに回転ページブロックの残りの点の位置は、アニメーション時間ｔ´の間の特定の点において、回転ページブロックが比較的一定の速度で移動するか、あるいは可変速度で移動するかを決定されることができる。
【００７３】
なお、例えば図示しないステップＳ１４５５において、右側ページブロック、例えば図２１のＥ´Ｆ´Ｉ´Ｈ´は、回転ページブロックの点（単数又は複数）Ｊ´、Ｈ´の動きに基づいて、上方に並進される。右側ページブロック、例えば図２１のＥ´Ｆ´Ｉ´Ｈ´は、アニメーションの間を通じて回転ページブロックに接続されたままであってもよい。
【００７４】
ステップＳ１４６０で、左側ページブロック、例えば図２１のＡ´Ｂ´Ｃ´Ｄ´が、回転ページブロックの例えば点Ｃ´の動きに基づいて下方に並進される。左側ページブロック、例えばＡ´Ｂ´Ｃ´Ｄ´は、アニメーションの間を通じて回転ページブロックに接続されたままであってもよい。
【００７５】
次に、例えば図示しないステップＳ１４６５にて、左側ページブロック、右側ページブロック、及び回転ページブロックが表示される。
【００７６】
それから、ステップＳ１４７０にて、時間測定が行われて、ｔが、ページめくりアニメーションの開始時からの経過時間に等しく設定される。ステップＳ１４７５において、アニメーション時間ｔが所定の時間量ｔ´よりも少ないかどうかが判定される。上述のように、所定の時間量ｔ´は、回転ページブロックが右側ページブロックから左側ページブロックまで回転するために必要とされる時間に対応する。もしそうであると、処理はステップＳ１４２０に続く。そうでなければ、処理はステップＳ１４８０にジャンプする。
【００７７】
処理がステップＳ１４２０にジャンプした場合には、ステップＳ１４２０にて、以前の円錐角及び円錐頂点位置とは異なる円錐角及び円錐頂点位置を有する新しい円錐形状（又は新しい円錐）が計算される。そしてＳ１４２０からＳ１４７０までが繰り返される。
【００７８】
ステップＳ１４８０にて、左側ページブロック及び回転ページブロックが合体されて新しい左側ページブロックを形成する。例えば、図２２及び図２３に示されているように、新しい左側ページブロックは、回転ページブロックを最初の左側ページブロックと合体する結果として生成される。これより、新しい左側ページブロックの頂面と新しい右側ページブロックの頂面とは、静止ベース線と同一線上になる。処理はそれからステップＳ１５００に続き、これは図２６のステップＳ１５００に相当する。
【００７９】
図２８は、アニメーション時間ｔ＝０において、左側ページブロック、右側ページブロック、及び回転ページブロックの点の座標を決定する方法の実施形態の概略を、より詳細に示すフローチャート図である。図２８に示されているように、この方法の処理はステップＳ１４０５で始まり、ステップＳ１４０６に続く。ステップＳ１４０６にて、回転ページブロックの厚さが、回転されるべき選択されたページ数と個々のページの所定の厚さとに基づいて決定される。それから、ステップＳ１４０７にて、新しい右側ページブロックの厚さが、最初の右側ページブロックの所定の厚さと回転ページブロックの厚さとの差に基づいて決定される。次に、ステップＳ１４０８にて、左側ページブロック、新しい右側ページブロック、及び回転ページブロックの点の初期座標が、決定される。処理はそれからステップＳ１４０９に続き、そこで、この方法の処理は図２７のステップＳ１４１５に戻る。
【００８０】
図２９は、文書回転制御システム５００の例示的な実施形態の概略を示す機能ブロック図である。図２９に示されているように、この文書回転制御システム５００は、入力／出力インターフェース５１０、コントローラ５２０、メモリ５３０、及びページブロック決定回路、ルーチン、又はアプリケーション５４０を含んでおり、各々は一つ又はそれ以上のデータバス５５０によって適切に相互接続されている。入力／出力インターフェース５１０は、リンク６１０によってディスプレー装置６００にリンクされ、且つ一つ又はそれ以上のリンク７１０によって一つ又はそれ以上のユーザ入力装置７００にリンクされている。
【００８１】
リンク５５０、６１０、及び７１０の各々は、それぞれの装置を文書回転制御システム５００に接続するために使用可能な任意の既知の又は後に開発される接続システムであることができる。また、リンク５５０、６１０、及び７１０が同じタイプである必要がない点も、理解されるべきである。
【００８２】
メモリ５３０は、可変の揮発性又は不揮発性のメモリ、あるいは不可変の又は固定メモリの任意の適切な組合せを使用して具現化されることができる。可変メモリは、揮発性であっても不揮発性であっても、スタティック又はダイナミックＲＡＭ、フロッピィディスク及びディスクドライブ、書き込み可能又は再書き込み可能な光ディスク及びディスクドライブ、ハードドライブ、フラッシュメモリなどの任意の一つ又はそれ以上を使用することによって、具現化されることができる。同様に、非可変又は固定メモリは、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、及びＣＤ−ＲＯＭ又はＤＶＤ−ＲＯＭディスク及びディスクドライブのような光ＲＯＭディスクなどの任意の一つ又はそれ以上を使用することによって、具現化される。
【００８３】
ユーザ入力装置７００は、３次元電子文書のページを回転させるために文書回転制御システム５００にデータ及び／又は制御信号を入力するための、一つ又はそれ以上のタッチパッド、タッチスクリーン、トラックボール、マウス、キーボード、スタイラス、あるいは任意の既知の又は後に開発されるユーザ入力装置７００であることができる。
【００８４】
一般に、ディスプレー装置６００は、仮想文書、及び上述されたような技法に従った左側ページブロック、右側ページブロック、及び回転ページブロックの動きを表示することができる任意の装置であることができる。
【００８５】
ページブロック決定回路、ルーチン、又はアプリケーション５４０は、ユーザ入力を受けとって、閉じた仮想ブック又は開いた仮想ブックの寸法及び座標を決定する。それから、ページブロック決定回路ルーチン、又はアプリケーション５４０は、アニメーション時間ｔにおける回転、並進、及び変形プロセスのために、左側ページブロック、右側ページブロック、及び回転ページブロックの寸法及び点座標を決定する。
【００８６】
図２９に従った３次元電子文書のページめくりのための文書回転制御システム５００の例示的な実施形態は、以下のようにして動作し得る。
【００８７】
ユーザ入力がユーザ入力装置（単数又は複数）７００からリンク７１０を介して、文書回転制御システム５００の入力／出力インターフェース５１０に出力される。このユーザ入力は、見る対象の仮想文書、前に又は後に回転されるべきページ数、及び文書上のどこが読者によってタッチされるかに関する情報を含んでいる。例えば変化している円錐形状（例えば円錐角及び円錐頂点位置に対する最大及び最小値）に関する変数は、ユーザによって入力されてもよく、あるいはページブロック決定回路、ルーチン、又はアプリケーション５４０にプログラムされてもよい。コントローラ５２０は、ユーザ入力情報をページブロック決定回路、ルーチン、又はアプリケーション５４０に入力する。
【００８８】
コントローラ５２０は、ページブロック決定回路、ルーチン、又はアプリケーション５４０を制御して、選択されたページ数及び個々のページの所定の厚さに基づいて、回転ページブロックの厚さを決定し、右側ページブロックを回転ページブロックと新しい右側ページブロックとに分割する。次に、コントローラ５２０は、ページブロック決定回路、ルーチン、又はアプリケーション５４０を制御して、回転及び変形プロセスにて使用される静止ベース線及びジオメトリ形状の位置を決定する。それから、コントローラ５２０は、ページブロック決定回路、ルーチン、又はアプリケーション５４０を制御して、回転、並進、及び変形プロセスのために、アニメーション時間ｔにおいて、左側ページブロック、右側ページブロック、及び回転ページブロックを規定する全ての点の点座標を決定する。最後に、コントローラ５２０はディスプレー装置６００を制御して、回転プロセスの間に左側ページブロック、右側ページブロック、及び回転ページブロックが回転、並進、及び変形するにつれて、アニメーションを表示する。
【図面の簡単な説明】
【００８９】
【図１】３次元電子ブックを含む仮想環境の実施形態を描く図であり、３次元電子ブックのあるものは開位置で示され、あるものは閉位置で示されている。
【図２】閉位置にある３次元電子ブックの図１のＡ−Ａ線に沿った断面図である。
【図３】開位置にある図１の３次元電子ブックの断面図である。
【図４】図１の３次元電子ブックのページをめくりを例示するページめくりの断面図である。
【図５】開位置にある３次元電子ブックを含む仮想環境の実施形態を描く図である。
【図６】閉位置にある図５の３次元電子ブックの断面図である。
【図７】開位置にある図５の３次元電子ブックの断面図である。
【図８】図５の３次元電子ブックにおける回転ページブロックの、例示的なページめくりの断面図である。
【図９】閉じた３次元電子ブックの実施形態を描く図である。
【図１０】閉位置にある図９の３次元電子ブックの断面図である。
【図１１】開いた３次元電子ブックを含む仮想環境の例示的な実施形態を描く図である。
【図１２】図１１の３次元電子ブックのページめくりの静止状態断面図である。
【図１３】ページめくりの開始時における回転ページブロックを含む、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図１４】回転ページブロックを反時計回りに４５度回転している、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図１５】回転ページブロックを反時計回りに９０度回転している、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図１６】回転ページブロックを反時計回りに１３５度回転している、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図１７】回転ページブロックを反時計回りに１８０度回転している、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図１８】回転ページブロックの回転の終了時における図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図１９】回転ページブロックの点を仮想ジオメトリ形状の上の点にマッピングすることによって回転ページブロックを変形することを含む、ページめくりの例示的な実施形態を描く図である。
【図２０】図１９に示された仮想ジオメトリ形状を使用している、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図２１】図１９に示された仮想ジオメトリ形状を使用して回転ページブロックを反時計回りに回転する、図１１の３次元電子ブックの例示的なページめくりを描く図である。
【図２２】回転ページブロックの回転の終了時における図１１の３次元電子ブックの例示的な状態を描く図である。
【図２３】回転ページブロックの回転の終了時における図１１の３次元電子ブックの例示的な状態を描く図である。
【図２４】図１９に示された仮想ジオメトリ形状を使用している、ある時点におけるページめくりアニメーションのフレームの例示的な実施形態を描く図である。
【図２５】図１９に示された仮想ジオメトリ形状を使用している、別の時点におけるページめくりアニメーションのフレームの例示的な実施形態を描く図である。
【図２６】３次元電子文書のページめくりのための例示的な方法の概略フローチャート図である。
【図２７Ａ】開いた３次元電子文書のベース線に直交する平面に位置する仮想ジオメトリ物体のベース線及び側部の座標に関して、回転ページブロックを表示する例示的な方法（注釈：図２６の主にＳ１４００に対応した）の概略フローチャート図であり、選択されたページ数に基づいて且つ１つのページ線及び２つのジオメトリ物体に関して、左側ページブロック、右側ページブロック、及び回転ページブロックの動きをアニメーションしている図である。
【図２７Ｂ】開いた３次元電子文書のベース線に直交する平面に位置する仮想ジオメトリ物体のベース線及び側部の座標に関して、回転ページブロックを表示する例示的な方法（注釈：図２６の主にＳ１４００に対応した）の概略フローチャート図であり、選択されたページ数に基づいて且つ１つのページ線及び２つのジオメトリ物体に関して、左側ページブロック、右側ページブロック、及び回転ページブロックの動きをアニメーションしている図である。
【図２８】左側ページブロック、右側ページブロック、及び回転ページブロックの点の座標を決定する例示的な方法の概略フローチャート図である。
【図２９】３次元電子文書のページをめくって表示するシステムの例示的な実施形態の概略ブロック図である。
【符号の説明】
【００９０】
６００  表示装置、７００  ユーザ入力装置、５２０  コントローラ、５１０  入力／出力インターフェース、５３０  メモリ、５４０  ページブロック決定回路、ルーチン、又はアプリケーション、５００  文書回転制御システム。
【図２】
2006172465.tif 000007
【図３】
2006172465.tif 000008
【図４】
2006172465.tif 000009
【図６】
2006172465.tif 000010
【図７】
2006172465.tif 000011
【図８】
2006172465.tif 000012
【図１０】
2006172465.tif 000013
【図１２】
2006172465.tif 000014
【図１３】
2006172465.tif 000015
【図１４】
2006172465.tif 000016
【図１５】
2006172465.tif 000017
【図１６】
2006172465.tif 000018
【図１７】
2006172465.tif 000019
【図１８】
2006172465.tif 000020
【図１９】
2006172465.tif 000021
【図２０】
2006172465.tif 000022
【図２１】
2006172465.tif 000023
【図２２】
2006172465.tif 000024
【図２３】
2006172465.tif 000025
【図２６】
2006172465.tif 000026
【図２７Ａ】
2006172465.tif 000027
【図２７Ｂ】
2006172465.tif 000028
【図２８】
2006172465.tif 000029
【図２９】
2006172465.tif 000030
【図１】
2006172465.tif 000031
【図５】
2006172465.tif 000032
【図９】
2006172465.tif 000033
【図１１】
2006172465.tif 000034
【図２４】
2006172465.tif 000035
【図２５】
2006172465.tif 000036