(57)【要約】【課題】  表計算アプリケーションにおけるアニメーション遷移および効果のための概念および技術を、本明細書で説明する。本明細書で開示する概念および技術によれば、コンピュータシステムは、視覚イメージ構成要素を実行することができる。【解決手段】  コンピュータシステムは、表計算データの視覚イメージに含まれるシーンの選択を検出することができる。コンピュータシステムはまた、選択されたシーンのための効果を生成することもできる。いくつかの実施形態では、コンピュータシステムは、別のシーンを識別し、シーン間の遷移を生成する。コンピュータシステムは、効果アニメーションおよび遷移アニメーションを出力することができる。【選択図】図１
2015534662.tif 000002
【特許請求の範囲】
【請求項１】
表計算アプリケーションにおいてアニメーションを生成するためのコンピュータ実装方法であって、
視覚イメージ構成要素を実行するコンピュータシステムにおいて、表計算データの視覚イメージに含まれるシーンの選択を検出すること、
前記コンピュータシステムによって、前記シーンの開始時間および前記シーンの終了時間に基づいて、前記シーンの持続時間を決定すること、
前記コンピュータシステムによって、前記シーンがレンダリングされる視点から、前記シーンのレンダリング中に適用される視覚効果を含む効果の選択を受信すること、
前記コンピュータシステムによって、前記持続時間に基づく前記シーン、および、前記シーンのための前記効果を生成すること、ならびに
前記コンピュータシステムによって、前記シーンに適用される前記効果に対応する効果アニメーションを出力すること
を行うためのコンピュータ実装動作を行うことを含む、方法。
【請求項２】
前記効果を生成することが、
前記シーンのための効果タイプを決定すること、
前記効果の持続時間、および、前記効果の速度または大きさを決定すること、ならびに
前記シーンの前記効果タイプおよび前記持続時間、ならびに、前記視点のポジショニングに基づいて、前記効果アニメーションを生成すること
を含む、請求項１に記載の方法。
【請求項３】
前記効果を生成することが、
前記効果のためのカメラ距離を決定することであって、前記カメラ距離が、前記効果アニメーションのための前記視点と、前記シーンに含まれるデータの中心点との間の距離を含むこと
をさらに含む、請求項２に記載の方法。
【請求項４】
前記効果タイプが、軌道効果、８の字飛行効果、往復効果、直線効果、および静止効果を含むグループから選択される、請求項３に記載の方法。
【請求項５】
前記視覚イメージに含まれるさらなるシーンを識別すること、
前記シーンと前記さらなるシーンとの間の遷移を生成すること、および
前記シーンと前記さらなるシーンとに適用される前記遷移に対応する、遷移アニメーションを出力すること
をさらに含む、請求項１に記載の方法。
【請求項６】
前記遷移を生成することが、
前記遷移のための遷移タイプを決定すること、
前記シーンに対応する開始ロケーションと、前記さらなるシーンに対応する終了ロケーションとの間の距離を決定すること、
前記遷移の持続時間を決定すること、ならびに
前記遷移タイプ、前記距離、および前記持続時間に基づいて、前記遷移アニメーションを生成すること
をさらに含む、請求項５に記載の方法。
【請求項７】
コンピュータ可読命令を記憶したコンピュータストレージ媒体であって、前記コンピュータ可読命令は、コンピュータによって実行されるとき、前記コンピュータに、
表計算データの視覚イメージに含まれる、シーンおよびさらなるシーンの表現、ならびに、効果タイプと、前記シーンの開始時間および前記シーンの終了時間に基づく前記効果の持続時間と、前記効果の速度または前記効果の大きさと、前記シーンと前記さらなるシーンとの間の遷移のための遷移タイプと、前記遷移の持続時間とを指定するための制御を含む、ユーザインターフェースを生成すること、
前記シーンに対応する前記表現のうちの１つの選択を検出すること、
前記開始時間および前記終了時間に基づいて、前記シーンの持続時間を決定すること、
前記ユーザインターフェースを介して受信された選択に基づいて、前記選択されたシーンに適用されるべき効果を識別することであって、前記効果が、前記シーンがレンダリングされる視点から、前記シーンのレンダリング中に適用される視覚効果を含み、前記効果タイプ、前記効果の前記持続時間、および前記効果の前記速度または大きさに基づくこと、
前記視覚イメージに含まれるさらなるシーンを識別すること、
前記シーンと前記さらなるシーンとの間の遷移を生成することであって、前記遷移が、前記遷移タイプおよび前記持続時間に基づくこと、ならびに
効果アニメーションおよび遷移アニメーションを出力すること
を行わせる、コンピュータストレージ媒体。
【請求項８】
前記遷移タイプが、カット遷移タイプ、フェード遷移タイプ、線形遷移タイプ、円弧遷移タイプ、またはズームイン／ズームアウト遷移タイプを含むグループから選択される、１つの効果を含む、請求項７に記載のコンピュータストレージ媒体。
【請求項９】
前記効果タイプが、軌道効果、８の字飛行効果、往復効果、直線効果、および静止効果を含むグループから選択される、請求項７に記載のコンピュータストレージ媒体。
【請求項１０】
前記効果アニメーションおよび前記遷移アニメーションを出力することが、
前記効果アニメーションおよび前記遷移アニメーションを含む、視覚イメージのプレビューを生成すること、ならびに
前記プレビューを前記ユーザインターフェースにおいて提示すること
を含む、請求項７に記載のコンピュータストレージ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表計算アプリケーションにおけるアニメーション遷移および効果に関する。
【背景技術】
【０００２】
[0001]  表計算アプリケーション、報告アプリケーション、または他のデータ提示アプリケーションは、視覚表現におけるデータの提示をサポートすることがある。データの視覚表現には、２次元および／または３次元の円グラフ、折れ線グラフ、棒グラフ、またはチャートなどが含まれ得る。ユーザは、データの視覚表現を生成して、データへの洞察、データ点間の関係、または傾向などを得ようと試みることがある。しかしながら、いくつかのデータでは、これらの手法によるグラフ化および／またはチャート化が容易に可能ではないことがある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
[0002]  具体的には、いくつかのデータは、地理学的および／または時間的な構成要素を含み得る。表計算アプリケーションは、これらのデータをチャート、グラフ、または他の視覚表現において提示し得るが、このタイプの情報の表示は、提示されているデータに意味を与えないことがあるカラーコード、データラベル、または他のフォーマットに限定されることがある。さらに、これらのデータの提示は、視覚的にわかりやすい方法でデータを提供しないことがあり、したがって、閲覧者によって理解されないことがある。
【０００４】
[0003]  これらおよび他の考慮事項に関して、本明細書でなされる本開示を提示する。
【課題を解決するための手段】
【０００５】
[0004]  表計算アプリケーションにおけるアニメーション遷移および効果のための概念および技術を、本明細書で説明する。本明細書で開示する概念および技術によれば、コンピュータシステムは、視覚イメージ構成要素を実行することができる。視覚イメージ構成要素は、表計算アプリケーション中に含まれてもよく、および／または、表計算データの視覚イメージを提示するように構成され得る。本明細書で使用する「視覚イメージ」は、マップ、球体、または、地理学的コンテキストを提供することができる他の表面の、経時的な表計算データのアニメーション化されたレンダリングを含み得る。様々な実施形態によれば、視覚イメージは、１つまたは複数のシーンを含み得る。視覚イメージは、データ中に含まれる、地理学的情報、ならびに／または、時間値、タイムスタンプ、および／もしくは他の時間的情報に、少なくとも部分的に基づき得る。視覚イメージは、データ中に含まれる、地理学的情報および／または他のロケーションデータに基づいて、マップまたは球体上の対応するロケーションにデータを示す、レンダリングされた球体またはマップを含み得る。
【０００６】
[0005]  加えて、本明細書で開示する概念および技術の実施形態は、カメラ効果および／またはカメラ遷移をシーンに、および／またはシーン間に追加するために使用され得る。本明細書で使用する「カメラ」は、特定のシーンおよび／または複数のシーンのための視点に対応する仮想カメラを指し得る。カメラの視点、経路、向き、および／または他の態様は、関連付けられた効果、ならびに、シーン開始時間および終了時間に基づいて決定され得る。シーンのための開始時間および終了時間は、ユーザによって指定もしくは選択されるか、または、視覚イメージ構成要素によって決定され得る。視覚イメージ構成要素はまた、シーンに適用するべき効果の選択を受信することもできる。視覚イメージ構成要素は、シーンのレンダリング中にカメラをアニメーション化する、シーンのための効果を生成することができる。効果は、シーン中のカメラの中心点もしくは他の焦点の周囲の、または、カメラの中心点もしくは他の焦点を過ぎる、カメラの動きを含み得る。
【０００７】
[0006]  視覚イメージ構成要素はまた、シーン間でカメラをアニメーション化する、シーン間の遷移を生成することもできる。視覚イメージ構成要素は、遷移の持続時間を受信し、開始ロケーションおよび終了ロケーションを受信し、それらのロケーション間の経路を決定することができる。視覚イメージ構成要素はまた、遷移中のカメラの向きを決定することもできる。遷移は、飛行経路に沿ったカメラの動き、および／または、カメラの変化するズームレベルを含み得る。遷移および効果は、視覚イメージ構成要素によって表示され、および／または、視覚イメージ構成要素によって他の方法で出力され得る。
【０００８】
[0007]  一態様によれば、視覚イメージ構成要素を実行するコンピュータシステムは、表計算データを受信する。表計算データは、視覚イメージを含んでもよく、および／または、視覚イメージは、視覚イメージ構成要素および／または他のデバイスによって生成されてもよい。コンピュータシステムは、例えば、視覚イメージを提示するユーザインターフェースを介した、視覚イメージのシーンの選択を検出することができる。コンピュータシステムは、シーンのための効果を生成することができる。効果は、効果のための既知のまたは選択された効果タイプ、効果持続時間、効果速度、および／またはカメラ距離に基づいて生成され得る。コンピュータシステムはまた、効果アニメーションを出力することもできる。
【０００９】
[0008]  別の態様によれば、コンピュータシステムは、視覚イメージにおいて２つのシーンを識別し、それらのシーン間の遷移を生成することができる。コンピュータシステムは、既知のまたは選択された遷移タイプ、シーンに示された地理的ロケーション間の距離、および、遷移時間または持続時間に基づいて、遷移を生成することができる。コンピュータシステムはまた、遷移アニメーションを出力することもできる。いくつかの実施形態では、コンピュータシステムは、ユーザインターフェース中に含まれるプレビュー画面において、効果アニメーションおよび遷移アニメーションを出力する。
【００１０】
[0009]  上記で説明した主題は、コンピュータ制御装置、コンピュータプロセス、コンピューティングシステムとして、または、コンピュータ可読ストレージ媒体などの製造品として実装され得ることを理解されたい。これらおよび様々な他の特徴は、以下の発明を実施するための形態を読み、関連する図面を検討することから、明らかになるであろう。
【００１１】
[0010]  本概要は、以下で発明を実施するための形態においてさらに説明する、簡略化した形態における概念の選択を導入するために提供される。本概要は、請求する主題の主要な特徴または必須の特徴を識別するように意図されず、また、請求する主題の範囲を限定するために本概要が使用されることも意図されない。さらに、請求する主題は、本開示のいずれかの部分で言及するいずれかまたはすべての欠点を解決する実装形態に限定されない。
【図面の簡単な説明】
【００１２】
【図１】[0011]本明細書で開示する様々な実施形態のための例示的な動作環境を示すシステム図である。
【図２】[0012]例示的な実施形態による、本明細書で説明する視覚イメージ構成要素の追加の態様を示すブロック図である。
【図３】[0013]例示的な実施形態による、表計算アプリケーションにおいてアニメーション効果および遷移を生成するための方法の態様を示す流れ図である。
【図４】[0014]例示的な実施形態による、表計算アプリケーションにおいてアニメーション効果を生成するための方法の態様を示す流れ図である。
【図５】[0015]例示的な実施形態による、表計算アプリケーションにおいてアニメーション遷移を生成するための方法の態様を示す流れ図である。
【図６】[0016]例示的な実施形態による、アニメーション効果を構成するための、本明細書で開示する概念および技術の追加の態様を示す線図である。
【図７Ａ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｂ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｃ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｄ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｅ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｆ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｇ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図７Ｈ】[0017]例示的な実施形態による、例示的なアニメーション効果および遷移の態様を示す線図である。
【図８Ａ】[0018]例示的な実施形態による、表計算アプリケーションにおいてアニメーション遷移および効果を構成および出力する際に使用するための例示的なＵＩを示すＵＩ図である。
【図８Ｂ】[0018]例示的な実施形態による、表計算アプリケーションにおいてアニメーション遷移および効果を構成および出力する際に使用するための例示的なＵＩを示すＵＩ図である。
【図９】[0019]本明細書で提示する実施形態の態様を実装可能なコンピューティングシステムのための、例示的なコンピュータハードウェアおよびソフトウェアアーキテクチャを示すコンピュータアーキテクチャ図である。
【図１０】[0020]本明細書で提示する実施形態の態様を実装可能な分散コンピューティング環境を示す図である。
【図１１】[0021]本明細書で提示する実施形態の態様を実装可能なコンピュータシステムアーキテクチャを示すコンピュータアーキテクチャ図である。
【発明を実施するための形態】
【００１３】
[0022]  以下の詳細な説明は、表計算アプリケーションにおけるアニメーション遷移および効果のための概念および技術を対象とする。本明細書で説明する概念および技術によれば、コンピュータシステムは、視覚イメージ構成要素を実行することができる。視覚イメージ構成要素は、表計算データの視覚イメージを含むか、またはそれを生成するために使用され得る、表計算データを取得することができる。視覚イメージは、１つまたは複数のシーンを含んでもよく、表計算データ中に含まれる地理学的情報および／または時間情報に基づいて、地理的および時間的コンテキストにおいて、表計算データを示すことができる。視覚イメージ構成要素は、カメラ効果をシーンに追加するように、および／または、２つ以上のシーン間にカメラ遷移を追加するように構成され得る。効果は、シーン中のカメラの中心点もしくは他の焦点の周囲の、または、カメラの中心点もしくは他の焦点を過ぎる、カメラの動きを含んでもよく、遷移は、飛行経路に沿ったカメラの動き、および／または、カメラの変化するズームレベルを含み得る。
【００１４】
[0023]  視覚イメージ構成要素は、例えば、視覚イメージを提示するユーザインターフェースを介した、視覚イメージのシーンの選択を検出するように構成され得る。視覚イメージ構成要素は、効果のための既知のまたは選択された効果タイプ、効果持続時間、効果速度、および／またはカメラ距離に少なくとも部分的に基づいて、シーンのための効果を生成するように構成され得る。視覚イメージ構成要素はまた、視覚イメージにおいて２つのシーンを識別し、それらのシーン間の遷移を生成するようにも構成され得る。視覚イメージ構成要素は、既知のまたは選択された遷移タイプ、シーンに示された地理的ロケーション間の距離、および遷移の持続時間に基づいて、遷移を生成するように構成され得る。視覚イメージ構成要素は、効果アニメーションおよび遷移アニメーションを出力するように構成され得る。
【００１５】
[0024]  本明細書で説明する主題を、コンピュータシステムにおけるオペレーティングシステムおよびアプリケーションプログラムの実行とともに実行するプログラムモジュールの一般的なコンテキストにおいて提示するが、他の実装形態が他のタイプのプログラムモジュールとの組合せで行われ得ることは、当業者には認識されよう。一般に、プログラムモジュールには、ルーチン、プログラム、構成要素、データ構造、および、特定のタスクを行うか、または特定の抽象データタイプを実装する、他のタイプの構造が含まれる。その上、本明細書で説明する主題は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの、またはプログラマブルな家庭用電子機器、ミニコンピュータ、およびメインフレームコンピュータなどを含む、他のコンピュータシステム構成とともに実施され得ることは、当業者には理解されよう。
【００１６】
[0025]  以下の詳細な説明では、本明細書の一部を形成し、例として、具体的な実施形態または例が示される、添付の図面を参照する。次に、いくつかの図の全体にわたって同様の数字が同様の要素を表現する、図面を参照しながら、表計算アプリケーションにおけるアニメーション遷移および効果のためのコンピューティングシステム、コンピュータ可読ストレージ媒体、およびコンピュータ実装方法の態様を提示する。
【００１７】
[0026]  次に図１を参照しながら、本明細書で提示する様々な実施形態のための１つの動作環境１００の態様を説明する。図１に示す動作環境１００は、通信ネットワーク（「ネットワーク」）１０４の一部として動作し、および／またはそれと通信している、コンピュータシステム１０２を含む。本明細書で開示する概念および技術の様々な実装形態によれば、コンピュータシステム１０２の機能は、１つまたは複数のアプリケーションサーバ、ウェブサーバ、データストレージシステム、ネットワークアプライアンス、専用ハードウェアデバイス、および／または、他のサーバコンピュータもしくはコンピューティングデバイスによって提供され得る、クラウドベースのコンピューティングプラットフォームによって提供され得る。
【００１８】
[0027]  いくつかの他の実施形態によれば、コンピュータシステム１０２は、タブレットコンピューティングデバイス、パーソナルコンピュータ（「PC」）、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、携帯電話もしくはスマートフォン、他のモバイルコンピューティングデバイス、または携帯情報端末（「PDA」）など、ユーザコンピューティングデバイスを含み得る。コンピュータシステム１０２のいくつかの例示的なアーキテクチャについては、以下で図６から図８までを参照しながら示し、説明する。本明細書で開示する概念および技術を示し、説明するために、コンピュータシステム１０２の機能を、サーバコンピュータによって提供されるものとして、本明細書で説明する。上記で説明したコンピュータシステム１０２の上記の代替実施形態に照らして、この例は例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００１９】
[0028]  コンピュータシステム１０２は、オペレーティングシステム１０６、ならびに、例えば、表計算アプリケーション１０８、視覚イメージ構成要素１１０、および／または他のアプリケーションプログラムなど、１つまたは複数のアプリケーションプログラムを実行するように構成され得る。オペレーティングシステム１０６は、コンピュータシステム１０２の動作を制御するためのコンピュータプログラムである。アプリケーションプログラムは、オペレーティングシステム１０６の上で実行して、表計算アプリケーションにおいて時間的情報を表示するための本明細書で説明する機能を提供するように構成された、実行可能プログラムである。
【００２０】
[0029]  具体的には、表計算アプリケーション１０８は、表計算など、表形式または他の構造化データを作成、操作、記憶し、および／または、場合によってはそのデータと対話するように構成され得る。本明細書で開示する概念および技術のいくつかの実施形態によれば、表計算アプリケーション１０８の機能は、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる表計算アプリケーションのＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬファミリのメンバによって提供され得る。いくつかの他の実施形態では、表計算アプリケーション１０８の機能は、データベースアプリケーション、データ報告アプリケーション、データ提示アプリケーション、またはそれらの組合せなどによって提供され得る。
【００２１】
[0030]  いくつかの実装形態によれば、表計算アプリケーション１０８は、アプリケーションサーバおよび／またはウェブサーバなど、コンピュータシステム１０２における１つまたは複数のサーバコンピュータによって実行され得る。したがって、表計算アプリケーション１０８の機能は、他のコンピューティングデバイスによってアクセスされ、および／または、コンピュータシステム１０２においてアクセスされ得る。図示の実施形態では、表計算アプリケーション１０８の機能は、ユーザコンピューティングデバイス１１２によってアクセスおよび／または対話され得る。ユーザコンピューティングデバイス１１２の機能は、例えば、タブレットコンピューティングデバイス、スマートフォン、ラップトップコンピュータ、デスクトップコンピュータ、他のコンピューティングデバイス、またはそれらの組合せなどによって提供され得る。ユーザコンピューティングデバイス１１２は、例えば、ネットワーク１０４、プライベートネットワーク、直接ワイヤレスもしくはワイヤード接続、インターネット、ならびに／または、これらおよび他のネットワークおよび／もしくは通信リンクの組合せなど、１つまたは複数のリンクまたはネットワークを介して、コンピュータシステム１０２と通信することができる。
【００２２】
[0031]  図１では見えないが、ユーザコンピューティングデバイス１１２は、１つまたは複数のクライアントアプリケーションを実行することができる。クライアントアプリケーションは、コンピュータシステム１０２上で実行している表計算アプリケーション１０８にアクセスするための、ウェブブラウザアプリケーションおよび／または他のアプリケーションを含み得る。いくつかの実施形態では、表計算アプリケーション１０８は、ユーザコンピューティングデバイス１１２、または、本明細書で説明するコンピュータシステム１０２の機能を含み得る他のデバイス上で、ローカルに実行され得る。表計算アプリケーション１０８は、ハードウェア、ソフトウェア、および／またはそれら２つの組合せとして実装され得る。さらに、表計算アプリケーション１０８は、ユーザコンピューティングデバイス１１２、コンピュータシステム１０２、および／または他のコンピューティングプラットフォーム上で、１つまたは複数のアプリケーションプログラムモジュールおよび他の構成要素を含み得る。本明細書でより詳細に説明するように、ユーザコンピューティングデバイス１１２は、時間的情報をユーザ１１６に提示するために、１つまたは複数のユーザインターフェース（「UI」）１１４を生成することができる。
【００２３】
[0032]  様々な実施形態によれば、表計算アプリケーション１０８は、表計算データ１１８中に含まれ得る表形式または他の構造化データを生成、操作、および／または記憶するように構成され得る。表計算データ１１８はまた、データベースのテーブル、または、オブジェクトストアに記憶されたオブジェクトなどに記憶され得る。表計算アプリケーション１０８の機能は、一般に理解されているので、表計算アプリケーション１０８については、本明細書でさらに詳細に説明しない。
【００２４】
[0033]  様々な実装形態によれば、表計算データ１１８は、コンピュータシステム１０２によって、ローカルまたはリモートデータソース１２０から取得され得る。いくつかの実施形態では、データソース１２０は、コンピュータシステム１０２の、またはそれに関連付けられた、メモリ、ディスクドライブ、または他のデータストレージ要素を含み得る。図１に示す実施形態など、いくつかの他の実施形態では、データソース１２０は、ネットワークドライブ、ネットワーク１０４の一部として動作し、および／もしくはそれと通信しているサーバコンピュータ、データベースもしくは他の実際もしくは仮想のデータストレージ要素、ならびに／または、他のデータストレージデバイスを含み得る。したがって、データソース１２０は、コンピュータシステム１０２のローカルおよび／またはリモートにある、ほとんどあらゆるタイプのデータストレージデバイスを含み得ることを理解されたい。
【００２５】
[0034]  視覚イメージ構成要素１１０は、表計算アプリケーションにおいて時間的情報を表示するための、本明細書で説明する機能を提供するために、コンピュータシステム１０２によって実行され得る。具体的には、視覚イメージ構成要素１１０は、表計算アプリケーション１０８から、および／またはデータソース１２０から直接、表計算データ１１８を取得するように、ならびに、表計算データ１１８に基づいて、地理学的および／または時間的コンテキストにおける表計算データ１１８の３次元の視覚イメージを生成するように構成され得る。いくつかの実施形態では、視覚イメージ構成要素１１０は、表計算アプリケーション１０８の構成要素として実装されてもよく、いくつかの実施形態では、視覚イメージ構成要素１１０は、表計算アプリケーションとは別個の構成要素として実装されてもよい。したがって、表計算アプリケーション１０８および視覚イメージ構成要素１１０は、コンピュータシステム１０２の構成要素として図示されるが、これらの構成要素の各々またはその組合せは、ネットワーク１０４および／もしくはコンピュータシステム１０２上で動作しているか、またはそれと通信している、スタンドアロンデバイスもしくはその構成要素として、またはその内部において実施され得ることを理解されたい。したがって、図示の実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではない。
【００２６】
[0035]  いくつかの実施形態では、視覚イメージ構成要素１１０は、表計算アプリケーション１０８のためのプラグインまたはアドインとして実装され得る。いくつかの他の実施形態では、視覚イメージ構成要素１１０は、本明細書で説明する機能を提供することができる、アプリケーションプログラミングインターフェース（「API」）のサービスおよび／またはセットを含み得る。したがって、視覚イメージ構成要素１１０は、ハードウェア、ソフトウェア、またはそれらの組合せとして実装され得ることを理解されたい。
【００２７】
[0036]  本明細書で開示する概念および技術の様々な実施形態によれば、視覚イメージ構成要素１１０は、１つまたは複数のジオコーディングサービス１２２にアクセスするように構成され得る。ジオコーディングサービス１２２は、表計算データ１１８中に含まれる地理学的データを、地理的情報にマッピングするように構成され得る。したがって、例えば、視覚イメージ構成要素１１０は、例えば、所在地住所、市、州、または郵便番号など、表計算データ１１８中に含まれる地理学的データを、ジオコーディングサービス１２２に提供することができる。ジオコーディングサービス１２２は、この地理学的データを、緯度および経度情報、ならびに／または、他のジオコーディングされたロケーションデータにマッピングすることができる。したがって、ジオコーディングサービス１２２は、ジオコーディングサービス１２２によってエクスポーズされた１つまたは複数のＡＰＩを介して、コンピュータシステム１０２によって呼び出され得るが、これは必ずしもそうであるとは限らないことは理解されよう。さらに、ジオコーディングサービス１２２は、ジオコーディングされたロケーションデータへの地理学的データのマッピングを表現する地理的マッピングデータ１２４を、コンピュータシステム１０２に提供するように構成され得るが、これは必ずしもそうであるとは限らない。
【００２８】
[0037]  いくつかの実施形態では、視覚イメージ構成要素１１０は、例えば、ネットワーク１０４、インターネット、他のネットワーク、および／またはそれらの組合せなど、１つまたは複数のネットワークを介して、ジオコーディングサービス１２２にアクセスすることができる。いくつかの他の実施形態では、ジオコーディングサービス１２２は、コンピュータシステム１０２上で実装され得る。１つの企図される実施形態では、ジオコーディングサービス１２２は、視覚イメージ構成要素１１０の構成要素として実装される。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００２９】
[0038]  視覚イメージ構成要素１１０はまた、マップデータ１２６を取得し、および／またはそれにアクセスするようにも構成され得る。マップデータ１２６は、本明細書で説明するように、３次元の地理学的マップの作成のために、ジオロケーションおよび／またはグラフィカルデータを提供するために使用され得る。視覚イメージ構成要素１１０は、例えば、マップサーバ１２８などのコンピューティングデバイスから、またはそれにおいて、マップデータ１２６を取得し、またはそれにアクセスするように構成され得る。いくつかの実施形態では、マップサーバ１２８の機能は、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＢＩＮＧ検索エンジンなどの検索エンジンによって実行される、マッピングアプリケーションによって提供され得る。マップサーバ１２８の機能は、追加および／または他のデバイスおよび／またはアプリケーションによって提供され得るので、この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００３０】
[0039]  コンピュータシステム１０２は、例えば、ネットワーク１０４など、１つまたは複数のネットワークを介して、マップサーバ１２８にアクセスすることができる。いくつかの実施形態では、視覚イメージ構成要素１１０は、マップデータ１２６からのマップタイルにアクセスするように、および、３次元の球体の骨組みの上にマップタイルをひとつにまとめて、３次元の地球儀を作成するように構成され得る。視覚イメージ構成要素１１０は、ジオコーディングサービス１２２からの、緯度および経度データなどのジオコーディングされたロケーションデータを使用して、表計算データ１１８中に含まれるデータの視覚イメージを、３次元の地球儀上に配置するように構成され得る。したがって、視覚イメージ構成要素１１０の様々な実施形態は、地理的データの表示を生成するように構成され得る。
【００３１】
[0040]  本明細書で使用する「視覚イメージ」は、アニメーション、シーン、および／または、複数のシーンのツアーを含み得る。アニメーション、シーン、および／または、シーンのツアーは、表計算データ１１８を、球体、マップ、または、表計算データ１１８に関連付けられた地理的ロケーションの他の表現上に表現することができる。具体的には、表計算データ１１８は、球体、マップ、または他の表面の視覚表現上で、表計算データ１１８中に含まれ、および／または上記で説明したようにロケーションにマッピングされた、地理的ロケーションデータに対応する点において表示され得る。視覚イメージはまた、経時的なデータ変化を示すこともできる。
【００３２】
[0041]  ユーザ１１６は、ユーザコンピューティングデバイス１１２のディスプレイを通して、表計算アプリケーション１０８および視覚イメージ構成要素１１０と対話して、表計算データ１１８の視覚イメージを作成および／またはナビゲートし得る。いくつかの実施形態では、ユーザ１１６は、タッチスクリーン、キーボード、マウス、ゲームコントローラ、またはそれらの組合せなど、ユーザコンピューティングデバイス１１２の１つまたは複数の入力デバイスを使用し得る。ＵＩ１１４は、タッチスクリーン、モニタ、ディスプレイ、他のディスプレイ表面もしくはデバイス、またはそれらの組合せなどの上で提示され得る。
【００３３】
[0042]  視覚イメージ構成要素１１０はまた、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で説明する機能を提供するために、コンピュータシステム１０２によって実行され得る。具体的には、視覚イメージ構成要素１１０は、上記で説明したように、表計算データ１１８を取得するように、および、表計算データ１１８の視覚イメージを生成するように構成され得る。本明細書で開示する概念および技術の様々な実施形態によれば、視覚イメージ構成要素１１０は、シーンを作成、修正、および／または保存するための、様々なユーザインターフェースを生成および／または提示するように構成され得る。具体的には、視覚イメージ構成要素１１０は、複数のシーンのシーケンスを指すために本明細書で使用する「ツアー」中に、シーンを配置するように構成され得る。
【００３４】
[0043]  ツアーのシーンは、視覚イメージ構成要素１１０によって、本明細書では「カメラ」と呼ぶ、視点または観点からレンダリングされ得る。視覚イメージ構成要素１１０によってレンダリングされる、本明細書で説明するシーンには、物理的な「カメラ」がないことを理解されたい。したがって、本明細書で使用する「カメラ」は、仮想カメラに関連付けられた視点を指し得る。カメラの他の態様は、オプション、ユーザ設定、またはそれらの組合せなどによって設定され得る。これらの態様には、限定はしないが、カメラのロケーション、カメラの視野、カメラの焦点距離および／またはビューアングル、カメラの視線および／またはティルト、スキュー、もしくは他の向き、あるいはカメラの動きなどが含まれ得る。したがって、視覚イメージ構成要素１１０は、本明細書で説明するシーンを、実際のカメラで撮影されたかのように生成するように構成され得る。
【００３５】
[0044]  さらに、視覚イメージ構成要素１１０の様々な実施形態は、シーンにおいて様々なカメラ効果を適用および／もしくは修正するように、ならびに／または、シーン間の様々なカメラ遷移を適用および／もしくは修正するように構成され得る。特に図３から図８Ｂまでを参照しながら、本明細書で詳細に説明するように、視覚イメージ構成要素１１０は、ユーザインターフェースにおいてツアーを提示し、ツアー中のシーンの選択を検出することができる。視覚イメージ構成要素１１０は、選択されたシーンのための１つまたは複数の効果を生成することができる。
【００３６】
[0045]  いくつかの実施形態では、視覚イメージ構成要素１１０は、効果タイプを決定すること、持続時間および速度など、効果のためのタイミングを決定すること、レンダリングされたデータからのカメラ距離を決定すること、ならびに、効果アニメーションを生成することによって、効果を生成することができる。効果のこれらおよび他の態様は、ユーザもしくは他のエンティティによって、ユーザインターフェースとの対話を介して指定され、設定もしくオプションなどによって指定され、および／または、場合によっては、視覚イメージ構成要素１１０によって、シーンの解析を介して決定され得る。効果には、限定はしないが、軌道効果、静止効果、フライバイ効果、８の字飛行効果、直線効果、または他の効果などが含まれ得る。
【００３７】
[0046]  効果はまた、所望の速度および／または大きさを表現するために調整され得る。したがって、例えば、ユーザは、軌道効果などの効果の大きさを増すことができる。そのような例では、効果の速度を増すことができ、効果がシーン中で繰り返され得る。いくつかの実施形態では、効果に関連付けられた視距離、例えば、軌道効果に関連付けられた半径は、視覚イメージ構成要素１１０によって自動的に決定され、および／または、ユーザもしくは他のエンティティによって指定され得る。線形効果の場合、効果の大きさの増大は、視野角、および／またはカメラが進行する軌跡における、増大を引き起こし得る。したがって、効果の大きさは、カメラの速度に影響を及ぼすことができ、ただし、速度は、所望される場合、大きさに結合され、および／または、大きさに基づいて自動的に計算され得る。これらの効果については、特に図４および図６から図７Ｅまでを参照しながら、以下でより詳細に示し、説明する。視覚イメージ構成要素１１０は、選択された（1つまたは複数の）効果、タイミング、およびカメラ距離を適用して、効果アニメーションを生成することができる。
【００３８】
[0047]  視覚イメージ構成要素１１０はまた、ツアーの２つ以上のシーン間に適用されるべき遷移を生成することもできる。視覚イメージ構成要素１１０は、遷移タイプを決定すること、シーン間の距離を決定すること、遷移の遷移時間または持続時間を決定すること、および、遷移アニメーションを生成することによって、遷移を適用することができる。視覚イメージ構成要素１１０はまた、遷移の持続時間を受信するか、または、遷移の持続時間を決定することもできる。シーンが地理的ロケーションに関連付けられ得るので、シーン間の距離を決定することは、シーンに関連付けられた地理的ロケーション間の距離を決定することに対応し得る。具体的には、視覚イメージ構成要素１１０は、特定の遷移について、遷移の始めのカメラの開始ロケーションと、遷移の最後のカメラの終了ロケーションとを示す情報を、受信することができる。視覚イメージ構成要素１１０は、２つのロケーション間の、および、決定または受信された持続時間にわたる、カメラの経路および向きを決定することができる。視覚イメージ構成要素１１０はまた、地理的情報を解析して、ツアーのシーン間の距離を決定し、遷移を生成する際にその情報を使用するようにも構成され得る。
【００３９】
[0048]  視覚イメージ構成要素１１０は、ユーザもしくは他のエンティティとユーザインターフェースとの対話、視覚イメージ構成要素１１０および／もしくはユーザに関連付けられた設定もしくはオプションなどを介して、ならびに／または、場合によっては、視覚イメージ構成要素１１０によってシーンの解析を介して決定された、遷移の持続時間を決定または受信することによって、遷移の持続時間および／または時間を決定することができる。いくつかの実施形態では、視覚イメージ構成要素１１０は、遷移の持続時間の選択または指示を受信するが、これは必ずしもそうであるとは限らない。遷移には、限定はしないが、カット遷移タイプ、クロスフェード遷移タイプ、線形もしくは直接遷移タイプ、円弧、ジャンプ、もしくは曲線遷移タイプ、ズームアウト／ズームイン遷移タイプ、またはそれらの組合せなどが含まれ得る。
【００４０】
[0049]  生成された効果および遷移は、視覚イメージ構成要素１１０によって視覚イメージに追加され得る。いくつかの実施形態では、視覚イメージ構成要素１１０は、シーン、ツアー、ならびに／または、特定の遷移および／もしくは効果のプレビューを、プレビュー部分または画面を有するユーザインターフェースにおいて提供することができる。したがって、ユーザまたは他のエンティティは、視覚イメージ構成要素１１０を介して、効果および／または遷移を生成および／または修正し、シーンまたはツアーをプレビューすることができる。いくつかの実施形態では、ユーザまたは他のエンティティは、遷移の持続時間を設定することができる。遷移時間がゼロ（０）まで低減される場合、視覚イメージ構成要素１１０は、遷移タイプをカットタイプ遷移へ自動的に変更するように構成され得る。同様に、カットタイプ遷移タイプの持続時間がゼロ（０）よりも大きい時間まで増加される場合、視覚イメージ構成要素は、別のタイプの遷移を生じるように、および／または、異なる遷移タイプを選択するようにユーザもしくは他のエンティティを促すように、構成され得る。いくつかの実施形態では、遷移は、カメラが目的地までの効率的および／または最も効率的なベクトル経路を進行することを促進するように構成され得る。同様に、カメラは、遷移によって、カメラが最小量のターンで最終的な視点に向くことを促進するように制御され得る。さらに、遷移と効果との間の経路の追加の平滑化が適用されてもよく、それによって、鋭角に沿ったものとは対照的な、円形の曲線に沿ったカメラの動きが生じ得る。本明細書で開示する概念および技術のこれらおよび他の態様について、以下でより詳細に説明する。
【００４１】
[0050]  本明細書で開示する概念および技術のいくつかの実施形態では、「〜まで飛行する」タイプの遷移は、カメラが次のカメラターゲットの方へ向くように構成され得るので、カメラの回転を生じ得る。このタイプの動作は、時々望ましいことがあるが、このタイプの動作は、時々望ましくないことがある。したがって、いくつかの実施形態は、カメラの下の球体の動きが効率的および／または最も効率的な方法で動くことができる、「〜まで動く」遷移を含む。例えば、次のシーンが、ビューアングルに対してカメラの背後に位置する場合、カメラは、後方へ動くか、および／または逆転することができるが、次のシーンが、カメラの前方または前である場合、カメラは、前方へ動かされ得る。カメラはまた、次のターゲットまでの最も早く、最も効率的な道を取るために、横方向に動かされ得る。いくつかの実施形態では、「〜まで動く」遷移が望ましいことがあり、その理由は、この遷移が、あるスポットから別のスポットまでカメラを動かすために最も効率的な道であり、また、最小量の回転を伴うものであり得るからである。いくつかの実施形態では、「〜まで動く」遷移は、円弧形を有することができ、および／または、球体に対して低い高度で飛行することを回避して、不鮮明なタイルが生じることを回避することができる。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００４２】
[0051]  いくつかの実施形態では、線形遷移は、カメラに、線形軌跡において進行させることができる。いくつかの実施形態によれば、ユーザがシーンの速度および／または持続時間を制御するとき、カメラが最後にはシーンの所望の視点または被写体から遠いロケーションに行くことがあるので、視覚イメージ構成要素１１０は、カメラの軌跡の長さを調節することができる。様々な実施形態によれば、速度およびシーン持続時間を制御することは、遷移を通してカメラの追加のループを生じることができる。いくつかの実施形態では、視覚イメージ構成要素は、効果の程度を制御するために、線形効果のための速度制御を変更するか、またはユーザが変更することを可能にすることができ、すなわち、ユーザは、速度を制御するのではなく、軌跡の長さを制御してもよい。いくつかの実施形態では、速度は、シーン持続時間、および軌跡の長さ、または程度に基づいて、自動的に決定され得る。これらの実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００４３】
[0052]  図１は、１つのコンピュータシステム１０２、１つのネットワーク１０４、１つのユーザコンピューティングデバイス１１２、１つのデータソース１２０、ジオコーディングサービスの１つのインスタンス１２２、および１つのマップサーバ１２８を示す。ただし、動作環境１００のいくつかの実装形態は、複数のコンピュータシステム１０２、複数のネットワーク１０４、複数のユーザコンピューティングデバイス１１２、複数のデータソース１２０、ジオコーディングサービスの複数のインスタンス１２２、および／または複数のマップサーバ１２８を含み得ることを理解されたい。したがって、動作環境の図示の実施形態は、例示的であるとして理解されるべきであり、いかなる形でも限定として解釈されるべきではない。
【００４４】
[0053]  次に図２を参照すると、１つの例示的な実施形態による、視覚イメージ構成要素１１０の追加の態様が提示される。具体的には、図２は、いくつかの実施形態による、視覚イメージ構成要素１１０のアーキテクチャおよび副構成要素に関するさらなる詳細を提供する。視覚イメージ構成要素１１０は、限定はしないが、視覚イメージ制御２００、視覚イメージエンジン２０２、表計算プラグインコア２０４、ならびに／または、他の構成要素および／もしくはサブシステムを含む、いくつかの構成要素および／またはサブシステムを含み得る。
【００４５】
[0054]  視覚イメージ制御２００は、データを表現し、検索を行い、および／または検索サービスを提供するための機能と、球体の画像を可視化および／または提示するための球体制御と、示されたツアーのアニメーションおよび／またはビデオを記録するためのビデオ記録機能と、クライアントとを含み得る。視覚イメージエンジン２０２は、複数のシーン、画像、および／またはアニメーションシーケンスを含むツアーを生成するための機能と、可視化空間において時間を測定および／または表現するための機能と、本明細書で説明する視覚イメージ構成要素機能を提供するためのエンジンコアと、２次元および／または３次元の注釈を生成および／またはレンダリングするための注釈機能と、空間的インデクシング機能と、カメラ機能とを含み得る。視覚イメージエンジン２０２はまた、球体モデル、および／または球体を表現するための機能と、タッチおよび／またはマルチタッチコマンドを入力として解釈するための入力およびタッチモジュールと、可視化空間の層を表現し、および／またはそれと対話するための視覚層機能と、マップタイルを記憶するためのタイルキャッシュと、３次元の視覚イメージを生成および／またはレンダリングするための３次元グラフィックスモジュールと、生成および／またはレンダリングされた３次元オブジェクトのシェーディングを提供するためのシェーダとを含み得る。
【００４６】
[0055]  いくつかの実施形態では、シェーダは、本明細書で説明するデータの３次元の地理学的視覚イメージのレンダリングを容易にするために、いくつかのアルゴリズムを含み、または実装することができる。例えば、視覚イメージ構成要素１１０は、いくつかの同様の色のオブジェクトの視覚イメージの曖昧さを除去するための、ダークオーラ効果を実装することができる。ダークオーラ効果は、閲覧者、例えば、ユーザ１１６が、３次元の可視化空間におけるアイテム間で区別することを可能にする、視覚的処理を含み得る。３次元の視覚イメージまたはビューにおいて複数の同様の色の柱があるとき、これらの柱のうちのいくつかは、３次元ビューにおいて互いに隣り合い、および／または背後にあり得る。したがって、複数の柱は、合わせてグループ化されるように見えることがあり、および／または、単一のポリゴンのように見えることがある。本明細書で開示する概念および技術のいくつかの実施形態では、ダークオーラ効果が、柱のうちの１つまたは複数の周囲に追加され、それによって、１つまたは複数の柱が互いよりも目立つように見えることが可能になり得る。他の視覚効果が可能であり、企図されるので、この例は例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００４７】
[0056]  別の例では、視覚イメージ構成要素１１０は、多数の任意の３次元要素についての非同期ヒットテストのためのＧＰＵベースのフレームワークを実装し得る。これは、閲覧者には不可視であり得るが、オブジェクトを識別する情報を含み得る、３次元の視覚イメージにおいてレンダリングされたオブジェクトのピクセルに、「チャネル外」の色情報を追加することを含み得る。したがって、ユーザが、３次元の視覚イメージにおけるある点をタップし、クリックし、または場合によっては、その点と対話する場合、３次元の視覚イメージを分解し、選択されたロケーションにおいてレンダリングされたオブジェクトを決定することなしに、選択されたピクセルによって表現されたオブジェクトの識別情報を知ることができる。これは、ＧＰＵにおいて実装され得る。
【００４８】
[0057]  表計算プラグインコア２０４は、ワークブック状態情報を記憶するための機能、ならびに、様々なデータソースに対してクエリを生成および／または実行するためのクエリエンジンを含み得る。いくつかの実施形態では、クエリエンジンは、表計算データ１１８に記憶されたデータに基づいて、クエリを生成するように、および、クエリを検索エンジンにサブミットするように構成され得る。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００４９】
[0058]  視覚イメージ構成要素１１０はまた、例えば、表計算プログラムネイティブプラグインおよび表計算プログラムＡＰＩなど、様々な他の構成要素および／またはサブシステムを含んでもよく、表計算プログラムネイティブプラグインおよび表計算プログラムＡＰＩは、例えば、コマンドオブジェクトモデル（「COM」）ＡＰＩ、Ｊａｖａ  ＡＰＩ、ならびに／または、Ｐｅｒｌ、Ａｐｐｌｅ  Ｃｏｃｏａフレームワーク、様々なサーバおよび／もしくはクライアント側スクリプト実行環境などの他の技術などである。視覚イメージ構成要素１１０はまた、図示のＤＩＲＥＣＴＸ  ＡＰＩ、図示のＤＩＲＥＣＴＸ  ＷＲＡＰＰＥＲなどのＡＰＩコールエミュレータ、ＷＩＮＤＯＷＳ  Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｆｏｕｎｄａｔｉｏｎ（「WPF」）サブシステム、またはそれらの組合せなど、様々なグラフィックスプラグインおよび／またはＡＰＩを含み得る。視覚イメージ構成要素１１０はまた、所望される場合、図示のＶＥＲＴＩＰＡＱエンジンなどの分析エンジン、および／または、他のデータプロバイダに関連付けられたモジュールを含み得る。視覚イメージ構成要素１１０は、図２に図示しない追加および／または代替の機能を含み得ることを理解されたい。したがって、図２に示す実施形態は、例示的であるとして理解されるべきであり、いかなる形でも限定として解釈されるべきではない。
【００５０】
[0059]  次に図３を参照して、表計算アプリケーションにおいてアニメーション効果および遷移を生成するための方法３００の態様について、詳細に説明する。本明細書で開示する方法の動作は、必ずしもいずれかの特定の順序で提示されるとは限らないこと、および、（1つまたは複数の）代替順序における動作のうちの一部または全部の実行が可能であり、企図されることを理解されたい。動作は、説明および図示しやすいように、示された順序で提示されている。動作は、添付の特許請求の範囲から逸脱することなく、追加され、省略され、および／または同時に行われ得る。
【００５１】
[0060]  また、本明細書で開示する図示の方法は、いつでも終了されてもよく、それらのそれぞれの（または集合的な）全体として行われる必要がないことも理解されたい。本明細書で開示する方法の一部もしくは全部の動作、および／または、実質的に同等の動作は、本明細書で定義する、コンピュータストレージ媒体上に含まれたコンピュータ可読命令の実行によって行われ得る。本明細書および特許請求の範囲で使用する「コンピュータ可読命令」という用語、およびその変形態は、本明細書では、ルーチン、アプリケーション、アプリケーションモジュール、プログラムモジュール、プログラム、構成要素、データ構造、およびアルゴリズムなどを含むように、広範囲に使用される。コンピュータ可読命令は、シングルプロセッサまたはマルチプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ、パーソナルコンピュータ、ハンドヘルドコンピュータシステム、マイクロプロセッサベースの、プログラマブルな家庭用電子機器、およびそれらの組合せなどを含む、様々なシステム構成で実装され得る。
【００５２】
[0061]  したがって、本明細書で説明する論理的動作は、（１）一連のコンピュータ実装行為、もしくは、コンピューティングシステム上で実行するプログラムモジュールとして、および／または（２）コンピューティングシステム内で相互接続されたマシン論理回路もしくは回路モジュールとして、実装されることを理解されたい。実装形態は、コンピューティングシステムの性能および他の要件に応じて選択できることである。したがって、本明細書で説明する論理的動作は、状態、動作、構造的デバイス、行為、またはモジュールと、様々に呼ばれる。これらの動作、構造的デバイス、行為、およびモジュールは、ソフトウェアにおいて、ファームウェアにおいて、専用デジタル論理において、およびそれらの任意の組合せで実装され得る。
【００５３】
[0062]  本開示の概念を示し、説明するために、本明細書で開示する方法については、コンピュータシステム１０２によって、例えば、視覚イメージ構成要素１１０など、１つまたは複数のソフトウェアモジュールの実行を介して行われるものとして説明する。追加および／または代替のデバイスおよび／またはネットワークノードは、限定はしないが、視覚イメージ構成要素１１０を含む、１つまたは複数のモジュール、アプリケーション、および／または他のソフトウェアの実行を介して、本明細書で説明する機能を提供することができることを理解されたい。したがって、図示の実施形態は、例示的であり、いかなる形でも限定として見なされるべきではない。
【００５４】
[0063]  方法３００は、動作３０２で開始し、そこで、コンピュータシステム１０２が、表計算データ１１８を取得する。上記で説明したように、表計算データ１１８は、例えば、表計算ファイル、データベースアプリケーションデータ、および／または他のタイプの情報など、様々なタイプの情報またはコンテンツを含み得る。１つの企図される実施形態では、表計算データ１１８は、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる表計算アプリケーションソフトウェア製品のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬファミリのメンバによって生成されたファイルなど、表計算ファイルに対応する。他の企図される表計算アプリケーションには、限定はしないが、ＧＯＯＧＬＥ  ＤＯＣＳプログラムファミリのメンバ、ＯＰＥＮＯＦＦＩＣＥプログラムファミリのメンバ、ＡＰＰＬＥ  ＩＷＯＲＫ  ＮＵＭＢＥＲＳプログラムファミリのメンバ、ならびに／または、他の表計算、テーブル、および／もしくはデータベースプログラムが含まれる。表計算データ１１８は、コンピュータシステム１０２に関連付けられたデータストレージデバイスまたは構成要素から取得され得る。データストレージデバイスのいくつかの例については、以下で図９から図１１までを参照しながら、より詳細に説明する。
【００５５】
[0064]  いくつかの他の実施形態では、表計算データ１１８は、本明細書で説明するデータソース１２０など、リモートストレージデバイスまたはリソースにおいて記憶され、またはそれによってホストされ得る。したがって、表計算データ１１８は、コンピュータシステム１０２によって、データソース１２０との通信を介して取得され得る。したがって、表計算データ１１８は、直接接続を介して、１つもしくは複数のネットワークを介して、ならびに／または、他のノード、デバイス、および／もしくはデバイス構成要素を介して、任意の実際または仮想のデバイスから取得され得ることを理解されたい。
【００５６】
[0065]  図３に示す実施形態では、動作３０２でコンピュータシステム１０２によって取得される表計算データ１１８は、視覚イメージを含み得る。したがって、コンピュータシステム１０２、および／または、別のデバイスもしくはアプリケーションは、視覚イメージを生成し、視覚イメージを、動作３０２で取得される表計算データ１１８として、またはその中に記憶することができることを理解されたい。同様に、コンピュータシステム１０２は、ＵＩ１１４を生成し、ユーザコンピューティングデバイス１１２へ出力することができ、ユーザコンピューティングデバイス１１２は、ユーザコンピューティングデバイス１１２に関連付けられたディスプレイにＵＩ１１４を提示することができる。したがって、動作３０２はまた、表計算データ１１８を受信すること、および、コンピュータシステム１０２において視覚イメージを生成することを含み得ることを理解されたい。したがって、本明細書で説明する方法は、コンピュータシステム１０２において行われるものとして示し、説明するが、ユーザ入力は、ユーザコンピューティングデバイス１１２、および／または、コンピュータシステム１０２からリモートの他のデバイスもしくはシステムで実行する、ウェブブラウザまたは他のプログラムを介して行われ得ることを理解されたい。
【００５７】
[0066]  加えて、本明細書でより詳細に示し、説明するように、視覚イメージは、表計算データ１１８として、もしくはそれとともに取得され、および／または、動作３０２で取得される表計算データ１１８に基づいて生成され得るものであり、１つまたは複数のシーンを含み得る。「シーン」は、単体で、または合わせて視覚イメージに対応し得る、アニメーションシーケンスを含み得る。例えば、視覚イメージの第１のシーンは、ニューヨーク市などのロケーションに関連付けられたデータセットの視覚イメージを含み得る。したがって、そのシーンは、ある時間にわたるニューヨーク市に関連付けられたデータを示す、アニメーション化されたシーケンスを含み得る。次のシーンは、ワシントンＤ．Ｃ．に関連付けられた別のデータセットの視覚イメージを含み得る。したがって、シーンは、視覚イメージ、および／または複数のシーンのツアー中に含まれる、アニメーションシーケンスを含み得ることは理解されよう。
【００５８】
[0067]  動作３０２から、方法３００は動作３０４へ進み、そこで、コンピュータシステム１０２が、シーンを選択する。具体的には、コンピュータシステム１０２は、本明細書で説明するように、表計算データ１１８の視覚イメージに含まれるシーンを選択することができる。いくつかの実施形態では、コンピュータシステム１０２は、ユーザまたはユーザコンピューティングデバイス１１２からの入力に基づいて、シーンを選択する。したがって、例えば、ユーザは、第１のシーンを選択して、そのシーンに関連付けられた遷移および効果を構成してもよく、この選択は、動作３４０で、コンピュータシステム１０２によって検出され得る。いくつかの他の実施形態では、コンピュータシステム１０２は、動作３０４で、シーンを作成することができ、作成されたシーンは、自動的に選択され得る。シーンを選択するための例示的なユーザインターフェースについては、以下で図８Ａを参照しながら、より詳細に示し、説明する。
【００５９】
[0068]  動作３０４から、方法３００は動作３０６へ進む。動作３０６で、コンピュータシステム１０２が、シーンの持続時間を決定することができる。図３に明示的に図示しないが、コンピュータシステム１０２は、シーンのための開始時間および終了時間の選択を取得し、ならびに／または、シーンの持続時間を指定するデータを受信することができる。コンピュータシステム１０２はまた、シーンを解析し、解析に基づいて、シーンの持続時間を決定するようにも構成され得る。いくつかの他の実施形態では、コンピュータシステム１０２は、入力、例えば、開始時間および終了時間を指定するための入力を受信することによって、持続時間を決定することができ、持続時間は、１つもしくは複数のユーザインターフェースおよび／もしくはユーザ入力を介して受信されてもよく、ならびに／または、コンピュータシステム１０２によって自動的に決定され得る。シーンの持続時間は、追加および／または代替の方法で決定され得るので、これらの実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００６０】
[0069]  動作３０６から、方法３００は動作３０８へ進み、そこで、コンピュータシステム１０２が、動作３０４で選択されたシーンのための効果を生成する。特に図４を参照しながら、以下でより詳細に説明するように、コンピュータシステム１０２は、動作３０４で選択されたシーンのための効果を生成することができる。効果は、シーンをアニメーション化するためのカメラ効果を含み得る。「カメラ効果」は、視覚イメージをアニメーション化するために、視覚イメージにおけるカメラの動きのシミュレーションを含み得る。上記のように、シーンにおいて物理的な「カメラ」はない。したがって、コンピュータシステム１０２および／または視覚イメージ構成要素１１０は、仮想カメラに関連付けられた視点から、視覚イメージを描画するように構成され得る。したがって、本明細書で使用する「カメラ」は、それに従って、実際のカメラで撮影されたシーンを模倣するように、視覚イメージが描画および／またはアニメーション化される、仮想カメラのロケーション、視野、および／または視線など、視点を指し得る。動作３０８で、コンピュータシステム１０２はまた、動作３０６で決定されたシーンの持続時間に少なくとも部分的に基づき得る、シーンのための１つまたは複数の効果と、シーンのためのタイミングとを決定することもできる。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００６１】
[0070]  動作３０８から、方法３００は動作３１０へ進み、そこで、コンピュータシステム１０２が、別のシーンが構成されるべきであるかどうかを判定する。本明細書で開示する概念および技術の様々な実施形態によれば、視覚イメージは、複数のシーンを含んでもよく、効果に加えて、コンピュータシステム１０２は、シーン間の遷移を生成するように構成され得る。したがって、コンピュータシステム１０２は、動作３１０で、効果および／または遷移で構成するために別のシーンが存在するかどうかを判定することができる。方法３００の様々な実装形態によれば、動作３１０で行われる判定は、２つのシーン間の遷移を構成するために、少なくとも１回、肯定的に判定される。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００６２】
[0071]  コンピュータシステム１０２が、動作３１０で、別のシーンが構成されるべきであると決定した場合、方法３００は、動作３０４へ戻ることができ、コンピュータシステム１０２が、構成のために別のシーンを選択することができる。したがって、動作３０４から動作３１０までは、コンピュータシステム１０２によって任意の回数で繰り返され得ることは理解されよう。いくつかの実施形態では、コンピュータシステム１０２は、コンピュータシステム１０２が、動作３１０の任意の反復において、別のシーンが構成されるべきではないと決定するまで、動作３０４から動作３１０までを繰り返すように構成される。コンピュータシステム１０２が、動作３１０で、別のシーンが構成されるべきではないと決定した場合、方法３００は動作３１２へ進む。
【００６３】
[0072]  動作３１２で、コンピュータシステム１０２が、シーンのための１つまたは複数の遷移を生成する。したがって、コンピュータシステム１０２は、上記で説明したように、動作３０４の複数の反復において選択された、少なくとも２つのシーン間の遷移を生成することができる。遷移は、本明細書で説明する効果に加えて、またはその代わりに、シーン間のアニメーションを提供するために生成され得る。したがって、ニューヨーク市およびワシントンＤ．Ｃ．に対応する２つのシーンの上記の例では、コンピュータシステム１０２は、動作３１２で、ニューヨーク市およびワシントンＤ．Ｃ．におけるシーン間のアニメーション化された遷移を生成することができる。遷移を生成することについての追加の詳細を、以下で図５から図８Ｂまでを参照しながら提供する。
【００６４】
[0073]  動作３１２から、方法３００は動作３１４へ進み、そこで、コンピュータシステム１０２が、動作３０８および動作３１２で生成された効果および遷移を出力する。様々な実装形態によれば、コンピュータシステム１０２は、ユーザインターフェース１１４、および／または、ユーザインターフェース１１４を生成するための命令を出力することができる。ユーザインターフェース１１４は、表計算データ１１８の視覚イメージを含み得る。視覚イメージは、少なくとも２つのシーンと、少なくとも２つのシーン間の遷移とを含み得る。視覚イメージはまた、いくつかの実施形態では、視覚イメージの少なくとも１つのシーンのための効果を含み得る。動作３１４から、方法３００は動作３１６へ進む。方法３００は、動作３１６で終了する。
【００６５】
[0074]  次に図４を参照して、表計算アプリケーションにおいてアニメーション効果を生成するための方法４００の態様について、詳細に説明する。上述のように、方法４００に関して本明細書で説明する機能は、図３に示した方法３００の動作３０６で、コンピュータシステム１０２によって行われ得るが、これは必ずしもそうであるとは限らない。
【００６６】
[0075]  方法４００は、動作４０２で開始し、そこで、コンピュータシステム１０２が、図３に示した方法３００の動作３０４で選択されたシーンのための効果を決定する。上述のように、「効果」は、シーン中でカメラまたは他のアニメーション視点に適用されるアニメーションを含み得る。いくつかの例示的な効果については、図６から図７Ｅまでに関して、本明細書でより詳細に示し、説明する。簡略に言えば、効果には、カメラもしくは他のアニメーション視点がカメラの中心点もしくは焦点を周回する、軌道効果、カメラもしくは他のアニメーション視点が静止位置から中心点もしくは焦点を見る、静止効果、カメラが、カメラとカメラの中心点もしくは焦点との間のビューイングベクトルに直交する経路に沿って動く、フライバイ効果、カメラが、カメラの中心点もしくは焦点の周囲で８の字形に動く、８の字飛行効果、カメラが、カメラとカメラの中心点もしくは焦点との間のビューイングベクトルに直交する経路に沿って往復して動く、直線効果、他の効果、またはそれらの組合せなどが含まれ得る。
【００６７】
[0076]  動作４０２で、コンピュータシステム１０２が、シーンに適用されるべき効果を識別することができる。具体的には、コンピュータシステム１０２は、効果を決定するために、オプション、設定、または他の選好を検出することができる。いくつかの実施形態では、コンピュータシステム１０２は、効果を選択するためのユーザ入力を検出することができる。したがって、コンピュータシステム１０２は、動作４０２に関連して、例えば、コンピュータシステム１０２に関連付けられたユーザインターフェースを介した、ユーザまたは他のエンティティによる効果の選択を検出することができる。効果を選択するために使用され得る例示的なユーザインターフェースについては、以下で図８Ａから図８Ｂまでを参照しながら、より詳細に示し、説明する。
【００６８】
[0077]  動作４０２から、方法４００は動作４０４へ進み、そこで、コンピュータシステム１０２が、効果のためのタイミングを決定する。本明細書で使用する、効果の「タイミング」は、効果の継続時間、および／または効果の速度を含み得る。上述のように、効果のタイミングは、効果が適用されるシーンの継続時間に対応し得る。したがって、コンピュータシステム１０２は、持続時間を取得もしくは決定することができ、および／または、例えば、シーンの開始時間、もしくはシーンの終了時間など、コンピュータシステム１０２によって決定もしくは受信された他の値に基づいて、持続時間を決定することができる。いくつかの他の実施形態では、効果の継続時間は、シーンの継続時間に対応しなくてもよく、したがって、特定のシーン中でカメラに適用される効果は、シーンの一部分において可視であってもよい。本明細書で開示する概念および技術の様々な実施形態では、効果の継続時間は、ユーザにより設定可能または構成可能なオプションであり得る。継続時間は、図８Ｂに示すようなユーザインターフェースにおいて提供され、または場合によっては、ユーザもしくは他のエンティティによって設定され得る。したがって、動作４０４で、コンピュータシステム１０２は、継続時間を決定し、および／または、継続時間を設定するためのユーザもしくは他のエンティティからの入力を検出することができる。
【００６９】
[0078]  同様に、効果の速度は、そこからアニメーションが描画されるカメラまたは他の視点に、アニメーションが適用される速さに対応し得る。したがって、例えば、軌道効果の速度は、カメラがシーンの焦点または中心点の周囲を回る速度または速さに対応し得る。したがって、コンピュータシステム１０２は、動作４０４で、効果の速度を決定し、および／または、効果の速度を指定するためのユーザ入力を検出することができる。効果の速度および／または継続時間は、追加および／または代替の方法で決定され得るので、これらの例は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００７０】
[0079]  動作４０４から、方法４００は動作４０６へ進み、そこで、コンピュータシステム１０２が、カメラの向き、経路、および／または距離を決定する。コンピュータシステム１０２は、本明細書で開示する概念および技術の様々な実施形態によるカメラの、これらおよび他の態様を自動的に決定するように構成され得る。カメラの向きは、例えば、カメラに関連付けられたティルト、ピッチ、またはヨーなど、カメラに関連付けられた視野角を定義することができる。
【００７１】
[0080]  カメラ経路は、限定はしないが、カメラがシーン中にそれに沿って動く経路を含み得る。カメラ距離は、そこからカメラ（または、そこからアニメーションが描画される他の視点）がシーンの中心点または他の焦点を見る距離に対応し得る。様々な実施形態によれば、カメラ距離は、デフォルト値であってもよく、ユーザ選好および／もしくは構成設定によって設定されてもよく、ならびに／または、プログラム設定によって設定されてもよい。いくつかの他の実施形態では、カメラ距離は、特定のシーンに基づいて、コンピュータシステム１０２によって決定され得る。例えば、コンピュータシステム１０２は、シーン中で見られるべきデータのデータ点もしくは他の表現、カメラの画角、カメラに適用される効果、またはそれらの組合せなどを識別することができる。
【００７２】
[0081]  いくつかの実施形態では、コンピュータシステム１０２は、これらおよび／または他のデータに基づいて、アニメーション化されたシーンにすべてのデータが適合することを保証するために使用されることになる、カメラ距離を計算することができる。カメラ距離、および、そのカメラ距離がどのように設定され得るかの一例については、以下で図６を参照しながら示し、説明する。カメラ距離は、上記で説明したように、設定、ユーザ入力、および／または解析によって決定され得るので、コンピュータシステム１０２が、様々な方法でカメラ距離を決定することができること、ならびに、したがって、動作４０６が、カメラ距離を決定するために検討されるべきデータを取得するための追加および／または代替の動作を含み得ることを理解されたい。
【００７３】
[0082]  動作４０６から、方法４００は動作４０８へ進み、そこで、コンピュータシステム１０２が、動作４０２から動作４０６までに行われた決定に基づいて、シーンアニメーションを生成する。したがって、コンピュータシステム１０２は、効果、継続時間、速度、カメラの向き、カメラ経路、およびカメラ距離をシーンに適用し、アニメーション化されたシーンに対応するアニメーションフレームを出力することができる。動作４０２で決定された効果が、静止カメラ効果に対応する場合、出力されるアニメーションフレームは、実質的に等しくなり得るが、これは必ずしもそうであるとは限らないことを理解されたい。動作４０８から、方法４００は動作４１０へ進む。方法４００は、動作４１０で終了する。
【００７４】
[0083]  次に図５を参照して、表計算アプリケーションにおいてアニメーション遷移を生成するための方法５００の態様について、詳細に説明する。上述のように、方法５００に関して本明細書で説明する機能は、図３に示した方法３００の動作３１０で、コンピュータシステム１０２によって行われ得るが、これは必ずしもそうであるとは限らない。
【００７５】
[0084]  方法５００は、動作５０２で開始し、そこで、コンピュータシステム１０２が、図３に示した方法３００で選択されたシーンのための遷移タイプを決定する。上述のように、「遷移タイプ」は、シーン中のカメラまたは他のアニメーション視点が、本明細書では「開始点」とも呼ぶ、第１のシーンに関連付けられた位置から、本明細書では「終了点」とも呼ぶ、第２のシーンに関連付けられた位置まで動くとき、シーン中でカメラまたは他のアニメーション視点に適用されるアニメーションを含み得る。いくつかの例示的な遷移タイプについては、図７Ｆから図７Ｈに関して、本明細書でより詳細に示し、説明する。
【００７６】
[0085]  簡略に言えば、遷移タイプには、限定はしないが、カメラもしくは他のアニメーション視点が、第１のシーンに関連付けられた第１の視点から第２のシーンに関連付けられた第２の視点まで瞬時に動く、カット遷移タイプ、第１の視点におけるカメラが、第１の視点のビューからフェードアウトもしくはディゾルブアウェイし、第２の視点のビューにフェードインもしくはディゾルブインする、クロスフェード遷移タイプ、第１のシーンに関連付けられた第１の視点から第２のシーンに関連付けられた第２の視点まで、（地面、もしくはデータが表示される表面に対して）一定の高さの飛行経路に沿って、カメラが動く、線形もしくは直接遷移タイプ、第１のシーンに関連付けられた第１の視点から第２のシーンに関連付けられた第２の視点まで、航空機の飛行経路を模倣することができる、変化する高さの曲線の飛行経路に沿って、カメラが動く、円弧、ジャンプ、もしくは曲線遷移タイプ、第１のシーンに関連付けられた第１の視点から、第１の視点と第２のシーンに関連付けられた第３の視点の両方が見える第２の視点まで、および最終的に第３の視点まで、カメラが離れるように動くか、もしくはズームアウトする、ズームアウト／ズームイン遷移タイプ、またはそれらの組合せなどが含まれ得る。
【００７７】
[0086]  いくつかの実施形態では、コンピュータシステム１０２は、２つの視点間の距離に基づいて遷移を決定する、スマート遷移タイプを使用することができる。より遠い距離では、円弧遷移タイプ、または線形遷移タイプが選ばれてもよいが、より近い距離では、線形遷移タイプ、またはズームイン／ズームアウト遷移タイプが選ばれてもよい。他の遷移タイプが企図されるので、および、コンピュータシステム１０２が様々な考慮事項に基づいて遷移タイプを選ぶことができるので、これらの例は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００７８】
[0087]  動作５０２で、コンピュータシステム１０２が、様々な方法で、シーンに適用されるべき遷移タイプを識別することができる。具体的には、コンピュータシステム１０２は、遷移タイプを決定するために、オプション、設定、または他の選好を検出することができる。いくつかの実施形態では、コンピュータシステム１０２は、遷移タイプを選択するためのユーザ入力を検出することができる。遷移タイプを選択するために使用され得る例示的なユーザインターフェースについては、以下で図８Ａから図８Ｂまでを参照しながら、より詳細に示し、説明する。
【００７９】
[0088]  動作５０２から、方法５００は動作５０４へ進み、そこで、コンピュータシステム１０２が、動作５０２で決定された遷移タイプが「カット」タイプの遷移に対応するかどうかを判定する。上述のように、「カット」タイプの遷移は、カメラが第１の視点から第２の視点まで、それらの２つの視点間にいかなるアニメーションもなしに、瞬時に動く遷移を含み得る。したがって、カット遷移は、事実上、シーン間に遷移がないことと同等であり得る。
【００８０】
[0089]  コンピュータシステム１０２が、動作５０４で、遷移タイプが「カット」タイプ遷移ではないと決定した場合、方法５００は動作５０６へ進む。動作５０６で、コンピュータシステム１０２が、動作５０２で決定された遷移タイプが「フェード」タイプの遷移に対応するかどうかを判定する。上記のように、「フェード」タイプの遷移は、第１の視点におけるビューでフェードアウトまたはディゾルブし、第２の視点におけるビューにフェードインまたはディゾルブインすることを含み得る。
【００８１】
[0090]  コンピュータシステム１０２が、動作５０４で、遷移タイプが「フェード」タイプ遷移ではないと決定した場合、方法５００は動作５０８へ進む。動作５０８で、コンピュータシステム１０２が、上記で図３を参照しながら説明した動作３０４の複数の反復において選択されたシーン間の距離を決定することができる。いくつかの実施形態では、動作５０８で決定される距離は、第１のシーンおよび第２のシーンの各々に関連付けられた地理的ロケーション間の実際の距離に対応し得る。本明細書で開示する概念および技術の様々な実装形態によれば、シーンの地理的ロケーションは、ジオコーディングサービス１２２から取得された地理的マッピングデータ１２４、および／または他のデータに関して計算されるような、データ点の重心または中心点に対応し得る。したがって、それぞれニューヨーク市およびワシントンＤ．Ｃ．における２つのシーンの上記の例では、コンピュータシステムは、これらの２つの都市間の実際の地理的距離と同等であるとして、距離を決定することができ、例えば、２２９マイルであり得る。シーン間の距離は、他の方法で決定され得るので、上記の例は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００８２】
[0091]  動作５０８から、方法５００は動作５１０へ進み、そこで、コンピュータシステム１０２が、遷移がシーンに適用されるための持続時間を決定する。持続時間は、アニメーション化されるべき遷移の継続時間として定義され得る。持続時間は、ユーザもしくは他のソースから持続時間を受信することによって決定され、または、コンピュータシステム１０２によって、選好などに基づいて自動的に決定され得る。したがって、例えば、持続時間が１秒として定義される場合、コンピュータシステム１０２は、１秒間、遷移をアニメーション化することができる。いくつかの実施形態によれば、持続時間は、ユーザにより設定可能または構成可能なオプションまたは設定に基づいて決定され得る。
【００８３】
[0092]  持続時間はまた、シーン間の決定された距離に基づいて決定され得る。したがって、例えば、コンピュータシステム１０２は、遷移においてアニメーション化されたカメラの動きのための速度率を決定し、決定された速度でシーン間の距離を除算し、それによって持続時間を決定するように構成され得る。持続時間を設定するための例示的なユーザインターフェースについては、以下で図８Ｂを参照しながら示し、説明する。持続時間は、追加および／または代替の方法で決定され得るので、これらの例は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００８４】
[0093]  動作５１０から、方法５００は動作５１２へ進み、そこで、コンピュータシステム１０２が、遷移アニメーションを生成する。具体的には、コンピュータシステム１０２は、動作５０２から動作５１０までに行われた決定に基づいて、遷移アニメーションを生成することができる。したがって、コンピュータシステム１０２は、決定された遷移タイプ、シーン間の決定された距離、および決定された持続時間に基づいて、遷移アニメーションを生成することができる。コンピュータシステム１０２は、遷移アニメーションを生成し、視覚イメージのためにアニメーションフレームを出力し、ならびに／または、これらおよび／もしくは他の使用のためにフレームを記憶することができる。
【００８５】
[0094]  動作５１２から、方法５００は動作５１４へ進む。方法５００はまた、動作５０４で、遷移タイプがカット遷移タイプに対応すると決定することに応答して、動作５１４へ進むこともできる。方法５００はまた、動作５０６で、遷移タイプがフェード遷移タイプに対応すると決定することに応答して、動作５１４へ進むこともできる。方法５００は、動作５１４で終了する。
【００８６】
[0095]  次に図６を参照して、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で開示する概念および技術の追加の態様について説明する。図６は、例示的なシーン６００におけるカメラ配置を示す線図である。シーン６００は、例示的であり、本明細書で言及する概念および技術の様々な態様を示し、説明するためにのみ提供される。したがって、図示のシーン６００は、いかなる形でも限定として解釈されるべきではない。
【００８７】
[0096]  シーン６００に示すように、カメラ６０２を示す。カメラ６０２は、そこからシーン６００に関連付けられたアニメーションが示される視点に対応し得る。したがって、カメラ６０２は、必ずしも実際のカメラに対応するとは限らないことを理解されたい。カメラ６０２は、視線６０４に沿って、視点または中心点Ｃに焦点を合わせる。上記で説明したように、中心点Ｃは、シーン６００の重心または焦点に対応してもよく、コンピュータシステム１０２によって、表計算データ１１８に基づいて決定され得る。中心点Ｃの計算は、データ点６０６の分布、および／またはそれらの関連付けられた値に基づいて、完了され得る。図６に示すように、データ点６０６は柱として示され得るが、他のタイプの表現が企図され、可能である。
【００８８】
[0097]  カメラ６０２は、飛行経路６０８に沿って進行することができる。図６に示す飛行経路６０８は、上記で説明したように、軌道効果に対応し得る。したがって、カメラ６０２は、「地面」、またはデータ点６０６が表示される他の表面の上の高さｈで、飛行経路６０８に沿って、中心点Ｃの周囲を回ることができる。したがって、図６に示す軌道効果例では、中心点Ｃが飛行経路６０８の高さｈまで動かされた場合、飛行経路６０８は、中心点Ｃからのカメラ距離に等しい半径を有し得ることは理解されよう。
【００８９】
[0098]  図６に示すように、シーン６００はまた、シーン中に示されるデータの境界に対応し得る、データエリア６１０を含み得る。データエリア６１０はまた、シーン６００の可視の部分、例えば、シーン６００をアニメーション化するとき、カメラ６０２によって好適にキャプチャされる、シーン６００の範囲を定義することもできる。
【００９０】
[0099]  次に図７Ａから図７Ｈまでを参照して、本明細書で開示する概念および技術の様々な実施形態による、いくつかの例示的な効果および遷移を示す。図７Ａは、軌道効果の一例を示す。本明細書で説明するように、軌道効果は、特定のシーン中に示されるデータのための地面および／または他の表面を表現するために使用される、地理空間的データの上に配置された円形の飛行経路６０８を含み得る。図６において説明したように、飛行経路６０８は、地面、または高さｈにおける他の表面に対して、垂直位置に配置され得るが、これは必ずしもそうであるとは限らない。カメラ６０２は、中心点Ｃをその焦点に保ちながら、飛行経路６０８に沿って、中心点Ｃを周回することができる。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９１】
[00100]  図７Ｂは、静止カメラ効果を示す。したがって、図示のように、カメラ６０２は、カメラ距離ｄから視線に沿って中心点Ｃに焦点を合わせることができる。図７Ｃは、フライバイ効果を示す。図７Ｃに示すように、カメラ６０２は、中心点Ｃ上を通過する飛行経路７０２に沿って飛行することができる。様々な実施形態によれば、カメラ６０２は、ビューライン（図７Ｃでは、可視ではない）に直交する飛行経路７０２に沿って動くことができる。飛行経路７０２は、カメラ距離における中心点Ｃの側にオフセットされてもよく、および／または、中心点Ｃのちょうど「上」を飛行することができ、カメラ距離は、飛行経路７０２の高さに実質的に等しくなり得ることを理解されたい。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９２】
[00101]  図７Ｄは、カメラ６０２が、飛行経路７０４に沿って２つの位置間を往復して飛行する、直線効果を示す。飛行経路７０４は、カメラ距離における中心点Ｃの側にオフセットされてもよく、および／または、中心点Ｃのちょうど「上」を飛行することができ、カメラ距離は、飛行経路７０４の高さに実質的に等しくなり得ることを理解されたい。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９３】
[00102]  図７Ｅは、８の字飛行効果を示す。カメラ６０２は、中心点Ｃに焦点を合わせながら、飛行経路７０６に沿って動くことができる。したがって、カメラ距離は、８の字飛行効果において変化し得ることは理解されよう。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９４】
[00103]  図７Ｆは、線形または直接遷移タイプを示す。上述のように、線形または直接遷移では、カメラ６０２は、あるシーンから次のシーンまで、飛行経路７０８に沿って動く。したがって、カメラ６０２は、第１のシーンおよび／または中心点Ｃ１に関連付けられた第１の視点ＶＰ１から、第２のシーンおよび／または中心点Ｃ２に関連付けられた第２の視点ＶＰ２まで動くことができる。上述のように、地面７１０に対するカメラの高さ、および、したがって飛行経路７０８の高さは、一定であってもよく、図７Ｆに示す高さｈに対応し得る。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９５】
[00104]  図７Ｇは、円弧、ジャンプ、または曲線遷移タイプを示す。上述のように、円弧遷移では、カメラ６０２は、あるシーンから次のシーンまで、飛行経路７１２に沿って動く。したがって、カメラ６０２は、第１のシーンおよび／または中心点Ｃ１に関連付けられた第１の視点ＶＰ１から、第２のシーンおよび／または中心点Ｃ２に関連付けられた第２の視点ＶＰ２まで動くことができる。上述のように、地面７１０に対するカメラの高さ、および、したがって飛行経路７１２の高さは、第１のシーンおよび／または中心点Ｃ１に関連付けられた第１の視点ＶＰ１における第１の高さｈ１から、飛行経路７１２の頂点７１４における高さｈ２まで高まることができ、次いで、第２のシーンおよび／または中心点Ｃ２に関連付けられた第２の視点ＶＰ２における高さｈ１まで戻るように低減され得る。したがって、円弧、ジャンプ、または曲線遷移タイプは、２つのシーン間の航空機飛行をシミュレートすることができるが、これは必ずしもそうであるとは限らないことは理解されよう。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９６】
[00105]  図７Ｈは、ズームイン／ズームアウト遷移タイプを示す。上述のように、ズームイン／ズームアウト遷移では、カメラ６０２は、動いても動かなくてもよい。いくつかの実施形態では、カメラ６０２は、第１のシーンおよび／または中心点Ｃ１が見える第１のズームレベルから、第１の視点ＶＰ１と第２のシーンおよび／または中心点Ｃ２に関連付けられた第２の視点ＶＰ２の両方が見える第２のズームレベルまで、ズームアウトする。カメラ６０２は、第１の線または視覚７１６Ａから第２の視線７１６Ｂまで動くことができ、次いで、第２のシーンおよび／または中心点Ｃ２に関連付けられた第２の視点ＶＰ２のみが見えるまで、シーンにズームインすることができる。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９７】
[00106]  次に図８Ａから図８Ｂまでを参照して、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で開示する概念および技術の様々な態様を示すＵＩ図について、様々な例示的な実施形態に従って説明する。図８Ａは、コンピュータシステム１０２および／またはユーザコンピューティングデバイス１１２など、デバイスによって生成された例示的な画面ディスプレイ８００Ａを示す。いくつかの実施形態では、画面ディスプレイ８００Ａは、図１に示すような、ユーザコンピューティングデバイス１１２によって表示されたＵＩ１１４に対応し得るが、これは必ずしもそうであるとは限らない。図８Ａに示すＵＩ図は、１つの企図される例を示し、したがって、いかなる形でも限定されるものとして解釈されるべきではないことを理解されたい。
【００９８】
[00107]  図８Ａに示すように、画面ディスプレイ８００Ａは、本明細書で説明する表計算データ１１８などのデータの３次元の視覚イメージのツアーに関連付けられたシーンを閲覧するための、ツアーディスプレイ画面８０２を含み得る。図示の実施形態では、画面ディスプレイ８００Ａは、ＵＩ制御８０４Ａ〜Ｃを含み、それらの選択は、プロパティバー８０６中のシーンに関連付けられた様々なオプションおよび／または設定を開くことを、コンピュータシステム１０２および／またはユーザコンピューティングデバイス１１２に行わせることができる。図８Ａに示すように、ユーザまたは他のエンティティは、指または手によるタップなどのタッチ入力を使用して、ＵＩ制御８０４Ａ〜Ｃを選択することができる。ＵＩ制御８０４Ａ〜Ｃは、他の入力機構および／またはデバイスを使用して選択され得るので、この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【００９９】
[00108]  画面ディスプレイ８００Ａはまた、ツアー中に表現された表計算データ１１８中に含まれる時間的データに関して、ツアーに対応するアニメーションを動かすための時間制御ウィンドウ８０８を含む。時間制御ウィンドウ８０８の使用については、以下で図８Ｂを参照しながら、さらに詳細に説明する。本明細書で開示する概念および技術の実施形態を示し、説明するために、ユーザまたは他のエンティティが、ＵＩ制御８０４Ａを選択して、シーン１に関連付けられた効果および／または遷移の様々なプロパティを閲覧および／または変更すると仮定する。図３の説明から、遷移が、ツアーのシーン１から次のシーンまで、および／または、シーン１の前のシーンからシーン１までの遷移に適用され得ることは理解されよう。したがって、この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【０１００】
[00109]  図８Ｂは、コンピュータシステム１０２および／またはユーザコンピューティングデバイス１１２など、デバイスによって生成された例示的な画面ディスプレイ８００Ｂを示す。いくつかの実施形態では、画面ディスプレイ８００Ｂは、図１に示すような、ユーザコンピューティングデバイス１１２によって表示されたＵＩ１１４に対応し得るが、これは必ずしもそうであるとは限らない。上述のように、画面ディスプレイ８００Ｂは、必ずしもそうであるとは限らないが、ＵＩ制御８０４Ａ上のタップなど、シーン１に関連付けられた設定を調節するためのコマンドおよび／または入力を検出することに応答して、表示され得る。画面ディスプレイ８００Ｂは、追加および／または代替の回数で表示され得るので、この例は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【０１０１】
[00110]  図８Ｂに示すように、画面ディスプレイ８００Ｂは、図８Ａに示すプロパティバー８０６を含み得るが、プロパティバー８０６は、シーン１に関連付けられた様々な設定および／またはプロパティを表示することができる。プロパティバー８０６は、そのためのプロパティおよび／または設定が表示されるシーンのインジケータ８１０を含み得る。プロパティバー８０６はまた、シーンの持続時間を設定するためのＵＩ制御８１２を含み得る。したがって、ＵＩ制御８１２は、シーン１のアニメーションのための継続時間を設定するために使用され得る。ＵＩ制御８１２は、２分３０秒の持続時間を示すものとして図示されるが、この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。また、図４の説明から、ＵＩ制御８１２を介して設定された持続時間はまた、シーンに適用される効果の持続時間にも対応し得るが、これは必ずしもそうであるとは限らないことも理解されよう。
【０１０２】
[00111]  プロパティバー８０６はまた、２つのシーン間の遷移の様々な態様を設定するための遷移メニュー８１４を含み得る。シーン１がプロパティバー８０６において選択され、および／または表示されているので、遷移メニュー８１４を介して構成された遷移は、シーン１とシーン２との間の遷移に対応し得る。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。遷移メニュー８１４は、遷移タイプを設定するためのタイプ制御８１６を含み得る。コンピュータシステム１０２は、方法５００の動作５０２に関して本明細書で説明した機能を行うために、タイプ制御８１６における入力を検出するように構成され得るが、これは必ずしもそうであるとは限らないことは理解されよう。
【０１０３】
[00112]  遷移メニュー８１４はまた、遷移中のカメラビュー方向を指定するためのカメラ方向制御８１８を含み得る。図示の実施形態では、カメラ方向制御８１８は、「次」に設定されるものとして示され、カメラが遷移中に次のシーンに焦点を合わせるべきであることを示し得る。様々な実施形態によれば、カメラ方向は、前のシーン、次のシーン、および／または補間された方向にそれぞれ焦点を合わせるために、「前」、「次」、および／または「補間」に設定され得る。したがって、図示の設定は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【０１０４】
[00113]  遷移メニュー８１４はまた、遷移の持続時間を設定するための持続時間制御８２０を含む。図示の実施形態では、持続時間制御８２０は、「中間」に設定されるものとして示され、遷移の持続時間が中間の長さの時間になるべきであることを示し得る。中間の持続時間の長さは、ユーザまたはプログラム開発者によって設定されてもよく、様々な実施形態では、６秒および／または他の時間に対応し得る。様々な実施形態によれば、持続時間は、「短い」、「中間」、「長い」、および／または「カスタム」に設定されてもよく、それぞれ、４秒の持続時間、６秒の持続時間、８秒の持続時間、および／またはカスタムの持続時間に対応し得る。したがって、図示の設定は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【０１０５】
[00114]  プロパティバー８０６はまた、選択されたシーンに適用されるべき効果の様々な態様を設定するための効果メニュー８２２を含み得る。シーン１がプロパティバー８０６において選択され、および／または表示されているので、効果メニュー８２２を介して構成された効果は、シーン１に適用される効果に対応し得る。効果メニュー８２２は、効果タイプを設定するための効果タイプ制御８２４を含み得る。コンピュータシステム１０２は、方法４００の動作４０２に関して本明細書で説明した機能を行うために、効果タイプ制御８２４における入力を検出するように構成され得るが、これは必ずしもそうであるとは限らないことは理解されよう。
【０１０６】
[00115]  効果タイプ制御８２４は、軌道タイプ効果を表示するものとして示される。この指示は例示的であることを理解されたい。具体的には、効果タイプ制御８２４は、限定はしないが、効果なし、軌道、フライバイ、８の字飛行、直線効果、および／または他の効果を含む、他の効果タイプを表示することができる。効果メニュー８２２はまた、効果速度制御８２６を表示することもできる。効果速度制御は、効果タイプ制御８２４中に示された効果の速度を設定するために使用され得る。様々な実施形態によれば、コンピュータシステム１０２は、方法４００の動作４０４に関して本明細書で説明した機能を行うために、効果速度制御８２６における入力を検出するように構成され得るが、これは必ずしもそうであるとは限らない。
【０１０７】
[00116]  効果速度制御８２６は、いくつかの実施形態では、効果タイプ制御８２４における選択に基づいてポピュレートされ得る。具体的には、効果タイプ制御８２４における「なし」オプションが選択される場合、効果速度制御８２６は空になり得る。「軌道」オプションまたは「８の字飛行」オプションが効果タイプ制御８２４において選択される場合、効果速度制御８２６は、短い、中間、長い、およびカスタムオプションでポピュレートされ得る。「フライバイ」オプションまたは「直線」オプションが効果タイプ制御８２４において選択される場合、効果速度制御８２６は、短い、中間、および長いオプションでポピュレートされ得る。効果速度制御８２６は、追加および／または代替のオプションでポピュレートされ得るので、これらの実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【０１０８】
[00117]  画面ディスプレイ８００Ｂはまた、図８Ａに示す時間制御ウィンドウ８０８を含む。時間制御ウィンドウ８０８は、シーンおよび／またはツアーを通して再生および／またはスクラブするために使用され得る。コンピュータシステム１０２は、いくつかの実施形態では、画面ディスプレイ８００Ｂ上でシーンおよび／またはツアーのプレビュー画面８２８を表示するように構成され得る。時間制御ウィンドウ８０８は、プレビュー画面８２８中に示されるツアーまたはシーンの時間を表示することができる、スクラバ制御８３０を含み得る。時間制御ウィンドウ８０８は、追加および／または代替の制御を含み得る。したがって、この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。
【０１０９】
[00118]  本明細書で開示する概念および技術の様々な実施形態によれば、視覚イメージ構成要素１１０は、ツアーを作成する際の簡略化された流れをサポートすることができる。いくつかの実施形態では、ツアーおよび／またはシーンは、ジオコーディングが開始するとすぐに、コンピュータシステム１０２によって自動的に作成され得る。いくつかの実施形態によれば、球体または他のディスプレイ表面は、ジオコーディングが開始される前に、球体上でいかなるデータも表示しなくてもよい。
【０１１０】
[00119]  様々な実施形態によれば、コンピュータシステム１０２は、シーンおよびツアーを作成することによって、状態を保持することができる。また、ツアーが削除されてもよく、いくつかの事例では、最後のツアーが削除される場合、コンピュータシステム１０２は、表計算データ１１２からメタデータを削除することができる。したがって、本明細書で開示する概念および技術の実施形態は、ユーザによるツアーおよびシーンの管理を可能にすることができる。
【０１１１】
[00120]  本明細書で開示する概念および技術の実施形態によれば、視覚イメージ構成要素１１０は、シーンの持続時間にわたってデータ時間をアニメーション化するように構成され得る。ユーザまたは他のエンティティは、データの開始時間および終了時間を選び、または指定することができる。シーンの持続時間は、データに対応するシーンまたはツアーのプレイバック中に、どのくらい高速にデータ時間がアニメーション化されるかを決定するために使用され得る。いくつかの事例では、シーンの持続時間が増す場合、データ時間がより低速で再生され得る。同様に、データ時間のプレイバックの速度が増す場合、シーンの持続時間が減らされ得る。したがって、２つの制御、プレイバック速度および持続時間は、集合的に、データ時間のプレイバックの速度を定義することができる。
【０１１２】
[00121]  いくつかの実施形態によれば、遷移は、２つ以上のシーン間のアニメーションに対応し得る。遷移は、タイプおよび持続時間を有し得る。カメラ経路、関連付けられた回転、角度、速度、加速度、アーチの高さ、および／または、遷移に関連付けられたカメラの動きの他の態様は、視覚イメージ構成要素１１０によって自動的に調節および計算され得る。アルゴリズムは、遷移および／または効果中のカメラのターンの数を最小にして、シーン中の視野角、および／またはデータのフレーミングなどを最適化するように調整され得る。いくつかの実装形態では、遷移は、ツアーの各シーンに自動的に割り当てられ得る。いくつかの実施形態では、遷移は、第１のシーンでは無効化され得る。
【０１１３】
[00122]  効果は、有効化され、自動的にシーンに割り当てられ得る。いくつかの事例では、デフォルト効果が定義され得る。ユーザは、効果のタイプ、および、効果が適用される速度を選ぶことができる。効果は、シーンの持続時間全体にわたって続いてもよく、シーン持続時間に一致するようになり得る。また、軌道および８の字飛行などのループ効果は、シーンの持続時間が効果の持続時間よりも長い場合、複数回ループされ得る。線形効果の場合、視覚イメージ構成要素１１０は、いくつかの効果のための線形軌跡の中央に、シーンの焦点を位置決めするように構成され得る。いくつかの他の効果では、キャプチャスポットは、カメラまたは他の視点が経路に沿って動くにつれて、調節され得る。進行または軌跡の線は、ユーザまたは他のエンティティによって調節され得る、効果の速度に応じて、より短くまたはより長くなり得る。加えて、効果は、シーンがキャプチャされる高さに応じて変化し得る。効果はまた、より少ない回転がシーンの内部に適用されるように、および、シーン中の効果であるように、方向を自動的に変更することもできる。
【０１１４】
[00123]  図９は、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で説明するソフトウェア構成要素を実行可能なデバイスのための、例示的なコンピュータアーキテクチャ９００を示す。したがって、図９に示すコンピュータアーキテクチャ９００は、サーバコンピュータ、モバイル電話、ＰＤＡ、スマートフォン、デスクトップコンピュータ、ネットブックコンピュータ、タブレットコンピュータ、および／またはラップトップコンピュータのためのアーキテクチャを示す。コンピュータアーキテクチャ９００は、本明細書で提示するソフトウェア構成要素の任意の態様を実行するために利用され得る。
【０１１５】
[00124]  図９に示すコンピュータアーキテクチャ９００は、中央処理装置９０２（「CPU」）と、ランダムアクセスメモリ９０６（「RAM」）および読取り専用メモリ（「ROM」）９０８を含むシステムメモリ９０４と、メモリ９０４をＣＰＵ９０２に結合するシステムバス９１０とを含む。起動中などに、コンピュータアーキテクチャ９００内の要素間で情報を転送する助けになる基本ルーチンを含む、基本入出力システムが、ＲＯＭ９０８に記憶される。コンピュータアーキテクチャ９００は、オペレーティングシステム１０６と、限定はしないが、表計算アプリケーション１０８、視覚イメージ構成要素１１０、または他のアプリケーションプログラムなどを含む、１つまたは複数のアプリケーションプログラムとを記憶するための、大容量ストレージデバイス９１２をさらに含む。図９に図示しないが、大容量ストレージデバイス９１２はまた、所望される場合、表計算データ１１８、地理的マッピングデータ１２４、マップデータ１２６、および／または、本明細書で説明するＵＩ１１４のうちの１つもしくは複数に対応するグラフィカルデータを記憶するようにも構成され得る。
【０１１６】
[00125]  大容量ストレージデバイス９１２は、バス９１０に接続された大容量ストレージコントローラ（図示せず）を通して、ＣＰＵ９０２に接続される。大容量ストレージデバイス９１２、およびその関連付けられたコンピュータ可読メディアは、コンピュータアーキテクチャ９００のための不揮発性ストレージを提供する。本明細書に含まれるコンピュータ可読メディアの説明は、ハードディスクまたはＣＤ−ＲＯＭドライブなど、大容量ストレージデバイスに言及するが、コンピュータ可読メディアは、コンピュータアーキテクチャ９００によってアクセスされ得る、任意の利用可能なコンピュータストレージ媒体または通信メディアであり得ることは、当業者には理解されたい。
【０１１７】
[00126]  通信メディアは、コンピュータ可読命令、データ構造、プログラムモジュール、または、搬送波などの変調されたデータ信号、もしくは他のトランスポート機構における他のデータを含み、任意の配信メディアを含む。「変調されたデータ信号」という用語は、その特性のうちの１つまたは複数が、信号における情報を符号化するような方法で変更または設定されている、信号を意味する。例として、限定ではなく、通信メディアには、ワイヤードネットワークまたは直接ワイヤード接続などのワイヤードメディア、ならびに、音響、ＲＦ、赤外線、および他のワイヤレスメディアなどのワイヤレスメディアが含まれる。上記のうちの任意のものの組合せもまた、コンピュータ可読メディアの範囲内に含まれるべきである。
【０１１８】
[00127]  例として、限定ではなく、コンピュータストレージ媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなど、情報のストレージのための任意の方法または技術において実装された、揮発性および不揮発性、取外し式および非取外し式メディアが含まれ得る。例えば、コンピュータメディアには、限定はしないが、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、もしくは他の固体メモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（「DVD」）、ＨＤ−ＤＶＤ、ＢＬＵ−ＲＡＹ、もしくは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、もしく他の磁気ストレージデバイス、または、所望の情報を記憶するために使用することができ、コンピュータアーキテクチャ９００によってアクセスされ得る、任意の他のメディアが含まれる。特許請求の範囲の目的のために、「コンピュータストレージ媒体」というフレーズ、およびその変形形態は、本質的に波もしくは信号、および／または通信メディアを含まない。
【０１１９】
[00128]  様々な実施形態によれば、コンピュータアーキテクチャ９００は、ネットワーク１０４などのネットワークを通してリモートコンピュータへの論理接続を使用して、ネットワーク化された環境内で動作し得る。コンピュータアーキテクチャ９００は、バス９１０に接続されたネットワークインターフェースユニット９１４を通して、ネットワーク１０４に接続し得る。ネットワークインターフェースユニット９１４はまた、例えば、ユーザコンピューティングデバイス１１２、データソース１２０、ジオコーディングサービス１２２、マップサーバ１２８、および／または、他のシステムもしくはデバイスなど、他のタイプのネットワークおよびリモートコンピュータシステムに接続するためにも利用され得ることを理解されたい。コンピュータアーキテクチャ９００はまた、キーボード、マウス、または電子スタイラス（図９に図示せず）を含む、いくつかの他のデバイスからの入力を受信および処理するための入出力コントローラ９１６を含み得る。同様に、入出力コントローラ９１６は、出力をディスプレイ画面、プリンタ、または、他のタイプの出力デバイス（同じく図９に図示せず）に提供し得る。
【０１２０】
[00129]  本明細書で説明するソフトウェア構成要素は、ＣＰＵ９０２にロードされ、実行されるとき、ＣＰＵ９０２および全体的なコンピュータアーキテクチャ９００を、汎用コンピューティングシステムから、本明細書で提示する機能を容易にするようにカスタマイズされた専用コンピューティングシステムに変換し得ることを理解されたい。ＣＰＵ９０２は、任意の数の状態を個々にまたは集合的に仮定し得る、任意の数のトランジスタまたは他の個別の回路要素から構築され得る。より具体的には、ＣＰＵ９０２は、本明細書で開示するソフトウェアモジュール内に含まれる実行可能命令に応答して、有限状態マシンとして動作し得る。これらのコンピュータ実行可能命令は、どのようにＣＰＵ９０２が状態間で遷移するかを指定し、それによって、ＣＰＵ９０２を構成するトランジスタまたは他の個別のハードウェア要素を変換することによって、ＣＰＵ９０２を変換し得る。
【０１２１】
[00130]  本明細書で提示するソフトウェアモジュールを符号化することもまた、本明細書で提示するコンピュータ可読メディアの物理的構造を変換し得る。物理的構造の具体的な変換は、本明細書の異なる実装形態において、様々な要因に依存し得る。そのような要因の例には、限定はしないが、コンピュータ可読メディアが１次ストレージとして特徴づけられるか、２次ストレージとして特徴づけられるかなどにかかわらず、コンピュータ可読メディアを実装するために使用される技術が含まれ得る。例えば、コンピュータ可読メディアが半導体ベースのメモリとして実装される場合、本明細書で開示するソフトウェアは、半導体メモリの物理的状態を変換することによって、コンピュータ可読メディア上で符号化され得る。例えば、ソフトウェアは、半導体メモリを構成するトランジスタ、キャパシタ、または、他の個別の回路要素の状態を変換し得る。ソフトウェアはまた、データをその上に記憶するために、そのような構成要素の物理的状態を変換し得る。
【０１２２】
[00131]  別の例として、本明細書で開示するコンピュータ可読メディアは、磁気または光学技術を使用して実装され得る。そのような実装形態では、本明細書で提示するソフトウェアが磁気または光メディア中で符号化されるとき、ソフトウェアは、磁気または光メディアの物理的状態を変換し得る。これらの変換は、所与の磁気メディア内の特定のロケーションの磁気特性を変更することを含み得る。これらの変換はまた、所与の光メディア内の特定のロケーションの物理的特徴または特性を変更して、これらのロケーションの光学的特性を変化させることを含み得る。物理的メディアの他の変換は、本明細書の範囲および趣旨から逸脱することなく可能であり、上記の例は、この説明を容易にするためにのみ提供される。
【０１２３】
[00132]  上記に照らして、本明細書で提示するソフトウェア構成要素を記憶および実行するために、多数のタイプの物理的変換が、コンピュータアーキテクチャ９００において行われることを理解されたい。また、コンピュータアーキテクチャ９００は、ハンドヘルドコンピュータ、埋込みコンピュータシステム、携帯情報端末、および、当業者に知られている他のタイプのコンピューティングデバイスを含む、他のタイプのコンピューティングデバイスを含み得ることも理解されたい。また、コンピュータアーキテクチャ９００が、図９に示す構成要素のすべてを含むとは限らないことがあり、図９に明示的に示されない他の構成要素を含んでもよく、または、図９に示すものとはまったく異なるアーキテクチャを利用してもよいことも企図される。
【０１２４】
[00133]  図１０は、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で説明するソフトウェア構成要素を実行可能な例示的な分散コンピューティング環境１０００を示す。したがって、図１０に示す分散コンピューティング環境１０００は、コンピュータシステム１０２に関して本明細書で説明した機能を提供するために使用され得る。したがって、分散コンピューティング環境１０００は、本明細書で提示するソフトウェア構成要素の任意の態様を実行するために利用され得る。
【０１２５】
[00134]  様々な実装形態によれば、分散コンピューティング環境１０００は、ネットワーク１００４上で動作しているか、それと通信しているか、またはその一部として、コンピューティング環境１００２を含む。ネットワーク１００４はまた、様々なアクセスネットワークを含み得る。様々な実装形態によれば、ネットワーク１００４の機能は、図１に示すネットワーク１０４によって提供され得る。１つまたは複数のクライアントデバイス１００６Ａ〜１００６Ｎ（以下で集合的および／または総称的に「クライアント１００６」と呼ぶ）は、ネットワーク１００４および／または他の接続（図１０に図示せず）を介して、コンピューティング環境１００２と通信することができる。図示の実施形態では、クライアント１００６は、ラップトップコンピュータ、デスクトップコンピュータ、もしくは他のコンピューティングデバイスなどのコンピューティングデバイス１００６Ａ、スレートもしくはタブレットコンピューティングデバイス（「タブレットコンピューティングデバイス」）１００６Ｂ、モバイル電話、スマートフォン、もしくは他のモバイルコンピューティングデバイスなどのモバイルコンピューティングデバイス１００６Ｃ、サーバコンピュータ１００６Ｄ、および／または他のデバイス１００６Ｎを含む。任意の数のクライアント１００６が、コンピューティング環境１００２と通信することができることを理解されたい。クライアント１００６のための２つの例示的なコンピューティングアーキテクチャについては、本明細書で図９および図１１を参照しながら示し、説明する。図示のクライアント１００６、および、本明細書で示し、説明するコンピューティングアーキテクチャは、例示的であり、いかなる形でも限定されるものとして解釈されるべきではないことを理解されたい。
【０１２６】
[00135]  図示の実施形態では、コンピューティング環境１００２は、アプリケーションサーバ１００８と、データストレージ１０１０と、１つまたは複数のネットワークインターフェース１０１２とを含む。様々な実装形態によれば、アプリケーションサーバ１００８の機能は、ネットワーク１００４の一部として実行しているか、またはそれと通信している、１つまたは複数のサーバコンピュータによって提供され得る。アプリケーションサーバ１００８は、様々なサービス、仮想マシン、ポータル、および／または他のリソースをホストすることができる。図示の実施形態では、アプリケーションサーバ１００８は、アプリケーションまたは他の機能をホストするための、１つまたは複数の仮想マシン１０１４をホストする。様々な実装形態によれば、仮想マシン１０１４は、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で説明する機能を提供するための、１つまたは複数のアプリケーションおよび／またはソフトウェアモジュールをホストする。この実施形態は、例示的であり、いかなる形でも限定として解釈されるべきではないことを理解されたい。アプリケーションサーバ１００８はまた、１つまたは複数のウェブポータル、リンクページ、ウェブサイト、および／または他の情報（「ウェブポータル」）１０１６をホストし、またはそれへのアクセスを提供する。
【０１２７】
[00136]  様々な実装形態によれば、アプリケーションサーバ１００８はまた、１つまたは複数のメールボックスサービス１０１８と、１つまたは複数のメッセージングサービス１０２０とを含む。メールボックスサービス１０１８は、電子メール（「eメール」）サービスを含み得る。メールボックスサービス１０１８はまた、限定はしないが、カレンダーサービス、連絡先管理サービス、コラボレーションサービス、および／または他のサービスを含む、様々な個人情報管理（「PIM」）サービスを含み得る。メッセージングサービス１０２０は、限定はしないが、インスタントメッセージングサービス、チャットサービス、フォーラムサービス、および／または他の通信サービスを含み得る。
【０１２８】
[00137]  アプリケーションサーバ１００８はまた、１つまたは複数のソーシャルネットワーキングサービス１０２２を含み得る。ソーシャルネットワーキングサービス１０２２は、限定はしないが、ステータス更新、インスタントメッセージ、リンク、写真、ビデオ、および／もしくは他の情報を共有もしくは投稿するためのサービス、記事、製品、ブログ、もしくは他のリソースでコメントするため、もしくはそれへの関心を表示するためのサービス、ならびに／または他のサービスを含む、様々なソーシャルネットワーキングサービスを含み得る。いくつかの実施形態では、ソーシャルネットワーキングサービス１０２２は、ＦＡＣＥＢＯＯＫソーシャルネットワーキングサービス、ＬＩＮＫＥＤＩＮプロフェッショナルネットワーキングサービス、ＭＹＳＰＡＣＥソーシャルネットワーキングサービス、ＦＯＵＲＳＱＵＡＲＥ地理的ネットワーキングサービス、およびＹＡＭＭＥＲ会社同僚ネットワーキングサービスなどによって提供され、またはそれらを含む。他の実施形態では、ソーシャルネットワーキングサービス１０２２は、ソーシャルネットワーキングプロバイダとして明示的に知られていても、そうでなくてもよい、他のサービス、サイト、および／またはプロバイダによって提供される。例えば、いくつかのウェブサイトは、ユーザが、公開された記事を読む、商品またはサービスについてコメントする、公開、コラボレーション、およびゲーミングなど、様々な活動および／またはコンテキスト中に、ｅメール、チャットサービス、および／または他の手段を介して互いに対話することを可能にする。そのようなサービスの例には、限定はしないが、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる、ＷＩＮＤＯＷＳ  ＬＩＶＥサービスおよびＸＢＯＸ  ＬＩＶＥサービスが含まれる。他のサービスが可能であり、企図される。
【０１２９】
[00138]  ソーシャルネットワーキングサービス１０２２はまた、コメント、ブロギング、および／またはマイクロブロギングサービスを含み得る。そのようなサービスの例には、限定はしないが、ＹＥＬＰコメントサービス、ＫＵＤＺＵレビューサービス、ＯＦＦＩＣＥＴＡＬＫ企業マイクロブロギングサービス、ＴＷＩＴＴＥＲメッセージングサービス、ＧＯＯＧＬＥ  ＢＵＺＺサービス、および／または他のサービスが含まれる。上記のサービスのリストは網羅的ではないこと、ならびに、多数の追加および／または代替のソーシャルネットワーキングサービス１０２２については、簡潔のために本明細書で言及しないことを理解されたい。したがって、上記の実施形態は、例示的であり、いかなる形でも限定されるものとして解釈されるべきではない。
【０１３０】
[00139]  図１０に示すように、アプリケーションサーバ１００８はまた、他のサービス、アプリケーション、ポータル、および／または他のリソース（「他のリソース」）１０２４をホストすることもできる。他のリソース１０２４には、限定はしないが、ジオコーディングサービス１２２、マップサーバ１２８、データソース１２０、ならびに／または、他のサービスおよび／もしくはリソースが含まれ得る。したがって、コンピューティング環境１００２は、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で開示し、本明細書で提供する概念および技術と、様々なメールボックス、メッセージング、ソーシャルネットワーキング、および／または、他のサービスもしくはリソースとの統合を提供することができることは理解されよう。例えば、本明細書で開示する概念および技術は、ソーシャルネットワークユーザ、メール受信者、またはメッセージ受信者などと視覚イメージを共有することをサポートすることができる。同様に、ユーザまたは他のエンティティは、ソーシャルネットワーキングユーザ、友人、接続、メール受信者、システムもしくはデバイス、またはそれらの組合せなどと、視覚イメージおよび／または表計算データ１１８を共有することができる。
【０１３１】
[00140]  上述のように、コンピューティング環境１００２は、データストレージ１０１０を含み得る。様々な実装形態によれば、データストレージ１０１０の機能は、ネットワーク１００４上で動作しているか、またはそれと通信している、１つまたは複数のデータベースによって提供される。データストレージ１０１０の機能はまた、コンピューティング環境１００２のためのデータをホストするように構成された、１つまたは複数のサーバコンピュータによっても提供され得る。データストレージ１０１０は、１つまたは複数の実際または仮想のデータストア１０２６Ａ〜１０２６Ｎ（以下、集合的および／または総称的に「データストア１０２６」と呼ぶ）を含み、ホストし、または提供することができる。データストア１０２６は、アプリケーションサーバ１００８によって使用もしくは作成されるデータ、および／または他のデータをホストするように構成される。図１０に図示しないが、データストア１０２６はまた、オペレーティングシステム１０６、表計算アプリケーション１０８、視覚イメージ構成要素１１０、１つまたは複数のＵＩ１１４に対応するグラフィックスデータ、表計算データ１１８、地理的マッピングデータ１２４、マップデータ１２６、またはそれらの組合せなどをホストまたは記憶することもできる。
【０１３２】
[00141]  コンピューティング環境１００２は、ネットワークインターフェース１０１２と通信することができ、またはそれによってアクセスされ得る。ネットワークインターフェース１０１２は、限定はしないが、クライアント１００６およびアプリケーションサーバ１００８を含む、２つ以上のコンピューティングデバイス間の通信をサポートするための、様々なタイプのネットワークハードウェアおよびソフトウェアを含み得る。ネットワークインターフェース１０１２はまた、他のタイプのネットワークおよび／またはコンピュータシステムに接続するためにも利用され得ることを理解されたい。
【０１３３】
[00142]  本明細書で説明する分散コンピューティング環境１０００は、本明細書で説明するソフトウェア要素の任意の態様に、任意の数の仮想コンピューティングリソース、および／または、本明細書で開示するソフトウェア構成要素の任意の態様を実行するように構成され得る他の分散コンピューティング機能を提供することができることを理解されたい。本明細書で開示する概念および技術の様々な実装形態によれば、分散コンピューティング環境１０００は、クライアント１００６へのサービスとして、本明細書で説明するソフトウェア機能を提供する。クライアント１００６は、限定はしないが、サーバコンピュータ、ウェブサーバ、パーソナルコンピュータ、モバイルコンピューティングデバイス、スマートフォン、および／または他のデバイスを含む、実際または仮想のマシンを含み得ることを理解されたい。したがって、本明細書で開示する概念および技術の様々な実施形態は、分散コンピューティング環境１０００にアクセスするように構成された任意のデバイスが、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で説明する機能を利用することを可能にする。
【０１３４】
[00143]  次に図１１を参照すると、表計算アプリケーションにおけるアニメーション遷移および効果のための、本明細書で説明する様々なソフトウェア構成要素を実行可能であるコンピューティングデバイスのための、例示的なコンピューティングデバイスアーキテクチャ１１００である。コンピューティングデバイスアーキテクチャ１１００は、部分的に、フォームファクタ、ワイヤレス接続性、および／またはバッテリ電源式動作により、モバイルコンピューティングを容易にする、コンピューティングデバイスに適用可能である。いくつかの実施形態では、コンピューティングデバイスには、限定はしないが、モバイル電話、タブレットデバイス、スレートデバイス、およびポータブルビデオゲームデバイスなどが含まれる。その上、コンピューティングデバイスアーキテクチャ１１００は、図１０に示すクライアント１１０６のうちのいずれにも適用可能である。さらに、コンピューティングデバイスアーキテクチャ１１００の態様は、図９を参照しながら本明細書で説明したものなど、従来のデスクトップコンピュータ、ポータブルコンピュータ（例えば、ラップトップ、ノートブック、ウルトラポータブル、およびネットブック）、サーバコンピュータ、および他のコンピュータシステムに適用可能であり得る。例えば、本明細書の以下で開示するシングルタッチおよびマルチタッチ態様は、タッチスクリーン、または、タッチ対応トラックパッドもしくはタッチ対応マウスなど、ある他のタッチ対応デバイスを利用する、デスクトップコンピュータに適用され得る。
【０１３５】
[00144]  図１１に示すコンピューティングデバイスアーキテクチャ１１００は、プロセッサ１１０２と、メモリ構成要素１１０４と、ネットワーク接続性構成要素１１０６と、センサ構成要素１１０８と、入出力構成要素１１１０と、電源構成要素１１１２とを含む。図示の実施形態では、プロセッサ１１０２は、メモリ構成要素１１０４、ネットワーク接続性構成要素１１０６、センサ構成要素１１０８、入出力（「I/O」）構成要素１１１０、および電源構成要素１１１２と通信している。図１１に示す個々の構成要素間には、接続が図示されていないが、構成要素は、デバイス機能を実行するために対話することができる。いくつかの実施形態では、構成要素は、１つまたは複数のバス（図示せず）を介して通信するように配置される。
【０１３６】
[00145]  プロセッサ１１０２は、本明細書で説明する様々な機能を行うために、データを処理し、１つまたは複数のアプリケーションプログラムのコンピュータ実行可能命令を実行し、コンピューティングデバイスアーキテクチャ１１００の他の構成要素と通信するように構成された、中央処理装置（「CPU」）を含む。プロセッサ１１０２は、本明細書で提示するソフトウェア構成要素の態様、および、特に、少なくとも部分的にタッチ対応入力を利用するものを実行するために利用され得る。
【０１３７】
[00146]  いくつかの実施形態では、プロセッサ１１０２は、限定はしないが、汎用の科学的およびエンジニアリングコンピューティングアプリケーション、ならびに、高解像度ビデオ（例えば、１０２０ｐ、１０８０ｐ、およびそれ以上）、ビデオゲーム、および３次元モデリングアプリケーションなど、グラフィックス集中的なコンピューティングアプリケーションを実行することによって行われる動作を含む、ＣＰＵによって行われる動作を加速するように構成された、グラフィック処理ユニット（「GPU」）を含む。いくつかの実施形態では、プロセッサ１１０２は、個別のＧＰＵ（図示せず）と通信するように構成される。いずれの場合にも、ＣＰＵおよびＧＰＵは、コプロセッシングＣＰＵ／ＧＰＵコンピューティングモデルに従って構成されてもよく、アプリケーションの連続的な部分がＣＰＵ上で実行し、計算集中的な部分がＧＰＵによって加速される。
【０１３８】
[00147]  いくつかの実施形態では、プロセッサ１１０２は、本明細書の以下で説明する他の構成要素のうちの１つまたは複数を伴うシステムオンチップ（「SoC」）であり、またはその中に含まれる。例えば、ＳｏＣは、プロセッサ１１０２、ＧＰＵ、ネットワーク接続性構成要素１１０６のうちの１つまたは複数、および、センサ構成要素１１０８のうちの１つまたは複数を含み得る。いくつかの実施形態では、プロセッサ１１０２は、部分的に、パッケージオンパッケージ（「PoP」）集積回路パッケージング技法を利用して作製される。その上、プロセッサ１１０２は、シングルコアまたはマルチコアプロセッサであり得る。
【０１３９】
[00148]  プロセッサ１１０２は、英国ケンブリッジのＡＲＭ  ＨＯＬＤＩＮＧＳからのライセンスで利用可能な、ＡＲＭアーキテクチャに従って作成され得る。代替的に、プロセッサ１１０２は、カリフォルニア州マウンテンビューのＩＮＴＥＬ  ＣＯＲＰＯＲＡＴＩＯＮおよび他社から入手可能であるものなど、ｘ８６アーキテクチャに従って作成され得る。いくつかの実施形態では、プロセッサ１１０２は、カリフォルニア州サンディエゴのＱＵＡＬＣＯＭＭから入手可能なＳＮＡＰＤＲＡＧＯＮ  ＳｏＣ、カリフォルニア州サンタクララのＮＶＩＤＩＡから入手可能なＴＥＧＲＡ  ＳｏＣ、韓国ソウルのＳＡＭＳＵＮＧから入手可能なＨＵＭＭＩＮＧＢＩＲＤ  ＳｏＣ、テキサス州ダラスのＴＥＸＡＳ  ＩＮＳＴＲＵＭＥＮＴＳから入手可能なＯｐｅｎ  Ｍｕｌｔｉｍｅｄｉａ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ（「OMAP」）ＳｏＣ、上記のＳｏＣのいずれかのカスタマイズされたバージョン、またはプロプライエタリなＳｏＣである。
【０１４０】
[00149]  メモリ構成要素１１０４は、ランダムアクセスメモリ（「RAM」）１１１４と、読取り専用メモリ（「ROM」）１１１６と、一体型ストレージメモリ（「一体型ストレージ」）１１１８と、取外し式ストレージメモリ（「取外し式ストレージ」）１１２０とを含む。いくつかの実施形態では、ＲＡＭ１１１４もしくはその一部分、ＲＯＭ１１１６もしくはその一部分、ならびに／または、ＲＡＭ１１１４およびＲＯＭ１１１６のある組合せは、プロセッサ１１０２に一体化される。いくつかの実施形態では、ＲＯＭ１１１６は、ファームウェア、オペレーティングシステムもしくはその一部分（例えば、オペレーティングシステムカーネル）、および／または、一体型ストレージ１１１８もしくは取外し式ストレージ１１２０からオペレーティングシステムカーネルをロードするためのブートローダーを記憶するように構成される。
【０１４１】
[00150]  一体型ストレージ１１１８は、固体メモリ、ハードディスク、または、固体メモリおよびハードディスクの組合せを含み得る。一体型ストレージ１１１８は、その上にプロセッサ１１０２、および、本明細書で説明する他の構成要素もまた接続され得る、ロジックボードにはんだ付け、または別法により接続され得る。したがって、一体型ストレージ１１１８は、コンピューティングデバイスに一体化される。一体型ストレージ１１１８は、オペレーティングシステムまたはその部分、アプリケーションプログラム、データ、および、本明細書で説明する他のソフトウェア構成要素を記憶するように構成される。
【０１４２】
[00151]  取外し式ストレージ１１２０は、固体メモリ、ハードディスク、または、固体メモリおよびハードディスクの組合せを含み得る。いくつかの実施形態では、取外し式ストレージ１１２０は、一体型ストレージ１１１８の代わりに提供される。他の実施形態では、取外し式ストレージ１１２０は、追加の任意選択のストレージとして提供される。いくつかの実施形態では、取外し式ストレージ１１２０は、一体型ストレージ１１１８と論理的に結合され、利用可能な総ストレージが、一体型ストレージ１１１８および取外し式ストレージ１１２０の合計の総容量として利用可能にされ、ユーザに示されるようになる。
【０１４３】
[00152]  取外し式ストレージ１１２０は、取外し式ストレージメモリスロット（図示せず）または他の機構に挿入されるように構成され、それによって、取外し式ストレージ１１２０が挿入および固定されて、取外し式ストレージ１１２０が、プロセッサ１１０２など、コンピューティングデバイスの他の構成要素とそれを介して通信することができる接続が、容易にされる。取外し式ストレージ１１２０は、限定はしないが、ＰＣカード、ＣｏｍｐａｃｔＦｌａｓｈカード、メモリスティック、セキュアデジタル（「SD」）、ｍｉｎｉＳＤ、ｍｉｃｒｏＳＤ、ユニバーサル集積回路カード（「UICC」）（例えば、加入者識別情報モジュール（「SIM」）もしくはユニバーサルＳＩＭ（「USIM」））、またはプロプライエタリなフォーマットなどを含む、様々なメモリカードフォーマットで実施され得る。
【０１４４】
[00153]  メモリ構成要素１１０４のうちの１つまたは複数は、オペレーティングシステムを記憶することができることは理解されよう。様々な実施形態によれば、オペレーティングシステムには、限定はしないが、ＳＹＭＢＩＡＮ  ＬＩＭＩＴＥＤによるＳＹＭＢＩＡＮ  ＯＳ、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＷＩＮＤＯＷＳ  ＭＯＢＩＬＥ  ＯＳ、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＷＩＮＤＯＷＳ  ＰＨＯＮＥ  ＯＳ、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＷＩＮＤＯＷＳ、カリフォルニア州パロアルトのＨｅｗｌｅｔｔ−Ｐａｃｋａｒｄ  ＣｏｍｐａｎｙによるＰＡＬＭ  ＷＥＢＯＳ、カナダのオンタリオ州ウォータールーのＲｅｓｅａｒｃｈ  Ｉｎ  Ｍｏｔｉｏｎ  ＬｉｍｉｔｅｄによるＢＬＡＣＫＢＥＲＲＹ  ＯＳ、カリフォルニア州クパチーノのＡｐｐｌｅ  Ｉｎｃ．によるＩＯＳ、および、カリフォルニア州マウンテンビューのＧｏｏｇｌｅ  Ｉｎｃ．によるＡＮＤＲＯＩＤ  ＯＳが含まれる。他のオペレーティングシステムが企図される。
【０１４５】
[00154]  ネットワーク接続性構成要素１１０６は、ワイヤレスワイドエリアネットワーク構成要素（「WWAN構成要素」）１１２２と、ワイヤレスローカルエリアネットワーク構成要素（「WLAN構成要素」）１１２４と、ワイヤレスパーソナルエリアネットワーク構成要素（「WPAN構成要素」）１１２６とを含む。ネットワーク接続性構成要素１１０６は、ＷＷＡＮ、ＷＬＡＮ、またはＷＰＡＮであり得る、ネットワーク１１２８への、およびそこからの通信を容易にする。単一のネットワーク１１２８が図示されるが、ネットワーク接続性構成要素１１０６は、複数のネットワークとの同時通信を容易にし得る。例えば、ネットワーク接続性構成要素１１０６は、ＷＷＡＮ、ＷＬＡＮ、またはＷＰＡＮのうちの１つまたは複数を介して、複数のネットワークとの同時通信を容易にし得る。
【０１４６】
[00155]  いくつかの実施形態では、ネットワーク１１２８は、図１および図９から図１０までに示し、説明したネットワーク１０４および／またはネットワーク１００４に対応し得る。いくつかの他の実施形態では、ネットワーク１１２８は、図１および図９を参照しながら示し、説明したネットワーク１０４、ならびに／または、図１０に示し、説明したネットワーク１００４を含み得る。さらに他の実施形態では、ネットワーク１１２８は、図１および図９を参照しながら示し、説明したネットワーク１０４、ならびに／または、図１０に示し、説明したネットワーク１００４へのアクセスを提供することができる。
【０１４７】
[00156]  ネットワーク１１２８は、１つまたは複数のモバイル電気通信技術を利用して、音声および／またはデータサービスを、コンピューティングデバイスアーキテクチャ１１００を利用するコンピューティングデバイスに、ＷＷＡＮ構成要素１１２２を介して提供する、モバイル電気通信ネットワークなどのＷＷＡＮであり得る。モバイル電気通信技術には、限定はしないが、Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ（「GSM」）、符号分割多元接続（「CDMA」）ＯＮＥ、ＣＤＭＡ２０００、ユニバーサルモバイル電気通信システム（「UMTS」）、ロングタームエボリューション（「LTE」）、およびＷｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ（「WiMAX」）が含まれ得る。その上、ネットワーク１１２８は、限定はしないが、時分割多元接続（「TDMA」）、周波数分割多元接続（「FDMA」）、ＣＤＭＡ、広帯域ＣＤＭＡ（「W-CDMA」）、直交周波数分割多重化（「OFDM」）、および空間分割多元接続（「SDMA」）などを含む、様々なチャネルアクセス方法（上述の規格によって使用されても、使用されなくてもよい）を利用し得る。データ通信は、汎用パケット無線サービス（「GPRS」）と、Ｅｎｈａｎｃｅｄ  Ｄａｔａ  ｒａｔｅｓ  ｆｏｒ  Ｇｌｏｂａｌ  Ｅｖｏｌｕｔｉｏｎ（「EDGE」）と、高速ダウンリンクパケットアクセス（「HSDPA」）、拡張アップリンク（「EUL」）もしくは場合によっては高速アップリンクパケットアクセス（「HSUPA」）と呼ばれるものを含む、高速パケットアクセス（「HSPA」）プロトコルファミリと、発展型ＨＳＰＡ（「HSPA+」）と、ＬＴＥと、様々な他の現在および将来のワイヤレスデータアクセス規格とを使用して提供され得る。ネットワーク１１２８は、上記の技術の任意の組合せで、音声および／またはデータ通信を提供するように構成され得る。ネットワーク１１２８は、次世代技術に従って、音声および／またはデータ通信を提供するように構成または適合され得る。
【０１４８】
[00157]  いくつかの実施形態では、ＷＷＡＮ構成要素１１２２は、ネットワーク１１２８へのデュアル／マルチモード接続性を提供するように構成される。例えば、ＷＷＡＮ構成要素１１２２は、ネットワーク１１２８への接続性を提供するように構成されてもよく、ネットワーク１１２８は、ＧＳＭおよびＵＭＴＳ技術を介して、または、ある他の技術の組合せを介して、サービスを提供する。代替的に、複数のＷＷＡＮ構成要素１１２２が、そのような機能を行うため、および／または、他の適合しない（すなわち、単一のWWAN構成要素によってサポートされることが不可能である）技術をサポートするために追加の機能を提供するために、利用され得る。ＷＷＡＮ構成要素１１２２は、複数のネットワーク（例えば、UMTSネットワーク、およびLTEネットワーク）への同様の接続性を容易にし得る。
【０１４９】
[00158]  ネットワーク１１２８は、電気電子技術者協会（「IEEE」）８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１ｎ、および／または将来の８０２．１１規格（本明細書でWI-FIと総称する）など、１つまたは複数のＩＥＥＥ８０２．１１規格に従って動作するＷＬＡＮであってもよい。ドラフト８０２．１１規格もまた、企図される。いくつかの実施形態では、ＷＬＡＮは、１つまたは複数のワイヤレスＷＩ−ＦＩアクセスポイントを利用して実装される。いくつかの実施形態では、ワイヤレスＷＩ−ＦＩアクセスポイントのうちの１つまたは複数は、ＷＩ−ＦＩホットスポットとして機能しているＷＷＡＮへの接続性をもつ、別のコンピューティングデバイスである。ＷＬＡＮ構成要素１１２４は、ＷＩ−ＦＩアクセスポイントを介して、ネットワーク１１２８に接続するように構成される。そのような接続は、限定はしないが、ＷＩ−ＦＩプロテクテッドアクセス（「WPA」）、ＷＰＡ２、およびＷｉｒｅｄ  Ｅｑｕｉｖａｌｅｎｔ  Ｐｒｉｖａｃｙ（「WEP」）などを含む、様々な暗号化技術を介して保護され得る。
【０１５０】
[00159]  ネットワーク１１２８は、赤外線データ協会（「IrDA」）、ＢＬＵＥＴＯＯＴＨ、ワイヤレスユニバーサルシリアルバス（「USB」）、Ｚ−Ｗａｖｅ、ＺＩＧＢＥＥ、または、ある他の短距離ワイヤレス技術に従って動作するＷＰＡＮであってもよい。いくつかの実施形態では、ＷＰＡＮ構成要素１１２６は、ＷＰＡＮを介して、周辺機器、コンピュータ、または他のコンピューティングデバイスなど、他のデバイスとの通信を容易にするように構成される。
【０１５１】
[00160]  センサ構成要素１１０８は、磁力計１１３０と、周辺光センサ１１３２と、近接センサ１１３４と、加速度計１１３６と、ジャイロスコープ１１３８と、全地球測位システムセンサ（「GPSセンサ」）１１４０とを含む。限定はしないが、温度センサまたは衝撃検出センサなど、他のセンサもまた、コンピューティングデバイスアーキテクチャ１１００に組み込まれ得ることが企図される。
【０１５２】
[00161]  磁力計１１３０は、磁界の強度および方向を測定するように構成される。いくつかの実施形態では、磁力計１１３０は、基本方位、北、南、東、および西を含む、基準系において、正確な方向をユーザに提供するために、メモリ構成要素１１０４のうちの１つの内部に記憶されたコンパスアプリケーションプログラムに、測定値を提供する。同様の測定値が、コンパス構成要素を含むナビゲーションアプリケーションプログラムに提供され得る。磁力計１１３０によって取得された測定値の他の使用が、企図される。
【０１５３】
[00162]  周辺光センサ１１３２は、周辺光を測定するように構成される。いくつかの実施形態では、周辺光センサ１１３２は、ディスプレイ（以下で説明する）の輝度を自動的に調節して、低光量環境および高光量環境を補償するために、メモリ構成要素１１０４のうちの１つの内部に記憶されたアプリケーションプログラムに、測定値を提供する。周辺光センサ１１３２によって取得された測定値の他の使用が、企図される。
【０１５４】
[00163]  近接センサ１１３４は、コンピューティングデバイスに直接接触せずに近接している物体または物の存在を検出するように構成される。いくつかの実施形態では、近接センサ１１３４は、ユーザの体（例えば、ユーザの顔）の存在を検出し、この情報を、近接情報を利用してコンピューティングデバイスのある機能を有効化または無効化する、メモリ構成要素１１０４のうちの１つの内部に記憶されたアプリケーションプログラムに提供する。例えば、電話アプリケーションプログラムは、近接情報を受信することに応答して、タッチスクリーン（以下で説明する）を自動的に無効化し、ユーザの顔が不注意に通話を終了しないように、または、通話中に電話アプリケーションプログラム内の他の機能を有効化／無効化しないようにしてもよい。近接センサ１１３４によって検出されるような近接の他の使用が、企図される。
【０１５５】
[00164]  加速度計１１３６は、適切な加速度を測定するように構成される。いくつかの実施形態では、加速度計１１３６からの出力は、アプリケーションプログラムによって、アプリケーションプログラムのある機能を制御するために、入力機構として使用される。例えば、アプリケーションプログラムは、キャラクタ、その一部分、またはオブジェクトが、加速度計１１３６を介して受信された入力に応答して動かされるか、または別法により操作される、ビデオゲームであり得る。いくつかの実施形態では、加速度計１１３６からの出力は、風景モードとポートレートモードとの間で切り替えること、座標加速度を計算すること、または落下を検出することにおいて使用するために、アプリケーションプログラムに提供される。加速度計１１３６の他の使用が、企図される。
【０１５６】
[00165]  ジャイロスコープ１１３８は、向きを測定および維持するように構成される。いくつかの実施形態では、ジャイロスコープ１１３８からの出力は、アプリケーションプログラムによって、アプリケーションプログラムのある機能を制御するために、入力機構として使用される。例えば、ジャイロスコープ１１３８は、ビデオゲームアプリケーション、またはある他のアプリケーションの、３次元環境内の動きの正確な認識のために使用され得る。いくつかの実施形態では、アプリケーションプログラムは、ジャイロスコープ１１３８および加速度計１１３６からの出力を利用して、アプリケーションプログラムのある機能の制御を向上させる。ジャイロスコープ１１３８の他の使用が、企図される。
【０１５７】
[00166]  ＧＰＳセンサ１１４０は、ロケーションを計算する際に使用するために、ＧＰＳ衛星からの信号を受信するように構成される。ＧＰＳセンサ１１４０によって計算されたロケーションは、ロケーション情報を必要とするか、またはそれから利益を得る、任意のアプリケーションプログラムによって使用され得る。例えば、ＧＰＳセンサ１１４０によって計算されたロケーションが、ナビゲーションアプリケーションプログラムとともに使用されて、そのロケーションから目的地までの道順、または目的地からそのロケーションまでの道順が提供され得る。その上、ＧＰＳセンサ１１４０は、ロケーション情報を、Ｅ９１１サービスなど、外部のロケーションベースのサービスに提供するために使用され得る。ＧＰＳセンサ１１４０は、ロケーションフィックスを取得する際にＧＰＳセンサ１１４０を援助するために、ＷＩ−ＦＩ、ＷＩＭＡＸ、および／または、ネットワーク接続性構成要素１１０６のうちの１つもしくは複数を利用するセルラー三角測量技法を介して生成された、ロケーション情報を取得し得る。ＧＰＳセンサ１１４０はまた、アシスト型ＧＰＳ（「A-GPS」）システムにおいても使用され得る。
【０１５８】
[00167]  Ｉ／Ｏ構成要素１１１０は、ディスプレイ１１４２と、タッチスクリーン１１４４と、データＩ／Ｏインターフェース構成要素（「データI/O」）１１４６と、オーディオＩ／Ｏインターフェース構成要素（「オーディオI/O」）１１４８と、ビデオＩ／Ｏインターフェース構成要素（「ビデオI/O」）１１５０と、カメラ１１５２とを含む。いくつかの実施形態では、ディスプレイ１１４２およびタッチスクリーン１１４４が結合される。いくつかの実施形態では、データＩ／Ｏ構成要素１１４６、オーディオＩ／Ｏ構成要素１１４８、およびビデオＩ／Ｏ構成要素１１５０のうちの２つ以上が結合される。Ｉ／Ｏ構成要素１１１０は、以下で説明する様々なインターフェースをサポートするように構成された個別のプロセッサを含んでもよく、または、プロセッサ１１０２に内蔵された処理機能を含んでもよい。
【０１５９】
[00168]  ディスプレイ１１４２は、情報を視覚的形態で提示するように構成された出力デバイスである。具体的には、ディスプレイ１１４２は、グラフィカルユーザインターフェース（「GUI」）要素、テキスト、画像、ビデオ、通知、仮想ボタン、仮想キーボード、メッセージングデータ、インターネットコンテンツ、デバイスステータス、時間、日付、カレンダーデータ、選好、マップ情報、ロケーション情報、および、視覚的形態で提示されることが可能である任意の他の情報を提示し得る。いくつかの実施形態では、ディスプレイ１１４２は、任意のアクティブまたはパッシブマトリックス技術、および任意のバックライティング技術（使用される場合）を利用する、液晶ディスプレイ（「LCD」）である。いくつかの実施形態では、ディスプレイ１１４２は、有機発光ダイオード（「OLED」）ディスプレイである。他のディスプレイタイプが企図される。
【０１６０】
[00169]  タッチスクリーン１１４４は、タッチの存在およびロケーションを検出するように構成された入力デバイスである。タッチスクリーン１１４４は、抵抗タッチスクリーン、容量性タッチスクリーン、表面弾性波タッチスクリーン、赤外線タッチスクリーン、光イメージングタッチスクリーン、分散信号タッチスクリーン、音響パルス認識タッチスクリーンであってもよく、または、任意の他のタッチスクリーン技術を利用してもよい。いくつかの実施形態では、タッチスクリーン１１４４は、ディスプレイ１１４２の上に透明層として組み込まれて、ユーザが、１つまたは複数のタッチを使用して、ディスプレイ１１４２上に提示されたオブジェクトまたは他の情報と対話することを可能にする。他の実施形態では、タッチスクリーン１１４４は、ディスプレイ１１４２を含まないコンピューティングデバイスの表面上に組み込まれたタッチパッドである。例えば、コンピューティングデバイスは、ディスプレイ１１４２の上に組み込まれたタッチスクリーン、および、ディスプレイ１１４２の反対側の表面上のタッチパッドを有してもよい。
【０１６１】
[00170]  いくつかの実施形態では、タッチスクリーン１１４４は、シングルタッチタッチスクリーンである。他の実施形態では、タッチスクリーン１１４４は、マルチタッチタッチスクリーンである。いくつかの実施形態では、タッチスクリーン１１４４は、個別のタッチ、シングルタッチジェスチャ、および／またはマルチタッチジェスチャを検出するように構成される。これらを、便宜上、本明細書でジェスチャと総称する。ここで、いくつかのジェスチャについて説明する。これらのジェスチャは、例示的であり、添付の特許請求の範囲を限定するように意図されないことを理解されたい。その上、説明するジェスチャ、追加のジェスチャ、および／または代替ジェスチャは、タッチスクリーン１１４４とともに使用するためのソフトウェアにおいて実装され得る。したがって、開発者は、特定のアプリケーションプログラムに固有であるジェスチャを作成してもよい。
【０１６２】
[00171]  いくつかの実施形態では、タッチスクリーン１１４４は、ディスプレイ１１４２上に提示されたアイテムの上で、ユーザがタッチスクリーン１１４４を１回タップする、タップジェスチャをサポートする。タップジェスチャは、限定はしないが、ユーザがタップするものを何でも開くか、または起動することを含む、様々な理由のために使用され得る。いくつかの実施形態では、タッチスクリーン１１４４は、ディスプレイ１１４２上に提示されたアイテムの上で、ユーザがタッチスクリーン１１４４を２回タップする、ダブルタップジェスチャをサポートする。ダブルタップジェスチャは、限定はしないが、段階的にズームインまたはズームアウトすることを含む、様々な理由のために使用され得る。いくつかの実施形態では、タッチスクリーン１１４４は、ユーザがタッチスクリーン１１４４をタップし、少なくともあらかじめ定義された時間にわたって接触を維持する、タップアンドホールドジェスチャをサポートする。タップアンドホールドジェスチャは、限定はしないが、コンテキスト固有のメニューを開くことを含む、様々な理由のために使用され得る。
【０１６３】
[00172]  いくつかの実施形態では、タッチスクリーン１１４４は、ユーザがタッチスクリーン１１４４上に指を置き、タッチスクリーン１１４４上で指を動かしながら、タッチスクリーン１１４４との接触を維持する、パンジェスチャをサポートする。パンジェスチャは、限定はしないが、制御された速さで、画面、画像、またはメニュー中で動くことを含む、様々な理由のために使用され得る。複数のフィンガーパンジェスチャもまた、企図される。いくつかの実施形態では、タッチスクリーン１１４４は、ユーザが画面を動かしたい方向に、ユーザが指をスワイプさせる、フリックジェスチャをサポートする。フリックジェスチャは、限定はしないが、メニューまたはページ中を水平または垂直にスクロールすることを含む、様々な理由のために使用され得る。いくつかの実施形態では、タッチスクリーン１１４４は、ユーザがタッチスクリーン１１４４上で２本の指（例えば、親指および人さし指）でつまむ動作を行うか、または、２本の指を離すように動かす、ピンチアンドストレッチジェスチャをサポートする。ピンチアンドストレッチジェスチャは、限定はしないが、ウェブサイト、マップ、または写真に徐々にズームインするか、またはそれから徐々にズームアウトすることを含む、様々な理由のために使用され得る。
【０１６４】
[00173]  上記のジェスチャについて、ジェスチャを行うための１本または複数の指の使用に関して説明したが、つま先などの他の付属器、または、スタイラスなどの物体が、タッチスクリーン１１４４と対話するために使用され得る。したがって、上記のジェスチャは、例示的であるとして理解されるべきであり、いかなる形でも限定として解釈されるべきではない。
【０１６５】
[00174]  データＩ／Ｏインターフェース構成要素１１４６は、コンピューティングデバイスへのデータの入力、および、コンピューティングデバイスからのデータの出力を容易にするように構成される。いくつかの実施形態では、データＩ／Ｏインターフェース構成要素１１４６は、コンピューティングデバイスとコンピュータシステムとの間のワイヤード接続性を、例えば、同期動作の目的のために提供するように構成された、コネクタを含む。コネクタは、プロプライエタリなコネクタ、または、ＵＳＢ、マイクロＵＳＢ、もしくはミニＵＳＢなどの規格化されたコネクタであり得る。いくつかの実施形態では、コネクタは、コンピューティングデバイスを、ドッキングステーション、オーディオデバイス（例えば、デジタル音楽プレーヤ）、またはビデオデバイスなど、別のデバイスとドッキングさせるためのドックコネクタである。
【０１６６】
[00175]  オーディオＩ／Ｏインターフェース構成要素１１４８は、オーディオ入力および／または出力能力をコンピューティングデバイスに提供するように構成される。いくつかの実施形態では、オーディオＩ／Ｏインターフェース構成要素１１４６は、オーディオ信号を収集するように構成されたマイクロフォンを含む。いくつかの実施形態では、オーディオＩ／Ｏインターフェース構成要素１１４６は、ヘッドフォンまたは他の外部スピーカのための接続性を提供するように構成されたヘッドフォンジャックを含む。いくつかの実施形態では、オーディオインターフェース構成要素１１４８は、オーディオ信号の出力のためのスピーカを含む。いくつかの実施形態では、オーディオＩ／Ｏインターフェース構成要素１１４６は、光オーディオケーブルアウトを含む。
【０１６７】
[00176]  ビデオＩ／Ｏインターフェース構成要素１１５０は、ビデオ入力および／または出力能力をコンピューティングデバイスに提供するように構成される。いくつかの実施形態では、ビデオＩ／Ｏインターフェース構成要素１１５０は、別のデバイス（例えば、DVDまたはBLURAYプレーヤなどのビデオメディアプレーヤ）からビデオを入力として受信するか、または、ビデオを出力として別のデバイス（例えば、モニタ、テレビ、またはある他の外部ディスプレイ）に送信するように構成された、ビデオコネクタを含む。いくつかの実施形態では、ビデオＩ／Ｏインターフェース構成要素１１５０は、ビデオコンテンツを入力／出力するために、高精細度マルチメディアインターフェース（「HDMI」）、ミニＨＤＭＩ、マイクロＨＤＭＩ、ＤｉｓｐｌａｙＰｏｒｔ、またはプロプライエタリなコネクタを含む。いくつかの実施形態では、ビデオＩ／Ｏインターフェース構成要素１１５０またはその部分が、オーディオＩ／Ｏインターフェース構成要素１１４８またはその部分と結合される。
【０１６８】
[00177]  カメラ１１５２は、静止画像および／またはビデオをキャプチャするように構成され得る。カメラ１１５２は、電荷結合素子（「CCD」）または相補型金属酸化膜半導体（「CMOS」）画像センサを利用して、画像をキャプチャし得る。いくつかの実施形態では、カメラ１１５２は、低光量環境での写真撮影を援助するためのフラッシュを含む。カメラ１１５２のための設定は、ハードウェアまたはソフトウェアボタンとして実装され得る。
【０１６９】
[00178]  図示されていないが、１つまたは複数のハードウェアボタンもまた、コンピューティングデバイスアーキテクチャ１１００に含まれ得る。ハードウェアボタンは、コンピューティングデバイスのある動作態様を制御するために使用され得る。ハードウェアボタンは、専用ボタンまたは多目的ボタンであり得る。ハードウェアボタンは、機械式またはセンサベースであり得る。
【０１７０】
[00179]  図示の電源構成要素１１１２は、バッテリゲージ１１５６に接続され得る、１つまたは複数のバッテリ１１５４を含む。バッテリ１１５４は、充電式または使い捨てであり得る。充電式バッテリタイプには、限定はしないが、リチウムポリマー、リチウムイオン、ニッケルカドミウム、およびニッケル水素が含まれる。バッテリ１１５４の各々は、１つまたは複数のセルから作られ得る。
【０１７１】
[00180]  バッテリゲージ１１５６は、電流、電圧、および温度など、バッテリパラメータを測定するように構成され得る。いくつかの実施形態では、バッテリゲージ１１５６は、バッテリの放電率、温度、経年数、および他のファクタの影響を測定して、ある割合の誤差内で残り寿命を予測するように構成される。いくつかの実施形態では、バッテリゲージ１１５６は、有用な電力管理データをユーザに提示するために測定値を利用するように構成されるアプリケーションプログラムに、測定値を提供する。電力管理データは、使用されたバッテリの割合、残りのバッテリの割合、バッテリ状態、残り時間、残り容量（例えば、ワット時単位）、電流引き込み、および電圧のうちの１つまたは複数を含み得る。
【０１７２】
[00181]  電源構成要素１１１２はまた、上述のＩ／Ｏ構成要素１１１０のうちの１つまたは複数と結合され得る、電源コネクタを含み得る。電源構成要素１１１２は、電源Ｉ／Ｏ構成要素１１４４を介して、外部電源システムまたは充電機器とインターフェースし得る。
【０１７３】
[00182]  上記に基づいて、表計算アプリケーションにおけるアニメーション遷移および効果のための技術を本明細書で開示したことを理解されたい。本明細書で提示する主題について、コンピュータの構造上の特徴、方法論的および変形可能な行為、特定のコンピューティング機械、ならびにコンピュータ可読メディアに特有の言葉で説明したが、添付の特許請求の範囲において定義される本発明は、本明細書で説明する特定の特徴、行為、またはメディアに必ずしも限定されるとは限らないことを理解されたい。むしろ、特定の特徴、行為およびメディアは、特許請求の範囲を実装する例示的な形態として開示される。
【０１７４】
[00183]  上記で説明した主題は、単に例として提供されるものであり、限定として解釈されるべきではない。様々な修正および変更は、示し、説明した例示的な実施形態および適用例に従うことなく、ならびに、以下の特許請求の範囲に記載する、本発明の真の趣旨および範囲から逸脱することなく、本明細書で説明する主題に対して行うことができる。
【図１】
2015534662.tif 000003
【図２】
2015534662.tif 000004
【図３】
2015534662.tif 000005
【図４】
2015534662.tif 000006
【図５】
2015534662.tif 000007
【図６】
2015534662.tif 000008
【図７Ａ】
2015534662.tif 000009
【図７Ｂ】
2015534662.tif 000010
【図７Ｃ】
2015534662.tif 000011
【図７Ｄ】
2015534662.tif 000012
【図７Ｅ】
2015534662.tif 000013
【図７Ｆ】
2015534662.tif 000014
【図７Ｇ】
2015534662.tif 000015
【図７Ｈ】
2015534662.tif 000016
【図８Ａ】
2015534662.tif 000017
【図８Ｂ】
2015534662.tif 000018
【図９】
2015534662.tif 000019
【図１０】
2015534662.tif 000020
【図１１】
2015534662.tif 000021
【国際調査報告】
2015534662.tif 000022
2015534662.tif 000023
2015534662.tif 000024