#include "map_geometry.h" #include "../../view/exp004state0.h" #include #define S exp004state0 void map_geometry (void) { glNewList (S.list_offset + MAP_GEOMETRY, GL_COMPILE); glPolygonMode (GL_FRONT, GL_FILL); for (int i = 0; i < S.rows; i++) { glLoadName (i); // Draw the protein geometry. float* v = S.base_vertices_data + (i * 2); glPushMatrix (); glTranslatef (*v, *(v+1), 0.0); glColor4fv (S.base_colors_data + (i * 4)); glCallList (S.list_offset + PROTEIN_GEOMETRY); glPopMatrix (); // If the object is selected, draw the selection geometry. if (S.selection.set[i]) { glPushMatrix (); glTranslatef (*v, *(v+1), 0.0); glColor4f (0.5, 0.5, 0.5, 1.0); glCallList (S.list_offset + PROTEIN_SELECTED_GEOMETRY); glPopMatrix (); } } glEndList (); return; }