00001 // 00002 // Copyright (C) 2005-2006 Rational Discovery LLC 00003 // 00004 // @@ All Rights Reserved @@ 00005 // This file is part of the RDKit. 00006 // The contents are covered by the terms of the BSD license 00007 // which is included in the file license.txt, found at the root 00008 // of the RDKit source tree. 00009 // 00010 #ifndef _RD_SHAPE_ENCODER_H_20050125_0800_ 00011 #define _RD_SHAPE_ENCODER_H_20050125_0800_ 00012 00013 namespace RDGeom { 00014 class UniformGrid3D; 00015 class Transform3D; 00016 } 00017 00018 namespace RDKit { 00019 class ROMol; 00020 class Conformer; 00021 namespace MolShapes { 00022 //! Encode the shape of a molecule on to a grid 00023 /*! 00024 \param mol The molecule of interest 00025 \param grid Grid onto which the molecule is encoded 00026 \param confId Id of the conformation on the molecule to be encoded 00027 \param trans Optional 3D transform to be applied to this conformation 00028 \param vdwScale Scaling factor for the radius of the atoms to determine the base radius 00029 used in the encoding - grid points inside this sphere carry the maximum occupany 00030 \param stepSize thickness of the layers outside the base radius, the occupancy value is decreased 00031 from layer to layer from the maximum value 00032 \param maxLayers the maximum number of layers - defaults to the number allowed the number of bits 00033 use per grid point - e.g. two bits per grid point will allow 3 layers 00034 \param ignoreHs if true, ignore the hydrogen atoms in the shape encoding process 00035 */ 00036 void EncodeShape(const ROMol &mol, RDGeom::UniformGrid3D &grid, int confId=-1, 00037 const RDGeom::Transform3D *trans=0, double vdwScale=0.8, 00038 double stepSize=0.25, int maxLayers=-1, bool ignoreHs=true); 00039 00040 //! Emcode the shape of a conformer on to a grid 00041 /*! 00042 \param conf The conformer of interest 00043 \param grid Grid onto which the molecule is encoded 00044 \param trans Optional 3D transform to be applied to this conformation 00045 \param vdwScale Scaling factor for the radius of the atoms to determine the base radius 00046 used in the encoding - grid points inside this sphere carry the maximum occupany 00047 \param stepSize thickness of the layers outside the base radius, the occupancy value is decreased 00048 from layer to layer from the maximum value 00049 \param maxLayers the maximum number of layers - defaults to the number allowed the number of bits 00050 use per grid point - e.g. two bits per grid point will allow 3 layers 00051 \param ignoreHs if true, ignore the hydrogen atoms in the shape encoding process 00052 */ 00053 void EncodeShape(const Conformer &conf, RDGeom::UniformGrid3D &grid, 00054 const RDGeom::Transform3D *trans=0, double vdwScale=0.8, 00055 double stepSize=0.25, int maxLayers=-1, bool ignoreHs=true); 00056 } 00057 } 00058 #endif 00059
1.7.1