4#ifndef vtkProteinRibbonFilter_h 
    5#define vtkProteinRibbonFilter_h 
   18#include "vtkDomainsChemistryModule.h"  
   24VTK_ABI_NAMESPACE_BEGIN
 
   40  vtkGetMacro(CoilWidth, 
float);
 
   41  vtkSetMacro(CoilWidth, 
float);
 
   48  vtkGetMacro(HelixWidth, 
float);
 
   49  vtkSetMacro(HelixWidth, 
float);
 
   56  vtkGetMacro(SubdivideFactor, 
int);
 
   57  vtkSetMacro(SubdivideFactor, 
int);
 
   64  vtkGetMacro(DrawSmallMoleculesAsSpheres, 
bool);
 
   65  vtkSetMacro(DrawSmallMoleculesAsSpheres, 
bool);
 
   72  vtkGetMacro(SphereResolution, 
int);
 
   73  vtkSetMacro(SphereResolution, 
int);
 
   85    std::vector<std::pair<vtkVector3f, bool>>& p1, std::vector<std::pair<vtkVector3f, bool>>& p2,
 
   86    std::vector<vtkColor3ub>& colors);
 
   89    const vtkColor3ub& color, 
float radius, 
float scale);
 
   91  static std::vector<vtkVector3f>* 
Subdivide(std::vector<std::pair<vtkVector3f, bool>>& p, 
int div);
 
Some derived classes for the different colors commonly used.
 
a simple class to control print indentation
 
represent and manipulate 3D points
 
Superclass for algorithms that produce only polydata as output.
 
concrete dataset represents vertices, lines, polygons, and triangle strips
 
generates protein ribbons
 
~vtkProteinRibbonFilter() override
 
void SetColorByStructure(std::vector< vtkColor3ub > &colors, vtkStringArray *atomTypes, vtkUnsignedCharArray *ss, const vtkColor3ub &helixColor, const vtkColor3ub &sheetColor)
 
void SetColorByAtom(std::vector< vtkColor3ub > &colors, vtkStringArray *atomTypes)
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
static std::vector< vtkVector3f > * Subdivide(std::vector< std::pair< vtkVector3f, bool > > &p, int div)
 
void CreateThinStrip(vtkPolyData *poly, vtkUnsignedCharArray *pointsColors, vtkPoints *p, std::vector< std::pair< vtkVector3f, bool > > &p1, std::vector< std::pair< vtkVector3f, bool > > &p2, std::vector< vtkColor3ub > &colors)
 
std::map< std::string, vtkColor3ub > ElementColors
 
int FillInputPortInformation(int, vtkInformation *) override
Fill the input port information objects for this algorithm.
 
bool DrawSmallMoleculesAsSpheres
 
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
static vtkProteinRibbonFilter * New()
 
void CreateAtomAsSphere(vtkPolyData *poly, vtkUnsignedCharArray *pointsColors, double *pos, const vtkColor3ub &color, float radius, float scale)
 
a vtkAbstractArray subclass for strings
 
dynamic, self-adjusting array of unsigned char