RDKit
Open-source cheminformatics and machine learning.
ShapeEncoder.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2005-2006 Rational Discovery LLC
3 //
4 // @@ All Rights Reserved @@
5 // This file is part of the RDKit.
6 // The contents are covered by the terms of the BSD license
7 // which is included in the file license.txt, found at the root
8 // of the RDKit source tree.
9 //
10 #ifndef _RD_SHAPE_ENCODER_H_20050125_0800_
11 #define _RD_SHAPE_ENCODER_H_20050125_0800_
12 
13 namespace RDGeom {
14  class UniformGrid3D;
15  class Transform3D;
16 }
17 
18 namespace RDKit {
19  class ROMol;
20  class Conformer;
21  namespace MolShapes {
22  //! Encode the shape of a molecule on to a grid
23  /*!
24  \param mol The molecule of interest
25  \param grid Grid onto which the molecule is encoded
26  \param confId Id of the conformation on the molecule to be encoded
27  \param trans Optional 3D transform to be applied to this conformation
28  \param vdwScale Scaling factor for the radius of the atoms to determine the base radius
29  used in the encoding - grid points inside this sphere carry the maximum occupany
30  \param stepSize thickness of the layers outside the base radius, the occupancy value is decreased
31  from layer to layer from the maximum value
32  \param maxLayers the maximum number of layers - defaults to the number allowed the number of bits
33  use per grid point - e.g. two bits per grid point will allow 3 layers
34  \param ignoreHs if true, ignore the hydrogen atoms in the shape encoding process
35  */
36  void EncodeShape(const ROMol &mol, RDGeom::UniformGrid3D &grid, int confId=-1,
37  const RDGeom::Transform3D *trans=0, double vdwScale=0.8,
38  double stepSize=0.25, int maxLayers=-1, bool ignoreHs=true);
39 
40  //! Emcode the shape of a conformer on to a grid
41  /*!
42  \param conf The conformer of interest
43  \param grid Grid onto which the molecule is encoded
44  \param trans Optional 3D transform to be applied to this conformation
45  \param vdwScale Scaling factor for the radius of the atoms to determine the base radius
46  used in the encoding - grid points inside this sphere carry the maximum occupany
47  \param stepSize thickness of the layers outside the base radius, the occupancy value is decreased
48  from layer to layer from the maximum value
49  \param maxLayers the maximum number of layers - defaults to the number allowed the number of bits
50  use per grid point - e.g. two bits per grid point will allow 3 layers
51  \param ignoreHs if true, ignore the hydrogen atoms in the shape encoding process
52  */
53  void EncodeShape(const Conformer &conf, RDGeom::UniformGrid3D &grid,
54  const RDGeom::Transform3D *trans=0, double vdwScale=0.8,
55  double stepSize=0.25, int maxLayers=-1, bool ignoreHs=true);
56  }
57 }
58 #endif
59 
void EncodeShape(const Conformer &conf, RDGeom::UniformGrid3D &grid, const RDGeom::Transform3D *trans=0, double vdwScale=0.8, double stepSize=0.25, int maxLayers=-1, bool ignoreHs=true)
Emcode the shape of a conformer on to a grid.
ROMol is a molecule class that is intended to have a fixed topology.
Definition: ROMol.h:105
Includes a bunch of functionality for handling Atom and Bond queries.
Definition: Atom.h:28
The class for representing 2D or 3D conformation of a molecule.
Definition: Conformer.h:41