7 #ifndef BALL_VIEW_MODELS_BACKBONEMODEL_H
8 #define BALL_VIEW_MODELS_BACKBONEMODEL_H
10 #ifndef BALL_VIEW_MODELS_MODELPROCESSOR_H
14 #ifndef BALL_MATHS_VECTOR3_H
18 #ifndef BALL_KERNEL_SECONDARYSTRUCTURE_H
22 #ifndef BALL_KERNEL_PROTEIN_H
26 #ifndef BALL_MATHS_MATRIX44_H
79 AddBackboneModel(const AddBackboneModel& add_Backbone_model);
82 virtual ~AddBackboneModel();
108 virtual
void dump(std::ostream& s = std::cout,
Size depth = 0) const;
111 void setTubeRadius(
float radius)
112 { tube_radius_ = radius;}
115 float getTubeRadius()
const
116 {
return tube_radius_;}
119 virtual bool createGeometricObjects();
122 void setRibbonMode(
bool state)
123 {ribbon_mode_ = state;}
126 bool ribbonModeEnabled()
const
127 {
return ribbon_mode_;}
131 virtual void calculateModelParts(
Protein& protein);
132 virtual bool collectPositions(vector<Residue*>
residues);
133 virtual void calculateGuidePoints_();
135 virtual void assignModelType(ModelPart& part);
145 virtual void interpolate_();
146 virtual void refineModelParts_();
148 virtual void clear_();
153 inline bool residuesAreConnected_(
Residue& residue1,
Residue& residue2);
155 inline void calculateTubePoints_(
Vector3 right,
Vector3 dir, vector<Vector3>& points);
156 inline void calculateRibbonPoints_(
Vector3 xn,
Vector3 dir, vector<Vector3>& points);
157 inline void calculateRibbonEllipse_(
float ribbon_width,
float ribbon_height);
182 vector<vector<Index> >
ss_;
195 #endif // BALL_VIEW_MODELS_BACKBONEMODEL_H