X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;ds=sidebyside;f=libctgraphics%2Fezplot.cpp;h=c29575737f47870ca14c934b2c7e218b8236405e;hb=a05f3cb550877e94aa118cc04b361c0c8fdb3dc3;hp=45796684b2741dc822a69029e67a3718f062ef57;hpb=08a5cd04c3994d5ea24713b9b000791bd2e406fe;p=ctsim.git diff --git a/libctgraphics/ezplot.cpp b/libctgraphics/ezplot.cpp index 4579668..c295757 100644 --- a/libctgraphics/ezplot.cpp +++ b/libctgraphics/ezplot.cpp @@ -6,7 +6,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: ezplot.cpp,v 1.9 2000/07/29 19:50:08 kevin Exp $ +** $Id: ezplot.cpp,v 1.12 2000/08/31 08:38:58 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -71,6 +71,18 @@ EZPlot::addCurve (const double *y, int n) } +void +EZPlot::addCurve (const float *y, int n) +{ + double yDouble [n]; + + for (int i = 0; i < n; i++) + yDouble[i] = y[i]; + + addCurve (yDouble, n); +} + + void EZPlot::addCurve (const float x[], const double y[], int num) { @@ -253,8 +265,8 @@ EZPlot::plot () } /* find nice endpoints for axes */ - axis_scale (xmin, xmax, o_xmajortick - 1, &xgw_min, &xgw_max, &x_nint); - axis_scale (ymin, ymax, o_ymajortick - 1, &ygw_min, &ygw_max, &y_nint); + if (! axis_scale (xmin, xmax, o_xmajortick - 1, &xgw_min, &xgw_max, &x_nint) || ! axis_scale (ymin, ymax, o_ymajortick - 1, &ygw_min, &ygw_max, &y_nint)) + return; /* check if user set x-axis extents */ if (s_xmin == TRUE) { @@ -300,7 +312,8 @@ EZPlot::plot () xtl_wid = x_fldwid * charwidth; /* calc size of tick labels */ ytl_wid = y_fldwid * charwidth; tl_height = charheight; - + + // rSGP.getViewport (xp_min, yp_min, xp_max, yp_max); /* calculate the extent of the plot frame */ xp_min = o_xporigin; yp_min = o_yporigin; @@ -827,7 +840,7 @@ int EZPlot::axis_scale (double min, double max, int nint, double *minp, double *maxp, int *nintp) { if (min >= max || nint < 1) { - sys_error (ERR_WARNING, "Invalid params: min=%lf, min=%lf, num intervals=%d [axis_scale]", min, max, nint); + sys_error (ERR_WARNING, "Invalid params: min=%lf, max=%lf, num intervals=%d [axis_scale]", min, max, nint); return (FALSE); }