]> git.tdb.fi Git - ext/subsurface.git/blobdiff - profile.c
Remove unused variable
[ext/subsurface.git] / profile.c
index c2433930fe7c4c49aa1ced4f4f1a37fc65a2f2e4..39db599cec7246245d6cb4f936dc206ec4f5eb8c 100644 (file)
--- a/profile.c
+++ b/profile.c
@@ -63,7 +63,7 @@ typedef struct {
        enum {MIDDLE,TOP,BOTTOM} valign;
 } text_render_options_t;
 
-static void plot_text(struct graphics_context *gc, text_render_options_t *tro,
+static void plot_text(struct graphics_context *gc, const text_render_options_t *tro,
                      double x, double y, const char *fmt, ...)
 {
        cairo_t *cr = gc->cr;
@@ -113,6 +113,26 @@ static void plot_text(struct graphics_context *gc, text_render_options_t *tro,
        cairo_show_text(cr, buffer);
 }
 
+static void render_depth_sample(struct graphics_context *gc, struct sample *sample, const text_render_options_t *tro)
+{
+       int sec = sample->time.seconds;
+       depth_t depth = sample->depth;
+       const char *fmt;
+       double d;
+
+       switch (output_units.length) {
+       case METERS:
+               d = depth.mm / 1000.0;
+               fmt = "%.1f";
+               break;
+       case FEET:
+               d = to_feet(depth);
+               fmt = "%.0f";
+               break;
+       }
+       plot_text(gc, tro, sec, depth.mm, fmt, d);
+}
+
 /*
  * Find the next minimum/maximum point.
  *
@@ -132,12 +152,11 @@ static struct sample *next_minmax(struct sample *sample, struct sample *end, int
        result = NULL;
 
        for (;;) {
-               int time, depth;
+               int depth;
 
                sample++;
                if (sample >= end)
                        return NULL;
-               time = sample->time.seconds;
                depth = sample->depth.mm;
 
                if (minmax) {
@@ -160,39 +179,24 @@ static struct sample *next_minmax(struct sample *sample, struct sample *end, int
        return result;
 }
 
-static void render_depth_sample(struct graphics_context *gc, struct sample *sample)
-{
-       text_render_options_t tro = {14, 1.0, 0.2, 0.2, CENTER, TOP};
-       int sec = sample->time.seconds;
-       depth_t depth = sample->depth;
-       const char *fmt;
-       double d;
-
-       switch (output_units.length) {
-       case METERS:
-               d = depth.mm / 1000.0;
-               fmt = "%.1f";
-               break;
-       case FEET:
-               d = to_feet(depth);
-               fmt = "%.0f";
-               break;
-       }
-       plot_text(gc, &tro, sec, depth.mm, fmt, d);
-}
-
 static void plot_text_samples(struct graphics_context *gc, struct sample *a, struct sample *b)
 {
+       static const text_render_options_t deep = {14, 1.0, 0.2, 0.2, CENTER, TOP};
+       static const text_render_options_t shallow = {14, 1.0, 0.2, 0.2, CENTER, BOTTOM};
+
        for (;;) {
                if (b <= a)
                        break;
                a = next_minmax(a, b, 1);
                if (!a)
-                       return;
-               render_depth_sample(gc, a);
+                       break;
+               render_depth_sample(gc, a, &deep);
                a = next_minmax(a, b, 0);
                if (!a)
                        break;
+               if (a->depth.mm < 2500)
+                       continue;
+               render_depth_sample(gc, a, &shallow);
        }
 }