Ref

データオブジェクト

分子構造などのデータを格納しているオブジェクトを,データオブジェクトという.

  • mol (分子構造)
  • denmap (電子密度マップ)
  • geom (一般的な幾何オブジェクト)
  • surf (分子の溶媒接触表面)

などがある.

データオブジェクトはデータを保持するのみで, 画面への表示はデータオブジェクトにアタッチされた レンダラーによって行われる.

注意
「データオブジェクト」を単に「オブジェクト」と表記している場合があるので注意. たとえば,分子構造のデータオブジェクトを単に「molオブジェクト」と表記している場合がある.

データオブジェクトの識別名

データオブジェクトはユニークな識別名を持っている. オブジェクトに対して何らかの操作を行う場合は, 通常この名前を指定して行う.

データオブジェクトの識別名は, ファイルからデーターを読込んでデータオブジェクトを作成する場合や(下記参照),空のデータオブジェクトを生成する場合(下記参照)に, ユーザーによって指定される. このとき,もし既に同名のデータオブジェクトが存在するようなケースでは エラーになり,例外が発生する.

注意
qobjQScriptオブジェクトは,この識別名を保持しているだけのラッパーであり, データオブジェクトに対する操作を行う場合, データオブジェクトの識別名を文字列で指定して行う方法以外に, qobjのインスタンスに対しメソッドを呼び出す方法もある.

例えば,$molという変数に識別名「protein」というデータオブジェクトの,QScriptオブジェクトが格納されていた場合,

 $mol.destroy();

と,

 qobj.destroy("protein");

はまったく同じ結果になる.

後者のほうがスクリプトが簡潔になるので, 後者の使用が推奨される.

データオブジェクトの生成と破棄

qobj.createObj()スタティックメソッドにより空の状態のデータオブジェクトを作成できる.

さらに,qobj.readObj()スタティックメソッドにより,ファイルから生成できる.このとき,ファイル中のデータ形式に関する処理を行うデータリーダーを指定しなければならない.

逆に,ファイルへの書出しはqobj.writeObj()メソッド(スタティックメソッドでない点に注意!)により行うことができる. このとき,ファイルのデータ形式に関する処理を行うデータライター>Ref/DataWriterを指定しなければならない.

データオブジェクトの破棄は,qobj.destroy()メソッド(スタティックメソッドでない点に注意!)により行うことができる.


Last-modified: Fri, 05 Aug 2005 18:41:26 JST (6832d)