7#ifndef BALL_VIEW_MODELS_CARTOONMODEL_H
8#define BALL_VIEW_MODELS_CARTOONMODEL_H
10#ifndef BALL_VIEW_MODELS_BACKBONEMODEL_H
35 STRAND = NUCLEIC_ACID + 1,
51 void setHelixRadius(
float radius)
52 { helix_radius_ = radius;}
56 {
return helix_radius_;}
60 {arrow_width_ = width;}
64 {
return arrow_width_;}
68 { strand_height_ = heigth;}
72 {
return strand_height_;}
80 {
return strand_width_;}
84 { DNA_base_radius_ = r;}
88 {
return DNA_base_radius_;}
92 { DNA_helix_radius_ = r;}
96 {
return DNA_helix_radius_;}
100 { DNA_ladder_radius_ = r;}
104 {
return DNA_ladder_radius_;}
108 { draw_DNA_as_ladder_ = state;}
112 {
return draw_DNA_as_ladder_;}
116 { draw_ribbon_ = state;}
120 {
return draw_ribbon_;}
#define BALL_CREATE(name)
HashMap class based on the STL map (containing serveral convenience functions)
void setDNABaseRadius(float r)
float getStrandWidth() const
void createStrand_(Position set_pos, Position part_pos)
void assignModelType(ModelPart &part)
virtual void refineGuidePoints_()
float getDNABaseRadius() const
void drawStrand_(const Vector3 &start, Vector3 &right, Vector3 &hn, float arrow_width, Position &last_vertices, Mesh &mesh)
float getStrandHeight() const
Mesh * create6Ring_(vector< Vector3 > positions)
void drawRiboseAtoms_(const Atom *atom1, const Atom *atom2, const Vector3 &v1, const Vector3 &v2)
Mesh * createDoubleRing_(const vector< Vector3 > &positions)
void setStrandHeight(float heigth)
float getDNALadderRadius() const
void createTubeHelix_(Position set_first, Position part_pos)
void calculateModelParts(Protein &protein)
void createWatsonCrickModel_(Position set_pos, Position part_pos)
bool ribbonsEnabled() const
bool drawDNAAsLadderModel()
void createSimpleNucleicAcid_(Position set_pos, Position part_pos)
void setArrowWidth(float width)
void setDrawDNAAsLadderModel(bool state)
float getArrowWidth() const
HashMap< const Residue *, const Residue * > complementary_bases_
void createHelix_(Position set_first, Position part_pos)
bool assignNucleotideAtoms_(Residue &r, Size nr_atoms, String atom_names[10], Atom *atoms[10])
void setStrandWidth(float w)
void setDNAHelixRadius(float r)
float getDNAHelixRadius() const
void createModel_(Position set_pos, Position part_pos)
void insertTriangle_(Position v1, Position v2, Position v3, Mesh &mesh)
void enableRibbons(bool state)
void calculateComplementaryBases_(const Composite &composite)
float getHelixRadius() const
void setDNALadderRadius(float r)
void renderNucleotideOutline_(const vector< Vector3 > &positions, Vector3 uv, Mesh &mesh)