]> git.donarmstrong.com Git - biopieces.git/blobdiff - code_perl/Maasha/BGB/Track.pm
added PDF/SVG export to BGB
[biopieces.git] / code_perl / Maasha / BGB / Track.pm
index 75ba5526fcff1e0769e3d11a3783120117660654..ef99f42de27ebbca71deaaf30afa371b79d16775 100644 (file)
@@ -78,8 +78,8 @@ sub track_grid
     {
         push @grid, {
             type       => 'grid',
-            line_width => 0.1,
-            color      => [ 0, 0, 0 ],
+            line_width => 1,
+            color      => [ 0.82, 0.89, 1 ],
             x1         => $i,
             y1         => 0,
             x2         => $i,
@@ -368,12 +368,17 @@ sub track_linear
         if ( $w >= 1 )
         {
             $x1 = sprintf( "%.0f", ( $entry->[ S_BEG ] - $beg ) * $factor );
+            $x2 = $x1 + $w;
+
+            $x1 = 0 if $x1 < 0;
+            $x2 = $cookie->{ 'IMG_WIDTH' } if $x2 > $cookie->{ 'IMG_WIDTH' };
 
             for ( $y_step = 0; $y_step < @ladder; $y_step++ ) {
                 last if $x1 >= $ladder[ $y_step ] + 1; 
             }
 
             $y1 = $cookie->{ 'TRACK_OFFSET' } + ( ( 1.1 + $cookie->{ 'FEAT_WIDTH' } ) * $y_step );
+            $y2 = $y1 + $cookie->{ 'FEAT_WIDTH' };
 
             $feature = {
                 line_width => $cookie->{ 'FEAT_WIDTH' },
@@ -385,8 +390,8 @@ sub track_linear
                 strand     => $entry->[ STRAND ],
                 x1         => $x1,
                 y1         => $y1,
-                x2         => $x1 + $w,
-                y2         => $y1 + $cookie->{ 'FEAT_WIDTH' },
+                x2         => $x2,
+                y2         => $y2,
             };
 
             if ( $entry->[ STRAND ] eq '+' or $entry->[ STRAND ] eq '-' ) {