RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
DepictUtils.h File Reference
#include <RDGeneral/export.h>
#include <RDGeneral/types.h>
#include <GraphMol/RDKitBase.h>
#include <GraphMol/RWMol.h>
#include <GraphMol/ROMol.h>
#include <GraphMol/Substruct/SubstructUtils.h>
#include <Geometry/Transform2D.h>
#include <Geometry/Transform3D.h>
#include <Geometry/point.h>
#include <queue>

Go to the source code of this file.

Classes

struct  RDDepict::gtIIPair

Namespaces

namespace  RDDepict

Typedefs

typedef std::vector< const RDGeom::Point2D * > RDDepict::VECT_C_POINT
typedef std::pair< int, int > RDDepict::PAIR_I_I
typedef std::vector< PAIR_I_IRDDepict::VECT_PII
typedef std::priority_queue< PAIR_I_I, VECT_PII, gtIIPairRDDepict::PR_QUEUE
typedef std::pair< double, PAIR_I_IRDDepict::PAIR_D_I_I
typedef std::list< PAIR_D_I_IRDDepict::LIST_PAIR_DII
typedef std::pair< int, int > RDDepict::INT_PAIR
typedef std::vector< INT_PAIRRDDepict::INT_PAIR_VECT
typedef INT_PAIR_VECT::const_iterator RDDepict::INT_PAIR_VECT_CI
typedef std::pair< double, INT_PAIRRDDepict::DOUBLE_INT_PAIR

Functions

RDKIT_DEPICTOR_EXPORT RDGeom::INT_POINT2D_MAP RDDepict::embedRing (const RDKit::INT_VECT &ring)
 Some utility functions used in generating 2D coordinates.
RDKIT_DEPICTOR_EXPORT void RDDepict::transformPoints (RDGeom::INT_POINT2D_MAP &nringCor, const RDGeom::Transform2D &trans)
RDKIT_DEPICTOR_EXPORT RDGeom::Point2D RDDepict::computeBisectPoint (const RDGeom::Point2D &rcr, double ang, const RDGeom::Point2D &nb1, const RDGeom::Point2D &nb2)
 Find a point that bisects the angle at rcr.
RDKIT_DEPICTOR_EXPORT void RDDepict::reflectPoints (RDGeom::INT_POINT2D_MAP &coordMap, const RDGeom::Point2D &loc1, const RDGeom::Point2D &loc2)
 Reflect a set of point through the line joining two point.
RDKIT_DEPICTOR_EXPORT RDGeom::Point2D RDDepict::reflectPoint (const RDGeom::Point2D &point, const RDGeom::Point2D &loc1, const RDGeom::Point2D &loc2)
RDKIT_DEPICTOR_EXPORT RDKit::INT_VECT RDDepict::setNbrOrder (unsigned int aid, const RDKit::INT_VECT &nbrs, const RDKit::ROMol &mol)
RDKIT_DEPICTOR_EXPORT RDKit::VECT_INT_VECT RDDepict::findCoreRings (const RDKit::VECT_INT_VECT &fusedRings, RDKit::INT_VECT &coreRingsIds, const RDKit::ROMol &mol)
 From a given set of fused rings find the "core" rings, i.e. the rings that are left after iteratively removing rings that are fused with only one other ring by one or two atoms.
RDKIT_DEPICTOR_EXPORT RDKit::INT_VECT RDDepict::findNextRingToEmbed (const RDKit::INT_VECT &doneRings, const RDKit::VECT_INT_VECT &fusedRings, int &nextId)
 From a given set of rings find the ring the largest common elements with other rings.
template<class T>
RDKIT_DEPICTOR_EXPORTRDDepict::rankAtomsByRank (const RDKit::ROMol &mol, const T &commAtms, bool ascending=true)
 Sort a list of atoms by their CIP rank.
double RDDepict::computeSubAngle (unsigned int degree, RDKit::Atom::HybridizationType htype)
 computes a subangle for an atom of given hybridization and degree
int RDDepict::rotationDir (const RDGeom::Point2D &center, const RDGeom::Point2D &loc1, const RDGeom::Point2D &loc2, double remAngle)
 computes the rotation direction between two vectors
RDGeom::Point2D RDDepict::computeNormal (const RDGeom::Point2D &center, const RDGeom::Point2D &other)
 computes and return the normal of a vector between two points
double RDDepict::computeAngle (const RDGeom::Point2D &center, const RDGeom::Point2D &loc1, const RDGeom::Point2D &loc2)
 computes the rotation angle between two vectors
RDKIT_DEPICTOR_EXPORT int RDDepict::pickFirstRingToEmbed (const RDKit::ROMol &mol, const RDKit::VECT_INT_VECT &fusedRings)
 pick the ring to embed first in a fused system
RDKIT_DEPICTOR_EXPORT RDKit::INT_VECT RDDepict::getRotatableBonds (const RDKit::ROMol &mol, unsigned int aid1, unsigned int aid2)
 find the rotatable bonds on the shortest path between two atoms we will ignore ring atoms, and double bonds which are marked cis/trans
RDKIT_DEPICTOR_EXPORT RDKit::INT_VECT RDDepict::getAllRotatableBonds (const RDKit::ROMol &mol)
 find all the rotatable bonds in a molecule we will ignore ring atoms, and double bonds which are marked cis/trans
RDKIT_DEPICTOR_EXPORT void RDDepict::getNbrAtomAndBondIds (unsigned int aid, const RDKit::ROMol *mol, RDKit::INT_VECT &aids, RDKit::INT_VECT &bids)
 Get the ids of the atoms and bonds that are connected to aid.
RDKIT_DEPICTOR_EXPORT INT_PAIR_VECT RDDepict::findBondsPairsToPermuteDeg4 (const RDGeom::Point2D &center, const RDKit::INT_VECT &nbrBids, const VECT_C_POINT &nbrLocs)
 Find pairs of bonds that can be permuted at a non-ring degree 4 atom.
int RDDepict::getAtomDepictRank (const RDKit::Atom *at)
 returns the rank of the atom for determining draw order
RDKIT_DEPICTOR_EXPORT bool RDDepict::hasTerminalRGroupOrQueryHydrogen (const RDKit::ROMol &query)
RDKIT_DEPICTOR_EXPORT std::unique_ptr< RDKit::RWMolRDDepict::prepareTemplateForRGroups (RDKit::RWMol &templateMol)
RDKIT_DEPICTOR_EXPORT void RDDepict::reducedToFullMatches (const RDKit::RWMol &reducedQuery, const RDKit::RWMol &molHs, std::vector< RDKit::MatchVectType > &matches)
RDKIT_DEPICTOR_EXPORT bool RDDepict::invertWedgingIfMolHasFlipped (RDKit::ROMol &mol, const RDGeom::Transform3D &trans)

Variables

RDKIT_DEPICTOR_EXPORT double RDDepict::BOND_LEN
RDKIT_DEPICTOR_EXPORT double RDDepict::COLLISION_THRES
RDKIT_DEPICTOR_EXPORT double RDDepict::BOND_THRES
RDKIT_DEPICTOR_EXPORT double RDDepict::ANGLE_OPEN
RDKIT_DEPICTOR_EXPORT unsigned int RDDepict::MAX_COLL_ITERS
RDKIT_DEPICTOR_EXPORT double RDDepict::HETEROATOM_COLL_SCALE
RDKIT_DEPICTOR_EXPORT unsigned int RDDepict::NUM_BONDS_FLIPS