2006年07月08日

CDKでsmi2sdf

CDKでは、化合物の2次元座標の生成ができます。最近、Web上で公開されている分子ファイルは3次元座標であることも多いのですが、いろいろな面で2次元座標も必要になることがあるので、CDKのこの機能は重宝しています。

まずは、連続してSMILESが格納されているファイルの読み込みには、IteratingSMILESReaderクラスを利用します。基本的な使い方を以下に示しますが、以前メモしたIteratingMDLReaderクラスと同じですね。

FileReader fr = null;
fr = new FileReader(new File(filename));
IteratingSMILESReader isr = new IteratingSMILESReader(fr);
while(isr.hasNext()){
 mol = (Molecule)isr.next();
}

2次元座標の生成には、StructureDiagramGeneratorクラスを利用します。setMolecule(Molecule mol)メソッドで分子をセットし、generateCoordinates()メソッドで2次元座標の生成を行い、最後に、getMolecule()メソッドで取得となります。

StructureDiagramGenerator sdg = new StructureDiagramGenerator();
sdg.setMolecule(mol);
sdg.generateCoordinates();
mol = sdg.getMolecule();


banner_02.gif
人気ブログランキング(クリックして応援してね)


posted by わばのり at 08:49| Comment(0) | TrackBack(0) | CDK | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。