VTK
vtkPeriodicTable.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPeriodicTable.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
26 #ifndef vtkPeriodicTable_h
27 #define vtkPeriodicTable_h
28 
29 #include "vtkDomainsChemistryModule.h" // For export macro
30 #include "vtkObject.h"
31 #include "vtkNew.h" // Needed for the static data member
32 
33 class vtkBlueObeliskData;
34 class vtkColor3f;
35 class vtkLookupTable;
36 class vtkStdString;
37 
38 class VTKDOMAINSCHEMISTRY_EXPORT vtkPeriodicTable : public vtkObject
39 {
40 public:
41  vtkTypeMacro(vtkPeriodicTable, vtkObject);
42  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
43  static vtkPeriodicTable * New();
44 
46 
50  vtkGetNewMacro(BlueObeliskData, vtkBlueObeliskData);
52 
56  unsigned short GetNumberOfElements();
57 
62  const char * GetSymbol(const unsigned short atomicNum);
63 
67  const char * GetElementName(const unsigned short atomicNum);
68 
70 
74  unsigned short GetAtomicNumber(const vtkStdString &str);
75  unsigned short GetAtomicNumber(const char *str);
77 
81  float GetCovalentRadius(const unsigned short atomicNum);
82 
87  float GetVDWRadius(const unsigned short atomicNum);
88 
93  void GetDefaultLUT(vtkLookupTable *);
94 
99  void GetDefaultRGBTuple(unsigned short atomicNum, float rgb[3]);
100 
105  vtkColor3f GetDefaultRGBTuple(unsigned short atomicNum);
106 
107 protected:
109  ~vtkPeriodicTable() VTK_OVERRIDE;
110 
111  static vtkNew<vtkBlueObeliskData> BlueObeliskData;
112 
113 private:
114  vtkPeriodicTable(const vtkPeriodicTable&) VTK_DELETE_FUNCTION;
115  void operator=(const vtkPeriodicTable&) VTK_DELETE_FUNCTION;
116 };
117 
118 #endif
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:41
Access to information about the elements.
abstract base class for most VTK objects
Definition: vtkObject.h:53
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
map scalar values into colors via a lookup table
a simple class to control print indentation
Definition: vtkIndent.h:33
Allocate and hold a VTK object.
Definition: vtkNew.h:61
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
Contains chemical data from the Blue Obelisk Data Repository.