3. 結晶構造ビューワー

3.0. 概要

 結晶構造ビューワー (Structure viewer)は、メインウィンドウで選択した結晶の構造を三次元的的に描画します。Open GL 1.3を利用した描画を行っているため、対応したビデオカードが必要です。結晶の回転状態は全ウィンドウで同期されており、どれかのウィンドウで結晶を回転させるとその状態が他のウィンドウに即座に反映されます。

 結晶構造ビューワー は、大きく分けて以下のパーツに分かれています。

  • メインエリア (画面中央のOpenGL描画エリア)
  • ファイルメニュー (画面上部)
  • タブメニュー (画面下部)
  • 下部ツールバー (画面最下部)

個々の説明は以下をご覧ください。


3.1. メインエリア

 画面の中央部に結晶構造が描画されます。左上には照明の方向が描画されます。左下には結晶軸の方向が表示されます。右側には原子の凡例が表示されます。

3.1.1. マウス操作

 以下のようなマウス操作を受け付けます。


3.2. ファイルメニュー

3.2.1 ファイル

画像を保存

 描画画像をファイルに保存します。メインイメージ、凡例、結晶軸、光源方向のいずれかを選択し、ファイル名を指定して保存してください。

画像をクリップボードにコピー

 描画画像をクリップボードにコピーします。メインイメージ、凡例、結晶軸、光源方向のいずれかを選択し、適当なソフトに貼り付けてください。CTRL+SHIFT+cのショートカットでメインイメージのコピーを行います。

動画を保存

 描画画像を指定した方向に任意の速度で回転させ、動画ファイルを生成します。

まず、メインイメージか結晶軸のいずれかを選択すると、Movie settingのウィンドウが現れます。Movie settingのウィンドウでは、どのような動画を作成するかを設定します。

Speed

 回転速度を設定します。

Duration

 動画の時間を設定します。速度×時間 = 合計回転角度ということになります。

Direction

 Current projection: 現在の投影方向を基準とした回転軸で結晶を回転させます。回転させたい方向の矢印を一つ選択してください。

 Crystal Axis/Plane: 設定した指数の結晶軸あるいは面(の法線方向)を回転軸として結晶を回転させます。

H264/H265

 エンコード方式を設定します。PowerPointで使いたい場合はH264を選択してください。

Encode Speed

 エンコード速度を指定します。

3.2.2 ツール

I Like Vesta

 著名なソフトウェアVestaと同じような見栄えになるように、原子色/サイズ、結合設定を変更します。

3.2.3 ショートカットヒント

 Shortcut hint が表示されます。


3.3. タブメニュー

3.3.1. 描画範囲

 このタブでは、結晶の描画範囲を指定します。指定の仕方には、単位格子を基準にする方法と、結晶面によって指定する方法があります。上部のラジオボタンによって切り替えることが出来ます。

描画範囲を単位格子で指定

 このモードでは、単位格子のa, b, c軸を描画範囲の単位とします。「中心」となる分率座標を指定し、「範囲」で各軸の上限/下限値を指定します。

よく使う値については右側のプリセットボタンで直接指定することもできます。

描画範囲を結晶面で指定

このモードでは、指定した結晶面を境界面として、描画範囲を指定します。

境界面リスト

 境界面のリストが表示されます。境界面を一時的に無効にしたい場合は、一番左のチェックボックスをアンチェックしてください。

追加/更新/削除

 新しい境界面を加えたい場合は「追加」ボタンを、置き換えたい場合は「更新」ボタンを、既存の結晶面を削除したい場合は「削除」ボタンを押してください。

ここで行った変更を恒久的に保存したい場合は、必ずメインウィンドウでも追加あるいは更新を行ってください。そうしないと、メインウィンドウの結晶リストの選択を変更した際、変更内容が失われてしまいます。

原点からの最大距離

 もし入力した境界面が不完全で空間的に閉じた領域を定義出来ない場合、ここで指定された値を原点からの最大距離として、描画範囲が設定されます。

即時更新

 チェックすると、設定値を変更すると即座に描画に反映されます。

h k l / 等価な面を考慮

 境界面をMiller指数で設定します。指数を設定する部分の左側にある「等価な面を考慮」チェックボックスは、設定した面に対して結晶学的に等価な面を考慮するかどうかを決定します1

