Пример #1
0
def _mols2imageString(mols,
                      size,
                      legend,
                      format,
                      recalc=False,
                      highlightMatch=None):
    """Take an input stream for the molecule image and return as a string"""
    if not mols:
        return ''

#   if recalc:
#      _apply(mols, _computeCoords)
    imageData = StringIO.StringIO()
    for mol in mols:
        try:
            SanitizeMol(mol,
                        sanitizeOps=SanitizeFlags.SANITIZE_ALL
                        ^ SanitizeFlags.SANITIZE_CLEANUPCHIRALITY
                        ^ Chem.SanitizeFlags.SANITIZE_SETCONJUGATION
                        ^ Chem.SanitizeFlags.SANITIZE_SETAROMATICITY)
        except ValueError:
            return imageData.getvalue()
        AllChem.AssignAtomChiralTagsFromStructure(mol,
                                                  replaceExistingTags=False)
    _mols2imageStream(mols,
                      imageData,
                      format,
                      size,
                      legend,
                      highlightMatch=highlightMatch)
    return imageData.getvalue()
Пример #2
0
    def update_stereochemistry(self, conformer=-1):
        """
        Updates stereochemistry tags in :attr:`Molecule.mol`.

        Parameters
        ----------
        conformer : :class:`int`, optional
            The conformer to use.

        Returns
        -------
        None : :class:`NoneType`

        """

        for atom in self.mol.GetAtoms():
            atom.UpdatePropertyCache()
        rdkit.AssignAtomChiralTagsFromStructure(self.mol, conformer)
        rdkit.AssignStereochemistry(self.mol, True, True, True)
def update_stereochemistry(mol):
    for atom in mol.GetAtoms():
        atom.UpdatePropertyCache()
    rdkit.AssignAtomChiralTagsFromStructure(mol)
    rdkit.AssignStereochemistry(mol, True, True, True)