VTK  9.0.1
vtkAtom.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAtom.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 =========================================================================*/
21 #ifndef vtkAtom_h
22 #define vtkAtom_h
23 
24 #include "vtkCommonDataModelModule.h" // For export macro
25 #include "vtkObject.h" // For macros, defines, etc
26 
27 class vtkMolecule;
28 class vtkVector3d;
29 class vtkVector3f;
30 
31 class VTKCOMMONDATAMODEL_EXPORT vtkAtom
32 {
33 public:
34  void PrintSelf(ostream& os, vtkIndent indent);
35 
39  vtkIdType GetId() const;
40 
44  vtkMolecule* GetMolecule();
45 
47 
50  unsigned short GetAtomicNumber() const;
51  void SetAtomicNumber(unsigned short atomicNum);
53 
55 
58  void GetPosition(float pos[3]) const;
59  void GetPosition(double pos[3]) const;
60  void SetPosition(const float pos[3]);
61  void SetPosition(float x, float y, float z);
62  vtkVector3f GetPosition() const;
63  void SetPosition(const vtkVector3f& pos);
65 
66 protected:
67  friend class vtkMolecule;
68 
69  vtkAtom(vtkMolecule* parent, vtkIdType id);
70 
73 };
74 
75 inline vtkIdType vtkAtom::GetId() const
76 {
77  return this->Id;
78 }
79 
81 {
82  return this->Molecule;
83 }
84 
85 #endif
86 // VTK-HeaderTest-Exclude: vtkAtom.h
vtkIdType
int vtkIdType
Definition: vtkType.h:338
vtkAtom::Molecule
vtkMolecule * Molecule
Definition: vtkAtom.h:71
vtkAtom
convenience proxy for vtkMolecule
Definition: vtkAtom.h:31
vtkAtom::GetMolecule
vtkMolecule * GetMolecule()
Return the parent molecule of this atom.
Definition: vtkAtom.h:80
vtkVector3f
Definition: vtkVector.h:475
vtkMolecule::vtkAtom
friend class vtkAtom
Definition: vtkMolecule.h:464
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkAtom::GetId
vtkIdType GetId() const
Return the Id used to identify this atom in the parent molecule.
Definition: vtkAtom.h:75
vtkMolecule
class describing a molecule
Definition: vtkMolecule.h:91
vtkObject.h
vtkAtom::Id
vtkIdType Id
Definition: vtkAtom.h:72
vtkVector3d
Definition: vtkVector.h:488