コード例 #1
0
ファイル: MoleculeFactory.cs プロジェクト: nofuture-git/31g
        public static IAtomContainer OrangeSmell()
        {
            var orangeSmell = new Ring(6, "C");

            orangeSmell.Bonds[5].Order = BondOrder.Double;

            var carbonBottom = orangeSmell.Atoms[3];
            var li00         = orangeSmell.Atoms[2];
            var li01         = orangeSmell.Atoms[4];

            var carbonAdded = orangeSmell.AddAtom("C");
            var hydrogen    = orangeSmell.AddAtom("H");

            orangeSmell.AddBond(orangeSmell.Atoms[0], orangeSmell.AddAtom("C"), BondOrder.Single);
            orangeSmell.AddBond(carbonBottom, carbonAdded, BondOrder.Single);

            orangeSmell.AddBond(carbonBottom, hydrogen, BondOrder.Single);

            orangeSmell.AddBond(carbonAdded, orangeSmell.AddAtom("C"), BondOrder.Double);
            orangeSmell.AddBond(carbonAdded, orangeSmell.AddAtom("C"), BondOrder.Single);

            var ligands = new[] { li00, li01, carbonAdded, hydrogen };

            orangeSmell.StereoElements.Add(new TetrahedralChirality(carbonBottom, ligands, TetrahedralStereo.AntiClockwise));

            orangeSmell.SetProperty(NCDK.CDKPropertyName.Title, nameof(orangeSmell));

            return(orangeSmell);
        }