(57)【特許請求の範囲】
【請求項１】
アニメーションシステムにおけるアニメーション特徴部を表わす曲線を定義する形式パラメータのパラメータ関数を再パラメータ化する方法において、
サンプリング手段が格納手段に格納されている前記曲線の長さに沿ってパラメータをサンプリングするステップ、
テーブル作成手段が各パラメータサンプリング点において、円弧長を計算してサンプリングしたパラメータと計算した円弧長との対からなるテーブルを作成し且つ前記格納手段内に格納するステップ、
曲線当てはめ手段が前記テーブル内の前記サンプリングしたパラメータと前記計算した円弧長の対に対して微分可能曲線を当てはめるステップ、
再パラメータ化手段が前記微分可能曲線から前記サンプリングしたパラメータと前記計算した円弧長との対に対して連続関数をマッピングし且つ一次連続性を与える再パラメータ化関数を派生するステップ、
からなることを特徴とする方法。
【請求項２】
請求項１において、前記微分可能曲線が一次元関数として評価された二次元ベジェ曲線であることを特徴とする方法。
【請求項３】
請求項１において、前記微分可能曲線が複数個のベジェ曲線から構成されていることを特徴とする方法。
【請求項４】
請求項３において、前記曲線当てはめ手段が、
第一ベジェ曲線近似が所定のエラーを超えるまで一連の連続した対に対して時間に関し円弧長における変化を近似させるために第一ベジェ曲線を使用して第一組の対を特性づけ、且つ
第二ベジェ曲線近似が所定のエラーを超えるまで第二の一連の連続した対に対して時間に関して円弧長における変化を近似させるために第二ベジェ曲線を使用することによって次の１組の対にわたり曲線の当てはめを行なう、ことを特徴とする方法。
【請求項５】
請求項３において、前記曲線当てはめ手段が、
第一ベジェ曲線を使用して全ての前記サンプリングしたパラメータと前記計算した円弧長の対に対し時間に関して円弧長における変化を特性づけ、
前記第一ベジェ曲線と前記サンプリングしたパラメータと前記計算した円弧長の対のうちのいずれかとの間の最大差を決定し、
前記最大差が所定の差レベルを超える場合には、最も大きな差の点における前記サンプリングしたパラメータと前記計算した円弧長の対を分割し且つ第二ベジェ曲線を使用して前記サンプリングしたパラメータと前記計算した円弧長の対の各細分化した部分に対して時間に関し円弧長における変化を特性づける、
ことを特徴とする方法。
【請求項６】
請求項１において、前記パラメータ関数が、三次スプライン、四次スプライン、ベジェスプライン、エルミートスプライン、及びスプラインの連接からなるグループから選択したものであることを特徴とする方法。
【請求項７】
請求項１において、前記アニメーション特徴部が二次元位置空間、三次元位置空間、及びカラー空間からなるグループから選択した空間内の運動であることを特徴とする方法。
【請求項８】
請求項１において、前記アニメーション特徴部が、マスク形状、三次元物体変換及びアニメーション可能なｎ次元特性のグループから選択したものであることを特徴とする方法。
【請求項９】
請求項１において、前記曲線の円弧長が前記形式パラメータに対して比例するものでないことを特徴とする方法。
【請求項１０】
請求項１において、前記サンプリングが前記形式パラメータの規則的な間隔において行なわれることを特徴とする方法。
【請求項１１】
請求項１において、前記サンプリングがサンプル間の円弧長が所定距離未満となるまで、反復細分化によって行なわれることを特徴とする方法。
【請求項１２】
アニメーションシステムにおける表示手段の表示空間内の経路であってアニメーション特徴を表わす曲線を定義するパラメータ関数によって記述されている経路に沿って物体が移動する場合に物体のアニメーションを滑らかとさせる方法において、
運動定義手段が、時間に関する前記経路に沿っての距離の関数として前記経路に沿っての運動を定義するステップ、
再パラメータ化手段が、格納手段内に格納されている前記曲線を円弧長をパラメータとして再パラメータ化して円弧長の等しい間隔は前記曲線に沿って移動される等しい距離へマッピングされる一次連続性を与える連続関数としての再パラメータ化関数を派生し且つ前記格納手段内に格納するステップ、
位置決定手段が、前記再パラメータ化関数にしたがって任意の時間ｔに対する前記経路に沿っての前記物体の位置を決定するステップ、
からなることを特徴とする方法。
【請求項１３】
請求項１２において、前記再パラメータ化手段が、
前記曲線の長さに沿ってパラメータをサンプリングし、
各パラメータのサンプリング点において、パラメータと円弧長の対を決定するために円弧長を計算し、
前記パラメータと円弧長の対に対して微分可能曲線を当てはめる、
ことを特徴とする方法。
【請求項１４】
請求項１２において、前記アニメーション特徴が、二次元位置空間、三次元位置空間、及びカラー空間からなるグループから空間内の運動であることを特徴とする方法。
【請求項１５】
請求項１２において、前記アニメーション特徴が、マスク形状、三次元物体変換及びアニメーション可能ｎ次元特性のグループから選択されることを特徴とする方法。
【請求項１６】
表示手段の表示空間内の経路に沿って物体が移動する場合に物体のアニメーションを滑らかとさせるために、コンピュータを、
表示空間内の２つの端点及び曲線によって表わされる前記端点間の経路であってアニメーションシステム内のアニメーション特徴を表わすパラメータ関数を定義している経路を受け取り格納手段に格納する手段、
時間に対して前記経路に沿って移動される距離の関数として前記２つの端点の間の運動を定義し前記格納手段に格納する手段、
前記曲線に沿って前記２つの端点の間の運動を決定し、円弧長の等しい間隔が前記曲線に沿って移動される等しい距離にマッピングされるように円弧長をパラメータとして有する一次連続性を与える連続関数としての再パラメータ化関数を派生させ且つ前記格納手段に格納するために前記曲線を再パラメータ化させる手段、
前記格納手段内に格納されている前記再パラメータ化関数に従って任意の時間ｔに対する前記物体の位置を決定する手段、
として機能させるための物体のアニメーションを滑らかとさせるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１７】
アニメーションシステムにおける経路Ｑに沿って移動する場合に時間ｔにおける物体の位置を決定する方法において、
経路定義手段が、曲線によって表わされる２つの端点の間の経路Ｑを定義し、その場合に前記経路はアニメーションシステム内のアニメーション特徴を表わすパラメータ関数Ｑ（ｕ）を定義するステップ、
運動定義手段が、時間の関数Ｓとして前記２つの端点の間の運動を定義するステップ、
再パラメータ化手段が、パラメータ関数Ｑ（ｕ）に対する円弧長ｓを表す式ｓ＝Ａ（ｕ）の関数Ａに対する近似として経路Ｑに沿って均等な間隔ｕにおいてサンプリングされた（ｕ，ｓ）対からなるテーブルに対する曲線の当てはめを行い且つ（ｕ，ｓ）対に対して連続関数をマッピングし且つ一次連続性を与える再パラメータ化関数Ａ-1を派生し且つ格納手段内に格納するステップ、
計算手段が、関数Ｓによって時間ｔに対して移動される円弧長ｓ＝Ｓ（ｔ）を計算するステップ、
前記計算手段が、ｕ＝Ａ-1（ｓ）の式にしたがってパラメータｕを計算するステップ、
前記計算手段が、パラメータ関数Ｑ（ｕ）にしたがって計算されたパラメータｕを使用して経路Ｑ上の位置を計算するステップ、
からなることを特徴とする方法。
【請求項１８】
請求項１７において、前記再パラメータ化手段が、
前記曲線の長さに沿ってパラメータをサンプリングし、
各パラメータのサンプリング点において、円弧長を計算してパラメータと円弧長の対を決定し、
前記パラメータと円弧長の対に対して微分可能曲線を当てはめる、
ことを特徴とする方法。
【請求項１９】
アニメーションシステムにおける表示手段の表示空間における経路であってアニメーション特徴を表わす曲線を定義するパラメータ関数によって記述されている経路に沿って物体を配置させる方法において、
再パラメータ化関数決定手段が、パラメータ関数Ｑ（ｕ）に対する円弧長ｓを表す式ｓ＝Ａ（ｕ）の関数Ａに対する近似として経路Ｑに沿って均等な間隔ｕにおいてサンプリングされた（ｕ，ｓ）対のテーブルに対する曲線の当てはめを行って、（ｕ，ｓ）対に対して連続関数をマッピングし且つ一次連続性を与える再パラメータ化関数を決定し且つ格納手段内に格納するステップ、
配置手段が、前記再パラメータ化関数を使用して前記物体の前記経路上の位置を決定し前記位置に前記物体を配置させるステップ、
からなることを特徴とする方法。
【請求項２０】
請求項１９において、前記再パラメータ化関数決定手段が、
前記曲線の長さに沿ってパラメータをサンプリングし、
各パラメータのサンプリング点において、円弧長を計算してパラメータと円弧長との対を決定し、
前記パラメータと円弧長の対に対して微分可能曲線を当てはめる、
ことを特徴とする方法。
【請求項２１】
請求項１９において、前記配置手段が、物体間の円弧長間隔を定義することによって各物体の経路に沿っての位置を決定し且つ前記再パラメータ化関数にしたがって表示空間内の位置を決定することを特徴とする方法。
【請求項２２】
請求項１９において、前記物体がプリントしたテキストであることを特徴とする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、大略、映画システムにおけるアニメーション用の方法及び装置に関するものであって、更に詳細には、物体が経路に沿って移動する場合に運動における円弧長変動を補償することによってアニメーション効果を滑らかなものとさせる方法及び装置に関するものである。
【０００２】
【従来の技術】
プログラムを載せたコンピュータは、映画（動画）を編集し且つ作成するために使用することが可能である。例えば、カリフォルニア州マウンテンビュウのアドビシステムズインコーポレイテッドから入手可能なアフターエフェクツ（Ａｆｔｅｒ  Ｅｆｆｅｃｔｓ）と呼ばれるコンピュータプログラム製品は、多様なパソコンに使用するためにライセンスされており且つそのユーザに対して映画フィルムの断片を統合し且つアレンジすることによって映画を編集し且つ作成する能力を提供する。このようなプログラムにおいては、映画を作成するプロセスは、典型的に、２つの主要な段階、即ちモデリング（ｍｏｄｅｌｉｎｇ）及びレンダリング（ｒｅｎｄｅｒｉｎｇ）を経て行なわれる。
【０００３】
モデリングは、組み込んだ映画フィルム断片の配列及びタイミングを定義することによって、一般的には、「コンポジション（合成）」と呼ばれる映画プロジェクトに対する構造を形成するプロセスである。コンポジションは、基本的には、映画を形成する場合に空間及び時間における映画フィルム断片の処理を定義する１組の命令である。各コンポジションは、典型的に、映画フィルムの断片に対するプレースホルダーである１つ又はそれ以上のレイヤー（ｌａｙｅｒ）の定義を包含している。モデンリングは、コンポジションにおけるレイヤー内への映画フィルム断片の組込み、映画フィルム断片の編集、種々の映画フィルム断片のアレンジ即ち「合成」、及びコンポジションレイヤーに対するアニメーション又はその他の効果の付加等の二次的な処理を包含している。
【０００４】
組込んだ映画フィルムの断片は、ビデオ、絵画、アニメーション、図面、スチール、写真又はコンピュータ発生画像の形態とすることが可能である。組込んだ映画フィルムの各断片には１つのレイヤーが割り当てられる。合成は、幾何学的マスク、透明度情報及び効果を使用することによって、夫々のレイヤーの映画フィルム断片を統合即ち結合させる。コンポジション（合成）のレイヤーが該コンポジションにおいて統合されると、アニメーション及びその他の効果が各レイヤーに対して適用される。
【０００５】
例えば鑑賞用のフィルム又はビデオテープ等の最終的な作品を形成するために、該コンポジションはレンダリングされねばならない。レンダリングプロセスは、各レイヤーに関連する映画フィルムの断片及び命令を最終的なビデオの齣（こま）へ変換させる。このレダリングプロセス期間中に、各レイヤーからの対応するピクセルが重畳されて合成され、ユーザによって要求された出力形態で、一度に１齣ずつ最終的な画像が形成される。これらの齣は、例えばビデオテープレコーダ、写真フィルムレコーダ又はデジタルディスクレコーダ等の記録装置上のアナログ又はデジタル記憶装置に書き込むことが可能である。このようにして、映画が作成される。
【０００６】
上述したように、アニメーションはモデリング段階の二次的プロセスである。アニメーション技術は、ユーザが、コンポジションにおける物体の見掛け上自発的で実物そっくりの運動を形成することを可能とする。殆どの映画システムは、二次元又は三次元空間を介して移動する場合に、物体の経路を特定することによって物体（即ち、レイヤー）にアニメーション効果を与えることを可能とする。その経路は、典型的には、スプライン曲線Ｑとして表わせられる。このスプライン曲線Ｑに沿っての運動は、単一の関数（例えば、時間の関数としてのｕであって、ｕはＱを定義する関数の自然パラメータである）によって記述することが可能である。
【０００７】
【発明が解決しようとする課題】
本発明は、以上の点に鑑みなされたものであって、物体が経路に沿って移動する場合に運動における円弧長変化を補償することによってアニメーション効果を滑らかとさせる技術を提供することを目的とする。
【０００８】
【課題を解決するための手段】
一般的には、１つの側面において、本発明は、パラメータ関数が単位パラメータ当たり等しくない円弧長を有する曲線によって表現される、アニメーションシステムにおけるアニメーション特徴を表わすパラメータ関数を再パラメータ化するコンピュータによって実現される方法及び装置が提供される。該システムは、該曲線の長さに沿ってパラメータの所定の間隔毎にサンプリングを行ない、次いで各間隔にわたる円弧長を計算する。その後に、該パラメータと円弧長の対に対して１つ又はそれ以上の微分可能曲線が当てはめられる。
【０００９】
本発明の一実施形態においては、該再パラメータ化方法は、アニメーションシステムにおける表示空間内の経路に沿って物体が移動する場合に該物体のアニメーションを滑らかとさせるために使用することが可能である。
【００１０】
本発明の実施例の利点としては以下のようなものがある。本発明の適用は、円弧長ｓに対してパラメータ値ｕをマッピングするのに必要な格納空間は最小のものが必要であるに過ぎない。更に、（ｕ，ｓ）対に対し連続関数をマッピングする再パラメータ化関数Ａ-1によって一次連続性が与えられる。
【００１１】
【発明の実施の形態】
図１を参照すると、コンポジションにおける物体をアニメーション化させるプロセスにおいて、ユーザはアニメーションのための例えば映画コンポジションにおけるレイヤー等の物体を選択する（１００）。次いで、ユーザはアニメーション化されるべき特定の物体の特性を指定する（１０２）。アニメーション化することの可能な物体の特性としては、レイヤー位置、アンカー点、効果点制御及びカラー選択等がある。例えば、レイヤーの位置特性のアニメーションは、ユーザが表示区域にわたって該レイヤーを移動させることを可能とする。説明の便宜上、本発明を単一の特性、即ち位置をアニメーション化する場合について説明する。然しながら、本再パラメータ化プロセスは、例えばアンカー、効果、制御及びカラー選択等の別個の時間的制御を有するその他の特性のアニメーション化に適用することも可能である。
【００１２】
ユーザは、例えば物体が表示区域内を移動する場合の該物体の開始位置及び終了位置等の初期的な物体特性状態及び最終的な物体特性状態を定義する（１０４）。開始位置又は終了位置は、物体が表示区域内へ入ったり又は該表示区域から出たりすることを可能とするために表示区域の外側に存在することが可能である。
【００１３】
ユーザは、該物体が開始特性状態と終了特性状態との間で追従する特性空間内の経路（Ｑ）を定義する（１０６）。一実施例においては、該経路は経路Ｑ上の物体の位置を決定する曲線関数Ｑ（ｕ）によって定義される。該曲線は、三次スプライン、四次スプライン、ベジェスプライン、エルミートスプライン、又はスプラインの連接の形態とすることが可能である。二次元位置空間の場合には、関数Ｑ（ｕ）は次式の形態で表わすことが可能である。
【００１４】
Ｑ（ｕ）＝（ｘ（ｕ），ｙ（ｕ））      （１）
通常、ユーザはグラフィカルユーザインターフェース（ＧＵＩ）によって該関数のグラフの制御点を操作することによってこのような関数を特定する。例えば、該関数は、表示空間内の開始特性状態及び終了特性状態の間の曲線を操作するための制御点と関連するベジェ曲線の形態とすることが可能である。
【００１５】
然しながら、パラメータｕにおける等しいステップは、スプライン曲線Ｑに沿って移動する異なる距離ｓを発生させる場合がある。図２Ａを参照すると、３点スプライン曲線Ｑのグラフが示されており、均一なパラメータ間隔で線印が示されている。図２Ｂはスプライン曲線Ｑに沿っての実際の距離ｓ（表示空間内において測定）に対するパラメータ値ｕのグラフである。図２Ｃは時間に関しての円弧距離として表現された経路Ｑに沿っての運動のグラフである。運動グラフ（図２Ｃ）にしたがって経路Ｑ（図２Ａ）に沿って移動する物体は、点１０，１２，１４（図２Ａ）において速度を変化させるように見える。これは、パラメータｕに関して曲線Ｑに沿っての円弧長ｓのステップが異なるためである。従って、曲線Ｑの形状及びその制御点の間隔は、観察者にとって見掛けの運動（位置パラメータの場合には、見掛けの速度）となる場合がある。この問題は、円弧長によってスプラインＱを再パラメータ化することによって対処され、その場合に、円弧長パラメータｓの等しいステップがスプライン曲線Ｑに沿っての表示空間において測定した等しい距離へマッピングする。経路Ｑに沿っての運動を空間的位置から離脱させることが一般的に望ましい。運動は、通常、時間を経路Ｑ上を移動した距離へマッピングする運動グラフＳにおいて記述される。例えば、該経路に沿っての運動が速度で表現される場合には（位置パラメータのアニメーション化）、ユーザは経路Ｑの全ての点に沿ってリニアな速度を有するように選択することが可能である。一方、物体の速度が該経路の長さにわたり変化することをユーザが望む場合がある（例えば、該経路に沿っての物体の加速をシミュレーションするために、該経路の始めにおいては遅く且つ該経路の終りにおいては早い）。一実施例においては、該運動グラフにおいては時間に関しての一次元関数Ｓであり、その場合に、経路Ｑに沿って移動される距離ｓ（円弧距離即ち円弧長）は任意の時間ｔに対して次式の如くに表わすことが可能である。
【００１６】
ｓ＝Ｓ（ｔ）                      （２）
経路Ｑはその自然パラメータｕによってパラメータ化される。運動グラフＳは円弧長ｓによって移動された距離を定義する。円弧長によってスプライン曲線Ｑをパラメータ化させるために、元のパラメータｕに関して元の曲線Ｑ（ｕ）にそっての円弧長ｓに対する式が派生される。曲線Ｑ（ｕ）に対する円弧長ｓは公式的には次式のように表わせられる。
【００１７】
ｓ＝Ａ（ｕ）                      （３）
尚、Ａは全てのパラメータ値ｕにおける円弧長を決定する関数である。
【００１８】
点Ｑ（ｕ）及び点Ｑ（ｕ＋ｄｕ）の間の円弧長セグメントｄｓは次式で定義される。
【００１９】
【数式１】
0004131993.tif 000002
【００２０】
該曲線の開始からパラメータ値ｕにおける点までの円弧長を決定するために、式（４）を積分しその結果次式が得られる。
【００２１】
【数式２】
0004131993.tif 000003
【００２２】
この積分に対する一般的な解析的表現は存在せず、したがって数値技術を使用して評価される。
【００２３】
該システムは、曲線Ｑ全体に沿ってｕの均等な間隔においてサンプリングすることによって（ｕ，ｓ）対を有するテーブルＴA を構成する（１１０）。ｕの与えられた値に対して該システムは式（４）を使用して計算した円弧長セグメントを加算することによって曲線Ｑの開始（ｕ＝０）から測定した円弧長ｓを計算する。一実施例においては、均一なサンプリング間隔ではなく、スプラインに沿ってのサンプリング点を決定するために反復細分化アルゴリズムを使用する。反復細分化プロセスにおいては、サンプル点の間の円弧距離がユーザが特定した円弧距離スレッシュホールドレベル以下となるまで、該スプラインをより小さな部分へ反復的に分割する。従って、該スプラインの部分は他のものよりもより高い密度のサンプル点を有する場合がある。上述したように、関数Ａは式（３）に従って全ての点ｕにおいて円弧長ｓを決定するために使用することが可能である。該システムは、関数Ａに対する近似を派生させるためにテーブルＴA 内に格納してあるデータ点に対して曲線を当てはめる（１１２）。一実施例においては、該曲線は二次元曲線であって、更に詳細には、一次関数として評価されるベジェ（Ｂｅｚｉｅｒ）曲線である。一方、図４に関連して以下に説明するように、関数Ａを近似するために一連のベジェ曲線を使用することが可能である。
【００２４】
（ｕ，ｓ）対のテーブルＴA から派生した曲線を使用して、ｕの値を円弧長ｓに対してマッピングする。該曲線はスプラインＱの円弧長による再パラメータ化を表わしている。従って、円弧長パラメータｓの等しいステップは、曲線Ｑに沿って移動される等しい距離へマッピングする。
【００２５】
ｕの全ての値に対して、関数Ａによって定義されるように、特異値ｓが存在している。関数Ａは１対１であり且つ逆関数Ａ-1を決定することが可能である。この逆関数Ａ-1は、任意の時間ｔに対する経路Ｑ上の物体の位置を決定する場合に使用するために決定され（１１４）且つ格納される（１１６）。逆関数Ａ-1は再パラメータ化関数と呼ばれる。アプリケーションに依存して関数Ａ又はＡ-1のいずれかを構成するためにテーブルＴA を使用することが可能である（円弧長ｓに対してパラメータ値ｕをマッピングするか、又はパラメータ値ｕに対して円弧長ｓをマッピングする）。一実施例においては、いずれかの関数Ａ又はＡ-1の単一近似が格納され、それから逆数が派生される。
【００２６】
図３を参照すると、時間ｔにおける経路Ｑ上の位置は、円弧長変動を補償し且つ運動グラフＳによって定義される運動にしたがって運動を達成するために、再パラメータ化関数Ａ-1を使用することによって決定される。
【００２７】
経路Ｑに沿っての物体の運動を制御するためのプロセスにおいて、ユーザは運動グラフＳを定義する（２０１）。その後に、該システムは、次式にしたがって円弧長ｓ（経路Ｑ上の開始点から移動）を計算することによって（２０２）、時間ｔにおける経路Ｑ上の物体の位置を決定する。
【００２８】
ｓ＝Ｓ（ｔ）                      （６）
本システムは再パラメータ化関数を検索し（２０４）且つそれを計算した円弧長ｓに対して付与し（２０６）、次式にしたがってパラメータ値ｕを計算する。
ｕ＝Ａ-1（ｓ）                    （７）
次いで、本システムは次式にしたがってパラメータｕに対する経路Ｑに沿っての位置を計算する（２０８）。
【００２９】
Ｑ（ｕ）＝（ｘ（ｕ），ｙ（ｕ））    （８）
次いで、該物体は指定した時間ｔに対し経路Ｑ上の適宜の位置へ移動させることが可能である。このプロセスは、該物体が経路Ｑに沿っての開始点と終了点との間を移動する場合に任意の時間ｔに対して繰り返し行なうことが可能である。従って、本システムは、何らかのその他の時間値を処理することが必要であるか（例えば、該物体が終了点にいまだ到達していないか）を判別するためにチェックすることが可能である（２１０）。そうである場合には、次の時間値が決定され（２１２）、経路Ｑ上の該物体に対する次の位置がステップ２０２乃至２０８を繰り返し行なうことによって決定される。そうでない場合には、本プロセスは終了する（２１４）。
【００３０】
この技術は円弧長ｓに対してパラメータ値ｕをマッピングするのに最小の格納空間を必要とするに過ぎない。更に、連続関数を（ｕ，ｓ）対に対してマッピングする再パラメータ化関数Ａ-1によって一次連続性が与えられる。一実施例においては、再パラメータ化関数を使用することによって、速度対時間（速度グラフ）の正確なグラフをユーザへ供給することが可能である。編集可能な速度グラフは経路に沿って物体の運動を制御する簡単なツールであり、それは、ユーザが該経路に沿っての種々の点において該物体の速度を直接的に操作することを可能とする。パラメータ値ｕから円弧長ｓに対してマッピングを近似するために連続関数を使用することは、単位パラメータ当たりの円弧長変動を考慮に入れた物体運動の正確な編集可能な制御を可能とする。従って、ユーザが位置パラメータをアニメーション化する場合（前述した如く）、該物体が経路Ｑに沿って移動する場合の該物体の速度は滑らかな関数に基づいており、それは鑑賞者に対して滑らかなものに見えるアニメーションとさせる。滑らかな関数を使用することは、視覚表示適用例において運動に対する人間の視覚的知覚の感度に順応させるために必要である。
【００３１】
上述した如く、（ｕ，ｓ）対に対して曲線を当てはめることは、ｕの値を円弧長ｓに対してマッピングする関数Ａの近似を与える。一方、関数Ａのより正確な近似は、テーブルＡ内に格納されている（ｕ，ｓ）対に対して複数個の隣接した曲線を当てはめることによって派生することが可能である。次に図４を参照すると、テーブル内のデータエントリに対して複数個の曲線を当てはめる方法において、本システムはテーブルＡ内の最初の３つのエントリを検索する（４００）。本システムは、これら３つのデータエントリ（（ｕ，ｓ）対）に対して１つの曲線（ｃｕｒｖｅ1 ）を当てはめる（４０２）。一実施例においては、この曲線は二次元曲線であり、且つ、更に詳細には、一次元関数として評価されたベジェ曲線である。
【００３２】
その後に、本システムは、処理されるべき更なるデータエントリがあるか否かを判別すべくチェックする（４０４）。存在しない場合には、本プロセスは完了する（４１６）。存在する場合には、本システムはテーブルＡから次のデータエントリ（新たなデータ）を検索する（４０６）。本システムは、該新たなデータに対して近似曲線（この場合には、ｃｕｒｖｅ1 ）の精度をチェックする（４０８）。該新たなデータが該曲線上に該当するか又は該曲線から所定のエラー距離範囲内に該当する場合には、その曲線近似は該新たなデータに対して有効であり、且つ処理すべき更なるデータエントリが存在するか否かを判別するためにステップ４０４におけるチェックが繰り返し行なわれる。存在しない場合には、本プロセスは完了する。存在する場合には、次のテーブルエントリが検索され、該新たなデータに対してステップ４０６及び４０８が繰返し行なわれる。
【００３３】
該新たなデータが該曲線上に該当しないか又は該曲線からの所定のエラー距離範囲内に該当しない場合には、新たな曲線セグメントが構築される。最初に、本システムは旧い曲線（この場合は、ｃｕｒｖｅ1 ）を格納する（４１０）。次いで、本システムは、テーブルＡ内の２つ又はそれ以上のデータエントリが処理することが必要であるか否かを判別するためのチェックを行なう（４１２）。必要である場合には、本システムは全部で３個のデータエントリとするためにテーブルＡから次の２つのデータエントリを検索し（４１４）、且つ完了するまでステップ４０２における処理を継続して行なう。
【００３４】
２つより少ないデータエントリが使用可能である場合には、本プロセスは終了する。一方、１つ又はそれ以上のデータ点が使用可能である場合には、最後の２つのデータ点から最終的な曲線（直線）を構成することが可能である。
【００３５】
一方、反復マルチ曲線近似プロセスを使用することが可能である。特に、単一の曲線を（ｕ，ｓ）対のテーブルＴA に対して当てはめる。次いで、本システムは、サンプル点（（ｕ，ｓ）対）及び発生した曲線との間の最大差を決定するためのチェックを行なう。該対のいずれかと発生した曲線との間の最大差が所定のスレッシュホールドを超えるものでない場合には、単一曲線近似は充分に正確であり、且つその曲線が格納される。一方、テーブルＴA におけるデータエントリを最も大きな差の点において細分化し且つ細分化したテーブルＴA エントリの各部分に対して曲線を当てはめる。本システムは、再度、細分化した対のうちのいずれかと発生した曲線との間の最大差に対する各細分化をチェックする。本プロセスを必要に応じて繰返し行ない、夫々の細分化に対して適用した当てはめ曲線の全てに対する最大差が所定のスレッシュホールドより小さくなるまで、テーブルＴA を段々と小さな細分化へ分割させる。その後に、該一連の曲線を格納することが可能である。
【００３６】
本発明は、ハードウエア、ファームウエア又はソフトウエア、又はこれら３つの組合わせにおいて実現することが可能である。好適には、本発明は、プロセサと、データ格納（記憶）システムと、揮発性及び非揮発性メモリ及び／又は格納（記憶）要素、少なくとも１個の入力装置と、少なくとも１個の出力装置とを具備するプログラム可能なコンピュータ上で実行可能なコンピュータプログラムの形態で実現される。
【００３７】
一例として、図５は、プログラム可能な処理システム１０のブロック図を示している。プログラム可能な処理システム（コンピュータ）１０は、好適には、プロセサ２０、ランダムアクセスメモリ（ＲＡＭ）２１、プログラムメモリ２２（好適には、書込可能なリードオンリメモリ（ＲＯＭ）、例えばフラッシュＲＯＭ）、ハードディスクコントローラ２３、ビデオコントローラ３１、ＣＰＵバス２５によって結合されている入力／出力（Ｉ／Ｏ）コントローラ２４を有している。
【００３８】
ハードディスクコントローラ２３がハードディスク３０へ結合されており、ハードディスク３０は、例えばアフターエフェクツ（Ａｆｔｅｒ  Ｅｆｆｅｃｔｓ）等のアプリケーションプログラム及びデータを格納するために使用することが可能である。ビデオコントローラ３１はビデオレコーダ３２へ結合されており、ビデオレコーダ３２はビデオの断片を格納し且つ取り込むため且つ最終的な作品を書き込むために使用することが可能である。Ｉ／Ｏコントローラ２４はＩ／Ｏバス２６によってＩ／Ｏインターフェース２７へ結合している。Ｉ／Ｏインターフェース２７は、直列リンク、ローカルエリアネットワーク、ワイヤレスリンク、並列リンク等の通信リンクを介してアナログ形態又はデジタル形態でデータを受取り且つ送信する。Ｉ／Ｏバス２６は、更に、ディスプレイ２８及びキーボード２９へ結合している。一方、Ｉ／Ｏインターフェース２７、ディスプレイ２８、キーボード２９に対して別々の接続（別々のバス）を使用することが可能である。プログラム可能な処理システム１０は、予めプログラムされるか、又は別の供給源（例えば、フロッピィディスク、ＣＤ−ＲＯＭ、又は別のコンピュータ）からプログラムをダウンロードすることによってプログラム（及び再プログラム）することが可能である。
【００３９】
各コンピュータプログラムは、好適には、汎用又は専用のプログラム可能なコンピュータによって読取可能な格納媒体又は装置（例えば、プログラムメモリ２２又は磁気ディスク）に格納され、該格納媒体又は装置がそこに格納されている手順を実行するためにコンピュータによって読取られると、該プログラムはコンピュータを所定の形態とさせ且つ動作させる。本発明システムは、コンピュータプログラムで所定の形態とされたコンピュータによって読取可能な格納媒体として実現することも可能であり、その場合には、そのような形態とされた格納媒体は、そこに記載されている機能を実行するために特別の及び所定の態様でコンピュータを動作させる。
【００４０】
本発明を特定の実施例について説明したが、本発明は、これら具体例に限定されるべきものではない。例えば、本発明を表示空間における物体の位置をアニメーション化する場合について説明したが、本発明原理は、マスク形状、三次元物体変換及び例えばカラー選択、レイヤーアンカー点及び効果点制御等のアニメーション可能なｎ次元特性を含むその他のアニメーション特徴に対して適用することも可能である。更に、本発明を２空間表示について説明したが、本発明原理は、３又はそれ以上の空間表示に対しても同様に適用可能である。別の例においては、本発明を時間ｔにおける経路に沿っての物体の位置を決定する方法について説明したが、本発明原理は、図面又はピクセルレイアウトプログラムにおいて使用するために経路に沿っての均等な距離に物体を正確に位置させるために使用することも可能である。これらのシステムにおいては、再パラメータ化関数Ａ-1を使用してｕに対する方程式を解く代わりに、ｓに対して解き且つｕの与えられたパラメータ値に対して関数Ａの近似を使用する。同様に、再パラメータ関数Ａ-1及びその逆数Ａのその他の使用も可能である。例えば、再パラメータ化関数Ａ-1は、コンピュータ補助設計及びアーキテクチュアプログラムにおけるスプラインに沿って移動する円弧長（距離）を測定するために本発明原理に関連して使用することが可能である。
【００４１】
以上、本発明の具体的実施の態様について詳細に説明したが、本発明は、これら具体例にのみ限定されるべきものではなく、本発明の技術的範囲を逸脱することなしに種々の変形が可能であることは勿論である。
【図面の簡単な説明】
【図１】  本発明に基づく再パラメータ化方法を示したフローチャート。
【図２Ａ】  表示区域内の物体の運動を定義する均一なパラメータ間隔を有する例示的なスプライン曲線Ｑのグラフ。
【図２Ｂ】  図２Ａの曲線Ｑに沿って移動する実際の距離に対するパラメータ値ｕのグラフ。
【図２Ｃ】  曲線Ｑに沿っての物体の速度のグラフ。
【図３】  時間ｔに対する経路Ｑに沿っての物体の位置を決定する方法のフローチャート。
【図４】  本発明に基づくテーブル内のデータエントリに対する複数個の曲線の当てはめ方法を示したフローチャート。
【図５】  本発明に基づくコンピュータプログラムを実行するのに適したプログラム可能なコンピュータの概略ブロック図。
【符号の説明】
１０  コンピュータ
２０  プロセサ
２１  ＲＡＭ
２２  プログラムメモリ
２３  ハードディスクコントローラ
２４  入力／出力コントローラ
２５  ＣＰＵバス
２６  Ｉ／Ｏバス
２７  Ｉ／Ｏインターフェース
２８  ディスプレイ
２９  キーボード
３０  ハードディスク
３１  ビデオコントローラ
３２  ビデオレコーダ
【図１】
0004131993.tif 000004
【図２Ａ】
0004131993.tif 000005
【図２Ｂ】
0004131993.tif 000006
【図２Ｃ】
0004131993.tif 000007
【図３】
0004131993.tif 000008
【図４】
0004131993.tif 000009
【図５】
0004131993.tif 000010