vtkMoleculeRepresentation.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
3 
8 #ifndef vtkMoleculeRepresentation_h
9 #define vtkMoleculeRepresentation_h
10 
12 #include "vtkRemotingViewsModule.h" //needed for exports
13 
14 #include "vtkNew.h" // For vtkNew.
15 
16 class vtkActor;
17 class vtkMolecule;
18 class vtkMoleculeMapper;
19 class vtkScalarsToColors;
20 
22 {
23 public:
26  void PrintSelf(ostream& os, vtkIndent indent) override;
27 
28  int ProcessViewRequest(vtkInformationRequestKey* requestType, vtkInformation* inputInfo,
29  vtkInformation* outputInfo) override;
30 
31  void SetVisibility(bool value) override;
32 
33  vtkGetMacro(MoleculeRenderMode, int) void SetMoleculeRenderMode(int mode);
34 
35  vtkGetMacro(UseCustomRadii, bool) void SetUseCustomRadii(bool val);
36 
37  void SetLookupTable(vtkScalarsToColors* lut);
38 
40 
43  virtual void SetOpacity(double val);
44  virtual void SetSpecular(double val);
45  virtual void SetSpecularPower(double val);
47 
52  void SetMapScalars(bool map);
53 
58  void SetRepresentation(const char*) {}
59 
64 
68  vtkGetMacro(Actor, vtkActor*);
69 
71 
74  void SetAtomicRadiusType(int type);
75  void SetAtomicRadiusScaleFactor(double factor);
76  void SetBondRadius(double factor);
77  void SetBondColorMode(int mode);
78  void SetBondColor(double color[3]);
79  void SetBondColor(double r, double g, double b);
80  void SetUseMultiCylindersForBonds(bool use);
81  void SetRenderAtoms(bool render);
82  void SetRenderBonds(bool render);
83  void SetAtomicRadiusArray(const char* name);
85 
86 protected:
88  ~vtkMoleculeRepresentation() override;
89 
90  int FillInputPortInformation(int port, vtkInformation* info) override;
92  bool AddToView(vtkView* view) override;
93  bool RemoveFromView(vtkView* view) override;
94 
95  void SyncMapper();
96  void UpdateColoringParameters();
97 
100 
102 
105 
106  double DataBounds[6];
107 
108 private:
110  void operator=(const vtkMoleculeRepresentation&) = delete;
111 };
112 
113 #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