(57)【特許請求の範囲】
【請求項１】
身体部位を動作させる運動動作を支援する運動支援装置であって、
前記運動動作を表す運動情報を少なくとも１種類以上組み合わせてなる、少なくとも１種類以上のレッスン情報を記憶する記憶手段と、
前記レッスン情報に表される運動レッスンに従い前記運動動作が行われる際の速さを示す速度情報を取得する第１取得手段と、
前記運動動作が含まれる前記運動レッスンを行う所望の時間を示す所望レッスン時間情報を取得する第２取得手段と、
前記第１取得手段によって取得された前記速度情報に示される速さで前記運動動作を行う場合に、前記記憶手段に記憶された１種類以上の前記レッスン情報のなかから、前記第２取得手段によって取得された前記所望レッスン時間情報に示される時間内で前記運動レッスンを行うことが可能な前記レッスン情報を取得する第３取得手段と、
前記第３取得手段によって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作ごとに、前記第１取得手段によって取得された前記速度情報に示される速さで前記運動動作を行った場合にかかる時間を示す運動時間情報を決定する決定手段と、
前記運動レッスンにかかる時間が、前記第２取得手段によって取得された前記所望レッスン時間情報に示される時間以内となり、且つ、前記第３取得手段によって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作にかかる時間がそれぞれ最大となるように、前記決定手段によって決定された前記運動時間情報に示される時間を前記運動動作ごとに調整する調整手段と、
を備えることを特徴とする運動支援装置。
【請求項２】
前記調整手段は、前記運動レッスンにかかる時間が前記所望レッスン時間情報に示される時間以内となり、且つ、前記運動レッスンに含まれる前記運動動作のそれぞれについて、前記運動時間情報に示される時間で行われる１回の前記運動動作を繰返して行う繰返回数が最大となるように、前記繰返回数を調整することを特徴とする請求項１に記載の運動支援装置。
【請求項３】
前記調整手段は、
前記運動レッスンに含まれる前記運動動作を、実行順に指定する指定手段と、
前記指定手段によって指定された前記運動動作の前記運動時間情報に示される時間を、前記運動レッスンにかかる実際の時間を示す実レッスン時間情報に加算し、前記実レッスン時間情報と前記所望レッスン時間情報とを比較する比較手段と、
前記比較手段による比較の結果、前記実レッスン時間情報よりも前記所望レッスン時間情報が大きい場合、前記指定手段によって指定された前記運動動作の前記繰返回数を、１増加する増加手段と、
を備えることを特徴とする請求項２に記載の運動支援装置。
【請求項４】
前記運動動作が行われる際の速さを示す前記速度情報は、所定の時間間隔で動作の節となるタイミングを拍として数える拍数によって示される情報であることを特徴とする請求項１から３のいずれかに記載の運動支援装置。
【請求項５】
前記レッスン情報は、
前記運動レッスンの開始時期に行われるウォーミングアップ運動に対応する前記運動動作を示す前記運動情報と、
前記運動レッスンの終了時期に行われるクールダウン運動に対応する前記運動動作を示す前記運動情報と、
前記運動レッスンにおける主要な運動であるメイン運動に対応する前記運動動作を示す前記運動情報と、
を含み、
前記調整手段は、前記メイン運動に対応する前記運動動作にかかる時間を調整することを特徴とする請求項１から４のいずれかに記載の運動支援装置。
【請求項６】
身体部位を動作させる運動動作を表す運動情報を少なくとも１種類以上組み合わせてなる、少なくとも１種類以上のレッスン情報を記憶する記憶手段を備えるコンピュータで実行され、前記運動動作を支援する運動支援方法であって、
前記レッスン情報に表される運動レッスンに従い前記運動動作が行われる際の速さを示す速度情報を取得する第１取得ステップと、
前記運動動作が含まれる前記運動レッスンを行う所望の時間を示す所望レッスン時間情報を取得する第２取得ステップと、
前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行う場合に、前記記憶手段に記憶された１種類以上の前記レッスン情報のなかから、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間内で前記運動レッスンを行うことが可能な前記レッスン情報を取得する第３取得ステップと、
前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作ごとに、前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行った場合にかかる時間を示す運動時間情報を決定する決定ステップと、
前記運動レッスンにかかる時間が、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間以内となり、且つ、前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作にかかる時間がそれぞれ最大となるように、前記決定ステップによって決定された前記運動時間情報に示される時間を前記運動動作ごとに調整する調整ステップと、
を含む運動支援方法。
【請求項７】
身体部位を動作させる運動動作を表す運動情報を少なくとも１種類以上組み合わせてなる、少なくとも１種類以上のレッスン情報を記憶する記憶手段を備え、前記運動動作を支援する運動支援装置として機能させるためのプログラムであって、
コンピュータに、
前記レッスン情報に表される運動レッスンに従い前記運動動作が行われる際の速さを示す速度情報を取得する第１取得ステップと、
前記運動動作が含まれる前記運動レッスンを行う所望の時間を示す所望レッスン時間情報を取得する第２取得ステップと、
前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行う場合に、前記記憶手段に記憶された１種類以上の前記レッスン情報のなかから、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間内で前記運動レッスンを行うことが可能な前記レッスン情報を取得する第３取得ステップと、
前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作ごとに、前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行った場合にかかる時間を示す運動時間情報を決定する決定ステップと、
前記運動レッスンにかかる時間が、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間以内となり、且つ、前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作にかかる時間がそれぞれ最大となるように、前記決定ステップによって決定された前記運動時間情報に示される時間を前記運動動作ごとに調整する調整ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、身体部位を動作させる運動動作を支援する運動支援装置、運動支援方法およびプログラムに関する。
【背景技術】
【０００２】
従来、身体部位を動作させる運動動作の映像を、例えばモニタやスクリーンなどの所定の表示部に表示し、ユーザの運動を支援する運動支援装置が知られている。表示部に表示される運動動作の映像には、例えば、コンピュータグラフィックス（ＣＧ）により生成したキャラクタに運動の模範動作をさせて生成した映像が用いられる。また、運動動作の映像の表示とともに、運動動作に応じたテンポ（動作の節となるタイミング）の楽曲が再生され、ユーザは、楽曲に合わせてタイミングを取りながら、運動動作の映像に従い運動を行う。
【０００３】
運動支援装置は、例えばフィットネスクラブなどのスポーツ施設に設置され、インストラクタによる指導のもとで、ユーザの運動が行われる。また、インストラクタによって、ユーザの運動目的や運動経験に応じて適切な運動動作を組み合わせた運動レッスンが作成される。ユーザは、運動レッスンに従って運動動作を行うことで、効率よくエクササイズを行うことができる。
【０００４】
ところで、運動動作を行う速さが、ユーザによっては、速すぎたり遅すぎたりする場合がある。そこで、ユーザの体力レベルに応じて運動動作のテンポを調整することができる運動支援装置が知られている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−８２０５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、運動動作のテンポを調整すると、運動レッスンにかかる時間が変化し、運動レッスンが、終了予定時間よりも長引いたり早く終わってしまったりすることがあり、インストラクタが一日のスケジュールを組みにくいという問題があった。
【０００７】
本発明は、上記の問題点を解決するためになされたものであり、運動レッスンにかかる時間を調整することができる運動支援装置、運動支援方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１態様によれば、身体部位を動作させる運動動作を支援する運動支援装置であって、前記運動動作を表す運動情報を少なくとも１種類以上組み合わせてなる、少なくとも１種類以上のレッスン情報を記憶する記憶手段と、前記レッスン情報に表される運動レッスンに従い前記運動動作が行われる際の速さを示す速度情報を取得する第１取得手段と、前記運動動作が含まれる前記運動レッスンを行う所望の時間を示す所望レッスン時間情報を取得する第２取得手段と、前記第１取得手段によって取得された前記速度情報に示される速さで前記運動動作を行う場合に、前記記憶手段に記憶された１種類以上の前記レッスン情報のなかから、前記第２取得手段によって取得された前記所望レッスン時間情報に示される時間内で前記運動レッスンを行うことが可能な前記レッスン情報を取得する第３取得手段と、前記第３取得手段によって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作ごとに、前記第１取得手段によって取得された前記速度情報に示される速さで前記運動動作を行った場合にかかる時間を示す運動時間情報を決定する決定手段と、前記運動レッスンにかかる時間が、前記第２取得手段によって取得された前記所望レッスン時間情報に示される時間以内となり、且つ、前記第３取得手段によって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作にかかる時間がそれぞれ最大となるように、前記決定手段によって決定された前記運動時間情報に示される時間を前記運動動作ごとに調整する調整手段と、を備える運動支援装置が提供される。
【０００９】
本発明の第１態様では、速度情報に示される速さの如何によらず、運動レッスンにかかる時間を、所望レッスン時間情報に示される時間以内とすることができる。よって、運動レッスンを実施する計画を、予定を管理する時間割に沿って立てやすくなる。また、運動レッスンに含まれる運動動作にかかる時間がそれぞれ最大となるようにすることができるので、運動動作にかかる時間が短くなって十分な運動の効果を得られなくなることがなく、所望レッスン時間情報に示される時間以内で時間を有効利用して効率よく運動を行うことができる。
【００１０】
第１態様において、前記調整手段は、前記運動レッスンにかかる時間が前記所望レッスン時間情報に示される時間以内となり、且つ、前記運動レッスンに含まれる前記運動動作のそれぞれについて、前記運動時間情報に示される時間で行われる１回の前記運動動作を繰返して行う繰返回数が最大となるように、前記繰返回数を調整してもよい。運動動作の繰返回数を、運動動作のそれぞれについて調整することにより、運動レッスン全体を通しての一通りの運動動作の実行を一回とする調整を行った場合と比べ、より細かな時間調整ができる。よって、所望レッスン時間情報に示される時間以内で時間を有効利用して効率よく運動レッスンを行うことができる。
【００１１】
第１態様において、前記調整手段は、前記運動レッスンに含まれる前記運動動作を、実行順に指定する指定手段と、前記指定手段によって指定された前記運動動作の前記運動時間情報に示される時間を、前記運動レッスンにかかる実際の時間を示す実レッスン時間情報に加算し、前記実レッスン時間情報と前記所望レッスン時間情報とを比較する比較手段と、前記比較手段による比較の結果、前記実レッスン時間情報よりも前記所望レッスン時間情報が大きい場合、前記指定手段によって指定された前記運動動作の前記繰返回数を、１増加する増加手段と、を備えてもよい。運動動作ごとに、実レッスン時間情報を所望レッスン時間情報と比較しつつ繰返回数を増やすことができるので、実レッスン時間情報に示される時間が、確実に、所望レッスン時間情報に示される時間以内となるようにすることができる。
【００１２】
第１態様において、前記運動動作が行われる際の速さを示す前記速度情報は、所定の時間間隔で動作の節となるタイミングを拍として数える拍数によって示される情報であってもよい。速度情報を拍数によって示される情報とすることで、速度情報の変更により運動レッスンにかかる時間を調整しても、動作の節は変わらないので、身体部位を動作させる運動動作を行う上でのタイミングを取りやすい。
【００１３】
第１態様において、前記レッスン情報は、前記運動レッスンの開始時期に行われるウォーミングアップ運動に対応する前記運動動作を示す前記運動情報と、前記運動レッスンの終了時期に行われるクールダウン運動に対応する前記運動動作を示す前記運動情報と、前記運動レッスンにおける主要な運動であるメイン運動に対応する前記運動動作を示す前記運動情報と、を含み、前記調整手段は、前記メイン運動に対応する前記運動動作にかかる時間を調整してもよい。ウォーミングアップ運動に対応する運動動作は、運動を行う準備のための運動であり、クールダウン運動に対応する運動動作は、運動を終了する準備のための運動であるので、これらの運動動作にかかる時間の調整を行わなければ、ウォーミングアップ運動やクールダウン運動の運動動作にかかる時間を確実に確保することができるので、運動の効果を高めることができる。
【００１４】
本発明の第２態様によれば、身体部位を動作させる運動動作を表す運動情報を少なくとも１種類以上組み合わせてなる、少なくとも１種類以上のレッスン情報を記憶する記憶手段を備えるコンピュータで実行され、前記運動動作を支援する運動支援方法であって、前記レッスン情報に表される運動レッスンに従い前記運動動作が行われる際の速さを示す速度情報を取得する第１取得ステップと、前記運動動作が含まれる前記運動レッスンを行う所望の時間を示す所望レッスン時間情報を取得する第２取得ステップと、前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行う場合に、前記記憶手段に記憶された１種類以上の前記レッスン情報のなかから、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間内で前記運動レッスンを行うことが可能な前記レッスン情報を取得する第３取得ステップと、前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作ごとに、前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行った場合にかかる時間を示す運動時間情報を決定する決定ステップと、前記運動レッスンにかかる時間が、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間以内となり、且つ、前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作にかかる時間がそれぞれ最大となるように、前記決定ステップによって決定された前記運動時間情報に示される時間を前記運動動作ごとに調整する調整ステップと、を含む運動支援方法が提供される。
【００１５】
本発明の第３態様によれば、身体部位を動作させる運動動作を表す運動情報を少なくとも１種類以上組み合わせてなる、少なくとも１種類以上のレッスン情報を記憶する記憶手段を備え、前記運動動作を支援する運動支援装置として機能させるためのプログラムであって、コンピュータに、前記レッスン情報に表される運動レッスンに従い前記運動動作が行われる際の速さを示す速度情報を取得する第１取得ステップと、前記運動動作が含まれる前記運動レッスンを行う所望の時間を示す所望レッスン時間情報を取得する第２取得ステップと、前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行う場合に、前記記憶手段に記憶された１種類以上の前記レッスン情報のなかから、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間内で前記運動レッスンを行うことが可能な前記レッスン情報を取得する第３取得ステップと、前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作ごとに、前記第１取得ステップによって取得された前記速度情報に示される速さで前記運動動作を行った場合にかかる時間を示す運動時間情報を決定する決定ステップと、前記運動レッスンにかかる時間が、前記第２取得ステップによって取得された前記所望レッスン時間情報に示される時間以内となり、且つ、前記第３取得ステップによって取得された前記レッスン情報に表される前記運動レッスンに含まれる前記運動動作にかかる時間がそれぞれ最大となるように、前記決定ステップによって決定された前記運動時間情報に示される時間を前記運動動作ごとに調整する調整ステップと、を実行させるプログラムが提供される。
【００１６】
第２態様に係る運動支援方法に従う処理をコンピュータで実行することによって、あるいは、第３態様に係るプログラムを実行してコンピュータを運動支援装置として機能させることで、第１態様と同様の効果を得ることができる。
【図面の簡単な説明】
【００１７】
【図１】運動支援装置５の全体の構成を模式的に示す図である。
【図２】レッスンテーブル７４を示す図である。
【図３】コリオテーブル７５を示す図である。
【図４】モーションテーブル７６を示す図である。
【図５】楽曲テーブル７７を示す図である。
【図６】レッスン作成処理のフローチャートである。
【図７】標準レッスン時間算出処理のフローチャートである。
【図８】レッスン実行処理のフローチャートである。
【図９】繰返回数決定処理のフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明を具体化した一実施の形態について、運動支援装置５を例に、図面を参照して説明する。なお、参照する図面は、本発明が採用しうる技術的特徴を説明するために用いられるものであり、記載されている装置の構成、各種処理のフローチャートなどは、それのみに限定する趣旨ではなく、単なる説明例である。
【００１９】
まず、図１〜図５を参照し、運動支援装置５の概略的な構成について説明する。図１に示す、運動支援装置５は、例えばフィットネスクラブなどのスポーツ施設４に設置され、モニタ５７の表示部６７に運動映像を表示して、ユーザ４１が身体部位を動作させる運動動作を支援する装置である。運動支援装置５は、図示しないプログラムの実行に従って運動動作を行うキャラクタを映し出した運動映像を生成し、モニタ５７の表示部６７に表示する。その際に運動支援装置５は、運動映像の表示に合わせて運動動作のテンポに応じた楽曲を再生する。スポーツ施設４のユーザ４１は、表示部６７に表示された運動映像を手本に、楽曲のテンポに合わせ、各自の身体部位を動作させる運動を行う。
【００２０】
運動支援装置５は、周知のパーソナルコンピュータ（ＰＣ）により構成され、制御を司るＣＰＵ５１を備える。ＣＰＵ５１には、バス５４を介して、ＲＯＭ５２、ＲＡＭ５３、入出力（Ｉ／Ｏ）インタフェイス５５が接続されている。ＲＯＭ５２は、ＣＰＵ５１が実行するＢＩＯＳ等のプログラムを記憶する読出し専用の記憶装置である。ＲＡＭ５３は、データを一時的に記憶する読み書き可能な記憶装置である。
【００２１】
入出力インタフェイス５５には、ハードディスクドライブ（ＨＤＤ）７、ディスクドライブ５８、表示制御部５６、音声出力部６３、信号受信部６５、キーボード６１およびマウス６２が接続されている。ディスクドライブ５８は、例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなど、データが記憶された記憶媒体であるディスクＲＯＭ５９が挿入されると、ディスクＲＯＭ５９からデータやプログラム等の読み込みを行うものである。ＰＣを運動支援装置５として稼働させるためのＯＳやプログラム等が、ディスクＲＯＭ５９に記憶されて提供される。
【００２２】
表示制御部５６は、運動支援装置５で稼働されるＯＳやプログラム等の操作画面や、キャラクタを映し出した運動映像を表示部６７に表示するための描画処理を行う。キーボード６１、マウス６２、リモコン６６は、インストラクタ４２が、例えば、運動支援プログラム（後述）の実行における情報の入力や操作に用いられる。信号受信部６５は、電波や光など周知の手段を用いてリモコン６６から出力される信号を受信する。音声出力部６３は、キャラクタを映し出した運動映像に合わせて再生される楽曲をスピーカ６４から出力する制御を行う。
【００２３】
記憶装置であるＨＤＤ７には、ディスクＲＯＭ５９から読み出されたＯＳやプログラム等がインストールされる。なお、ＯＳやプログラム等は、フラッシュＲＯＭなど、その他の記憶媒体に記憶されて提供されてもよい。あるいは、図示しないが、ネットワークインタフェイスを介して接続されるネットワーク上の端末からダウンロードにより提供されてもよい。
【００２４】
また、ＨＤＤ７には、運動支援プログラムや、運動支援プログラムで使用されるデータ等が記憶される。運動支援プログラムについては後述する。運動支援プログラムで使用されるデータ等には、モーションデータ７１、楽曲データ７２、テーブルデータ７３が含まれる。
【００２５】
以下、運動支援プログラムで使用されるデータ等について説明する。モーションデータ７１は、図示しない、三次元仮想空間内に配置されるキャラクタに、具体的な運動動作を行わせるための小単位の動作（「モーション」という。）を表すデータである。例えば、左右に移動して足踏みをする「サイドステップ」の運動動作は、キャラクタが、「右側に移動」、「その場で足踏み」、「左側に移動」、「その場で足踏み」という小単位の各動作を順に繰り返して行うことによって表現される。それぞれのモーションデータ７１には識別のためのモーションＩＤが割り付けられている。また、モーションデータ７１には、キャラクタの各身体部位の座標データ、同様に各身体部位に対応した細部の座標データ、細部に対応したテクスチャデータなども含まれる。
【００２６】
楽曲データ７２は、楽曲を表すＭＩＤＩやＷＡＶ、ＭＰ３等の形式によるデータである。それぞれの楽曲データ７２には識別のための楽曲ＩＤが割り付けられている。次に、テーブルデータ７３は、上記のモーションデータ７１および楽曲データ７２を、運動レッスンに関連付けるための各種テーブルである。具体的に、テーブルデータ７３には、図２〜図５に示す、レッスンテーブル７４、コリオテーブル７５、モーションテーブル７６、楽曲テーブル７７の４つのテーブルが含まれる。
【００２７】
図２に示す、レッスンテーブル７４は、運動レッスンを示すレッスンＩＤと、その運動レッスンに含まれるコリオ（Ｃｈｏｒｅｏｇｒａｐｈｙ）を示すコリオＩＤとが関連付けられたテーブルである。レッスンテーブル７４では、レッスンＩＤに対し、運動レッスンの名称を示すレッスン名と、コリオを運動内容に応じて分類した運動分類を示す運動分類ＩＤと、運動レッスンに含まれるコリオを示すコリオＩＤと、運動レッスンにかかる時間を示す標準レッスン時間とが対応付けられている。
【００２８】
コリオとは、１以上のモーションを組み合わせてなる運動動作をいう。具体的には、上記の例に示す運動動作の「マーチ」が、コリオに相当する。コリオには、識別のためのコリオＩＤが割り付けられている。運動レッスンとは、所定の運動目的を達成するために効果的な１つ以上のコリオを実行順に行い、一連の運動動作が行われるようにしたものである。運動レッスンは、後述する運動支援プログラムにおいて、インストラクタ４２が、所望のコリオを選択して組み合わせることにより作成される。もちろん、あらかじめ作成された運動レッスンがレッスンテーブル７４のデータとして提供され、運動支援プログラムのインストールの際に、ＨＤＤ７に記憶されてもよい。運動レッスンには、識別のためのレッスンＩＤが割り付けられている。
【００２９】
また、運動レッスンに含まれる各コリオは、運動内容に応じて分類されている。例えば、コリオは、「ウォーミングアップ運動」、「メイン運動」、「クールダウン運動」の各運動分類に分類される。ウォーミングアップ運動には、運動レッスンの開始時期に行われる運動に応じたコリオが分類される。クールダウン運動には、レッスンの終了時期に行われる運動に応じたコリオが分類される。そしてメイン運動には、運動レッスンにおける主要な運動に応じたコリオが分類される。各運動分類には、識別のための運動分類ＩＤが割り付けられている。
【００３０】
レッスン名は、運動レッスンの名称を示し、後述する運動支援プログラムの実行において、インストラクタ４２が所望する運動レッスンを選択する際に、表示部６７に表示される。また、運動支援プログラムではインストラクタ４２が運動レッスンを作成することができ、その際に、キーボード６１等により任意の名称を入力することができる。標準レッスン時間は、運動レッスンに含まれるコリオを構成するモーションのそれぞれに設定されている拍数（後述）をもとに算出される時間である。後述するが、運動支援プログラムでは、運動レッスンにかかる時間を調整することができる。標準レッスン時間は、調整の基準となる運動レッスンにかかる時間を示すものであり、調整を行わない場合にかかる時間の目安となる。標準レッスン時間は、後述する標準レッスン時間算出処理（図７参照）において求められる。
【００３１】
次に、図３に示す、コリオテーブル７５は、コリオを示すコリオＩＤと、コリオの名称を示すコリオ名と、コリオを行うことによって鍛えられる身体部位と、コリオを構成するモーションを示すモーションＩＤと、コリオに含まれるモーションを一通り（１回）実行するのにかかる標準の時間を示す変数ＬＲＴｉ（後述）とが関連付けられたテーブルである。さらに、各コリオを実行する際に再生される楽曲を示す楽曲ＩＤが、コリオＩＤに対応付けられている。例えば、コリオＩＤ「２」のコリオは「サイドステップ」であり、モーションＩＤ「３」「４」「５」「６」の各モーションが順に実行されることによって表現される。キャラクタによってサイドステップの運動動作が実行される際には、楽曲ＩＤ「１」の楽曲が再生される。そして、ユーザ４１がサイドステップの運動動作を行うことによって、脚部を鍛えることができる。また、サイドステップを実行するのにかかる標準の時間は「１２」秒である。コリオテーブル７５はあらかじめ作成され、運動支援プログラムとともにＨＤＤ７にインストールされて提供される。
【００３２】
図４に示す、モーションテーブル７６は、モーションの名称を示すモーション名と、そのモーションを実行するのにかかる拍数と、個々のモーションをキャラクタに動作させるためのデータの所在（パス）とが関連付けられたテーブルである。例えば、モーションＩＤ「３」のモーションは、例えば右側に移動する「サイドステップＡ」であり、その動作を行う拍数として「４」が設定されている。そして、サイドステップＡのモーションデータは、モーションテーブル７６にパスが示されるＨＤＤ７の記憶エリアに記憶されている。モーションテーブル７６も同様にあらかじめ作成され、運動支援プログラムとともにＨＤＤ７にインストールされて提供される。
【００３３】
図５に示す、楽曲テーブル７７は、楽曲の名称を示す楽曲名と、楽曲のアーティストを示すアーティスト名と、楽曲のデータの所在（パス）とが関連付けられたテーブルである。例えば、楽曲ＩＤ「１」の楽曲は、「Ａ０１」というアーティストの「Ｓ０１」という名称の楽曲であり、楽曲テーブル７７にパスが示されるＨＤＤ７の記憶エリアに記憶されている。楽曲テーブル７７も同様にあらかじめ作成され、運動支援プログラムとともにＨＤＤ７にインストールされて提供される。
【００３４】
次に、運動支援装置５において運動映像が生成される過程について簡単に説明する。運動映像の生成は、以下のように行われる。図示しない三次元仮想空間内にキャラクタを配置させ、モーションデータ７１に基づく運動動作を行わせる。図示しない仮想カメラによって運動動作を行うキャラクタを所定の時間ごとに撮影し、公知のアフィン変換によって、二次元の画像に変換する。運動映像とは、このように運動動作を行うキャラクタを撮影した画像が、時系列に沿って連続的に表示されたものである。
【００３５】
以下、図１〜図５を適宜参照しながら、図６〜図９を参照し、運動支援装置５において実行される運動支援プログラムの動作について説明する。運動支援プログラムでは、運動レッスンにかかる時間の調整を、運動レッスンを行うテンポを変更することによって行っている。さらに、コリオに含まれるモーションの繰返回数を調整することで、調整後の運動レッスンにかかる時間が、所望する時間内に納まるようにしている。以下、フローチャートの各ステップを「Ｓ」と略記する。なお、以下の処理はＣＰＵ５１により実行される。また、プログラムの実行中に一時的に生成されるデータは、ＲＡＭ５３に確保されるデータ処理用の記憶エリアや、ＨＤＤ７に同様に確保される記憶エリアに一時的に記憶される。
【００３６】
まず、インストラクタ４２が任意の運動レッスンを作成することが可能なレッスン作成処理について説明する。図６に示す、レッスン作成処理は、運動支援プログラムとして提供されるアプリケーション群のうちの一つであり、インストラクタ４２が任意のコリオを組み合わせて所望する運動レッスンを作成する場合に実行される。
【００３７】
インストラクタ４２が運動支援装置５を操作し、運動レッスンを作成するためのアプリケーションを起動させると、図６に示す、レッスン作成処理が実行される。レッスン作成処理では、初期設定において、ＲＡＭ５３にレッスン作成処理の各処理に応じた記憶エリアが確保される。また、プログラム内で使用される変数やフラグ、カウンタ等の初期化が行われる。
【００３８】
モニタ５７の表示部６７に、図示しない、運動レッスンの作成画面が表示される（Ｓ１０）。コリオテーブル７５が参照され、作成画面において、コリオテーブル７５にデータのある身体部位が読み出され、選択項目として表示される。インストラクタ４２によってマウス６２、キーボード６１、リモコン６６等の操作が行われ、鍛えたい身体部位の指定がなされる（Ｓ１１）。身体部位の指定は、複数箇所の指定が可能である。
【００３９】
コリオテーブル７５が参照され、指定された身体部位に関連付けられたコリオのコリオＩＤとコリオ名とが読み出される（Ｓ１２）。読み出されたコリオ名の一覧が、作成画面において、選択項目として表示される（Ｓ１３）。身体部位が複数指定された場合には、身体部位ごとに分けてコリオ名の一覧が表示されてもよい。
【００４０】
次に、楽曲テーブル７７が参照され、楽曲テーブル７７にデータのある楽曲名とアーティスト名と楽曲ＩＤとが読み出される。さらに、図示しないテーブルより、運動分類の名称と運動分類ＩＤとが読み出される。インストラクタ４２により、運動レッスンにおける実行順に、コリオと、そのコリオを分類する運動分類と、そのコリオに割り当てる楽曲との選択がなされる（Ｓ１５）。インストラクタ４２が運動レッスンに含めることを所望するコリオがまだあるうちは、選択完了の操作がなされず（Ｓ１６：ＮＯ）、Ｓ１５に戻り、所望するコリオと運動分類と楽曲との選択が継続される。なお、運動レッスンにおけるコリオの実行順は、コリオの選択後に変更可能してもよい。
【００４１】
Ｓ１５、Ｓ１６の繰返しにより、インストラクタ４２が運動レッスンに含めることを所望するコリオがすべて選択され、選択完了の操作がなされたら（Ｓ１６：ＹＥＳ）、レッスン名の入力が行われる（Ｓ１７）。次に、Ｓ１８において、図７に示す、標準レッスン時間算出処理のサブルーチンが実行される（Ｓ１８）。
【００４２】
図７に示す、標準レッスン時間算出処理では、標準レッスン時間算出処理において使用される変数の初期化が行われる（Ｓ３０）。具体的には、運動レッスンに含まれるすべてのコリオに含まれるすべてのモーションを一通り実行するのにかかる時間を示す変数「ＬＲＴ」には０が代入される。対象のコリオを１回実行するのにかかる時間を示す変数「ＬＲＴｉ」に、０が代入される。対象のモーションを実行するのにかかる時間を示す変数「ＭＴｊ」にも０が代入される。運動レッスンにおけるコリオの順番（実行順）を示す変数「ｉ」には１が代入される。コリオにおけるモーションの順番（実行順）を示す変数「ｊ」にも１が代入される。
【００４３】
Ｓ１５において選択されたコリオで、順番がｉ番目のコリオのコリオＩＤが一時記憶されているＲＡＭ５３から取得される。Ｓ１５において選択されたコリオの数が求められ、変数「ｎ」に代入される。次いで、コリオテーブル７５が参照され、ｉ番目のコリオに含まれるモーションで、順番がｊ番目のモーションのモーションＩＤが読み出される（Ｓ３１）。このとき、ｉ番目のコリオに含まれるモーションの数が求められ、変数「ｍ」に代入される。モーションテーブル７６が参照され、読み出されたモーションＩＤに関連付けられたモーションの拍数が読み出される（Ｓ３２）。読み出された拍数は、変数「ＭＢｊ」に代入される。
【００４４】
ｊ番目のモーションの実行にかかる時間を示す変数ＭＴｊを求める演算が行われる（Ｓ３３）。変数ＭＴｊは、（１）式によって求められる。
ＭＢｊ×（６０［ｓｅｃ．］／１００［ＢＰＭ］）・・・（１）
すなわち、６０［ｓｅｃ．］／１００［ＢＰＭ］の演算により、基準テンポ（１００ＢＰＭ）で運動を行った場合に１拍あたりに必要な時間（秒数）が求まる。これをモーションの拍数を示す変数ＭＢｊと掛け合わせることで、モーションの実行にかかる時間が求まる。（１）式により算出された値は変数ＭＴｊに代入される。
【００４５】
そして、ｉ番目のコリオの１回の実行にかかる時間を示す変数ＬＲＴｉに変数ＭＴｊが加算され、変数ＬＲＴｉが更新される（Ｓ３５）。変数ｊがインクリメントされ（Ｓ３６）、変数ｍと比較される。変数ｊが変数ｍ以下である場合（Ｓ３７：ＮＯ）、ｉ番目のコリオに含まれるすべてのモーションがまだ対象となっていないので、Ｓ３３に戻る。Ｓ３３〜Ｓ３７が繰返されることによって、ｉ番目のコリオに含まれるすべてのモーションを一通り実行するのにかかる時間が変数ＬＲＴｉに加算されたときには、変数ｊが変数ｍより大きな値となる（Ｓ３７：ＹＥＳ）。Ｓ３８に進み、ｉ番目のコリオの１回の実行にかかる時間として求められた変数ＬＲＴｉの値が、コリオテーブル７５で、対応するコリオＩＤに関連付けられて記録される（Ｓ３８）。すでにＬＲＴｉが記録されている場合にも上書きされる。
【００４６】
変数ｉがインクリメントされ、変数ｊには１が代入される。運動レッスンにかかる時間を示す変数ＬＲＴに、ｉ番目のコリオの１回の実行にかかる時間を示す変数ＬＲＴｉが加算され、変数ＬＲＴが更新される。そして変数ＬＲＴｉには０が代入されて、リセットされる（Ｓ４０）。
【００４７】
Ｓ４１に進み、変数ｉが変数ｎと比較され、変数ｉが変数ｎ以下である場合（Ｓ４１：ＮＯ）、選択中の運動レッスンに含まれるすべてのコリオがまだ対象となっていないので、Ｓ３１に戻る。上記同様、Ｓ３１〜Ｓ４１が繰返されることによって、運動レッスンに含まれるすべてのコリオに含まれるすべてのモーションを一通り実行するのにかかる時間が、変数ＬＲＴの値として求まる。このとき、変数ｉは変数ｎより大きな値となるので（Ｓ４１：ＹＥＳ）、Ｓ４２に進む。Ｓ４２では、上記したように、コリオに含まれる一連のモーションの繰返回数の基準として５回が設定されているので、変数ＬＲＴを５倍にした標準レッスン時間が求められ、変数「ＳｔｄＬＴ」に代入される（Ｓ４２）。標準レッスン時間算出処理を終了し、レッスン作成処理に戻る。
【００４８】
図６に示す、レッスン作成処理では、Ｓ２０に進み、表示部６７に表示された運動レッスンの作成画面上において、標準レッスン時間（ＳｔｄＬＴ）が表示される（Ｓ２０）。なお、このとき表示される標準レッスン時間は、変数ＳｔｄＬＴを６０で割り、小数点以下を切り捨てた、分単位の時間で表示される。作成された運動レッスンの内容や標準レッスン時間がインストラクタ４２の望み通りでなく、作成画面上において運動レッスンの作成のやり直しの指示がなされると（Ｓ２１：ＮＯ）、Ｓ１５に戻る。
【００４９】
作成された運動レッスンの内容や標準レッスン時間をインストラクタ４２が承諾し、作成画面上において、新規の運動レッスンとして完成させることを確定する指示がなされると（Ｓ２１：ＹＥＳ）、Ｓ２２に進む。Ｓ２２では、レッスンテーブル７４において重複のない新たなレッスンＩＤが取得される。そして、作成された運動レッスンの情報、すなわち、レッスン名、運動分野ＩＤ、コリオＩＤ、および標準レッスン時間（ＳｔｄＬＴ）が、レッスンＩＤに関連付けて、レッスンテーブル７４に追加記憶される。そして、レッスン作成処理の実行が終了される。
【００５０】
次に、ユーザ４１に対し、運動レッスンに基づく運動を行わせるためのレッスン実行処理について説明する。図８に示す、レッスン実行処理は、レッスン作成処理と同様に、運動支援プログラムとして提供されるアプリケーション群のうちの一つである。インストラクタ４２が所望の運動レッスンを選択し、ユーザ４１に、運動レッスンに従った運動動作を行わせる場合に実行される。
【００５１】
インストラクタ４２が運動支援装置５を操作し、運動レッスンを行うためのアプリケーションを起動させると、図８に示す、レッスン実行処理が実行される。レッスン実行処理においても、初期設定において、ＲＡＭ５３にレッスン作成処理の各処理に応じた記憶エリアが確保される。また、プログラム内で使用される変数やフラグ、カウンタ等の初期化が行われる。
【００５２】
モニタ５７の表示部６７に、図示しない、運動レッスンの設定画面が表示される。設定画面では、インストラクタ４２の希望する運動レッスンにかかる時間（希望時間）を指定するための入力項目が表示される。インストラクタ４２によってマウス６２、キーボード６１、リモコン６６等が操作され、希望時間が指定されると（Ｓ５０）、指定された希望時間が秒の単位に変換されて、変数「ＬＴ」に代入される。次に、運動レッスンに対する難易度を選択するための選択項目が表示される。
【００５３】
本実施の形態では、運動レッスンの難易度は、基準テンポを基準とする運動動作のテンポの変更により設定されるものとする。上記したように、基準テンポは１００ＢＰＭである。ＢＰＭ値が大きくなってテンポが速くなれば、ユーザ４１が身体を動作させる速度が速くなるので運動レッスンの難易度が高くなり、ＢＰＭ値が小さくなってテンポが遅くなれば、運動レッスンの難易度は低くなる。難易度は、例えば「容易」「普通」「難しい」などが選択可能であり、それぞれに対し、例えば、８０ＢＰＭ、１００ＢＰＭ、１４０ＢＰＭなど、難易度に合わせたＢＰＭ値があらかじめ設定されている。インストラクタ４２の操作によって運動レッスンの難易度が選択されると（Ｓ５１）、選択された難易度に応じたＢＰＭ値が、変数「ＳｅｌｅｃｔｅｄＢＰＭ」に代入され、Ｓ５２に進む。なお、難易度として、インストラクタ４２が所望するＢＰＭ値を直接入力できるようにしてもよい。
【００５４】
Ｓ５２では、レッスンテーブル７４が参照され、レッスンテーブル７４にデータのあるすべての運動レッスンについて、標準レッスン時間をもとに見込時間が算出される。見込時間とは、Ｓ５１で選択されたＢＰＭ値（ＳｅｌｅｃｔｅｄＢＰＭ）で運動レッスンが行われた場合に見込まれる、運動レッスンの実行にかかる時間である。見込時間は、（２）式に示すように、標準レッスン時間（ＳｔｄＬＴ）に、基準テンポ（１００ＢＰＭ）をＳｅｌｅｃｔｅｄＢＰＭで割った値を掛け合わせて求められる。
見込時間＝ＳｔｄＬＴ×（１００［ＢＰＭ］／ＳｅｌｅｃｔｅｄＢＰＭ）・・・（２）
（２）式により求められる見込時間が、Ｓ５０で指定された希望時間（ＬＴ）以下である運動レッスンのレッスンＩＤおよびレッスン名がレッスンテーブル７４から取得され、運動レッスンの設定画面上に表示される（Ｓ５２）。
【００５５】
インストラクタ４２の操作によって、一覧の中から所望の運動レッスンが選択されると（Ｓ５３）、Ｓ５５に進み、図９に示す、繰返回数決定処理のサブルーチンがコールされる（Ｓ５５）。
【００５６】
図９に示す、繰返回数決定処理は、運動レッスンの希望時間内において、テンポが調整されたコリオの繰返回数を、できる限り増やすために、各コリオの繰返回数を求める処理である。ここで、繰返回数決定処理において行われる処理の概要について、簡単な例を挙げて説明する。例えば、運動レッスンにおいて希望時間が５分であり、運動レッスンに含まれるコリオが３つあり、それぞれの実行時間が５秒、１０秒、１５秒である場合を想定する。すべてのコリオを一通り実行するのにかかる時間は３０秒となる。すると、５分以内には、各コリオを１０回通り繰返し行うことが可能である。
【００５７】
ここで、各コリオの実行時間が調整され、それぞれ１０秒、１５秒、２０秒となった場合、すべてのコリオを一通り実行するのにかかる時間は４５秒となる。５分（３００秒）以内には、すべてのコリオを６回通り繰り返すことが可能であるが、運動レッスンにかかる時間は２７０秒であり、３０秒の余り時間を生ずる。そこで、１番目のコリオの繰返回数を増やして７回とすると、運動レッスンにかかる時間は２８０秒となる。さらに２０秒の余り時間があるので、２番目のコリオの繰返回数を増やして７回とすると、運動レッスンにかかる時間は２９５秒となる。３番目のコリオの繰返回数を増やすと希望時間の３００秒を超えてしまうので、各コリオの繰返回数が、順に、７回、７回、６回に決定される。以下に説明する繰返回数決定処理では、このように、コリオの繰返回数を決定する処理が行われる。
【００５８】
繰返回数決定処理では、まず、繰返回数決定処理において使用される変数の初期化が行われる（Ｓ６０）。具体的には、テンポの変更により調整された後の運動レッスンにかかる時間が、希望時間（ＬＴ）を超えないようにするための演算過程における時間合計値を示す変数「Ｓｕｍ」に、０が代入される。変数Ｓｕｍの演算過程における一時的な値を保持するための変数「ＴｅｍｐＳｕｍ」にも０が代入される。ｉ番目のコリオに含まれるすべてのモーションの繰返回数を示す変数「ＬＣｉ」に、０が代入される。なお、変数ＬＣｉは、運動レッスンに含まれるコリオのそれぞれに個別に設定される。よってここでは、各コリオにそれぞれ設けられた変数ＬＣｉが、それぞれリセットされる。
【００５９】
次に、変数ＴｅｍｐＳｕｍに、変数Ｓｕｍの値が代入される。さらに、運動レッスンにおけるコリオの順番を示す変数ｉに、１が代入される（Ｓ６１）。レッスンテーブル７４が参照され、運動レッスンに含まれるコリオで、順番がｉ番目のコリオのコリオＩＤが読み出される。このとき、Ｓ５３で選択された運動レッスンに含まれるコリオの数が求められ、変数「ｎ」に代入される。コリオテーブル７５が参照され、ｉ番目のコリオの１回の実行にかかる標準の時間（ＬＲＴｉ）が読み出される。さらに、Ｓ５１で選択されたＢＰＭ値（ＳｅｌｅｃｔｅｄＢＰＭ）でコリオが行われた場合に、コリオの１回の実行に見込まれる時間（ＬＣＴｉ）が、（２）と同様の（３）式により求められる（Ｓ６２）。
ＬＣＴｉ＝ＬＲＴｉ×（１００［ＢＰＭ］／ＳｅｌｅｃｔｅｄＢＰＭ）・・・（３）
【００６０】
変数Ｓｕｍと変数ＬＣＴｉとを足し合わせた合計値が、Ｓ５０で選択された希望時間を示す変数ＬＴ以下となれば（Ｓ６３：ＹＥＳ）、ｉ番目のコリオの繰返回数を増やしても運動レッスンにかかる時間は希望時間以下になると判断される。Ｓ６５に進んで、ｉ番目のコリオの繰返回数（ＬＣｉ）がインクリメントされ、変数Ｓｕｍに変数ＬＣＴｉが加算されて変数Ｓｕｍが更新される（Ｓ６５）。次にＳ６６に進む。
【００６１】
変数ｉがインクリメントされ（Ｓ６６）、次いで変数ｉが変数ｎと比較される。変数ｉが変数ｎ以下である場合（Ｓ６７：ＮＯ）、Ｓ５３で選択された運動レッスンに含まれるすべてのコリオについて、一通りの繰返回数の加算処理がまだなされていないとして、Ｓ６２に戻る。Ｓ６２〜Ｓ６７が繰返されることによって、運動レッスンに含まれるすべてのコリオについて一通りの繰返回数の加算処理がなされたら（Ｓ６７：ＹＥＳ）、Ｓ６８に進む。
【００６２】
Ｓ６８では、Ｓ６１で一時保存され、Ｓ６２〜Ｓ６７の処理が実施される前の変数Ｓｕｍの値、すなわち変数ＴｅｍｐＳｕｍが、Ｓ６２〜Ｓ６７の処理の実施後の変数Ｓｕｍの値と同値であるか、確認される。変数ＴｅｍｐＳｕｍと変数Ｓｕｍとが同値でなければ（Ｓ６８：ＮＯ）、Ｓ６２〜Ｓ６７の処理においてコリオの繰返回数の増加がなされたと判断される。すなわち、さらにコリオの繰返回数を増やしても、運動レッスンの実行にかかる時間が希望時間（ＬＴ）を超えない可能性があると判断される。よってＳ６１に戻り、Ｓ６１〜Ｓ６８を繰り返すことによって、コリオの繰返回数のさらなる増加が行われる。
【００６３】
Ｓ６１〜Ｓ６８の処理を繰り返しにおいて、Ｓ６２〜Ｓ６７の処理を繰り返すうちに、Ｓ６３において、変数Ｓｕｍと変数ＬＣＴｉとの合計値が希望時間を示す変数ＬＴよりも大きくなる場合がある（Ｓ６３：ＮＯ）。この場合には、これ以上のコリオの繰返回数の増加はできないため、Ｓ６５を飛ばしてＳ６６に進む。
【００６４】
Ｓ６２〜Ｓ６７の処理が一通り行われた時点で（Ｓ６７：ＹＥＳ）、コリオの１つでも繰返回数が増加されていれば、変数ＴｅｍｐＳｕｍと変数Ｓｕｍとが同値にならない。この場合はＳ６１に戻り、再度Ｓ６１〜Ｓ６８の処理を繰り返すこととなる（Ｓ６８：ＮＯ）。しかし、Ｓ６２〜Ｓ６７の処理が一通り行われる間にいずれのコリオも繰返回数が増加されなければ、変数ＴｅｍｐＳｕｍと変数Ｓｕｍとが同値となる（Ｓ６８：ＹＥＳ）。Ｓ７０に進み、各コリオのそれぞれに設けられた変数ＬＣｉの値が、各コリオの繰返回数として決定される（Ｓ７０）。そして、繰返回数決定処理を終了し、レッスン実行処理に戻る。
【００６５】
図８に示す、レッスン実行処理では、Ｓ５６に進み、運動レッスンの再生が行われる。Ｓ５３で選択された運動レッスンに従い、モーションテーブル７６の参照により、運動レッスンに含まれる各コリオをそれぞれ構成する各モーションのモーションデータ７１がＨＤＤ７から読み出される。そして上記したように、図示しない三次元仮想空間内配置したキャラクタにモーションデータ７１に基づく運動動作を行わせて撮影した運動映像が作成され、モニタ５７の表示部６７に表示される。キャラクタにより、運動レッスンに含まれる各コリオが、Ｓ７０でそれぞれのコリオに対し設定された回数ずつ繰り返して行われ、ユーザ４１は、キャラクタの運動動作を模倣することで、各自の身体部位を動作させる運動を行う。運動レッスンは、インストラクタ４２の設定した難易度（テンポ）で、インストラクタ４２の設定した希望時間以内に終了され、レッスン実行処理の実行も終了される。
【００６６】
以上説明したように、本実施の形態の運動支援装置５では、難易度に合わせたＢＰＭ値が大きくとも小さくとも、運動レッスンにかかる時間を、希望時間以内とすることができる。よって、運動レッスンを実施する計画を、予定を管理する時間割に沿って立てやすくなる。また、運動レッスンに含まれるコリオにかかる時間がそれぞれ最大となるようにすることができるので、コリオにかかる時間が短くなって十分な運動の効果を得られなくなることがなく、希望時間以内で効率よく運動を行うことができる。また、コリオの繰返回数を、コリオのそれぞれについて調整することにより、運動レッスン全体を通しての一通りのコリオの実行を一回とする調整を行った場合と比べ、より細かな時間調整ができる。よって、希望時間以内で時間を有効利用して効率よく運動レッスンを行うことができる。また、コリオごとに、運動レッスンにかかる時間の暫定値を希望時間と比較しつつコリオの繰返回数を増やすことができるので、運動レッスンにかかる時間が、確実に、希望時間以内となるようにすることができる。また、運動動作のテンポを調整することによって運動レッスンにかかる時間の変更を行うので、運動動作の節は変わらない。よって、身体部位を動作させる運動動作を行う上でのタイミングを取りやすい。
【００６７】
なお、上記の実施形態に示される運動支援装置５の構成は例示であり、本発明は各種の変形が可能なことは言うまでもない。コリオの繰返回数の決定は、運動レッスンに含まれるすべてのコリオを対象に行われたが、対象となるコリオを、メイン運動に分類されるコリオに限定して行ってもよい。この場合、ウォーミングアップ運動およびクールダウン運動に分類されるコリオは、繰返回数を、標準の、例えば５回に固定すればよい。また、運動動作のテンポの変更についても同様であり、メイン運動に分類されるコリオに限定してテンポを調整し、ウォーミングアップ運動およびクールダウン運動に分類されるコリオは、基準テンポで運動動作が行われるようにしてもよい。ウォーミングアップ運動に分類されるコリオは、運動を行う準備のための運動動作であり、クールダウン運動に分類されるコリオは、運動を終了する準備のための運動動作である。よって、これらのコリオにかかる時間の調整を行わなければ、ウォーミングアップ運動やクールダウン運動の運動動作にかかる時間を確実に確保することができるので、運動の効果を高めることができる。
【００６８】
また、レッスン実行処理（図８参照）のＳ５２、Ｓ５３では、見込時間が希望時間内に納まる運動レッスンの一覧から、インストラクタ４２が所望する運動レッスンが選択された。これに限らず、Ｓ５３において選択可能な運動レッスンを、レッスンテーブル７４にデータのあるすべての運動レッスンとしてもよい。あるいはＳ５２の代わりにレッスン作成処理（図６参照）が行われ、作成された運動レッスンに対し、運動レッスンにかかる時間の調整が行われるようにしてもよい。なお、上記の場合、標準レッスン時間が希望時間より長くなる場合があるが、その場合にはエラー表示を行ってもよいし、あるいは、標準で５回とした繰返回数を減らしてもよい。
【００６９】
モーションデータ７１や楽曲データ７２は、ネットワーク上の端末からダウンロードにより提供されてもよい。また、モーションデータ７１は、小単位の動作を行うキャラクタやモデル（例えばインストラクタ４２でもよい）をあらかじめ撮影した動画のデータであってもよい。
【００７０】
本実施の形態では、レッスン作成処理において、あらかじめ提供されたコリオを組み合わせて運動レッスンの作成を行ったが、あらかじめ提供されたモーションを組み合わせて任意のコリオを作成できるようにしてもよい。また、Ｓ２１において、作成した運動レッスンを作り直す場合にＳ１５に戻りコリオの選択からやり直すこととしたが、Ｓ１１に戻り、最初の条件から作り直せるようにしてもよい。
【００７１】
なお、本実施の形態においては、コリオＩＤが「運動情報」に相当し、レッスンＩＤが「レッスン情報」に相当する。Ｓ５１で選択される難易度に応じたＢＰＭ値が「速度情報」に相当し、希望時間（ＬＴ）が「所望レッスン時間情報」に相当する。コリオの実行にかかる時間（ＬＣＴｉ）が「運動時間情報」に相当し、運動レッスンに含まれるすべてのコリオに含まれるすべてのモーションを一通り実行するのにかかる時間（ＬＲＴ）が「実レッスン時間情報」に相当する。テーブルデータ７３を記憶するＨＤＤ７が、「記憶手段」に相当する。
【００７２】
Ｓ５１で選択される難易度に応じたＢＰＭ値を取得するＣＰＵ５１が、「第１取得手段」に相当する。Ｓ５０で希望時間（ＬＴ）を取得するＣＰＵ５１が、「第２取得手段」に相当する。Ｓ５３で、見込時間が希望時間内に納まる運動レッスンの一覧から選択される運動レッスンを取得するＣＰＵ５１が、「第３取得手段」に相当する。Ｓ６２でコリオの１回の実行にかかる時間（ＬＣＴｉ）を求めるＣＰＵ５１が、「決定手段」に相当する。Ｓ５５の繰返回数決定処理により、コリオの１回の実行時間（ＬＣＴｉ）とその繰返回数（ＬＣｉ）とによって、１つのコリオの実行にかかる時間を調整するＣＰＵ５１が、「調整手段」に相当する。Ｓ６２〜Ｓ６７の繰返処理においてＳ６６で変数ｉをインクリメントすることによりｉ番目のコリオを指定できるようにするＣＰＵ５１が、「指定手段」に相当する。Ｓ６３において希望時間（ＬＴ）と運動レッスンにかかる時間の暫定値（Ｓｕｍ＋ＬＣＴｉ）とを比較するＣＰＵ５１が、「比較手段」に相当する。Ｓ６５においてコリオの繰返回数（ＬＣｉ）をインクリメントするＣＰＵ５１が、「増加手段」に相当する。
【符号の説明】
【００７３】
５    運動支援装置
７    ＨＤＤ
５１    ＣＰＵ
５３    ＲＡＭ
７３    テーブルデータ
【図１】
0005246232.tif 000002
【図２】
0005246232.tif 000003
【図３】
0005246232.tif 000004
【図４】
0005246232.tif 000005
【図５】
0005246232.tif 000006
【図６】
0005246232.tif 000007
【図７】
0005246232.tif 000008
【図８】
0005246232.tif 000009
【図９】
0005246232.tif 000010