(57)【特許請求の範囲】
【請求項１】
シミュレーションの結果を表示する表示プログラムにおいて、
コンピュータに、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出させ、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出させ、
前記シミュレーションモデルに含まれ、前記第１の時刻以降の第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第１の線分の始端となる前記第１の時刻での始端要素および前記第１の線分の終端となる前記第１の時刻での終端要素と同一要素である前記第２の時刻での始端要素および前記第２の時刻での終端要素を特定させ、前記第２の時刻での始端要素と前記第２の時刻での終端要素とを結び、前記第２の時刻におけるシミュレーションモデルを通過する第２の線分を設定させ、
前記第２の要素群から、設定された前記第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出させ、
検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出させ、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示させることを特徴とする表示プログラム。
【請求項２】
シミュレーションの結果を表示する表示プログラムにおいて、
コンピュータに、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出させ、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出させ、
前記第１の時刻以降の第２の時刻におけるシミュレーションモデルを通過する、前記第１の線分と同一位置となる第２の線分を設定させ、
前記シミュレーションモデルに含まれ、前記第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、設定された前記第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出させ、
検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出させ、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示させることを特徴とする表示プログラム。
【請求項３】
前記第１の要素列の検出では、前記コンピュータに、
前記第１の時刻での始端要素と前記第１の時刻での終端要素と前記第１の線分を等分に分割した場合の分割位置に対応する各要素列を含む前記第１の要素列を、前記第１の要素群から検出させ、
前記第２の要素列の検出では、前記コンピュータに、
前記第２の時刻での始端要素と前記第２の時刻での終端要素と前記第２の線分を等分に分割した場合の分割位置に対応する各要素列を含む前記第２の要素列を、前記第２の要素群から検出させることを特徴とする請求項１に記載の表示プログラム。
【請求項４】
前記コンピュータに、
前記第１の線分の指定を入力装置から受け付けさせ、
前記第１の要素列の検出では、前記コンピュータに、
指定された前記第１の線分を含む第１の要素列を前記第１の要素群から検出させることを特徴とする請求項１〜３のいずれか一つに記載の表示プログラム。
【請求項５】
シミュレーションの結果を表示する表示プログラムにおいて、
コンピュータに、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出させ、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出させ、
前記第１の時刻以降の第２の時刻におけるシミュレーションモデルを通過する、前記第１の線分と同一位置となる第２の線分を設定させ、
前記シミュレーションモデルに含まれ、前記第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第１の要素列と同一である前記第２の線分上に沿った第２の要素列を検出させ、
検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出させ、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示させることを特徴とする表示プログラム。
【請求項６】
前記コンピュータに、
前記第１の線分の指定を入力装置から受け付けさせ、
前記第１の要素列の検出では、前記コンピュータに、
前記第１の線分を含む第１の要素列を前記第１の要素群から検出させることを特徴とする請求項５に記載の表示プログラム。
【請求項７】
前記コンピュータに、
前記第１の要素列の各要素の要素間距離を算出させ、
前記第２の要素列の各要素の要素間距離を算出させ、
前記表示では、前記コンピュータに、
前記複数の第１の物理値が算出された第１の要素間距離に基づいて表示させるとともに、前記複数の第２の物理値が算出された第２の要素間距離に基づいて表示させることを特徴とする請求項１〜６のいずれか一つに記載の表示プログラム。
【請求項８】
シミュレーションの結果を表示する表示方法において、
コンピュータが、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出し、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出し、
前記シミュレーションモデルに含まれ、前記第１の時刻以降の第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第１の線分の始端となる前記第１の時刻での始端要素および前記第１の線分の終端となる前記第１の時刻での終端要素と同一要素である前記第２の時刻での始端要素および前記第２の時刻での終端要素を特定させ、前記第２の時刻での始端要素と前記第２の時刻での終端要素とを結び、前記第２の時刻におけるシミュレーションモデルを通過する第２の線分を設定し、
前記第２の要素群から、設定された前記第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出し、
検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出し、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示することを特徴とする表示方法。
【請求項９】
シミュレーションの結果を表示する表示方法において、
コンピュータが、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出し、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出し、
前記第１の時刻以降の第２の時刻におけるシミュレーションモデルを通過する、前記第１の線分と同一位置となる第２の線分を設定し、
前記シミュレーションモデルに含まれ、前記第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、設定された前記第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出し、
検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出し、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示することを特徴とする表示方法。
【請求項１０】
シミュレーションの結果を表示する表示方法において、
コンピュータが、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出し、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出し、
前記第１の時刻以降の第２の時刻におけるシミュレーションモデルを通過する、前記第１の線分と同一位置となる第２の線分を設定し、
前記シミュレーションモデルに含まれ、前記第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第１の要素列と同一である前記第２の線分上に沿った第２の要素列を検出し、
検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出し、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示することを特徴とする表示方法。
【請求項１１】
シミュレーションの結果を表示する表示装置において、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出するとともに、
前記シミュレーションモデルに含まれ、前記第１の時刻以降の第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第２の要素群から特定された前記第１の線分の始端となる前記第１の時刻での始端要素および前記第１の線分の終端となる前記第１の時刻での終端要素と同一要素である前記第２の時刻での始端要素および前記第２の時刻での終端要素とを結び、前記第２の時刻におけるシミュレーションモデルを通過するように設定された第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出する検出部と、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出するとともに、検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出する抽出部と、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示する表示部と、
を有することを特徴とする表示装置。
【請求項１２】
シミュレーションの結果を表示する表示装置において、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出するとともに、前記シミュレーションモデルに含まれ、前記第１の時刻以降の第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第２の時刻におけるシミュレーションモデルを通過するように設定された、前記第１の線分と同一位置となる第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出する検出部と、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出するとともに、検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出する抽出部と、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示する表示部と、
を有することを特徴とする表示装置。
【請求項１３】
シミュレーションの結果を表示する表示装置において、
シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出するとともに、前記シミュレーションモデルに含まれ、前記第１の時刻以降の第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、前記第１の要素列と同一である、前記第１の線分と同一位置となる第２の線分上に沿った第２の要素列を検出する検出部と、
検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出するとともに、検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出する抽出部と、
抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示する表示部と、
を有することを特徴とする表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示プログラム、表示方法、および表示装置に関する。
【背景技術】
【０００２】
従来、電気的な信号により収縮する心臓の心筋により全身に向けて血液が拍出される人間や動物の心臓の現象等、生体の現象を再現する数値解析が行われている。数値解析の結果を一般的には３次元のコンピュータグラフィックス技術を用いてカラーで分布を表示している。一方、心筋上の一部分の値を抽出し観察するため、物理値が配置されている計算要素や計算節点の値を確認することが求められる。部分的な値を表示するための可視化技術は、たとえば、下記非特許文献１に開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｋｉｔｗａｒｅ，Ｉｎｃ．著  ＰａｒａＶｉｅｗ＿Ｕｓｅｒｓ  Ｇｕｉｄｅ＿Ｐｌｏｔｔｉｎｇ  ａｎｄ  Ｐｒｏｂｉｎｇ  Ｄａｔａ、［ｏｎｌｉｎｅ］、２０１１年６月１４日  ［２０１２年３月１２日検索］、インターネット＜ＵＲＬ：ｉｔｋ．ｏｒｇ／Ｗｉｋｉ／ＰａｒａＶｉｅｗ／Ｕｓｅｒｓ＿Ｇｕｉｄｅ／Ｐｌｏｔｔｉｎｇ＿ａｎｄ＿Ｐｒｏｂｉｎｇ＿Ｄａｔａ＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、心臓は収縮と拡大を繰り返す臓器である。また、心室の先端部である心尖部は収縮と共に大動脈弁、僧帽弁の方向に移動する。また、心室心筋全体は捻じれるように収縮する。従来技術では、心臓の動きに特化していないため、心筋の特徴的な動きを追跡することが困難であるという問題がある。また、肺、肝臓、腎臓など心臓以外の他の臓器についても同様である。
【０００５】
本発明は、臓器内部の挙動の追跡を容易にすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一側面によれば、シミュレーションモデルに含まれ、第１の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、前記シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出し、検出された第１の要素列の各要素が有する複数の第１の物理値を前記第１の要素列から抽出し、前記第１の時刻以降の第２の時刻におけるシミュレーションモデルを通過する第２の線分を設定し、前記シミュレーションモデルに含まれ、前記第２の時刻の前記シミュレーションモデルにおける位置に応じた物理値を有する第２の要素群から、設定された前記第２の線分上に沿うとともに、前記第１の要素列に対応する第２の要素列を検出し、検出された第２の要素列の各要素が有する複数の第２の物理値を前記第２の要素列から抽出し、抽出された前記複数の第１の物理値と前記複数の第２の物理値を表示する表示プログラム、表示方法、および表示装置が提案される。
【発明の効果】
【０００７】
本発明の一側面によれば、臓器内部の挙動の追跡を容易にすることができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施の形態１にかかる心臓モデルの挙動追跡例を示す説明図である。
【図２】図２は、実施の形態にかかる表示装置のハードウェア構成例を示すブロック図である。
【図３】図３は、データベースの記憶内容例を示す説明図である。
【図４】図４は、データ構造Ｄｉにおけるテトラ要素Ｅｊ（ｔｉ）を示す説明図である。
【図５】図５は、表示装置の機能的構成例を示すブロック図である。
【図６】図６は、時刻ごとのテトラ要素列のデータ構造例を示す説明図である。
【図７】図７は、時刻ごとの要素間距離のデータ構造例を示す説明図である。
【図８】図８は、実施の形態１にかかる表示装置５００による表示処理手順例を示すフローチャートである。
【図９】図９は、実施の形態２にかかる心臓モデルの挙動追跡例を示す説明図である。
【図１０】図１０は、時刻ごとのテトラ要素列のデータ構造例を示す説明図である。
【図１１】図１１は、時刻ごとの要素間距離のデータ構造例を示す説明図である。
【図１２】図１２は、実施の形態２にかかる表示装置５００による表示処理手順例を示すフローチャートである。
【図１３】図１３は、実施の形態３にかかる心臓モデルの挙動追跡例を示す説明図である。
【図１４】図１４は、時刻ごとのテトラ要素列のデータ構造例を示す説明図である。
【図１５】図１５は、時刻ごとの要素間距離のデータ構造例を示す説明図である。
【図１６】図１６は、実施の形態３にかかる表示装置５００による表示処理手順例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、この発明にかかる表示プログラム、表示方法、および表示装置の実施の形態を詳細に説明する。人間や動物の心臓などの臓器は、時刻ごとに物理値が変動する。このような臓器を表現するため、本実施の形態では、シミュレーションモデルとして臓器の３次元モデルが採用される。臓器の３次元モデルは、テトラ要素と呼ばれる四面体の非構造格子データの集合である。各テトラ要素は、当該テトラ要素の配置位置に応じた物理値を持つ。物理値は、テトラ要素に対応する心筋の挙動を示す値であり、たとえば、仕事力［ＫＰａ］や、仕事［Ｊ／ｍｌ］、仕事率［Ｊ／ｓ・ｍｌ］が物理値として採用される。
【００１０】
本実施の形態では、心臓などの臓器の挙動を時系列で追跡するため、表示装置は、臓器の３次元モデルにおいて追跡対象となる線分を指定し、指定した線分に対応するテトラ要素列から物理値列を抽出して、時刻ごとの物理値列を表示する。これにより、表示装置は、追跡対象となる線分での挙動を追跡することができる。
【００１１】
なお、本実施の形態では、臓器の一例として心臓の３次元モデルを用いて説明するが、心臓以外の他の臓器の３次元モデルでも実現可能である。以下、心臓の３次元モデルを「心臓モデル」と称す。心臓モデルは、時刻ごとに存在するが、モデル元の心臓は同一人物又は同一個体の心臓である。
【００１２】
（実施の形態１）
＜心臓モデルの挙動追跡例＞
図１は、実施の形態１にかかる心臓モデルの挙動追跡例を示す説明図である。図１では、心臓の挙動を時系列で示すため、ある時刻ｔ１での心臓モデルと時刻ｔ１以降の時刻ｔ２での心臓モデルとを用いて、心臓モデルの挙動追跡例を説明する。
【００１３】
図１において、（Ａ）は、時刻ｔ１の心臓モデルＭ（ｔ１）と時刻ｔ２の心臓モデルＭ（ｔ２）を示す。なお、時刻ｔｉ（１≦ｉ≦ｎ）での心臓モデルをＭ（ｔｉ）と表記する。表示装置は、マウスなどの入力装置の操作入力により、時刻ｔ１の心臓モデルＭ（ｔ１）において、追跡対象となる心筋を線分として指定する。線分は、直線の一部に限らず曲線の一部でもよい。
【００１４】
なお、図１において心臓モデルＭ（ｔｉ）は、部分的に切断された状態で表示されているが、このような描画処理については既知であるため説明は省略する。また、表示装置は、心臓モデルＭ（ｔｉ）の切断面１００上に線分を指定することにより、心臓内部や内周面の心筋を指定することが可能である。また、心臓モデルが切断されていない場合は、表示装置は、心臓の表面の心筋を指定することが可能である。
【００１５】
線分を指定した場合、線分の始端となる点（始点Ｐｓ）を含むテトラ要素が特定される。同様に、線分の終端となる点（終点Ｐｅ）を含むテトラ要素が特定される。始点Ｐｓを含むテトラ要素をＥｓ、終点Ｐｅを含むテトラ要素をＥｅとする。
【００１６】
なお、時刻ｔｉ（１≦ｉ≦ｎ）での心臓モデルで指定された線分を線分Ｌｉ、線分Ｌｉの始点を始点Ｐｓ（ｔｉ）、始点Ｐｓ（ｔｉ）を含むテトラ要素をＥｓ（ｔｉ）、線分Ｌｉの終点を終点Ｐｅ（ｔｉ）、終点Ｐｅ（ｔｉ）を含むテトラ要素をＥｅ（ｔｉ）とする。したがって、時刻ｔ１の場合、線分Ｌ１，始点Ｐｓ（ｔ１），テトラ要素Ｅｓ（ｔ１），終点Ｐｅ（ｔ１），テトラ要素Ｅｅ（ｔ１）となる。
【００１７】
また、線分Ｌ１を指定することにより、始点Ｐｓ（ｔ１）および終点Ｐｅ（ｔ１）を含む、線分Ｌ１が通過するテトラ要素列ＬＥ１が検出される。実施の形態１では、線分Ｌ１を等間隔で分割した点を分割点とする。図１の（Ａ）において、線分Ｌｉ上の黒丸は、始点、分割点、終点を示す。黒丸を囲む三角形はテトラ要素を示す。始点、１以上の分割点、および終点の各点を含むテトラ要素の列をテトラ要素列ＬＥｉと称す。テトラ要素列ＬＥｉを構成する各テトラ要素は固有の物理値を有するため、テトラ要素列ＬＥｉから物理値列Ｌｐｉが抽出される。時刻ｔ１の場合、テトラ要素列ＬＥ１から物理値列Ｌｐ１が抽出される。これにより、心筋に相当する時刻ｔ１の線分について物理値列Ｌｐ１が得られることになる。
【００１８】
時刻が時刻ｔ１から時刻ｔ２になると、心臓の動きによりテトラ要素群の位置に変動が生じる。このため、時刻ｔ１での始点Ｐｓ（ｔ１）のテトラ要素Ｅｓ（ｔ１）と終点Ｐｅ（ｔ１）のテトラ要素Ｅｅ（ｔ１）は、時刻ｔ２での心臓モデルでは、テトラ要素Ｅｓ（ｔ２），Ｅｅ（ｔ２）となる。テトラ要素Ｅｓ（ｔ２）に含まれる始点Ｐｓ（ｔ２）はテトラ要素Ｅｓ（ｔ２）の重心とする。テトラ要素Ｅｅ（ｔ２）に含まれる終点Ｐｅ（ｔ２）はテトラ要素Ｅｅ（ｔ２）の重心とする。そして、始点Ｐｓ（ｔ２）と終点Ｐｅ（ｔ２）とを結ぶ線分Ｌ２が形成される。
【００１９】
時刻ｔ１の場合と同様、線分Ｌ２を等間隔で分割した点を分割点とし、線分Ｌ２での始点Ｐｓ（ｔ２）、終点Ｐｅ（ｔ２）および始点Ｐｓ（ｔ２）と終点Ｐｅ（ｔ２）との間の１以上の分割点を含むテトラ要素列ＬＥ２が得られる。このテトラ要素列ＬＥ２を構成する各テトラ要素も固有の物理値を有するため、テトラ要素列ＬＥ２から物理値列Ｌｐ２が抽出される。これにより、心筋に相当する時刻ｔ２の線分Ｌ２について、物理値列Ｌｐ２が得られることになる。このあと、時刻ｔ１の線分Ｌ１から得られた物理値列Ｌｐ１と時刻ｔ２の線分Ｌ２から得られた物理値列Ｌｐ２がグラフ表示される。
【００２０】
（Ｂ）は、時刻ｔ１の線分Ｌ１から得られた物理値列Ｌｐ１と時刻ｔ２の線分Ｌ２から得られた物理値列Ｌｐ２とのグラフ表示例を示す。横軸は、検出されたテトラ要素列の相対的な距離を示す。縦軸は、物理値の大きさを示す。横軸の距離では、各時刻ｔ１，ｔ２の始点のテトラ要素Ｅｓ（ｔ１），Ｅｓ（ｔ２）が、基準位置、すなわち、０の位置にプロットされる。
【００２１】
このように、両端が同一テトラ要素である時系列で表した物理値列Ｌｐ１，Ｌｐ２をグラフ表示することにより、心臓の動きにより、線分として指定した心筋の物理値がどのように変動するかを把握することができる。なお、図１では、時刻ｔ１の物理値列Ｌｐ１と時刻ｔ２の物理値列Ｌｐ２を同一のグラフ上に表示したが、異なるグラフに表示することとしてもよい。また、図１では、時刻ｔ１と時刻ｔ２について説明したが、時刻ｔ２以降の時刻ｔ３，ｔ４，…，ｔｎの物理値列Ｌｐ３，Ｌｐ４，…，Ｌｐｎについても同様に表示してもよい。
【００２２】
（表示装置のハードウェア構成例）
図２は、実施の形態にかかる表示装置のハードウェア構成例を示すブロック図である。図２において、表示装置は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３と、磁気ディスクドライブ２０４と、磁気ディスク２０５と、光ディスクドライブ２０６と、光ディスク２０７と、ディスプレイ２０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２０９と、キーボード２１０と、マウス２１１と、スキャナ２１２と、プリンタ２１３と、を備えている。また、各構成部はバス２００によってそれぞれ接続されている。
【００２３】
ここで、ＣＰＵ２０１は、表示装置の全体の制御を司る。ＲＯＭ２０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。磁気ディスクドライブ２０４は、ＣＰＵ２０１の制御にしたがって磁気ディスク２０５に対するデータのリード／ライトを制御する。磁気ディスク２０５は、磁気ディスクドライブ２０４の制御で書き込まれたデータを記憶する。
【００２４】
光ディスクドライブ２０６は、ＣＰＵ２０１の制御にしたがって光ディスク２０７に対するデータのリード／ライトを制御する。光ディスク２０７は、光ディスクドライブ２０６の制御で書き込まれたデータを記憶したり、光ディスク２０７に記憶されたデータをコンピュータに読み取らせたりする。
【００２５】
ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２０８は、たとえば、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００２６】
インターフェース（以下、「Ｉ／Ｆ」と略する。）２０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク２１４に接続され、このネットワーク２１４を介して他の装置に接続される。そして、Ｉ／Ｆ２０９は、ネットワーク２１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ２０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２７】
キーボード２１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００２８】
スキャナ２１２は、画像を光学的に読み取り、表示装置内に画像データを取り込む。なお、スキャナ２１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ２１３は、画像データや文書データを印刷する。プリンタ２１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。なお、光ディスクドライブ２０６、光ディスク２０７、ディスプレイ２０８、キーボード２１０、マウス２１１、スキャナ２１２、およびプリンタ２１３の少なくともいずれか１つは、なくてもよい。
【００２９】
＜データベースの記憶内容例＞
図３は、データベースの記憶内容例を示す説明図である。図３において、データベース（Ｄａｔａ  Ｂａｓｅ。以下、「ＤＢ」）には、時刻ｔ１〜ｔｎごとのテトラ要素群のデータ構造Ｄ１〜Ｄｎが格納されている。すなわち、時刻ｔｉのテトラ要素群のデータ構造から時刻ｔｉでの心臓モデルが生成される。ここで、時刻ｔｉのテトラ要素群のデータ構造Ｄｉは、ＩＤ項目と、第１頂点項目〜第４頂点項目と、重心項目と、物理値項目と、を有し、テトラ要素ごとに、各項目の値を有するデータ構造である。
【００３０】
ＩＤ項目には、テトラ要素のＩＤ：ｉ（１≦ｊ≦ｍ）が格納される。ＩＤとは、テトラ要素を一意に識別する識別情報である。ＩＤ：ｊのテトラ要素を、テトラ要素Ｅｊ（ｔｉ）とする。第１頂点項目〜第４頂点項目には、テトラ要素Ｅｊ（ｔｉ）の第１頂点ｖ１（Ｅｊ（ｔｉ））〜第４頂点ｖ４（Ｅｊ（ｔｉ））の頂点座標値が格納される。便宜上、座標値についても、ｖ１（Ｅｊ（ｔｉ））〜ｖ４（Ｅｊ（ｔｉ））と表記する。第１頂点ｖ１（Ｅｊ（ｔｉ））〜第４頂点ｖ４（Ｅｊ（ｔｉ））とは、四面体であるテトラ要素の各頂点である。
【００３１】
重心項目には、テトラ要素Ｅｊ（ｔｉ）の重心ｇ（Ｅｊ（ｔｉ））となる重心座標値が格納される。便宜上、座標値についても、ｇ（Ｅｊ（ｔｉ））と表記する。物理値項目には、テトラ要素Ｅｊ（ｔｉ）の重心ｇ（Ｅｊ（ｔｉ））に割り当てられた物理値ｐ（Ｅｊ（ｔｉ））が格納される。上述したように、物理値ｐ（（Ｅｊ（ｔｉ））は、テトラ要素に対応する心筋の挙動を示す値であり、たとえば、仕事力［ＫＰａ］や、仕事［Ｊ／ｍｌ］、仕事率［Ｊ／ｓ・ｍｌ］が採用される。
【００３２】
図４は、データ構造Ｄｉにおけるテトラ要素Ｅｊ（ｔｉ）を示す説明図である。テトラ要素Ｅｊ（ｔｉ）の形状は第１頂点ｖ１（Ｅｊ（ｔｉ））〜第４頂点ｖ４（Ｅｊ（ｔｉ））を有する四面体である。また、重心ｇ（Ｅｊ（ｔｉ））には、物理値ｐ（Ｅｊ（ｔｉ））が割り当てられる。
【００３３】
＜表示装置の機能的構成例＞
図５は、表示装置の機能的構成例を示すブロック図である。表示装置５００は、ＤＢ５０１と格納先５１０とを有する。ＤＢ５０１には、図３に示したデータ構造Ｄ１〜Ｄｎが格納される。格納先５１０には、格納部５０６からのデータが格納される。ＤＢ５０１および格納先５１０は、図２に示したＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置によりその機能を実現する。
【００３４】
また、表示装置５００は、指定部５０２と、検出部５０３と、算出部５０４と、抽出部５０５と、格納部５０６と、設定部５０７と、表示部５０８と、を有する。指定部５０２、検出部５０３、算出部５０４、抽出部５０５、格納部５０６、設定部５０７、および、表示部５０８は、具体的には、たとえば、図２に示したＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、または、Ｉ／Ｆ２０９により、その機能を実現する。
【００３５】
指定部５０２は、各種情報の指定をキーボード２１０やマウス２１１などの入力装置から受け付ける。具体的には、たとえば、指定部５０２は、タイムステップ数ｉを受け付ける。たとえば、ｉ＝ｎのタイムステップ数が指定された場合、表示装置５００は、時刻ｔ１のデータ構造Ｄ１〜時刻ｔｎのデータ構造ＤｎをＤＢ５０１から読み込むことになる。また、指定部５０２は、線分の指定を受け付ける。具体的には、たとえば、図１の（Ａ）に示したように、指定部５０２は、心臓モデルＭ（ｔ１）の断面や表面上において線分の指定を受け付ける。指定された線分が、追跡対象となる心筋に対応する。このように、線分をユーザ操作により指定することにより、ユーザが確認したい箇所の心臓の動きを局所的に追跡することができる。
【００３６】
検出部５０３は、シミュレーションモデルに含まれ、第１の時刻のシミュレーションモデルにおける位置に応じた物理値を有する第１の要素群から、シミュレーションモデルを通過する第１の線分上に沿った複数の要素である第１の要素列を検出する。具体的には、検出部５０３は、各々第１の時刻における臓器モデルでの位置に応じた物理値を有する第１の時刻での第１の要素群から、第１の時刻における臓器モデルを通過する第１の線分を含む第１の要素列を検出する。第１の要素群とは、第１の時刻における臓器モデルでの位置に応じた物理値を有するデータ構造である。たとえば、第１の時刻が時刻ｔ１の場合、第１の時刻における臓器モデルは、時刻ｔ１の心臓モデルであり、第１の要素群とは、時刻ｔｉのテトラ要素群のデータ構造Ｄ１である。また、第１の時刻が時刻ｔ１の場合、第１の線分とは、図１の（Ａ）に示したように、線分Ｌ１であり、第１の要素列とは、線分Ｌ１を含むテトラ要素列ＬＥ１である。
【００３７】
また、検出部５０３は、線分を所定数により等分に分割する。分割した線分上の点を分割点と称す。そして、検出部５０３は、分割点を含むテトラ要素を検出する。この場合、線分の両端の点である始点と終点、そして、１以上の分割点の各々を含むテトラ要素がテトラ要素列となる。このように、線分を所定数により等分に分割することにより、テトラ要素列の要素数を所定数に抑制することができ、後述の抽出部５０５での物理値の抽出個数も所定数に抑制することができる。したがって、演算速度の高速化を図ることができる。
【００３８】
算出部５０４は、第１の要素列の各要素の要素間距離を算出する。具体的には、たとえば、算出部５０４は、第１の要素列の隣接しあう要素の重心間距離を算出する。算出部５０４の算出機能は選択的に実行される。たとえば、グラフ表示において、隣接するテトラ要素の要素間距離を表現したい場合は、算出部５０４は要素間距離を算出する。これにより、表示部５０８では、要素間距離にしたがってグラフに表示することになる。一方、簡素化する場合は、算出部５０４を実行しない。この場合、表示部５０８は、単に、距離軸方向に等間隔で物理値をプロットすることになる。
【００３９】
抽出部５０５は、検出された第１の要素列の各要素が有する複数の第１の物理値を第１の要素列から抽出する。具体的には、抽出部５０５は、検出部５０３によって検出された第１の要素列の各要素が有する第１の物理値列を第１の要素列から抽出する。たとえば、第１の時刻が時刻ｔ１の場合、第１の要素列の各要素が有する第１の物理値列とは、テトラ要素列の各テトラ要素に割当てられている物理値の集合である。第１のテトラ要素列内のあるテトラ要素がＥｊ（ｔ１）の場合の物理値は、図３に示したようにｐ（Ｅｊ（ｔ１））である。
【００４０】
格納部５０６は、第１の要素列と抽出部５０５によって抽出された第１の物理値列とを関連付けて記憶装置に格納する。具体的には、たとえば、格納部５０６は、第１の要素列と第１の物理値列とを関連付けて格納先５１０に格納する。第１の時刻が時刻ｔ１の場合、格納部５０６は、テトラ要素列ＬＥ１とその物理値列Ｌｐ１とを関連付けて格納先５１０に格納する。
【００４１】
設定部５０７は、第１の時刻以降の第２の時刻におけるシミュレーションモデルを通過する第２の線分を設定する。具体的には、設定部５０７は、第１の線分に関連し、かつ、各々第１の時刻以降の第２の時刻における臓器モデルを通過する第２の線分を、第２の時刻における臓器モデルに設定する。第１の時刻を時刻ｔ１、第２の時刻を時刻ｔ２とした場合、図１の（Ａ）に示したように、設定部５０７は、臓器モデルＭ（ｔ２）に線分Ｌ２を設定する。
【００４２】
具体的には、設定部５０７は、第２の時刻での第２の要素群から、第１の線分の始端となる第１の時刻での始端要素および第１の線分の終端となる第１の時刻での終端要素と同一要素である第２の時刻での始端要素および第２の時刻での終端要素を特定する。たとえば、第２の時刻が時刻ｔ２の場合、第２の時刻での第２の要素群とは、心臓モデルＭ（ｔ２）のデータ構造Ｄ２である。
【００４３】
また、たとえば、第１の時刻が時刻ｔ１の場合、第１の線分の始端となる第１の時刻での始端要素とは、線分Ｌ１の始点Ｐｓ（ｔ１）となるテトラ要素Ｅｓ（ｔ１）である。また、たとえば、第１の時刻が時刻ｔ１の場合、第１の線分の終端となる第１の時刻での終端要素とは、線分Ｌ１の終点Ｐｅ（ｔ１）となるテトラ要素Ｅｅ（ｔ１）である。
【００４４】
また、たとえば、第２の時刻が時刻ｔ２の場合、第１の時刻での始端要素と同一要素である第２の時刻での始端要素とは、始点Ｐｓ（ｔ２）となるテトラ要素Ｅｓ（ｔ２）である。また、たとえば、第２の時刻が時刻ｔ２の場合、第１の時刻での終端要素と同一要素である第２の時刻での終端要素とは、終点Ｐｅ（ｔ２）となるテトラ要素Ｅｅ（ｔ２）である。
【００４５】
また、設定部５０７は、特定した第２の時刻での始端要素と第２の時刻での終端要素とを結ぶ第２の線分を設定する。具体的には、たとえば、設定部５０７は、テトラ要素Ｅｓ（ｔ２）とテトラ要素Ｅｅ（ｔ２）とを結ぶ線分Ｌ２を設定する。具体的には、たとえば、設定部５０７は、テトラ要素Ｅｓ（ｔ２）の重心ｇ（Ｅｓ（ｔ２））とテトラ要素Ｅｅ（ｔ２）の重心ｇ（Ｅｅ（ｔ２））とを結ぶ線分を線分Ｌ２として設定する。
【００４６】
設定部５０７は、たとえば、第２の時刻での始端要素と第２の時刻での終端要素とを直線により結ぶことで第２の線分を設定する。ただし、直線で結んだ線を面に投影した場合、投影した線の少なくとも一部が、当該面上に存在しない場合、設定部５０７は補完処理を実行する。たとえば、図１の（Ａ）の心臓モデルＭ（ｔ２）の断面において、始点Ｐｓ（ｔ２）と終点Ｐｅ（ｔ２）を直線で結ぶと、テトラ要素がない空間を通過することになる。このような場合には、設定部５０７は、断面の境界から所定距離内側に線分を設定する。これにより、設定部５０７は、図１の（Ａ）の心臓モデルＭ（ｔ２）に示したように、断面上に線分Ｌ２を設定することができる。また、検出部５０３、算出部５０４、抽出部５０５、および格納部５０６は、第２の線分についても第１の線分と同様の処理を実行する。
【００４７】
表示部５０８は、抽出された複数の第１の物理値と複数の第２の物理値を表示する。具体的には、表示部５０８は、第１の格納部５０６によって格納された第１の要素列および第１の物理値列を表示するとともに、第２の格納部５０６によって格納された第２の要素列および第２の物理値列を表示する。ここで、第１の格納部５０６によって格納された第１の要素列および第１の物理値列を例に挙げて説明する。
【００４８】
表示部５０８は、テトラ要素列ＬＥ１および物理値列Ｌｐ１を表示する。たとえば、図１の（Ｂ）に示したように、表示部５０８は、テトラ要素列ＬＥ１の各テトラ要素をグラフ上の点で表現し、物理値を縦軸に合わせ、横軸方向をテトラ要素列ＬＥ１での配列方向としてプロットする。なお、算出部５０４により要素間距離が算出されている場合は、表示部５０８は、横軸については要素間距離にしたがってプロットする。第２の格納部５０６によって格納された第２の要素列および第２の物理値列についても同様である。
【００４９】
＜格納先５１０の記憶内容例＞
つぎに、格納部５０６により格納された格納先５１０の記憶内容例について説明する。格納先５１０には、時刻ごとのテトラ要素列と要素間距離が格納される。以下、図６および図７を用いて説明する。
【００５０】
図６は、時刻ごとのテトラ要素列のデータ構造例を示す説明図である。格納先５１０には、指定部５０２によって指定されたタイムステップ数ｎ分のテトラ要素列のデータ構造が格納される。図６において、テトラ要素Ｅ１（ｔ１）〜Ｅ１（ｔｎ）が各時刻ｔ１〜ｔｎでの始点を含むテトラ要素Ｅｓ（ｔ１）〜Ｅｓ（ｔｎ）であり、テトラ要素Ｅ５０（ｔ１）〜Ｅ５０（ｔｎ）が各時刻ｔ１〜ｔｎでの終点を含むテトラ要素Ｅｅ（ｔ１）〜Ｅｅ（ｔｎ）である。
【００５１】
また、テトラ要素名は、データ構造Ｄｉへのポインタとなる。したがって、テトラ要素名を格納することにより、表示装置５００は、そのテトラ要素名で指定されるテトラ要素の物理値をデータ構造から抽出することができる。たとえば、テトラ要素Ｅ１（ｔ１）については、テトラ要素名「Ｅ１（ｔ１）」を指定することにより、表示装置５００は、データ構造Ｄ１からテトラ要素Ｅ１（ｔ１）の物理値ｐ（Ｅ１（ｔ１））を指定することができる。
【００５２】
図７は、時刻ごとの要素間距離のデータ構造例を示す説明図である。格納先５１０には、指定部５０２によって指定されたタイムステップ数ｎ分の要素間距離のデータ構造が格納される。
【００５３】
＜表示処理手順＞
図８は、実施の形態１にかかる表示装置５００による表示処理手順例を示すフローチャートである。表示装置５００は、指定部５０２によりタイムステップ数ｎを指定し、時刻ｔｉのインデックスｉをｉ＝１に設定する（ステップＳ８０１）。また、表示装置５００は、時刻ｔｉの心臓モデルＭ（ｔｉ）で線分Ｌｉを指定する（ステップＳ８０２）。つぎに、表示装置５００は、検出部５０３により、線分Ｌｉから始点Ｅｓ（ｔｉ）および終点Ｅｅ（ｔｉ）を検出し、要素ＩＤを保存する（ステップＳ８０３）。図６において、ｉ＝１の場合、始点Ｅｓ（ｔ１）の要素ＩＤは「Ｅ１」であり、終点Ｅｅ（ｔ１）の要素ＩＤは「Ｅ５０」である。
【００５４】
つぎに、表示装置５００は、検出部５０３により、線分Ｌｉを均等分割して、分割点を決定する（ステップＳ８０４）。そして、表示装置５００は、検出部５０３により、始点、終点、分割点を含むテトラ要素列ＬＥｉを検出する（ステップＳ８０５）。つぎに、表示装置５００は、算出部５０４により要素間距離を算出する（ステップＳ８０６）。
【００５５】
そして、表示装置５００は、抽出部５０５により、テトラ要素列ＬＥｉから物理値列Ｌｐｉを抽出する（ステップＳ８０７）。このあと、表示装置５００は、格納部５０６により、物理値列Ｌｐｉをテトラ要素列ＬＥｉに関連付けて格納する（ステップＳ８０８）。表示装置５００は、格納部５０６により、テトラ要素列ＬＥｉの要素間距離についても、テトラ要素列ＬＥｉおよび物理値列Ｌｐｉに関連付けて格納する。
【００５６】
このあと、表示装置５００は、インデックスｉをインクリメントする（ステップＳ８０９）。そして、表示装置５００は、ｉ＞ｎであるか否かを判断する（ステップＳ８１０）。ｉ＞ｎでない場合（ステップＳ８１０：Ｎｏ）、表示装置５００は、設定部５０７により、時刻ｔｉの心臓モデルＭ（ｔｉ）で線分Ｌｉを設定して（ステップＳ８１１）、ステップＳ８０３に戻る。このように、時刻ｔｉごとにステップＳ８０３〜Ｓ８１１が実行されることになる。そして、ステップＳ８１０において、ｉ＞ｎである場合（ステップＳ８１０：Ｙｅｓ）、表示装置５００は、表示部５０８により、グラフ表示をおこなう（ステップＳ８１２）。これにより、図１の（Ｂ）に示したように、グラフが表示され、一連の処理を終了する。
【００５７】
このように、実施の形態１では、各時刻において線分の両端のテトラ要素を同一要素とすることにより、各時刻において両端のテトラ要素が固定化される。したがって、ユーザが指定した線分に相当する心筋の経時的な動きを時系列で追跡することができる。
【００５８】
また、各時刻において線分を等分に分割することにより、時刻ごとのテトラ要素列の要素数を同数に設定することができる。したがって、追跡対象となるテトラ要素数が制限され、表示処理の高速化を図ることができる。
【００５９】
（実施の形態２）
つぎに、実施の形態２について説明する。実施の形態１では、線分Ｌｉにより指定または設定されるテトラ要素列ＬＥｉの両端のテトラ要素を、時刻が変化しても同一要素に固定して、ユーザが指定した線分Ｌ１に相当する心筋の経時的な動きを時系列で追跡する例を説明した。これに対し、実施の形態２では、線分Ｌｉ自体を時刻が変化しても固定にして、時刻ごとに線分Ｌｉを通過するテトラ要素列ＬＥｉにより、線分Ｌｉに相当する心筋の動きを追跡する。
【００６０】
すなわち、心臓モデルＭ（ｔｉ）が配置される３次元空間において心臓モデルＭ（ｔｉ）は時刻ごとに動くが、線分は、どの時刻においても３次元空間において同一位置に存在する。したがって、ユーザが指定した線分の位置に経時的に移動してくる心筋の動きを追跡することができる。なお、実施の形態２の表示装置５００は、設定部５０７の内容のみが実施の形態１と異なるため、設定部５０７についてのみ説明し、設定部５０７以外の構成については同一符号を付し、その説明を省略する。
【００６１】
＜心臓モデルの挙動追跡例＞
図９は、実施の形態２にかかる心臓モデルの挙動追跡例を示す説明図である。実施の形態１との相違は、時刻ｔ１の心臓モデルＭ（ｔ１）での線分Ｌ１と時刻ｔ２の心臓モデルＭ（ｔ２）での線分Ｌ２とは、時刻ｔ１およびｔ２の３次元座標系において同一位置に存在する。
【００６２】
（Ａ）において、表示装置５００は、検出部５０３により線分Ｌ１を含むテトラ要素列ＬＥ１を検出し、抽出部５０５によりテトラ要素列ＬＥ１が有する物理値列Ｌｐ１を抽出する。時刻ｔ１から時刻ｔ２に変化した場合、表示装置５００は、設定部５０７により、線分Ｌ１の位置情報を取得して線分Ｌ１と同一位置の線分Ｌ２を、時刻ｔ２の心臓モデルＭ（ｔ２）に設定する。そして、表示装置５００は、検出部５０３により線分Ｌ２を含むテトラ要素列ＬＥ２を検出し、抽出部５０５によりテトラ要素列ＬＥ２が有する物理値列Ｌｐ２を抽出する。
【００６３】
（Ｂ）において、表示装置５００は、表示部５０８により、抽出した物理値列Ｌｐｉをグラフ表示する。このように、実施の形態２では、線分Ｌｉ自体を時刻が変化しても固定にして、時刻ごとに線分Ｌｉを通過するテトラ要素列ＬＥｉにより、線分Ｌｉに相当する心筋の動きを追跡することができる。
【００６４】
＜格納先５１０の記憶内容例＞
つぎに、格納部５０６により格納された格納先５１０の記憶内容例について説明する。格納先５１０には、時刻ごとのテトラ要素列ＬＥｉと要素間距離が格納される。以下、図１０および図１１を用いて説明する。
【００６５】
図１０は、時刻ごとのテトラ要素列のデータ構造例を示す説明図である。格納先５１０には、指定部５０２によって指定されたタイムステップ数ｎ分のテトラ要素列のデータ構造が格納される。テトラ要素名は、データ構造へのポインタとなる。したがって、テトラ要素名を格納することにより、表示装置５００は、そのテトラ要素名で指定されるテトラ要素の物理値をデータ構造から抽出することができる。たとえば、テトラ要素Ｅ１（ｔ１）については、テトラ要素名「Ｅ１（ｔ１）」を指定することにより、表示装置５００は、データ構造Ｄ１からテトラ要素Ｅ１（ｔ１）の物理値ｐ（Ｅ１（ｔ１））を指定することができる。実施の形態１と違い、各時刻において両端のテトラ要素は固定されていない。
【００６６】
図１１は、時刻ごとの要素間距離のデータ構造例を示す説明図である。格納先５１０には、指定部５０２によって指定されたタイムステップ数ｎ分の要素間距離のデータ構造が格納される。
【００６７】
＜表示処理手順＞
図１２は、実施の形態２にかかる表示装置５００による表示処理手順例を示すフローチャートである。表示装置５００は、指定部５０２によりタイムステップ数ｎを指定し（ステップＳ１２０１）、時刻ｔ１の心臓モデルＭ（ｔ１）で線分Ｌ１を指定する（ステップＳ１２０２）。つぎに、表示装置５００は、時刻ｔｉのインデックスｉをｉ＝１に設定する（ステップＳ１２０３）。
【００６８】
そして、表示装置５００は、検出部５０３により、心臓モデルＭ（ｔｉ）において線分Ｌｉを通過するテトラ要素列を検出する（ステップＳ１２０４）。つぎに、表示装置５００は、算出部５０４により要素間距離を算出する（ステップＳ１２０５）。
【００６９】
そして、表示装置５００は、抽出部５０５により、テトラ要素列ＬＥｉから物理値列Ｌｐｉを抽出する（ステップＳ１２０６）。このあと、表示装置５００は、格納部５０６により、物理値列Ｌｐｉをテトラ要素列ＬＥｉに関連付けて格納する（ステップＳ１２０７）。表示装置５００は、格納部５０６により、テトラ要素列ＬＥｉの要素間距離についても、テトラ要素列ＬＥｉおよび物理値列Ｌｐｉに関連付けて格納する。
【００７０】
このあと、表示装置５００は、インデックスｉをインクリメントする（ステップＳ１２０８）。そして、表示装置５００は、ｉ＞ｎであるか否かを判断する（ステップＳ１２０９）。ｉ＞ｎでない場合（ステップＳ１２０９：Ｎｏ）、表示装置５００は、設定部５０７により、時刻ｔｉの心臓モデルＭ（ｔｉ）で線分Ｌｉを設定して（ステップＳ１２１０）、ステップＳ１２０４に戻る。このように、時刻ｔｉごとにステップＳ１２０４〜Ｓ１２１０が実行されることになる。そして、ステップＳ１２０９において、ｉ＞ｎである場合（ステップＳ１２０９：Ｙｅｓ）、表示装置５００は、表示部５０８により、グラフ表示をおこなう（ステップＳ１２１１）。これにより、図９の（Ｂ）に示したように、グラフが表示され、一連の処理を終了する。
【００７１】
このように、実施の形態２では、線分Ｌｉ自体を時刻が変化しても固定にして、時刻ごとに線分Ｌｉを通過するテトラ要素列ＬＥｉにより、線分Ｌｉに相当する心筋の動きを追跡する。すなわち、心臓モデルＭ（ｔｉ）が配置される３次元空間において心臓モデルＭ（ｔｉ）は時刻ごとに動くが、線分は、どの時刻においても３次元空間において同一位置に存在する。したがって、ユーザが指定した線分Ｌｉの位置に経時的に移動してくる心筋の動きを追跡することができる。
【００７２】
（実施の形態３）
つぎに、実施の形態３について説明する。実施の形態１，２では、線分Ｌ１を指定して、経時的に移動する線分Ｌｉに相当する心筋の動きや、経時的に線分Ｌｉに移動してくる心筋の動きを時系列で追跡した。これに対し、実施の形態３では、最初に指定した線分を通過するテトラ要素列の各テトラ要素となる心筋の動きを時系列で追跡する。これにより、注目するテトラ要素が経時的にどのような物理値でどのくらい移動したかを把握することができる。
【００７３】
＜心臓モデルの挙動追跡例＞
図１３は、実施の形態３にかかる心臓モデルの挙動追跡例を示す説明図である。実施の形態１との相違は、時刻ｔ１の心臓モデルＭ（ｔ１）での線分Ｌ１と時刻ｔ２の心臓モデルＭ（ｔ２）での線分Ｌ２とは、時刻ｔ１およびｔ２の３次元座標系において同一位置に存在する。
【００７４】
（Ａ）において、表示装置５００は、指定部５０２により、時刻ｔ１の心臓モデルＭ（ｔ１）で線分Ｌを指定する。線分Ｌの指定や設定は、心臓モデルＭ（ｔ１）だけでおこなわれる。表示装置５００は、検出部５０３により、線分Ｌを含むテトラ要素列ＬＥ１を検出する。検出したテトラ要素列ＬＥ１内の各テトラ要素をａ〜ｆとする。表示装置５００は、抽出部５０５により、テトラ要素列ＬＥ１が有する物理値列Ｌｐ１を抽出する。
【００７５】
時刻ｔ１から時刻ｔ２に変化した場合、表示装置５００は、心臓モデルＭ（ｔ１）で得られたテトラ要素列ＬＥ１の各テトラ要素ａ〜ｆを、心臓モデルＭ（ｔ２）で検出する。そして、表示装置５００は、抽出部５０５により、テトラ要素列ＬＥ２が有する物理値列Ｌｐ２を抽出する。このように、時刻が変化する都度、表示装置５００は、同一のテトラ要素の検出とその物理値列の抽出を実行する。
【００７６】
（Ｂ）において、表示装置５００は、表示部５０８により、抽出した物理値列Ｌｐｉをグラフ表示する。図１３では、テトラ要素列ＬＥｉの要素間距離が反映されていない。このため、表示装置５００は、表示部５０８により、テトラ要素列ＬＥｉの配列位置を等間隔としてグラフ表示する。ただし、表示装置５００は、算出部５０４により、要素間距離を算出して、横軸において要素間距離を反映させてもよい。このように、実施の形態３では、最初に指定した線分Ｌを通過するテトラ要素列ＬＥ１を構成する各テトラ要素ａ〜ｆの動きを経時的に追跡することができる。
【００７７】
＜表示装置５００の機能的構成例＞
実施の形態３にかかる表示装置５００の機能的構成例は、図５と同様である。ただし、検出部５０３は、指定部５０２によって指定された線分Ｌを通過するテトラ要素列ＬＥ１を検出すると、時刻が変化する都度、時刻ごとの心臓モデルＭ（ｔｉ）において同一のテトラ要素群（ａ〜ｆ）を検出することになる。また、設定部５０７では、時刻ｔ２以降の心臓モデルＭ（ｔｉ）において、線分Ｌと位置および長さが同一の線分を設定することになる。
【００７８】
＜格納先５１０の記憶内容例＞
つぎに、格納部５０６により格納された格納先５１０の記憶内容例について説明する。格納先５１０には、時刻ごとのテトラ要素列と要素間距離が格納される。以下、図１４および図１５を用いて説明する。
【００７９】
図１４は、時刻ごとのテトラ要素列のデータ構造例を示す説明図である。格納先５１０には、指定部５０２によって指定されたタイムステップ数ｎ分のテトラ要素列ＬＥｉのデータ構造が格納される。テトラ要素名は、データ構造Ｄｉへのポインタとなる。したがって、テトラ要素名を格納することにより、表示装置５００は、そのテトラ要素名で指定されるテトラ要素の物理値をデータ構造から抽出することができる。たとえば、テトラ要素Ｅ１（ｔ１）については、テトラ要素名「Ｅ１（ｔ１）」を指定することにより、表示装置５００は、データ構造Ｄ１からテトラ要素Ｅ１（ｔ１）の物理値ｐ（Ｅ１（ｔ１））を指定することができる。実施の形態１，２と違い、各時刻においてテトラ要素は同一要素である。
【００８０】
図１５は、時刻ごとの要素間距離のデータ構造例を示す説明図である。格納先５１０には、指定部５０２によって指定されたタイムステップ数ｎ分の要素間距離のデータ構造が格納される。
【００８１】
＜表示処理手順＞
図１６は、実施の形態３にかかる表示装置５００による表示処理手順例を示すフローチャートである。表示装置５００は、指定部５０２によりタイムステップ数ｎを指定し（ステップＳ１６０１）、時刻ｔｉのインデックスｉをｉ＝１に設定する（ステップＳ１６０２）。つぎに、表示装置５００は、時刻ｔ１の心臓モデルＭ（ｔ１）で線分Ｌを指定する（ステップＳ１６０３）。
【００８２】
そして、表示装置５００は、検出部５０３により、心臓モデルＭ（ｔ１）において線分Ｌを通過するテトラ要素列ＬＥ１のテトラ要素ａ〜ｆを検出する（ステップＳ１６０４）。つぎに、表示装置５００は、算出部５０４により要素間距離を算出する（ステップＳ１６０５）。
【００８３】
そして、表示装置５００は、抽出部５０５により、テトラ要素列ＬＥｉから物理値列Ｌｐｉを抽出する（ステップＳ１６０６）。このあと、表示装置５００は、格納部５０６により、物理値列Ｌｐｉをテトラ要素列ＬＥｉに関連付けて格納する（ステップＳ１６０７）。表示装置５００は、格納部５０６により、テトラ要素列ＬＥｉの要素間距離についても、テトラ要素列ＬＥｉおよび物理値列Ｌｐｉに関連付けて格納する。
【００８４】
このあと、表示装置５００は、インデックスｉをインクリメントする（ステップＳ１６０８）。そして、表示装置５００は、ｉ＞ｎであるか否かを判断する（ステップＳ１６０９）。ｉ＞ｎでない場合（ステップＳ１６０９：Ｎｏ）、表示装置５００は、線分Ｌと同一線分を設定する（ステップＳ１６１０）。そして、表示装置５００は、検出部５０３により、時刻ｔｉの心臓モデルＭ（ｔｉ）で、ステップＳ１６０４で検出したテトラ要素列ＬＥ１と同一要素ａ〜ｆで構成されるテトラ要素列ＬＥｉを検出して（ステップＳ１６１１）、ステップＳ１６０５に戻る。このように、時刻ｔｉごとにステップＳ１６０５〜Ｓ１６１１が実行されることになる。そして、ステップＳ１６０９において、ｉ＞ｎである場合（ステップＳ１６０９：Ｙｅｓ）、表示装置５００は、表示部５０８により、グラフ表示をおこなう（ステップＳ１６１２）。これにより、図１３の（Ｂ）に示したように、グラフが表示され、一連の処理を終了する。
【００８５】
このように、実施の形態３では、指定した線分を通過するテトラ要素列と同一テトラ要素列を経時的に追跡することができる。したがって、指定した線分を通過するテトラ要素列が経時的にどのように収縮または拡散したかを把握することができる。
【００８６】
以上説明したように、本実施の形態によれば、各時刻において線分の両端のテトラ要素を同一要素とすることにより、各時刻において両端のテトラ要素が固定化される。したがって、ユーザが指定した線分に相当する心筋の経時的な動きを時系列で追跡することができる。
【００８７】
また、各時刻において線分を等分に分割することにより、時刻ごとのテトラ要素列の要素数を同数に設定することができる。したがって、追跡対象となるテトラ要素数が制限され、表示処理の高速化を図ることができる。
【００８８】
また、線分自体を時刻が変化しても固定にして、時刻ごとに線分を通過するテトラ要素列により、線分に相当する心筋の動きを追跡することができる。すなわち、心臓モデルが配置される３次元空間において心臓モデルは時刻ごとに動くが、線分は、どの時刻においても３次元空間において同一位置に存在する。したがって、ユーザが指定した線分の位置に経時的に移動してくる心筋の動きを追跡することができる。
【００８９】
また、心臓モデルにおいて線分を指定するだけで、当該線分を通過するテトラ要素列と同一テトラ要素列を経時的に追跡することができる。したがって、指定した線分を通過するテトラ要素列が経時的にどのように収縮または拡散したかを把握することができる。
【００９０】
以上のことから、本実施の形態によれば、臓器内部の挙動の追跡を容易にすることができるという効果を奏する。
【符号の説明】
【００９１】
５００  表示装置
５０２  指定部
５０３  検出部
５０４  算出部
５０５  抽出部
５０６  格納部
５０７  設定部
５０８  表示部
【図１】
0005907502.tif 000002
【図２】
0005907502.tif 000003
【図３】
0005907502.tif 000004
【図４】
0005907502.tif 000005
【図５】
0005907502.tif 000006
【図６】
0005907502.tif 000007
【図７】
0005907502.tif 000008
【図８】
0005907502.tif 000009
【図９】
0005907502.tif 000010
【図１０】
0005907502.tif 000011
【図１１】
0005907502.tif 000012
【図１２】
0005907502.tif 000013
【図１３】
0005907502.tif 000014
【図１４】
0005907502.tif 000015
【図１５】
0005907502.tif 000016
【図１６】
0005907502.tif 000017