原点からの距離

 結晶の中心からBound面までの距離を設定します。距離の単位は、”d”か”Å”を選択できます。前者の場合は、入力した値に結晶面のd値をかけたものが距離になります(図の場合は、d×1.5 = 9.949Å)になります。後者を選択した場合は、入力した値がそのまま距離になります。どちらかを変更すると、もう片方も自動で変更されます。

平行移動量

 境界面を平行移動させる量を指定します。

表示オプション

境界面を表示 / 透明度

 境界面を表示するかどうかを決定します。また表示する場合、その透明度をOpacityで設定します(0が透明、1が不透明)。

境界面でクリップ

 チェックすると、Boundsで指定された範囲内のみを厳密に描画し、Boundsと交差するオブジェクトはクリップします。

全ての原子を隠す

 チェックすると、全ての原子、結合、多面体を非表示にします2


3.3.2. 原子情報

このタブでは、原子の座標や見た目を設定します。

原子リスト

 結晶に含まれる原子のリストが表示されます。原子の描画を一時的に無効にしたい場合は、リスト中の一番左のチェックボックスをアンチェックしてください。

追加/更新/削除

 新しい原子を加えたい場合は「追加」ボタンを、置き換えたい場合は「更新」ボタンを、既存の原子を削除したい場合は「削除」ボタンを押してください。ここで行った変更を恒久的に保存したい場合は、必ずメインウィンドウでも追加あるいは更新を行ってください。そうしないと、メインウィンドウの結晶リストの選択を変更した際、ここで行った変更内容は失われてしまいます。

元素種と原子位置タブ

ラベル

 原子のラベルを入力します。

元素

 元素を表示/設定します。

X, Y, Z

 原子の分立座標を表示/設定します。0から1までの実数あるいは1/2や2/3のような分数を入力してください

Occ

 原子の占有度を指定します。0から1までの実数を指定してください。

原点シフトタブ

原子位置のシフトを行います。プリセットされたボタンを押すか、Custom値を入れて“Apply custom shift”ボタンを押します。


表示タブ

描画する原子の半径や色、質感を設定します。

同種の原子を更新

このタブを選択したときにのみ現れます。設定した情報(イオン半径と描画色)を同元素種の原子すべてに適用します。

半径/原子の色

原子半径あるいは原子の描画色を指定します。

環境/拡散/反射/粗さ/放射/透明度

描画時の原子の質感を設定します。(Ambient: 環境光の強さ; Emission: 放射光の強さ; Shininess: 反射光の強さ; Diffusion: 拡散光の強さ; Specular: 反射光の強さ; Alpha: 透明度)


3.3.3. 結合と多面体

このタブでは結晶構造描画時に使われる結合ボンドとボンドで構成される多面体の情報を入力します。

結合リスト

 結合情報が表示されます。ボンドを一時的に無効にしたい場合は、リスト中の一番左のチェックボックスをアンチェックしてください。

追加/更新/削除

 新しい結合を加えたい場合は「追加」ボタンを、置き換えたい場合は「更新」ボタンを、既存の結合を削除したい場合は「削除」ボタンを押してください。ここで行った変更を恒久的に保存したい場合は、必ずメインウィンドウでも追加あるいは更新を行ってください。そうしないと、メインウィンドウの結晶リストの選択を変更した際、ここで行った変更内容は失われてしまいます。

結合を表示

 ボンド情報を設定/表示します。

結合原子 (中心/頂点)

 ボンドを構成する元素種を表示/設定します。多面体を描画するときには中心と頂点が区別されますので適切に設定してください。

結合長の範囲

 ボンドの長さの下限、上限を表示/設定します。このしきい値を上回る/下回る場合は描画の対象になりません。

半径

 描画するボンドの太さ(半径)を表示/設定します。

透明度

 描画するボンドの透明度を表示/設定します。

多面体を表示

 チェックするとコントロールがアクティブになり、ボンドによって構成される多面体を(多面体が成立すれば)表示します。

結合を表示

 チェックすると多面体の中にあるボンドを表示します。

中心/頂点を表示

 チェックすると多面体の中心/頂点原子を表示します。

透明度

 多面体の面の透明度を設定します。

辺を表示/線幅

 チェックすると多面体の辺(頂点間を結ぶ線)を表示します。表示する場合、線の太さを設定できます。


3.3.4. 単位格子

 このタブでは結晶の単位格子の描画に関する設定を行います。「単位格子を表示」 をチェックするとコントロールがアクティブとなり、単位格子の描画が行われます。

Translation

 全ての空間群には既定の原点があります。単位格子の中心を、空間群原点から並進させたいときは、a,b,c軸方向に並進量を設定してください。

