X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=mussa.git;a=blobdiff_plain;f=alg%2Fglsequence.cpp;h=69a327e835f8246817fb911c084eb3f510a0b954;hp=708a53ad32a76bc36ba54d1d29d0460c9af9b0b3;hb=654bbba57ab542cd0a36c8ac619656d433f6fb29;hpb=937011080419eadb2bd072c4a1edf29534cf0629 diff --git a/alg/glsequence.cpp b/alg/glsequence.cpp index 708a53a..69a327e 100644 --- a/alg/glsequence.cpp +++ b/alg/glsequence.cpp @@ -278,6 +278,15 @@ ColorRef GlSequence::default_track_color() return default_color; } +ColorRef GlSequence::default_chipseq_color() +{ + static ColorRef default_color; + if (not default_color) { + default_color.reset(new Color(1.0, 0.5, 0.0)); + } + return default_color; +} + int GlSequence::get_viewport_width_in_pixels() { GLint viewport[4]; @@ -523,6 +532,22 @@ void draw_narrow_track(SeqSpanRef s, float left, float right) hsmall, y, z+10); } +void draw_chipseq_window(SeqSpanRef s, float left, float right) +{ + SeqSpanRef parent(s->parent()); + DrawableRef parent_draw(parent->drawable()); + float x( (parent_draw) ? parent_draw->x() : 0); + float y( (parent_draw) ? parent_draw->y() : 0); + float z( (parent_draw) ? parent_draw->z() : 10 ); + float height( (parent_draw) ? parent_draw->height() : default_height ); + Color c( (s->drawable()) ? s->drawable()->color() : *GlSequence::default_track_color() ); + glColor3fv(c.get()); + + float hsmall = height * 2.0; + GlSequence::draw_box(left, right, x+s->start(), x+s->stop(), + hsmall, y, z+9.0); +} + void draw_summarized_track(SeqSpanRef s, float left, float right) { // if we can see the sequence text (AGCTN), don't draw the black boxes