VTK
dox/Chemistry/vtkMoleculeToAtomBallFilter.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkMoleculeToAtomBallFilter.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00033 #ifndef __vtkMoleculeToAtomBallFilter_h
00034 #define __vtkMoleculeToAtomBallFilter_h
00035 
00036 #include "vtkMoleculeToPolyDataFilter.h"
00037 
00038 class vtkMolecule;
00039 
00040 class VTK_CHEMISTRY_EXPORT vtkMoleculeToAtomBallFilter
00041   : public vtkMoleculeToPolyDataFilter
00042 {
00043  public:
00044   vtkTypeMacro(vtkMoleculeToAtomBallFilter,vtkMoleculeToPolyDataFilter);
00045   void PrintSelf(ostream& os, vtkIndent indent);
00046 
00047   static vtkMoleculeToAtomBallFilter *New();
00048 
00049   enum {
00050     CovalentRadius = 0,
00051     VDWRadius,
00052     UnitRadius
00053   }; // TODO Custom radii from array/fieldData
00054 
00055   vtkGetMacro(RadiusSource, int);
00056   vtkSetMacro(RadiusSource, int);
00057 
00058   vtkGetMacro(Resolution, int);
00059   vtkSetMacro(Resolution, int);
00060 
00061   vtkGetMacro(RadiusScale, double);
00062   vtkSetMacro(RadiusScale, double);
00063 
00064 protected:
00065   vtkMoleculeToAtomBallFilter();
00066   ~vtkMoleculeToAtomBallFilter();
00067 
00068   int RequestData(vtkInformation *, vtkInformationVector **,
00069                   vtkInformationVector *);
00070 
00071   int Resolution;
00072   double RadiusScale;
00073   int RadiusSource;
00074 
00075 private:
00076   vtkMoleculeToAtomBallFilter(const vtkMoleculeToAtomBallFilter&);  // Not implemented.
00077   void operator=(const vtkMoleculeToAtomBallFilter&);  // Not implemented.
00078 };
00079 
00080 #endif