(57)【要約】【課題】  比較的小型・低解像度のディスプレイにおいて楽譜等を表示する際、ユーザが必要とする楽譜情報を見やすく表示でき、さらに表示上の自由度を高め視覚的に楽しめるようにする。【解決手段】  各々が仮想三次元空間内に配列された平面であるレイヤ上に、楽譜を構成する音符等のオブジェクトを配置し、所定の視点から各レイヤを眺めた状態によってディスプレイ上に楽譜を表示する。各レイヤの位置や視点等は適宜ユーザによって指定することができる。【選択図】  図１４
2008250513.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト特定情報を含む演奏情報を記憶する記憶手段であって、該オブジェクト特定情報は前記演奏情報を表示する表示画面を構成する複数のオブジェクトの各々について当該オブジェクトと当該オブジェクトが属するレイヤとを特定するものである、記憶手段と、
時間、高さおよび奥行きからなる仮想的な三次元空間内に、前記各レイヤを配置するための曲面を指定する曲面指定手段と、
前記三次元空間内に、前記各レイヤを眺める仮想的な視点とその向きとを指定する視点指定手段と、
前記視点から眺めた仮想的な映像を表示する表示手段と
を有することを特徴とする演奏情報表示装置。
【請求項２】
前記曲面指定手段は、現在適用されている曲面を変形する手段を有することを特徴とする請求項１記載の演奏情報表示装置。
【請求項３】
前記三次元空間内における前記各レイヤの奥行きを変更する奥行変更手段をさらに有することを特徴とする請求項１または２記載の演奏情報表示装置。
【請求項４】
前記三次元空間内に、仮想的な光源の座標である光源座標と、該光源の光軸が向かう座標である焦点座標とを指定する光源指定手段と、
前記各オブジェクトと前記光源座標とを結ぶ直線と、前記光軸とが成す角度に応じて前記各オブジェクトの表示濃度を設定する表示濃度設定手段と
をさらに有することを特徴とする請求項１ないし３の何れかに記載の演奏情報表示装置。
【請求項５】
自動演奏の時間的位置を取得する時間的位置取得手段と、
「前記視点の位置と方向」、「前記光源の位置と方向」、または、「前記オブジェクトの前記レイヤ上の位置」のうち何れかを前記時間的位置に応じて移動させる移動手段
をさらに有することを特徴とする請求項１ないし４の何れかに記載の演奏情報表示装置。
【請求項６】
前記表示手段に表示される画像に対して表示倍率の設定を行う手段をさらに具備することを特徴とする請求項１ないし５の何れかに記載の演奏情報表示装置。
【請求項７】
オブジェクト特定情報を含む演奏情報を記憶手段から読み出す読出過程であって、該オブジェクト特定情報は前記演奏情報を表示する表示画面を構成する複数のオブジェクトの各々について当該オブジェクトと当該オブジェクトが属するレイヤとを特定するものである、読出過程と、
時間、高さおよび奥行きからなる仮想的な三次元空間内に、前記各レイヤを配置するための曲面を指定する曲面指定過程と、
前記三次元空間内に、前記各レイヤを眺める仮想的な視点とその向きとを指定する視点指定過程と、
前記視点から眺めた仮想的な映像を表示する表示過程と
を処理装置に実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯型情報端末における楽譜等の表示に用いて好適な演奏情報表示装置およびプログラムに関する。
【背景技術】
【０００２】
従来より、電子楽器等のディスプレイに楽譜等を表示するための種々の技術が知られている。例えば、特許文献１においては、複数パートからなる楽譜をディスプレイ上のウィンドウに表示する技術が開示されている。ここで、ユーザが楽譜内の所望の矩形部分をマウス等で選択すると、当該部分が別のウィンドウに拡大表示される。また、特許文献２においては、楽譜の特定パートを、表示色の濃淡、五線譜の線間隔などを変更することによって強調する技術が開示されている。
【０００３】
【特許文献１】特開平０７-２７１３６１号公報
【特許文献２】特開２００４-３０９５８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、近年、携帯型情報端末の性能が向上することにより、携帯型情報端末において楽譜等の表示を行いながら、演奏情報の編集や自動演奏等を行う要望がある。しかし、携帯型情報端末に設けられるディスプレイは、表示領域が小さく解像度も低いものが多く、楽譜をそのままの状態で表示すると、視認性が低くなる問題があった。
この発明は上述した事情に鑑みてなされたものであり、比較的小型・低解像度のディスプレイにおいてもユーザが必要とする楽譜情報を見やすく表示でき、さらに表示上の自由度を高め視覚的に楽しめる演奏情報表示装置およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。なお、括弧内は例示である。
請求項１記載の演奏情報表示装置にあっては、オブジェクト特定情報（論理楽譜情報）を含む演奏情報を記憶する記憶手段（２０）であって、該オブジェクト特定情報は前記演奏情報を表示する表示画面を構成する複数のオブジェクトの各々について当該オブジェクトと当該オブジェクトが属するレイヤとを特定するものである、記憶手段（２０）と、時間、高さおよび奥行きからなる仮想的な三次元空間内に、前記各レイヤを配置するための曲面（Ｓ(t,d)）を指定する曲面指定手段（２，１０，ＳＰ１０）と、前記三次元空間内に、前記各レイヤを眺める仮想的な視点とその向きとを指定する視点指定手段（２，１０，ＳＰ１４）と、前記視点から眺めた仮想的な映像を表示する表示手段（８，ＳＰ４０）とを有することを特徴とする。
さらに、請求項２記載の構成にあっては、請求項１記載の演奏情報表示装置において、前記曲面指定手段（２，１０，ＳＰ１０）は、現在適用されている曲面（Ｓ(t,d)）を変形する手段を有することを特徴とする。
さらに、請求項３記載の構成にあっては、請求項１または２記載の演奏情報表示装置において、前記三次元空間内における前記各レイヤの奥行きを変更する奥行変更手段をさらに有することを特徴とする。
さらに、請求項４記載の構成にあっては、請求項１ないし３の何れかに記載の演奏情報表示装置において、前記三次元空間内に、仮想的な光源の座標である光源座標（ＰL）と、該光源の光軸が向かう座標である焦点座標（ＰB）とを指定する光源指定手段と、前記各オブジェクトと前記光源座標（ＰL）とを結ぶ直線と、前記光軸とが成す角度（θ）に応じて前記各オブジェクトの表示濃度を設定する表示濃度設定手段（２，１０，ＳＰ２８）とをさらに有することを特徴とする。
さらに、請求項５記載の構成にあっては、請求項１ないし４の何れかに記載の演奏情報表示装置において、自動演奏の時間的位置（t）を取得する時間的位置取得手段（ＳＰ１６）と、「前記視点の位置と方向」、「前記光源の位置と方向」、または、「前記オブジェクトの前記レイヤ上の位置」のうち何れかを前記時間的位置（t）に応じて移動させる移動手段をさらに有することを特徴とする。
さらに、請求項６記載の構成にあっては、請求項１ないし５の何れかに記載の演奏情報表示装置において、前記表示手段（８）に表示される画像に対して表示倍率の設定を行う手段をさらに具備することを特徴とする。
また、請求項７記載のプログラムにあっては、オブジェクト特定情報（論理楽譜情報）を含む演奏情報を記憶手段（２０）から読み出す読出過程であって、該オブジェクト特定情報は前記演奏情報を表示する表示画面を構成する複数のオブジェクトの各々について当該オブジェクトと当該オブジェクトが属するレイヤとを特定するものである、読出過程（ＳＰ１６）と、時間、高さおよび奥行きからなる仮想的な三次元空間内に、前記各レイヤを配置するための曲面（Ｓ(t,d)）を指定する曲面指定過程（ＳＰ１０）と、前記三次元空間内に、前記各レイヤを眺める仮想的な視点とその向きとを指定する視点指定過程（ＳＰ１４）と、前記視点から眺めた仮想的な映像を表示する表示過程（ＳＰ４０）とを処理装置（２２）に実行させることを特徴とする。
【発明の効果】
【０００６】
このように本発明によれば、演奏情報を表示する表示画面を構成する複数のオブジェクトの各々について、当該オブジェクトが属するレイヤを演奏情報に基づいて特定し、仮想的な三次元空間内における曲面にこれらレイヤを配置し、視点からこれらレイヤを眺めた仮想的な映像を表示することができるため、ユーザが必要とする楽譜情報を見やすく表示でき、さらに表示上の自由度を高めることができる。
【発明を実施するための最良の形態】
【０００７】
1．実施例のハードウエア構成
次に、本発明の一実施例の携帯型情報端末のハードウェア構成を図１を参照して説明する。
図１において、２は操作子部であり、各種スイッチ等から構成されている。４は検出回路であり、操作子部２の状態を検出する。６はタッチパネルであり、表示回路８によって各種の画像が表示される。さらに、タッチパネル６に対する操作状態は検出回路１０によって検出される。１２はオーディオインタフェース部であり、図示せぬヘッドフォン等を介して音声信号を出力するとともに、図示せぬマイクロフォンを介して音声信号を入力する。１４は通信インタフェース部であり、外部機器との間でデータの入出力を行う。
【０００８】
２２はＣＰＵであり、フラッシュメモリ２０に記憶されたプログラムに従って、バス１６を介して携帯型情報端末内の各部を制御する。１８はＲＡＭであり、ＣＰＵ２２のワークメモリとして用いられる。２４はタイマであり、現在時刻を計時するとともに、必要に応じてＣＰＵ２２に対してタイマ割込みを発生させる。２６は記録メディアスロットであり、ここに挿入されたメモリカード等の記録メディアに対してデータの読み書きを行う。
【０００９】
2．実施例の前提理論
2．1．処理の概要
次に、本実施例における各種前提理論について説明するが、最初に処理の概要を説明しておく。
本実施例は、携帯型情報端末のタッチパネル６に対して、楽譜を立体的に表示しようとするものである。まず、T軸（時間），H軸（高さ），D軸（奥行）を有する「オリジナル座標系」という三次元空間を想定し、図４(a)に示すように複数のレイヤL1，L2，……，Lnを該空間内に配置したとする。ここで、各レイヤL1，L2，……，Lnは、一般的には、楽譜におけるパートPt1，Pt2，……，Ptnに各々対応する。
【００１０】
また、各レイヤLi（但し、i = 1, 2, ..., n）には、音符などの「オブジェクト」が配置される。その一例を図３に示す。図３において、あるオブジェクトQは、T軸（時間），H軸（高さ）上の位置に基づいて「Q(tq, hq)」のようにレイヤLi上の位置が表現される。三次元モデルの座標系は一般に三次元であるが、本発明では各レイヤは厚みのない平面であるため、各レイヤ上のオブジェクトの位置は、直交する二次元座標によって表記される。ここで、時間位置tqは、楽譜上の水平方向の位置に対応しており、例えば、原点Oを楽曲の開始点とし、小節や拍を単位として表される。なお、時間位置tqは、分や秒を単位として表してもよい。
【００１１】
次に、XW軸，YW軸，ZW軸を有する「ワールド座標系」という三次元空間を想定し、図５(b)に示すように、該空間内に曲面Ｓ(t, d)を配置したとする。ここで、曲面Ｓ(t, d)は、オリジナル座標系におけるTD平面の写像であり、各レイヤLi（但し、i = 1, 2, ..., n）の写像は曲面Ｓ(t, d)上に配置される。次に、オリジナル座標系における各オブジェクトのワールド座標系への写像を求める方法について説明する。まず、図５(a)においてレイヤLiの奥行き値をdｉとする。TD平面上で「d ＝ dｉ」の成す直線の写像は、ワールド座標系においては、図５(b)に示すような曲面Ｓ(t, d)上の曲線ＬS(t)になる。
【００１２】
従って、図５(a)におけるTD平面上の点(tq, dｉ)の写像は、曲線ＬS(t)上の点ＰS(tq, dｉ)になる。ここで、点ＰS(tq, dｉ)の、ワールド座標系における位置を(xS, yS,zS)とする。ワールド座標系においてレイヤLiがYW軸に平行であると仮定すると、図５(a)におけるオブジェクトQ(tq, di，hq)のワールド座標系への写像は、図５(c)に示す点ＰWになり、その座標は、「(xW, yW,zW)＝(xS, yS+hq,zS)」になる。
【００１３】
次に、図９(a)に示すように、ワールド座標系において任意の視点Oeを定め、この視点Oeを原点とし、Xe軸，Ye軸，Ze軸を有する視点座標系を想定する。この視点座標系において、各レイヤLiを視点Oeから見た像に基づいて、最終的にタッチパネル６に表示する画像が得られる。
【００１４】
2．2．演奏情報のデータ構成
次に、本実施例における演奏情報のデータ構成を図２を参照し説明する。本実施例の演奏情報には、例えばＳＭＦ（スタンダードＭＩＤＩフォーマット）形式などが採用される。図２において演奏情報は、一のヘッダチャンク３０と、複数のトラックチャンク３２，…，３２とから構成されている。ヘッダチャンク３０には、トラック数、時間単位、フォーマットの種別等が記憶される。また、各トラックチャンク３２は、タイミングデータ３４，…，３４とイベントデータ３６，…，３６とから構成される。
ここで、タイミングデータ３４，…，３４はその直後に続く一または複数のイベントデータ３６，…，３６を再生するタイミングであり、イベントデータ３６，…，３６は、ＭＩＤＩイベント、システム・エクスクルーシブ・メッセージ、メタイベント等のデータである。
【００１５】
本実施例においては、自動演奏に同期して楽譜が表示されるが、楽譜における表示内容は、システム・エクスクルーシブ・メッセージまたはメタイベントによって記述された論理楽譜情報によって特定される。そして、上述したトラックチャンク３２，…，３２は、個々のパートPt1，Pt2，……，Ptnに対応付けて設けられている。そして、本実施例においては、これらのパート毎に上述したレイヤL1，L2，……，Lnが形成される。
【００１６】
また、上記「パート」の中には、「歌詞パート」や「コード進行パート」なども含まれる。従って、全くＭＩＤＩイベントが含まれず、発音には関与しないパートも存在する。なお、各パートは、必ずしも五線譜で一段で表されるパートになるとは限らない。例えば、ピアノパートなどの場合、一のパートがト音記号とヘ音記号の二段から成る「大譜表」で表示される場合もある。また、「ピアノ」に係るパートを、「右手パート」と「左手パート」に、分割し、別々のレイヤに表示されるように予めトラックを分割しておいてもよい。
【００１７】
2．3．レイヤ構築処理
次に、上述した演奏情報内の論理楽譜情報に基づいて、各レイヤの内容を特定するレイヤデータが構成される。まず、論理楽譜情報は、音符、休符、小節線等を表すものであり、各論理楽譜情報に基づいて、一または複数の「オブジェクト」が形成される。そして、一のトラックに含まれるオブジェクトが一のレイヤに配置される。上述したように、図３において、あるオブジェクトQは、オリジナル座標系内のT軸（時間），H軸（高さ）上の位置に基づいて「Q(tq, hq)」のようにレイヤ上の位置が表現される。
【００１８】
また、高さhqは、物体座標系における、楽譜上の垂直方向の位置を表す。例えば、五線譜のあるパートについて、第一線を原点とし、音符情報の音程に対応して、高い音程は大きな値であり、低い音程は小さな値になる。音符以外の記号（例えば、クレッシェンド記号、フェルマータ記号、ト音記号、五線など）も同様に、その位置がH座標、T座標で表される。ここでは説明の便宜上、音符の「符頭」の中心の座標によってオブジェクトQ(tq, hq)の位置を表現しているが、実際には、符頭の外縁のアウトライン、符幹、符尾の座標等の情報もオブジェクトに含まれる。
【００１９】
2．4．オリジナル座標系へのモデリング変換
上述したレイヤ構築処理によって構築された各レイヤデータは、三次元直交座標系であるオリジナル座標系の中に配置される。ここでは、各レイヤL1，L2，……，Lnに対して、奥行d1，d2，……，dnが与えられる。すなわち、各レイヤLiは、T軸，H軸に対して平行に、かつD軸に対して直行するようにTD平面上に配置される。これにより、レイヤLi上の各オブジェクトは「Q(tq, di，hq)」で表される。
【００２０】
初期状態においては、レイヤ番号iに対して、奥行き値dｉが等間隔で割り当てられる。すなわち、奥行き値dｉは、「d1×i」に等しい。但し、その後のユーザの操作に応じて、オリジナル座標系の中で奥行き値dｉは自在に変更可能である。すなわち、ユーザは最終的な表示を見ながら、後述するワールド座標系をイメージし、操作（例えばレイヤを選択してドラッグする操作など）を行うとよい。操作子の操作量は、ワールド座標系内での操作量として表示内容に反映され、その操作量はさらにオリジナル座標系の奥行き値に反映される。
【００２１】
例えば、図４(b)のワールド座標系においてレイヤLiを実線Ａに示す位置から破線Ｂに示す位置に移動させると、図４(c)のオリジナル座標系において、レイヤLiは実線Ａ’に示す位置から破線Ｂ’に示す位置まで移動される。また、ユーザが所定の操作を行うことにより、任意の二のレイヤLi，Lkの位置を相互に入れ替えることも可能である。図４(d)に示すように、かかる操作がワールド座標系において実行されると、図４(e)に示すように、オリジナル座標系においてもかかる操作が反映される。
【００２２】
2．5．曲面Ｓ(t, d)の指定
次に、ワールド座標系における曲面Ｓ(t, d)を特定する処理を図６(a)〜(c)を参照し説明する。まず、曲面Ｓ(t, d)は、初期状態においては、XWZW平面に一致するように設定される。従って、ワールド座標系における各レイヤは、図６(a)に示すようにオリジナル座標系と同様に配置される。ここで、ユーザは、必要に応じて曲面Ｓ(t, d)を変形することができる。
【００２３】
まず、操作子部２において、ユーザが曲面Ｓ(t, d)を変形するための所定の操作を行うと、タッチパネル６には複数の制御点Pij（但し、i = 0, 1, 2;  j = 0, 1, 2）が表示される。制御点Pijは初期状態においては、図６(b)に示すように、等間隔で正方形の升目状に配置されている。ここで、各制御点Pijの位置は、ユーザのドラッグアンドドロップ操作等によって、例えば図６(c)に示すようにワールド座標系上の別の位置に移動させることができる。
【００２４】
次に、これら制御点Pijを補間、平滑化することによってワールド座標系内の曲面Ｓ(t, d)が求められる。ここで、平滑化の具体的処理としては、Bezier曲面など数多くの手法があり、何れを採用してもよいが、本実施例においては、下式に示すBスプラインによって曲面Ｓ(t, d)が特定される。
【００２５】
【数１】
2008250513.tif 000003
【００２６】
Bスプライン曲面は、上式のように、n×m個の制御点Pijと、t方向（n+p個）とd方向（m+q個）のノット列によって定義されるものである。ここで、式中のNi,p(t)およびNj,q(d)はBスプライン基底関数、pはt方向の階数、qはd方向の階数である。また、「p-1」はT方向の次数、「q-1」はD方向の次数である。「Bスプライン基底関数」は周知であるため説明を省略する。上式により、オリジナル座標系のTD平面上の任意の点(t, d)に対するワールド座標系内の写像、すなわち曲面Ｓ(t, d)上の一点の座標が求まる。
【００２７】
ここで、変形された曲面Ｓ(t, d)上に各レイヤを再配置した例を図７(a)に示す。また、曲面Ｓ(t, d)は、図７(b)に示すように、XW軸，ZW軸方向への圧縮を伴うものであってもよいし、図７(c)に示すように、XW軸，ZW軸方向の変形を含むものであってもよい。また、制御点Pijを移動する場合には、複数の制御点を選択してドラッグできるようにしてもよく、複数の制御点を通過する曲線である座標曲線を選択してドラッグできるようにしてもよい。
【００２８】
また、XW軸，YW軸，ZW軸、その他ユーザが定めた軸を中心として、複数の制御点Pijを回転させるようしてもよい。また、制御点Pijの位置は、ドラッグ等によって特定するものに限らず、例えば座標値や角度などのパラメータを入力することによって特定してもよい。また、制御点Pijの座標を変更する際、制御点Pijそのものをドラッグするのではなく、楽譜を構成するレイヤやその上のオブジェクト（音符など）を選択してドラッグすると、これに連動して曲面Ｓ(t, d)が変形するように、制御点Pijの座標を決定してもよい。
【００２９】
2．6．ワールド座標系におけるレイヤの向きの指定
上述した「処理の概要」においては、ワールド座標系内の各レイヤは、図８(a)に示すようにYW軸と平行であると仮定したが、各レイヤの向きはこれに限られるものではなく、曲面Ｓ(t, d)上の各点上でユーザが任意に指定することができる。なお、「各レイヤの向き」は、「オリジナル座標系のオブジェクトをワールド座標系に写像したときの、各レイヤにおけるH軸の向き」である。例えば、図８(b)に示すように、各レイヤにおけるH軸は、視点座標系のYe軸に平行になるようにしてもよく、図８(c)に示すように曲面Ｓ(t, d)の法線方向にしてもよい。
【００３０】
次に、レイヤLiに含まれる任意のオブジェクトQ(tq, di，hq)に対して、H軸の向きを適用する処理の詳細を説明する。まず、図８(a)または(b)において、曲面S( t, d )上にあり、時間位置tqと奥行き値dｉに相当するワールド座標系における点ＰS(tq, dｉ)の座標が求められる。この求められた座標xS, yS, zSを用いて、点ＰSをを「ＰS(xS, yS, zS)」と表現する。
【００３１】
次に、この点ＰS(xS, yS, zS)からレイヤLi上のH軸方向に高さhqだけ移動させた点をＰWとし、そのワールド座標系における座標xW, yW, zWによって点ＰWを「ＰW（xW, yW, zW）」と表記する。ここで、レイヤLiにおけるH軸の向きがYW軸の向きと同一である場合、点ＰWの座標は下式の通りになる。
xW = xS,
yW = yS + hq,
zW = zS.
【００３２】
次に、H軸の向きを任意に設定する場合の一例として、H軸が視点座標系のYe軸に相当する向きの場合に点ＰWを求める方法を説明する。図８(b)において、Ye軸は、XWZW平面に平行ではない方向に任意に定めることができる。Xe軸は、Ye軸に直行するとともにXWZW平面に平行になるように定められる。そして、Ze軸は、Xe軸およびYe軸の双方に直交するように定められる。また、XW軸とXe軸のなす角をαとし、YW軸とYe軸のなす角をβとする。この場合、点ＰWの座標は下式の通りになる。
xW= xS + hqsinα sinβ, 
yW= xS + hqcosβ, 
zW= zS - hqcosαsinβ.
【００３３】
2．7．修正ワールド座標系への変換
ワールド座標系に座標変換されたオブジェクトの配置をそのまま用いて以降の処理をしてもよいが、後の処理において扱い易いように、ワールド座標系を適宜アフィン変換したものを修正ワールド座標系とし、この修正ワールド座標系を用いて以降の処理を行うと好適である。そこで、本実施例においても、かかる修正ワールド座標系に対する各オブジェクトの写像を求め、以後の処理に使用する。
【００３４】
まず、ワールド座標系におけるオブジェクトが点ＰW（xW, yW, zW）に配置されていることとする。この点ＰWのアフィン変換後の座標を「ＰA（xA, yA, zA）」とすると、点ＰAの座標は一般に下式のように表される。
xA = A11xW + A12yW + A13zW + A14, 
yA = A21xW + A22yW + A23zW + A24, 
zA = A31xW + A32yW + A33zW + A34.
【００３５】
上式のアフィン変換のうち、本実施例では拡大縮小、平行移動、回転などが楽譜を見やすく表示する上で効果がある。「拡大縮小」の例として、XW軸方向にA11倍拡大縮小し、YW軸方向にA22倍拡大縮小し、ZW軸方向にA33倍拡大縮小するならば、次式のような変換を行うとよい。
xA = A11xW,   yA = A22yW,   zA = A33zW. 
【００３６】
また、「平行移動」の例として、XW軸方向にA14移動し、YW軸方向にA24移動し、ZW軸方向にA34移動する場合、次のような変換を行うとよい。
xA = xW+ A14,  yA = yW+ A24,  zA = zW+ A34. 
また、「回転」の例として、XW軸のまわりをθX回転させる場合、YW軸のまわりをθY回転させる場合、あるいはZW軸のまわりをθZ回転させる場合、それぞれ次のような変換を行うとよい。
XW軸のまわり：xA = xW, yA= cosθXyW - sinθXzW, zA= sinθXyW + cosθXzW. 
YW軸のまわり：xA = cosθYxW + sinθYzW, yA = yW, zA= -sinθYyW + cosθYzW. 
ZW軸のまわり：xA = cosθZxW - sinθZyW, yA = sinθZyW+ cosθZzW, zA = zW. 
なお、上述した各種変換を組み合わせてもよいことは言うまでもない。
このようにして求められた座標ＰA（xA, yA, zA）を修正ワールド座標系における新たな座標ＰWとして、以下に述べる処理が実行される。
【００３７】
2．8．視点座標系への視野変換
修正後の三次元ワールド座標系（OW―XWYWZW）において、図９(a)に示す視点ＰF（xF, yF, zF）を想定する。視点ＰF（xF, yF, zF）を原点Oeとし、視線の向き、すなわち原点Oeと点ＰW（xW, yW, zW）とを結ぶ直線をZe軸とした左手系の座標系を視点座標系（Oe―XeYeZe）という。本実施例においては、Xe軸はXWZW面に平行にとるものとする。
【００３８】
ここで、XW軸とXe軸とがなす角度をαとし、YW軸とYe軸とがなす角度をβとする。このとき、ワールド座標系（OW―XWYWZW）で表されたオブジェクトの座標をＰW（xW, yW, zW）とすると、この座標ＰWを視点座標系（Oe―XeYeZe）に変換した座標Ｐe（xe, ye, ze）は、次式によって表される（なお、下式は、画像処理で常用されている同次座標系によって表現されている） 。
【００３９】
【数２】
2008250513.tif 000004
【００４０】
従って、座標Ｐe（xe, ye, ze）は、下式により求められる。
xe= (xW - xF)cosα+ (zW - zF)sinα , 
ye= (xW - xF)sinαsinβ+ (yW - yF)cosβ- (zW - zF)cosαsinβ, 
ze= (xW - xF)sinαcosβ- (yW - yF)sinβ- (zW - zF)cosαcosβ. 
【００４１】
2．9．スポットライト・焦点処理
本実施例においては、ワールド座標系に配置されるオブジェクト（部品）に対して、シェーディング等の処理を施すことができる。スポットライトで焦点を当てたような表示を行うため、図９(b)に示すように所定の光源を想定し、その光源から放射される光量に応じて各オブジェクトを表示する濃度を割り当てることにより、表示濃度を制御することができる。なお、特にシェーディング効果を施さない場合は、全てのオブジェクトに対して一様の濃度が割り当てられる。
【００４２】
シェーディング処理は、オブジェクトの座標系を視点座標系に変換した後や、その他一般的な処理である隠線処理や隠面処理の後に施してもよいが、本実施例においてはワールド座標系においてシェーディング処理を施すこととする。ワールド座標系において、楽譜等を構成するオブジェクトの座標をＰOとし、光源の座標をＰLとする。光源はスポットライトのような点光源であり、焦点座標ＰB方向に指向性を有する。光源座標ＰLと焦点座標ＰBとを結ぶ直線を「光軸」という。光源座標ＰLと焦点座標ＰBとは、ユーザの操作により適宜設定することができる。ここで、座標ＰOのオブジェクトに対応する表示濃度IOは、下式により求められる。
【００４３】
【数３】
2008250513.tif 000005
【００４４】
但し、上式における各変数の意味は次の通りである。
IL ：光軸方向の光源の強さ（定数でもよいしユーザが指定してもよい） 
θ：光軸と、直線ＰOＰLがなす角
n：指向性の強さを示す係数（定数でもよいしユーザが指定してもよい） 
φ ：各レイヤの法線ｆと直線ＰOＰLがなす角。
ここで、レイヤの法線ｆの向きは、先に説明した「レイヤの向き」によって一意に決定される。図９(b)の例ではH軸の方向がYW軸と同一であるため、法線ｆの向きはZW軸に等しくなる。
ｒ ：座標ＰOと座標ＰLとの間の距離
Kd ：拡散反射係数（定数） 
【００４５】
上式は、Lambert Modelの拡散反射に基づくものである。上式においては鏡面反射や周辺光や大気減衰などは省略しているが、それらも加味してもよい。また、光源は点光源であったが、線光源や面光源であってもよい。
以上のようにして、ワールド座標系内の全てのオブジェクト（部品）のそれぞれの座標ＰOに対して、対応する表示濃度IOが割り当てられる。これにより、各オブジェクトは、割り当てられた表示の表示濃度IOで表示される。ここで、表示濃度IOが大きい場合、そのオブジェクトは濃く不透明に表示される。また、表示濃度IOが小さい場合、そのオブジェクトは薄く、背景色に近い色で表示される。また、視点から見たときに奥にあるオブジェクト（部品）が透けて見えるようになる。光源の座標ＰLを、視点の座標ＰFと一致させるような実装もありうる。
【００４６】
2．10．カレントポジションの更新
本実施例では、楽譜を静的に表示するのみならず、経過時間に応じてダイナミックに楽譜表示が変更される。例えば、演奏情報内のテンポ情報と、経過時間とに基づいて、演奏情報内の現在位置すなわちカレントポジションが更新され、それに伴って、オブジェクト（楽譜を構成する部品）、視点の座標ＰF、光源の座標ＰL等が更新され、結果として、表示される楽譜が更新され、カレントポジションのイベントデータに基づいて、楽音生成や演奏ガイド等も同時に実行される。
【００４７】
2．10．1．オブジェクトの座標の更新
上述したオリジナル座標系の原点Oは、初期状態においては演奏情報の先頭位置であるが、演奏情報の再生が開始されると、カレントポジションとともに移動する。すなわち、その時々のカレントポジションがオリジナル座標系における原点Oになる。換言すれば、上述した説明では、あるレイヤ上のオブジェクトQのオリジナル座標系における位置を(tq, di，hq)としたが、演奏情報の再生開始時点からの経過時間をtとしたとき、当該オブジェクトQの座標は、(tq-t, di，hq)になる。その状態を図１０(a)に示す。
【００４８】
このように、オリジナル座標系におけるオブジェクトQの座標が更新されると、図１０(b)に示すように、ワールド座標系および視点座標系においても、各オブジェクトQの座標は連動して更新される。その際、ワールド座標系内における視点座標ＰFを固定しておく（視点座標ＰFと原点OWとの相対的位置関係を一定にしておく）ことにより、最終的な表示画像においては、常に演奏の現在位置が表示されるようになる。但し、全てのオブジェクトQの座標を、(tq-t, di，hq)に設定するのではなく、音部記号（ト音記号など）、調号（＃など）、拍子記号（4/4など）の座標は(tq, di，hq)に固定しておくことが望ましい。また、原点をカレントポジションより２小節前にするなど、適宜、オフセットを設けてもよい。
【００４９】
2．10．2．視点、光源の位置の更新
上述したように、オブジェクトQの座標を(tq-t, di，hq)に設定するならば、カレントポジションの変更に応じてオブジェクトが移動するが、オブジェクトの位置を固定し、現在の演奏箇所がタッチパネル６上で強調して表示されるように、カレントポジションに応じて、視点座標ＰF、光源座標ＰLまたは焦点座標ＰBなどを変更するようにしてもよい。ここでは、一例として、視点座標ＰFをカレントポジションに沿って移動する例を説明しておく。
【００５０】
まず、オリジナル座標系において、基準となる奥行き値dOを決定する。この奥行き値dOは、例えば特に注視すべきパートに割り当てられた奥行き値dｉである。次に、図１１(a)に示すように、ワールド座標系の曲面Ｓ(t, d)において、該奥行き値dOに対応する曲線をＣ(t) = Ｓ(t, dO)とする。ここで、視点座標ＰFを経過時間すなわちカレントポジションtの関数として、「ＰF(t)」と表すことができる。ここで、視点座標ＰF(t) = ＰF(0) + {Ｃ(t) - Ｃ(0)} とする。但し、ＰF(0) は、「カレントポジションt = 0」のときの視点座標ＰFであり、曲線Ｃ(0)はそのタイミングにおける曲線Ｃ(t)上の点である。
【００５１】
以上により、図１１(b)に示すように、カレントポジションの更新に応じて、ワールド座標系における視点座標ＰFが更新され、その更新内容が最終的な表示内容に反映される。特に、本実施例においては、奥行き値dOに係るレイヤを指定できることにより、注視すべきパートが見やすく表示される点に特徴がある。
【００５２】
この視点座標ＰFの移動方法は一例であり他の方法であってもよい。例えば、曲線Ｃ(t)に代えて、曲線Ｃ(t)をを任意の方向（例えばXWYW平面方向）に射影させて得られた直線L(t)（図１１(a)参照）に沿って視点座標ＰFを移動するようにしてもよい。この場合は、視点座標ＰF(t) = ＰF(0) + { Ｌ(t) - Ｌ(0) } になる。
【００５３】
さらに、カレントポジションtに応じて視点座標ＰFを移動させるのみならず、図１１(b)に示すように光源座標ＰLを移動させてもよく、視点座標ＰFおよび光源座標ＰLの移動を組み合わせでもよい。また、例えば、各レイヤを俯瞰するような位置に視点座標ＰFを固定し、光源座標ＰLのみを移動させて、各オブジェクトを光源の位置によって決まる表示濃度で表示にするようにしてもよい。
【００５４】
2．10．3．視点、光源の向きの更新
また、オブジェクトQの座標、視点座標ＰFおよび光源座標ＰLを固定しながら、カレントポジションtに応じて視点座標系における視線の向きや焦点座標ＰBを変更するようにしてもよい。すなわち、視点座標ＰFと現在時刻における曲線Ｃ(t)上の点とを結ぶ直線を「視線」とし、図１１(c)に示すように角度α，βをカレントポジションtの関数α(t)，β(t)とし、該視線と視点座標系のZe軸とが重なるようにα(t)とβ(t)とを設定するとよい。
【００５５】
また、同時に、座標ＰBにおける焦点も、曲線Ｃ(t)をを追うようにカレントポジションtに応じて変更してもよい。ここで、視点座標ＰFと、光源座標ＰLとを一致させたとする。この場合、図１１(d)に示すように、オブジェクト座標ＰOにおけるレイヤの法線ｆと直線ＰOＰLがなす角φ、光軸と直線ＰOＰLとがなす角θ、およびオブジェクト座標ＰOと光源座標ＰLとの間の距離ｒは、それぞれカレントポジションtの関数であるφ(t)、θ(t)、ｒ(t)になる。そして、これにより、オブジェクトに割り当てられる表示濃度IOは、下式に示すようになる。
【００５６】
【数４】
2008250513.tif 000006
【００５７】
2．11．表示画面の生成
視点座標系における各オブジェクトの座標および表示濃度IOが決定されると、次に、クリッピング、透視変換、ビューポート変換などの処理を経て、生成された画像がタッチパネル６に表示される。なお、これらの処理はコンピュータグラフィックスにおいて周知な処理であり、本実施例においてもこれら周知な処理を適用するとよい。
尚、透視変換は、遠近感のある透視投影だけでなく、並行投影（直交投影、正射影とも呼ばれる）であってもよい。
【００５８】
3．実施例の動作
次に、本実施例の動作を説明する。
携帯型情報端末において所定の操作が行われると、図１２，図１３に示す処理プログラムが起動される。図において処理がステップＳＰ２に進むと、所定の初期化処理が行われる。次に、処理がステップＳＰ４に進むと、操作子部２において演奏状態（停止中または演奏中）の変更操作が行われたか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ６に進み、演奏状態（停止中または演奏中）が変更される。すなわち、「停止中」であれば「演奏中」に変更され、「演奏中」であれば「停止中」に変更される。
【００５９】
次に、処理がステップＳＰ８に進むと、演奏情報は「演奏中」であるか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１６に進み、タイマ２４の計時結果に基づいて演奏位置すなわちカレントポジションtが進められ、該カレントポジションtにおけるイベントデータが読み出される。次に、処理がステップＳＰ１８に進むと、カレントポジションtに応じて、オリジナル座標系におけるレイヤ位置が移動され、これに伴って各オブジェクトの座標も変更される。さらに、必要に応じて、視点座標ＰF、光源座標ＰL等も移動される。次に、処理がステップＳＰ１９に進むと、カレントポジションtにおけるＭＩＤＩイベントに基づいて、発音処理が行われる。発音処理は、ＭＩＤＩイベントに応じた楽音の生成をＣＰＵ２２の別プロセスで行うものである。これは周知な処理であり、本実施例においてもその処理を適用するとよい。また、本実施例では、ＣＰＵ２２によって発音処理を実行したが、周知の音源回路を備えるようにし、その音源回路によって発音処理を行うようにしてもよい。なお、演奏状態が「演奏中」ではなかった場合には、上記ステップＳＰ１６〜ＳＰ１９の処理はスキップされる。
【００６０】
次に、ステップＳＰ１０，ＳＰ１２，ＳＰ１４，ＳＰ２８，ＳＰ３０，ＳＰ３２においては、操作子部２にて各種表示パラメータの変更操作が行われたか否かが検出され、検出された場合には対応する処理が実行される。以下、これらの処理内容を説明する。まず、曲面Ｓ(t, d)を変更する操作、例えば制御点Pijのドラッグ等が検出されると、処理はステップＳＰ１０を介してステップＳＰ２０に進む。ここでは、ワールド座標系において曲面Ｓ(t, d)を特定する曲面情報が更新される。次に、処理がステップＳＰ２２に進むと、更新された曲面情報に従って、曲面Ｓ(t, d)上の各レイヤの位置を表す位置情報が更新される。
【００６１】
また、何れかのレイヤの位置を移動させる移動操作が実行されると、ステップＳＰ１２を介して処理はステップＳＰ２４に進み、オリジナル座標系において当該レイヤの位置が変更される。また、視点座標ＰFまたは視線の向きを変更する操作が検出されると、処理はステップＳＰ１４を介してステップＳＰ２６に進み、視点座標系における視点座標ＰFおよび視線の向きを特定する視点情報が更新される。
【００６２】
また、焦点座標ＰBを変更する操作が検出されると、ステップＳＰ２８を介して処理はステップＳＰ３４に進み、視点座標系における焦点座標ＰBを特定する焦点情報が更新される。また、表示倍率の変更（あるいは広角表示の設定としてもよい）操作が検出されると、ステップＳＰ３０を介して処理はステップＳＰ３６に進み、広角表示の設定または表示倍率の変更が行われる。また、その他の変更操作が検出されると、ステップＳＰ３２を介して処理はステップＳＰ３８に進み、検出された操作に応じて、表示を変更するために必要なパラメータの変更処理が行われる。
【００６３】
以上のように、必要に応じて表示パラメータが更新されると、次に処理はステップＳＰ４０に進み、表示処理が行われる。すなわち、必要に応じて変更された表示パラメータに基づいて、オリジナル座標系において各オブジェクトが配置され、そのワールド座標系修正ワールド座標系、および視点座標系における写像が順次求められる。次に、必要に応じてスポットライト・焦点処理が行われた後、クリッピング、透視変換、ビューポート変換などの処理を経て、生成された画像がタッチパネル６に表示される。そして、処理はステップＳＰ４に戻り、同ステップＳＰ４以降の処理が繰り返される。
【００６４】
次に、図１４，図１５を参照し、表示パラメータに応じた各種表示例を説明する。まず、図１４(a)は、「３」パートのレイヤを等間隔に配列した表示例である。この図１４(a)に対して、視点座標ＰFおよび視線を変更した表示例を図１４(b)に示す。また、図１４(c)は、図１４(a)に対してレイヤの奥行き方向の位置を変更してレイヤの間隔を変えた表示例であり、図１４(d)は図１４(a)の一部を拡大した表示例である。また、図１５(a)は、図１４(a)に対して曲面Ｓ(t, d)を歪ませた場合の表示例である。また、図１５(b)は、図１４(a)に対して時間軸を一部短縮した（図６の制御点Pijの一部の間隔を狭くした）場合の表示例である。図示の例では、最も奥に位置するレイヤの右側部分の小節間隔が狭く表示されている。
【００６５】
また、図１５(c)は、特定部分に焦点を合わせ、スポットライト・焦点処理を行った表示例である。図示の例にあっては、手前から２番目のレイヤに焦点座標ＰBがあることを想定しており、最も手前にあるレイヤの表示濃度が薄くなっている。また、同図(d)は、レイヤを大譜表によって構成した場合の表示例である。
【００６６】
4．変形例
本発明は上述した実施例に限定されるものではなく、例えば以下のように種々の変形が可能である。
(1)上記実施例においては、携帯型情報端末上で動作するアプリケーションプログラムによって楽譜等の表示を行ったが、このアプリケーションプログラムのみをＣＤ−ＲＯＭ、メモリカード等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布してもよい。また、該アプリケーションプログラムは、携帯型情報端末において実行されるものに限られるものではなく、同様のプログラムを通常のパーソナルコンピュータや電子楽器等において実行できることは言うまでも無い。
【００６７】
(2)また、上記実施例においては、楽譜を特定するための論理楽譜情報は、システム・エクスクルーシブ・メッセージまたはメタイベントによって記述したが、ＭＩＤＩイベントに基づいて論理楽譜情報を自動的に生成してもよい。
【００６８】
(3)また、上記実施例においては、演奏情報の各トラックに各パートのＭＩＤＩイベント等を記録するとともに、これらトラックをを各レイヤに対応付けたが、トラックとパートとレイヤとの関係は一対一である必要はない。例えば、複数のパートの論理楽譜情報を一のトラックに含めるようにしてもよい。これにより、一のレイヤに複数パートの楽譜を表示させることができる。
【００６９】
また、必ずしも一のトラックを一のレイヤに対応させる必要はない。複数トラックの楽譜を一のレイヤに表示させてもよい。また、逆に、一のトラックの楽譜を複数のレイヤに分割表示させてもよい。要するに、各論理楽譜情報に対して、該論理楽譜情報を含むべきレイヤを特定できればよいため、上記実施例に例示した以外にも、様々な方法でレイヤの特定を行うことが可能である。
【００７０】
(4)また、上記実施例においては、オブジェクトは論理楽譜情報に基づいて生成されたが、ワールド座標系のXW軸，YW軸，ZW軸や曲面Ｓ(t, d)も、ワールド座標系内のオブジェクトとして、ユーザに見えるようにタッチパネル６上に表示してもよい。例えば、XW軸，YW軸，ZW軸は矢印などの図形で表示し、曲面Ｓ(t, d)は、不透明または半透明な曲面として表示するとよい。また、これらのこれらのオブジェクトを表示するか否かをユーザが指定できるようにすると好適である。
【００７１】
また、状況に応じて、XW軸，YW軸，ZW軸や曲面Ｓ(t, d)等のオブジェクトを表示するか否かを自動的に決定してもよい。例えば、音符等のオブジェクトをドラッグする操作を行うときに、XW軸，YW軸，ZW軸や曲面Ｓ(t, d)等のオブジェクトを自動的に表示し、それ以外のときには表示しないようにしてもよい。このように、ユーザによる操作が行われた際、その方向や量がワールド座標系に反映される様子が表示されることにより、ユーザはワールド座標系上のオブジェクトや曲面Ｓ(t, d)の状態を直感的に把握することができるため、操作性を向上させることができる。
【図面の簡単な説明】
【００７２】
【図１】本発明の一実施例の携帯型情報端末のブロック図である。
【図２】一実施例の演奏情報のデータ構造を示す図である。
【図３】レイヤの構成を示す図である。
【図４】一実施例の動作説明図である。
【図５】一実施例の他の動作説明図である。
【図６】一実施例の他の動作説明図である。
【図７】一実施例の他の動作説明図である。
【図８】一実施例の他の動作説明図である。
【図９】一実施例の他の動作説明図である。
【図１０】一実施例の他の動作説明図である。
【図１１】一実施例の他の動作説明図である。
【図１２】一実施例の処理プログラムのフローチャート（１／２）である。
【図１３】一実施例の処理プログラムのフローチャート（２／２）である。
【図１４】タッチパネル６における表示例を示す図である。
【図１５】タッチパネル６における他の表示例を示す図である。
【符号の説明】
【００７３】
２：操作子部（曲面指定手段，視点指定手段）、４：検出回路、６：タッチパネル、８：表示回路（表示手段）、１０：検出回路（曲面指定手段，視点指定手段）、１２：オーディオインタフェース部、１４：通信インタフェース部、１６：バス、１８：ＲＡＭ、２０：フラッシュメモリ（記憶手段）、２２：ＣＰＵ、２４：タイマ、２６：記録メディアスロット、３０：ヘッダチャンク、３２，…，３２：トラックチャンク、３４，…，３４：タイミングデータ、３６，…，３６：イベントデータ。
【図１】
2008250513.tif 000007
【図２】
2008250513.tif 000008
【図１２】
2008250513.tif 000009
【図１３】
2008250513.tif 000010
【図３】
2008250513.tif 000011
【図４】
2008250513.tif 000012
【図５】
2008250513.tif 000013
【図６】
2008250513.tif 000014
【図７】
2008250513.tif 000015
【図８】
2008250513.tif 000016
【図９】
2008250513.tif 000017
【図１０】
2008250513.tif 000018
【図１１】
2008250513.tif 000019
【図１４】
2008250513.tif 000020
【図１５】
2008250513.tif 000021