(57)【特許請求の範囲】
【請求項１】
複数の原子からなる分子または結晶の３次元構造を、表示装置の画面上にコンピュータグラフィックスで表示する表示制御方法において、
所定の前記原子と他の前記原子を結ぶ各原子間ベクトル、または前記結晶の各単位格子ベクトルに個別に任意の整数を乗じたもの同士の和により求められる各和ベクトルと、前記画面上に設定した座標軸とのなす角度を演算し、
演算された前記角度のうち、０°または１８０°に最も近い角度を選択し、
前記角度を０°または１８０°にするために、前記分子または結晶の表示を変換するための操作を決定し、
決定された前記操作を実行する
ことを特徴とする表示制御方法。
【請求項２】
前記操作は回転操作、または複数の前記回転操作の組み合わせである
ことを特徴とする請求項１に記載の表示制御方法。
【請求項３】
各単位格子ベクトルに乗じる前記整数を所定の範囲内に個別に制限する
ことを特徴とする請求項１に記載の表示制御方法。
【請求項４】
複数の原子からなる分子または結晶の３次元構造を、表示装置の画面上にコンピュータグラフィックスで表示する表示制御装置において、
所定の前記原子と他の前記原子を結ぶ各原子間ベクトル、または前記結晶の各単位格子ベクトルに個別に任意の整数を乗じたもの同士の和により求められる各和ベクトルと、前記画面上に設定した座標軸とのなす角度を演算する演算手段と、
演算された前記角度のうち、０°または１８０°に最も近い角度を選択する選択手段と、
前記角度を０°または１８０°にするために、前記分子または結晶の表示を変換するための操作を決定する決定手段と、
決定された前記操作を実行する実行手段と
を備えることを特徴とする表示制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、表示制御方法および装置に関し、例えば、分子や結晶を３次元表示するとき、表示画面とのなす角度を調整する表示制御方法および装置に関する。
【０００２】
【従来の技術】
例えば、結晶や分子の構造をＣＧ（コンピュータグラフィックス）によってＣＲＴや液晶ディスプレイ等の表示装置に表示する場合、その表示画面に対する結晶や分子の表示角度は、マウスやダイヤル等を用いて手動で回転操作を行い、調整するようにしている。また、回転角度を数値入力することにより、表示角度が所定の角度になるように正確に回転操作を行うことができる。その場合、回転角度を予め算出しておく必要がある。
【０００３】
【発明が解決しようとする課題】
しかしながら、マウスやダイヤル等を用いて結晶や分子の表示画面に対する表示角度の調整を行う場合、大体の調整を行うことはできるが、微妙な角度のずれが残る場合があり、画面に対して傾いて表示され、あまり美しくない表示となることがある課題があった。
【０００４】
また、クリッピング操作を行って、結晶や分子を所定の断面で切断したときの画像を表示させるような場合、結晶や分子を構成する原子の原子配列とクリッピングによる断面とのなす角度の設定が正確でないと、断面内の場所によって切断のされ方に差が生じる。即ち、図１１に示したように、原子がｚ軸方向に所定の角度だけ傾いている場合において、ｚ軸方向の所定の範囲をｚ−クリッピング範囲とし、その範囲内にある原子を、画面の縦方向をｙ軸とし、画面の横方向をｘ軸として表示させると、図１２に示したように、ｚ−クリッピング範囲内にある原子は、そのままの大きさで表示されるが、ｚ−クリッピング範囲からずれるに従って、原子の切断面が小さくなり、ｚ−クリッピング範囲の外に位置する原子は画面に表示されなくなってしまう。従って、断面の探索を正確に行うことができない課題があった。
【０００５】
そこで、マウスやダイヤルによらず、結晶や分子に対して回転操作を行うときの回転角度等を数値で入力し、原子配列とクリッピングによる断面とのなす角度が０°または１８０°となるようにすることも可能ではあるが、その場合、回転角度を正確に計算しなければならない。また、いくつかの回転操作を組み合わせる必要がある場合があり、操作が煩雑となり現実的ではない課題があった。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、結晶や分子と表示画面とのなす角度を簡単に調整することができるようにするものである。
【０００７】
【課題を解決するための手段】
請求項１に記載の表示制御方法は、所定の原子と他の原子を結ぶ各原子間ベクトル、または結晶の各単位格子ベクトルに個別に任意の整数を乗じたもの同士の和により求められる各和ベクトルと、画面上に設定した座標軸とのなす角度を演算し、演算された角度のうち、０°または１８０°に最も近い角度を選択し、角度を０°または１８０°にするために、分子または結晶の表示を変換するための操作を決定し、決定された操作を実行することを特徴とする。
【０００８】
請求項４に記載の表示制御装置は、所定の原子と他の原子を結ぶ各原子間ベクトル、または結晶の各単位格子ベクトルに個別に任意の整数を乗じたもの同士の和により求められる各和ベクトルと、画面上に設定した座標軸とのなす角度を演算する演算手段と、演算された角度のうち、０°または１８０°に最も近い角度を選択する選択手段と、角度を０°または１８０°にするために、分子または結晶の表示を変換するための操作を決定する決定手段と、決定された操作を実行する実行手段とを備えることを特徴とする。
【０００９】
請求項１に記載の表示制御方法においては、所定の原子と他の原子を結ぶ各原子間ベクトル、または結晶の各単位格子ベクトルに個別に任意の整数を乗じたもの同士の和により求められる各和ベクトルと、画面上に設定した座標軸とのなす角度を演算し、演算された角度のうち、０°または１８０°に最も近い角度を選択し、角度を０°または１８０°にするために、分子または結晶の表示を変換するための操作を決定し、決定された操作を実行する。
【００１０】
請求項４に記載の表示制御装置においては、演算手段が所定の原子と他の原子を結ぶ各原子間ベクトル、または結晶の各単位格子ベクトルに個別に任意の整数を乗じたもの同士の和により求められる各和ベクトルと、画面上に設定した座標軸とのなす角度を演算し、選択手段が演算された角度のうち、０°または１８０°に最も近い角度を選択し、決定手段が角度を０°または１８０°にするために、分子または結晶の表示を変換するための操作を決定し、実行手段が決定手段により決定された操作を実行する。
【００１１】
【発明の実施の形態】
図１は、本発明の表示制御装置を適用したパーソナルコンピュータあるいはワークステーションの構成例を示すブロック図である。ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２に記憶されているプログラムに従って各種の処理を実行するようになされている。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３には、ＣＰＵ１が各種の処理を実行する上で必要なデータ、プログラム等が適宜記憶されるようになされている。
【００１２】
表示装置７は、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ），ＬＣＤ（Ｌｙｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）等により構成され、バス４、インタフェース５を介してＣＰＵ１より供給されたデータに対応する文字や図形等の画像を表示するようになされている。キーボード８は、ユーザにより入力されたキーに対するキーコードを発生し、インタフェース５、バス４を介してＣＰＵ１に供給するようになされている。マウス９は、ユーザによる移動操作やクリック操作に対応する信号を発生し、インタフェース５、バス４を介してＣＰＵ１に供給するようになされている。ダイヤル１０は、例えば、表示装置７の画面上に設定されたｘ軸、ｙ軸、およびｚ軸にそれぞれ対応して設けられ、手動で回転させることにより、対応する信号がインタフェース５、バス４を介してＣＰＵ１に供給されるようになされている。
【００１３】
インタフェース５は、所定のインタフェース処理を行うようになされている。また、記憶装置６は、ＣＰＵ１が実行するプログラムや各種のデータ等を記憶するようになされている。
【００１４】
図２は、ＣＰＵ１により実行されるプログラムの機能ブロックを示す図である。演算部１１（演算手段）は、後述するように、原子間ベクトルや格子ベクトルと画面のなす角度等を演算するようになされている。選択部１２（選択手段）は、演算部１１により演算された角度のうち、０°または１８０°に最も近いものを選択するようになされている。決定部１３（決定手段）は、選択部１２により選択された角度を０°または１８０°にするための操作、例えば回転操作やその組み合わせ等を決定するようになされている。実行部１４（実行手段）は、決定部１３により決定された操作を実行するようになされている。
【００１５】
次に、その動作について説明する。キーボード８またはマウス９を操作して、ＲＡＭ３に記憶されたプログラムを起動すると、ＣＰＵ１の制御により、このプログラムに従って各部が制御され、例えば図３に示すような画面が表示装置７に表示される。即ち、結晶や分子をコンピュータグラフィックで３次元表示するための作業ウィンドウ７ａと、作業ウィンドウ７ａに表示された結晶や分子の表示角度を調整するためのメイン操作パネル（ウィンドウ）７ｂが表示される。作業ウィンドウ７ａとメイン操作パネル７ｂは、プログラムの実行中、常に開いておくようにする。
【００１６】
図４は、作業ウィンドウ７ａの表示例を示している。ここには、結晶や分子を構成する原子がコンピュータグラフィックスで３次元表示される。
【００１７】
図５は、メイン操作パネル７ｂの表示例を示している。ここには、いくつかの操作を指定するためのボタンが表示される。このボタンは、例えば、マウス９を操作し、表示装置７の画面上に表示されたカーソルを所定のボタンに移動させ、クリックすることにより選択することができる。このような操作によって、その中の回転補正を行うためのボタン「回転補正」が選択されると、回転補正操作パネル７ｃが表示される。
【００１８】
回転補正操作パネル７ｃの原子間ベクトルの欄のボタンθｘは、原子と原子を結ぶ原子間ベクトルのうち、ｘ軸とのなす角度が０°または１８０°に最も近いものを０°または１８０°にするとき選択される。ボタンθｙは、原子間ベクトルのうち、ｙ軸とのなす角度が０°または１８０°に最も近いものを０°または１８０°にするとき選択される。また、ボタンθｚは、原子間ベクトルのうち、ｚ軸とのなす角度が０°または１８０°に最も近いものを０°または１８０°にするとき選択される。
【００１９】
また、ボタン「回転ダイヤル」が選択されると、回転操作パネル７ｄが表示される。これについては後述する。
【００２０】
結晶や分子を表示する作業ウィンドウ７ａにおける座標軸は、図６に示したように、画面に対して左右方向をｘ軸、上下方向をｙ軸、画面に対して垂直な方向をｚ軸として定義されている。また、ｚ軸は、画面に対して手前の向きが正とされる。
【００２１】
３次元空間内にあるｎ個の原子の位置ベクトルをそれぞれｒ１，ｒ２，ｒ３，．．．ｒｉ，．．．ｒｊ，．．．ｒｎ（ｎは２以上の自然数）とし、次の式（１）で示すように、全ての原子の組み合わせについて、位置ベクトルの差ベクトルＲ（ｉ，ｊ）（ただし、１≦ｉ≦ｎ−１，２≦ｊ≦ｎ）を求める。
【００２２】
Ｒ（１，２）＝ｒ２−ｒ１，
Ｒ（１，３）＝ｒ３−ｒ１，
・・・・・・・・・・・・
Ｒ（１，ｎ）＝ｒｎ−ｒ１，
Ｒ（２，３）＝ｒ３−ｒ２，
・・・・・・・・・・・・
Ｒ（ｉ，ｊ）＝ｒｊ−ｒｉ，
・・・・・・・・・・・・
Ｒ（ｎ−１，ｎ）＝ｒｎ−ｒｎ−１  ・・・（式１）
【００２３】
これらの差ベクトルＲ（ｉ，ｊ）とｘ軸とのなす角度θｘ（ｉ，ｊ）（ただし、０°≦θｘ≦１８０°）を、全てのｉ，ｊについて求める。
【００２４】
例えば、図７に示したように３つの原子Ｐ１，Ｐ２，Ｐ３からなる分子があるとき、原子Ｐ１の位置ベクトルと原子Ｐ２の位置ベクトルの差ベクトルＲ（１，２）、原子Ｐ１の位置ベクトルと原子Ｐ３の位置ベクトルの差ベクトルＲ（１，３）、および原子Ｐ２の位置ベクトルと原子Ｐ３の位置ベクトルの差ベクトルＲ（２，３）を求め、これらのベクトルと、ｘ軸とのなす角度θｘ（１，２）、θｘ（１，３）、およびθｘ（２，３）を求める。
【００２５】
次に、これらの角度のうち、０°あるいは１８０°に最も近い値をとるものに対応する差ベクトルＲ（ｉ，ｊ）が選ばれ、そのときの角度θｘ（ｉ，ｊ）が正確に０°また１８０°となるように、分子の表示を変換するための操作Ａｘ（ｉ，ｊ）が算出される。ｙ軸およびｚ軸に関しても同様にして、操作Ａｙ（ｉ，ｊ）および操作Ａｚ（ｉ，ｊ）が算出される。
【００２６】
ここで、表示装置７に表示されている図５に示した回転補正操作パネル７ｃのカーソルを、マウス９を用いてボタンθｘに移動させ、それを選択すると、先に演算された操作Ａｘ（ｉ，ｊ）が実行される。例えば、図７においては、原子Ｐ１乃至Ｐ３より構成される分子が、０°または１８０°に最も近い角度θｘ（１，３）が０°または１８０°（この場合０°）となるように回転され、差ベクトルＲ（１，３）がｘ軸と平行になるように補正される。
【００２７】
簡単のため、図８に示したように、２つの原子Ｐ１１とＰ１２からなる分子の例で説明すると、図８（ａ）に示したように、原子Ｐ１１の位置ベクトルおよび原子Ｐ１２の位置ベクトルの差ベクトルＲ（１１，１２）と、ｘ軸がずれているような場合、上述した方法を適用することにより、図８（ｂ）に示したように、差ベクトルＲ（１１，１２）は、ｘ軸と平行になる。
【００２８】
同様に、回転補正操作パネル７ｃにおいて、原子間ベクトルのボタンθｙを選択した場合には、先に演算された操作Ａｙ（ｉ，ｊ）が実行される。また、ボタンθｚを選択した場合には、先に演算された操作Ａｚ（ｉ，ｊ）が実行される。さらに、θａｌｌを選択すると、先に演算された角度θｘ（ｉ，ｊ），θｙ（ｉ，ｊ），θｚ（ｉ，ｊ）のうち、０°または１８０°に最も近いものが選択され、その角度が０°または１８０°となるように、操作Ａｘ（ｉ，ｊ）、Ａｙ（ｉ，ｊ）、またはＡｚ（ｉ，ｊ）のうちのいずれかが実行される。
【００２９】
さらに、ボタンθａｌｌを選択すると、先に演算された角度θｘ（ｉ，ｊ），θｙ（ｉ，ｊ），θｚ（ｉ，ｊ）のうち、最も０°または１８０°に近いものが選択され、その角度が０°または１８０°となるように、操作Ａｘ（ｉ，ｊ）、Ａｙ（ｉ，ｊ）、またはＡｚ（ｉ，ｊ）のうちのいずれかが実行される。
【００３０】
次に、結晶の場合について説明する。図９に示したように、単位格子ベクトルａ１，ａ２，ａ３が結晶モデル作成時にすでに定義されている。これら単位格子ベクトルａ１，ａ２，ａ３をそれぞれ整数倍したものの和ベクトルＳ（ｋ，ｌ，ｍ）＝ｋａ１＋ｌａ２＋ｍａ３（ただし、ｋ，ｌ，ｍは整数）がＣＰＵ１により演算される。ここで、ｋ，ｌ，ｍの値は、後述するように、それぞれ格子拡張範囲として個別にその範囲を制限することができる。
【００３１】
図９において、ベクトルＳ（１，１，０）は、単位格子ベクトルａ１とａ２の和ベクトルであり、ベクトルＳ（０，１，１）は、単位格子ベクトルａ２とａ３の和ベクトルである。また、ベクトルＳ（１，１，１）は、単位格子ベクトルａ１，ａ２，およびａ３の和ベクトルである。
【００３２】
これら和ベクトルＳ（ｋ，ｌ，ｍ）は、結晶面に対して垂直なベクトルであり、これらのベクトルにより、所定の結晶面を特定することができる。従って、和ベクトルＳ（ｋ，ｌ，ｍ）がｘ軸方向、ｙ軸方向、およびｚ軸方向のいずれかに一致するように回転操作を行うことにより、結晶面をｘ軸方向、ｙ軸方向、およびｚ軸方向のいずれかに垂直となるようにさせることができる。
【００３３】
図１０は、簡単のため、仮想的に２次元座標系で単位格子ベクトルａ１，ａ２と和ベクトルＳの関係を示した図である。単位格子ベクトルａ１は、和ベクトルＳ（１，０）と等しく、単位格子ベクトルａ２は、和ベクトルＳ（０，１）と等しい。ベクトルＳ（１，１）は、単位格子ベクトルａ１とａ２の和ベクトルである。また、ベクトルＳ（２，１）は、単位格子ベクトルａ１を２倍したものと、単位格子ベクトルａ２との和ベクトルである。
【００３４】
これらの和ベクトルＳ（ｋ，ｌ，ｍ）とｘ軸とのなす角度φｘ（ｋ，ｌ，ｍ）が、演算部１１により、予め指定しておいた範囲のｋ，ｌ，ｍについてそれぞれ求められる。ここで、０°≦φｘ≦１８０°とする。次に、これらのうち、φｘが０°あるいは１８０°に最も近い値をとる和ベクトルＳ（ｋ，ｌ，ｍ）が選択部１２により選択され、その和ベクトルＳ（ｋ，ｌ，ｍ）とｘ軸とのなす角度φｘ（ｋ，ｌ，ｍ）が正確に０°または１８０°となるように結晶表示を変換するための操作Ｂｘ（ｋ，ｌ，ｍ）が決定部１３により算出され、決定される。
【００３５】
同様にして、これらの和ベクトルＳ（ｋ，ｌ，ｍ）とｙ軸とのなす角度φｙ（ｋ，ｌ，ｍ）を、予め指定しておいた範囲のｋ，ｌ，ｍについてそれぞれ求める。ここで、０°≦φｙ≦１８０°とする。次に、これらのうち、φｙが０°あるいは１８０°に最も近い値をとる和ベクトルＳ（ｋ，ｌ，ｍ）が選択され、和ベクトルＳ（ｋ，ｌ，ｍ）とｙ軸とのなす角度φｙ（ｋ，ｌ，ｍ）が正確に０°または１８０°となるように結晶表示を変換するための操作Ｂｙ（ｋ，ｌ，ｍ）が算出される。
【００３６】
さらに、これらの和ベクトルＳ（ｋ，ｌ，ｍ）とｚ軸とのなす角度φｚ（ｋ，ｌ，ｍ）を、予め指定しておいた範囲のｋ，ｌ，ｍについてそれぞれ求める。ここで、０°≦φｚ≦１８０°とする。次に、これらのうち、φｚが０°あるいは１８０°に最も近い値をとる和ベクトルＳ（ｋ，ｌ，ｍ）が選択され、和ベクトルＳ（ｋ，ｌ，ｍ）とｚ軸とのなす角度φｚ（ｋ，ｌ，ｍ）が正確に０°または１８０°となるように結晶表示を変換するための操作Ｂｚ（ｋ，ｌ，ｍ）が算出される。
【００３７】
次に、図５に示した回転補正操作パネル７ｃにおいて、格子ベクトルのボタンφｘを選択すると、先に演算された操作Ｂｘ（ｋ，ｌ，ｍ）が実行部１４により、実行される。同様に、ボタンφｙを選択すると、先に演算された操作Ｂｙ（ｋ，ｌ，ｍ）が実行され、ボタンφｚを選択すると、先に演算された操作Ｂｚ（ｋ，ｌ，ｍ）が実行される。
【００３８】
例えば、図９に示した結晶の場合においては、回転補正操作パネル７ｃにおいてボタンθｙを選択すると、和ベクトルＳ（０，１，１）とｙ軸とのなす角度θｙ（０，１，１）、和ベクトルＳ（１，１，１）とｙ軸とのなす角度θｙ（１，１，１）、および和ベクトルＳ（１，１，０）とｙ軸とのなす角度θｙ（１，１，０）等のうちの最小のもの、例えばθｙ（０，１，１）が選択され、この角度を０°にするような回転操作が実行される。
【００３９】
このようにして、表示画面に表示された結晶を回転させ、その結晶面が表示装置７の画面上において、ｘ軸、ｙ軸、またはｚ軸に垂直、または平行となるように回転補正することができる。
【００４０】
また、ボタンφａｌｌを選択すると、先に演算された角度φｘ（ｋ，ｌ，ｍ），φｙ（ｋ，ｌ，ｍ），φｚ（ｋ，ｌ，ｍ）のうち、最も０°または１８０°に近いものが選択され、その角度が０°または１８０°となるように、操作Ｂｘ（ｋ，ｌ，ｍ）、Ｂｙ（ｋ，ｌ，ｍ）、またはＢｚ（ｋ，ｌ，ｍ）のうちのいずれかが実行される。
【００４１】
回転補正操作パネル７ｃにおいて、「全てのベクトル」と表示されたボタンを選択すると、ボタンθａｌｌとφａｌｌが実行される。即ち、先に演算された原子間ベクトルの角度θｘ（ｉ，ｊ）、θｙ（ｉ，ｊ）、およびθｚ（ｉ，ｊ）と、格子ベクトルの角度φｘ（ｋ，ｌ，ｍ）、φｙ（ｋ，ｌ，ｍ），およびφｚ（ｋ，ｌ，ｍ）のうち、その角度を０°または１８０°にするときの補正量が最小のもの（０°または１８０°に最も近いもの）が選択され、選択された角度を０°または１８０°にするための操作が実行される。
【００４２】
ここで、回転補正操作パネル７ｃにおいて指定可能な格子拡張範囲について簡単に説明する。これは、単位格子ベクトルに乗じる整数の範囲の絶対値の上限を指定するものであり、図５においては、単位格子ベクトルａ１，ａ２，ａ３に対してそれぞれ１が設定されている。ここでは、この３つの格子拡張範囲の並びを（１，１，１）と表すものとする。
【００４３】
例えば、単位格子ベクトルａ１に対応する格子拡張範囲として１を指定すると、単位格子ベクトルａ１に乗じることができる整数は、−１，０，１となる。また、格子拡張範囲として２を指定すると、単位格子ベクトルａ１に乗じることができる整数は、−２，−１，０，１，２となる。単位格子ベクトルａ２，ａ３についても同様である。
【００４４】
従って、この場合、例えば、和ベクトルＳ（１，０，１）（＝１×ａ１＋０×ａ２＋１×ａ３）やＳ（０，０，−１）（＝０×ａ１＋０×ａ２＋（−１）×ａ３）を用いて結晶面を指定することはできるが、例えば、和ベクトルＳ（２，２，１）（＝２×ａ１＋２×ａ２＋１×ａ３）やＳ（１，０，−２）（＝１×ａ１＋０×ａ２＋（−２）×ａ３）等を用いて結晶面を指定することはできない。
【００４５】
和ベクトルＳ（２，２，１）やＳ（１，０，−２）等を用いて結晶面を指定する場合には、格子拡張範囲として例えば（２，２，２）等を指定する必要がある。
【００４６】
以上のようにして、分子や結晶の表示角度を自動的にかつ正確に調整することができる。これにより、微妙な表示角度を修正することができ、画面に対して傾きのない美しい表示を行うことができる。また、クリッピングの切断面と原子配列との間に傾きがないようにすることができ、断面の配列を正確に表示することができるため、断面の原子配列の理解を容易にすることができる。また、数値入力を必要としないので、回転角度を算出しておく必要がなく、作業効率を向上させることができる。
【００４７】
さらに、マウス９やダイヤル１０等を用いて表示装置７の作業ウィンドウ７ａに表示された分子や結晶を手動操作で回転させ、大体の表示角度に調整した後、上記操作により、正確に表示角度を調整することができる。ダイヤル１０は、例えば、表示装置７の画面に設定された座標軸（ｘ軸、ｙ軸、およびｚ軸）に対応する３つのダイヤルを有しており、分子や結晶をｘ軸、ｙ軸、およびｚ軸の回りに回転させることができる。
【００４８】
あるいは、図５に示したように、メイン操作パネル７ｂにボタン「回転ダイヤル」を設け、マウス９を操作してそこにカーソルを移動させ、クリックすると、回転操作パネル７ｄが表示されるようにし、この回転操作パネル７ｄをマウス９で操作することにより、表示装置７の作業ウィンドウ７ａに表示された分子や結晶を手動で回転させるようにすることもできる。
【００４９】
回転操作パネル７ｄには、例えば、表示装置７の作業ウィンドウ７ａに表示された分子や結晶をｘ軸、ｙ軸、およびｚ軸回りに回転させるための回転ダイヤル２１乃至２３が表示される。そして、マウス９を操作して例えば回転ダイヤル２１にカーソルを移動させ、マウス９のボタンを押しながらカーソルを右回転または左回転させることにより、回転ダイヤル２１を右回りまたは左回りに回転させる。回転ダイヤル２１が回転するのに伴って、表示装置７の作業ウィンドウ７ａに表示された分子や結晶もｘ軸回りに回転する。
【００５０】
同様に、マウス９を操作して、回転ダイヤル２２，２３を回転させることにより、表示装置７の作業ウィンドウ７ａに表示された分子や結晶をｙ軸回りまたはｚ軸回りに回転させることができる。このようにして、表示装置７に表示された分子や結晶を回転させ、大体の表示角度に調整した後、上記操作により、正確に表示角度を調整することができる。
【００５１】
これにより、ユーザの要求を反映させながら、分子や結晶を所定の角度に正確に表示させることができる。
【００５２】
なお、上記実施例において、メイン操作パネル７ｂの回転補正を選択すると、プルダウンメニューが表示されるようにし、原子間ベクトルや格子ベクトル等を選択することができるようにすることも可能である。また、キー入力によりコマンドを入力することで選択するようにすることも可能である。あるいは、その他のユーザインタフェースを用いることも可能である。
【００５３】
【発明の効果】
請求項１に記載の表示制御方法、および請求項４に記載の表示制御装置によれば、所定の原子と他の原子を結ぶ各原子間ベクトル、または結晶の各単位格子ベクトルに個別に任意の整数を乗算したもの同士の和により求められる各和ベクトルと、画面上に設定した座標軸とのなす角度を演算し、演算された角度のうち、０°または１８０°に最も近い角度を選択し、角度を０°または１８０°にするために、分子または結晶の表示を変換するための操作を決定し、実行するようにしたので、結晶や分子と表示画面とのなす角度を簡単に調整することができ、作業の効率化を図ることができる。
【図面の簡単な説明】
【図１】本発明の表示制御装置を応用したパーソナルコンピュータあるいはワークステーションの構成例を示すブロック図である。
【図２】ＣＰＵ１により実行されるプログラムの機能ブロックを示す図である。
【図３】表示装置７の表示例を示す図である。
【図４】作業ウィンドウの例を示す図である。
【図５】メイン操作パネルと回転補正操作パネルの例を示す図である。
【図６】座標軸の定義を説明するための図である。
【図７】分子を構成する原子間ベクトルとｘ軸とのなす角度を示す図である。
【図８】分子の表示角度が補正される様子を示す図である。
【図９】結晶における単位格子ベクトルと和ベクトルの関係を示す図である。
【図１０】簡単のため、２次元座標系で単位格子ベクトルａ１，ａ２と和ベクトルＳの関係を表した図である。
【図１１】ｚ−クリッピング範囲と原子配列のずれを示す図である。
【図１２】図１１に示したクリッピング断面によって切断された原子を示す図である。
【符号の説明】
１  ＣＰＵ，２  ＲＯＭ，３  ＲＡＭ，４  バス，５  インタフェース，６  記憶装置，７  表示装置，７ａ  作業ウィンドウ，７ｂ  メイン操作パネル，７ｃ  回転補正操作パネル，７ｄ  回転操作パネル，８  キーボード，９  マウス，１０  ダイヤル，１１  演算部，１２  選択部，１３  決定部，１４  実行部，２１乃至２３  回転ダイヤル
【図１】
0003614968.tif 000002
【図２】
0003614968.tif 000003
【図３】
0003614968.tif 000004
【図４】
0003614968.tif 000005
【図５】
0003614968.tif 000006
【図６】
0003614968.tif 000007
【図７】
0003614968.tif 000008
【図８】
0003614968.tif 000009
【図９】
0003614968.tif 000010
【図１０】
0003614968.tif 000011
【図１１】
0003614968.tif 000012
【図１２】
0003614968.tif 000013