Show cell plane

 単位格子を構成する6枚の面を描画するかどうかを設定します。描画する場合はその面の色や透明度を設定します。

Show edges

 単位格子の稜線を描画するかどうかを設定します。描画する場合は、その稜線の色を設定します。



3.3.5. 結晶格子面

 このタブでは、結晶面の描画に関する設定を行います。上部に結晶格子面リストが表示されます。結晶格子面を一時的に無効にしたい場合は、リスト中の一番左のチェックボックスをアンチェックしてください。

追加/更新/削除

 新しい結晶格子面を加えたい場合は「追加」ボタンを、置き換えたい場合は「更新」ボタンを、既存の結晶格子面を削除したい場合は「削除」ボタンを押してください。ここで行った変更を恒久的に保存したい場合は、必ずメインウィンドウでも追加あるいは更新を行ってください。そうしないと、メインウィンドウの結晶リストの選択を変更した際、ここで行った変更内容は失われてしまいます。

h k l

 描画したい結晶格子面をMiller指数で指定します。

平行移動

 結晶面を並進移動させたい場合は、平行移動量を入力してください。


3.3.6 配位情報

原子の配位距離に関する情報が表示されます。

Table (Left side)

 左側のテーブルには、Target atomとして指定した原子の周囲に、どのような原子がどれくらいの距離で存在するかを表示します。

Graph (right side)

 左のテーブルの情報をグラフ化したものです。“Bar width” を適当な太さに調整することによって、”Target atom”の配位数が推定できます。


3.3.7. 情報

 原子をダブルクリックすると、その原子の近辺の原子までの距離、および結合角が表示されます。


3.3.8. 投影

 投影方法や品質、フェードアウト効果に関する設定を行います。

投影方法

 投影方法を設定します。 ”Orthographic”では完全な平行投影(無限遠投影)を行います。“Perspective”では、トラックバーで設定される視点距離から遠近感のある投影を行います

フェードアウト効果

 画面奥行き方向に関して遠くに描画される物体のフェードアウト処理を行います。”Far”で設定された値よりも遠くの物体は完全に透明になり、”Near”で設定された物体よりも近くにある物体は完全に不透明です。中間の物体は、0-1の範囲の透明度に設定されます。

投影中心

 投影中心を分率座標のどこと一致させるかを設定します。

描画品質

 描画品質を選択します。品質を高くすると描画処理が遅くなりますので、お使いのGPU性能にあった品詞を選んでください。

透明度の計算方法

 半透明な物体(原子や多面体)の重なり合いを計算する際のアルゴリズムを選択します。 ”Approximate”は、物体の配置によっては不正確な描画になる可能性がありますが、高速です。” Perfect”は、正確に透明度を計算しますが、計算速度が非常に遅くなりますので、外付けGPUカードが必須となります。



3.3.9. その他

光源、結晶軸、凡例の設定

 Accessory control の大きさを設定します。また、「元素でまとめる」をチェックすると、ラベルではなく元素ごとに凡例を表示します。

ラベル

 原子ラベルの表示に関する設定を行います。フォントサイズや色を変更することが出来ます。

結合原子

 「3.3.3. 結合と多面体」においてなんらかの原子間結合を設定していて、その結合が描画境界をまたぐような場合の時、境界外であってもその原子を描画します。


7.4. 下部ツールバー

 最下部に設置されているツールバーから、描画対象のオブジェクトを選択します。

Crystal Axes

 軸の向きを表示します。軸の大きさは格子定数を反映しています。このボックスでもマウスによる回転ができます。

Lightning ball

 光源の位置(向き)を指定します。左ドラッグで変更できます。

Legend

 原子の凡例を表示します。表示される文字をラベルにするか、Miscタブから元素名にするか、選択できます。

Like Vesta

 著名なソフトウェアVestaと同じような見栄えになるように、原子色/サイズ、結合設定を変更します。


  1. 例えば立方晶系の結晶に対してequivalencyをチェックして{110}を指定すると、結晶学的に等価な次の12枚の結晶面(110), (1-10), (-110), (-1-10), (101), (10-1), (-101), (-10-1), (011), (01-1), (0-11), (0-1-1)がboundsとして設定されます。 ↩︎
  2. 「境界面を表示」 と「原子を隠す」を両方チェックすれば、任意の結晶外形を描画することが出来ます。つまり、結晶の形状を表現することが出来ます。
    ↩︎
contents