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