make annotations big enough to show up
[mussa.git] / alg / glsequence.hpp
index 0133230b9c5038470498d2d3306e2ef69ccdabf9..b9a84f91ada055933b33aabdee803f12bf74c735 100644 (file)
@@ -57,6 +57,13 @@ public:
   void setColor(Color &);
   Color color();
 
+  //! how big is a pixel in world coordinats
+  GLfloat get_pixel_width(GLfloat, GLfloat) const;
+  //! how big is a pixel in world coordinats (specifying viewport size)
+  GLfloat get_pixel_width(GLfloat, GLfloat, int) const;
+
+  //! are we close enough that it would make sense to view the base pairs?
+  bool is_sequence_renderable(GLfloat left, GLfloat right) const;
   //! are we close enough that it would make sense to view the base pairs?
   /*! though we don't actually check to see if there's sequence in our
    *  view, just that there's enough pixels to render something if 
@@ -66,9 +73,7 @@ public:
    *             coordinates
    *  \param[in] pixel_width allow setting the current viewport pixel width
    */
-  bool is_sequence_renderable(GLfloat left, 
-                              GLfloat right, 
-                              int pixel_width=-1) const;
+  bool is_sequence_renderable(GLfloat, GLfloat, int) const;
 
   friend bool operator==(const GlSequence &left, const GlSequence &right);
 
@@ -83,9 +88,9 @@ protected:
   const GLfloat char_pix_per_world_unit;
 
   //! Return the pixel width of the opengl viewport.
-  static int get_viewport_pixel_width();
+  static int get_viewport_width_in_pixels();
   //! draw a from left to right +/- height/2
-  void draw_box(GLfloat left, GLfloat right, GLfloat height, GLfloat z) const;
+  void draw_box(GLfloat world_left, GLfloat world_right, GLfloat left, GLfloat right, GLfloat height, GLfloat z) const;
   //! draw sequence as a bar
   void draw_track(GLfloat, GLfloat) const;
   void draw_annotations(GLfloat, GLfloat) const;