24 #ifndef vtkMoleculeMapper_h 25 #define vtkMoleculeMapper_h 27 #include "vtkDomainsChemistryModule.h" 69 void UseBallAndStickSettings();
82 void UseVDWSpheresSettings();
95 void UseLiquoriceStickSettings();
111 void UseFastSettings();
117 vtkGetMacro(RenderAtoms,
bool);
126 vtkGetMacro(RenderBonds,
bool);
136 vtkGetMacro(RenderLattice,
bool)
154 vtkGetMacro(AtomicRadiusType,
int);
156 const char * GetAtomicRadiusTypeAsString();
159 this->SetAtomicRadiusType(CovalentRadius);
163 this->SetAtomicRadiusType(VDWRadius);
167 this->SetAtomicRadiusType(UnitRadius);
171 this->SetAtomicRadiusType(CustomArrayRadius);
181 vtkGetMacro(AtomicRadiusScaleFactor,
float);
190 vtkGetMacro(UseMultiCylindersForBonds,
bool);
211 vtkGetMacro(BondColorMode,
int);
213 const char * GetBondColorModeAsString();
216 this->SetBondColorMode(SingleColor);
220 this->SetBondColorMode(DiscreteByAtom);
229 vtkGetVector3Macro(BondColor,
unsigned char);
230 vtkSetVector3Macro(BondColor,
unsigned char);
237 vtkGetMacro(BondRadius,
float);
246 vtkGetVector3Macro(LatticeColor,
unsigned char)
247 vtkSetVector3Macro(LatticeColor,
unsigned char)
255 virtual void GetSelectedAtomsAndBonds(
vtkSelection *selection,
261 this->GetSelectedAtomsAndBonds(selection, atomIds, NULL);
266 this->GetSelectedAtomsAndBonds(selection, NULL, bondIds);
303 unsigned char BondColor[3];
322 virtual void UpdateGlyphPolyData();
323 virtual void UpdateAtomGlyphPolyData();
324 virtual void UpdateBondGlyphPolyData();
335 unsigned char LatticeColor[3];
338 virtual void UpdateLatticePolyData();
Access to information about the elements.
represents an object (geometry & properties) in a rendered scene
vtkNew< vtkGlyph3DMapper > BondGlyphMapper
Internal mappers.
bool RenderBonds
Customize bond rendering.
vtkNew< vtkPeriodicTable > PeriodicTable
Periodic table for lookups.
bool GetSupportsSelection() override
Reimplemented from base class.
class describing a molecule
float AtomicRadiusScaleFactor
Customize atom rendering.
bool GlyphDataInitialized
Cached variables and update methods.
void SetAtomicRadiusTypeToCovalentRadius()
Get/Set the type of radius used to generate the atoms.
bool UseMultiCylindersForBonds
Customize bond rendering.
virtual void GetSelectedBonds(vtkSelection *selection, vtkIdTypeArray *bondIds)
Extract the ids atoms and/or bonds rendered by this molecule from a vtkSelection object.
vtkNew< vtkPolyData > LatticePolyData
abstract specification for renderers
vtkNew< vtkPolyData > AtomGlyphPolyData
Cached variables and update methods.
A node in a selection tree.
dynamic, self-adjusting array of vtkIdType
bool RenderAtoms
Customize atom rendering.
concrete dataset represents vertices, lines, polygons, and triangle strips
void SetAtomicRadiusTypeToVDWRadius()
Get/Set the type of radius used to generate the atoms.
void SetAtomicRadiusTypeToCustomArrayRadius()
Get/Set the type of radius used to generate the atoms.
Mapper that draws vtkMolecule objects.
int AtomicRadiusType
Customize atom rendering.
window superclass for vtkRenderWindow
create a polygonal sphere centered at the origin
vtkNew< vtkPolyData > BondGlyphPolyData
Cached variables and update methods.
Producer for stand-alone data objects.
vtkNew< vtkPolyDataMapper > LatticeMapper
a simple class to control print indentation
vtkNew< vtkTrivialProducer > AtomGlyphPointOutput
Cached variables and update methods.
vtkNew< vtkGlyph3DMapper > AtomGlyphMapper
Internal mappers.
void SetAtomicRadiusTypeToUnitRadius()
Get/Set the type of radius used to generate the atoms.
virtual double * GetBounds()=0
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax, zmin,zmax).
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
vtkNew< vtkTrivialProducer > BondGlyphPointOutput
Cached variables and update methods.
abstract class specifies interface to map data to graphics primitives
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
map vtkPolyData to graphics primitives
void SetBondColorModeToDiscreteByAtom()
Get/Set the method by which bonds are colored.
float BondRadius
Customize bond rendering.
virtual void GetSelectedAtoms(vtkSelection *selection, vtkIdTypeArray *atomIds)
Extract the ids atoms and/or bonds rendered by this molecule from a vtkSelection object.
static vtkAlgorithm * New()
int BondColorMode
Customize bond rendering.
double * GetBounds() override
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax, zmin,zmax).
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkDataSet * GetInput()
Get the input as a vtkDataSet.
virtual void Render(vtkRenderer *ren, vtkActor *a)=0
Method initiates the mapping process.
void SetBondColorModeToSingleColor()
Get/Set the method by which bonds are colored.
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this mapper.
void GetBounds(double bounds[6]) override
Reimplemented from base class.