public void TestGetCIPChiralityDoubleBondTogether() { var container = CDK.SmilesParser.ParseSmiles("CCC(C)=C(C)CC"); CIPTool.CIPChirality label = CIPTool.GetCIPChirality( container, new DoubleBondStereochemistry(container.GetBond(container.Atoms[2], container.Atoms[4]), new IBond[] { container.GetBond(container.Atoms[2], container.Atoms[3]), container.GetBond(container.Atoms[4], container.Atoms[5]) }, DoubleBondConformation.Together)); Assert.AreEqual(CIPTool.CIPChirality.Z, label); }
public void TestGetCIPChiralityAntiILigancyFourChirality() { var antiLigands = new ILigand[] { ligands[0], ligands[1], ligands[3], ligands[2] }; var ligandAtoms = new List <IAtom>(); foreach (var ligand in antiLigands) { ligandAtoms.Add(ligand.LigandAtom); } var chirality = new TetrahedralChirality(molecule.Atoms[1], ligandAtoms, TetrahedralStereo.AntiClockwise); CIPTool.CIPChirality rsChirality = CIPTool.GetCIPChirality(molecule, chirality); Assert.AreEqual(CIPTool.CIPChirality.S, rsChirality); }
public void TestOla28() { var filename = "NCDK.Data.CML.mol28.cml"; IChemFile file; IAtomContainer mol; using (var reader = new CMLReader(ResourceLoader.GetAsStream(filename))) { file = reader.Read(builder.NewChemFile()); mol = ChemFileManipulator.GetAllAtomContainers(file).First(); } foreach (var atom in mol.Atoms) { var neighbors = mol.GetConnectedAtoms(atom).ToReadOnlyList(); if (neighbors.Count == 4) { var stereo = StereoTool.GetStereo(neighbors[0], neighbors[1], neighbors[2], neighbors[3]); ITetrahedralChirality stereoCenter = new TetrahedralChirality(mol.Atoms[0], neighbors, stereo); CIPTool.CIPChirality chirality = CIPTool.GetCIPChirality(mol, stereoCenter); } } }