vtkMoleculeRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkPVDataRepresentation.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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 =========================================================================*/
15 
20 #ifndef vtkMoleculeRepresentation_h
21 #define vtkMoleculeRepresentation_h
22 
24 #include "vtkRemotingViewsModule.h" //needed for exports
25 
26 #include "vtkNew.h" // For vtkNew.
27 
28 class vtkActor;
29 class vtkMolecule;
30 class vtkMoleculeMapper;
31 class vtkScalarsToColors;
32 
34 {
35 public:
38  void PrintSelf(ostream& os, vtkIndent indent) override;
39 
40  int ProcessViewRequest(vtkInformationRequestKey* requestType, vtkInformation* inputInfo,
41  vtkInformation* outputInfo) override;
42 
43  void SetVisibility(bool value) override;
44 
45  vtkGetMacro(MoleculeRenderMode, int) void SetMoleculeRenderMode(int mode);
46 
47  vtkGetMacro(UseCustomRadii, bool) void SetUseCustomRadii(bool val);
48 
49  void SetLookupTable(vtkScalarsToColors* lut);
50 
52 
55  virtual void SetOpacity(double val);
56  virtual void SetSpecular(double val);
57  virtual void SetSpecularPower(double val);
59 
64  void SetMapScalars(bool map);
65 
70  void SetRepresentation(const char*) {}
71 
76 
78 
81  void SetAtomicRadiusType(int type);
82  void SetAtomicRadiusScaleFactor(double factor);
83  void SetBondRadius(double factor);
84  void SetBondColorMode(int mode);
85  void SetBondColor(double color[3]);
86  void SetBondColor(double r, double g, double b);
87  void SetUseMultiCylindersForBonds(bool use);
88  void SetRenderAtoms(bool render);
89  void SetRenderBonds(bool render);
90  void SetAtomicRadiusArray(const char* name);
92 
93 protected:
95  ~vtkMoleculeRepresentation() override;
96 
97  int FillInputPortInformation(int port, vtkInformation* info) override;
99  bool AddToView(vtkView* view) override;
100  bool RemoveFromView(vtkView* view) override;
101 
102  void SyncMapper();
103  void UpdateColoringParameters();
104 
107 
109 
112 
113  double DataBounds[6];
114 
115 private:
117  void operator=(const vtkMoleculeRepresentation&) = delete;
118 };
119 
120 #endif // vtkMoleculeRepresentation_h
representation for showing vtkMolecules
virtual vtkDataObject * GetRenderedDataObject(int vtkNotUsed(port))
Returns the data object that is rendered from the given input port.
color
type
#define VTKREMOTINGVIEWS_EXPORT
vtkPVDataRepresentation adds some ParaView specific API to data representations.
bool AddToView(vtkView *view) override
Making these methods public.
info
virtual void SetVisibility(bool val)
Get/Set the visibility for this representation.
virtual int ProcessViewRequest(vtkInformationRequestKey *request_type, vtkInformation *inInfo, vtkInformation *outInfo)
vtkAlgorithm::ProcessRequest() equivalent for rendering passes.
name
virtual int FillInputPortInformation(int port, vtkInformation *info)
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Overridden to invoke vtkCommand::UpdateDataEvent.
bool RemoveFromView(vtkView *view) override
Making these methods public.
mode
static vtkDataRepresentation * New()
void SetRepresentation(const char *)
No-op.
void PrintSelf(ostream &os, vtkIndent indent) override
port