From: <ai...@us...> - 2011-03-08 23:54:32
|
Revision: 11613 http://plplot.svn.sourceforge.net/plplot/?rev=11613&view=rev Author: airwin Date: 2011-03-08 23:54:25 +0000 (Tue, 08 Mar 2011) Log Message: ----------- Consistently adjust range calculation to be more rational. Modified Paths: -------------- trunk/examples/c/x27c.c trunk/examples/c++/x27.cc trunk/examples/d/x27d.d trunk/examples/f77/x27f.fm4 trunk/examples/f95/x27f.f90 trunk/examples/java/x27.java trunk/examples/lua/x27.lua trunk/examples/ocaml/x27.ml trunk/examples/octave/x27c.m trunk/examples/python/xw27.py trunk/examples/tcl/x27.tcl Modified: trunk/examples/c/x27c.c =================================================================== --- trunk/examples/c/x27c.c 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/c/x27c.c 2011-03-08 23:54:25 UTC (rev 11613) @@ -160,8 +160,10 @@ PLFLT dphi; PLFLT xmin; PLFLT xmax; + PLFLT xrange_adjust; PLFLT ymin; PLFLT ymax; + PLFLT yrange_adjust; // Fill the coordinates @@ -195,10 +197,12 @@ ymax = ycoord[i]; } - xmin -= 0.15 * (xmax - xmin); - xmax += 0.15 * (xmax - xmin); - ymin -= 0.15 * (ymax - ymin); - ymax += 0.15 * (ymax - ymin); + xrange_adjust = 0.15 * (xmax - xmin); + xmin -= xrange_adjust; + xmax += xrange_adjust; + yrange_adjust = 0.15 * (ymax - ymin); + ymin -= yrange_adjust; + ymax += yrange_adjust; plwind( xmin, xmax, ymin, ymax ); Modified: trunk/examples/c++/x27.cc =================================================================== --- trunk/examples/c++/x27.cc 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/c++/x27.cc 2011-03-08 23:54:25 UTC (rev 11613) @@ -166,8 +166,10 @@ PLFLT dphi; PLFLT xmin; PLFLT xmax; + PLFLT xrange_adjust; PLFLT ymin; PLFLT ymax; + PLFLT yrange_adjust; // Fill the coordinates @@ -202,10 +204,12 @@ ymax = ycoord[i]; } - xmin -= 0.15 * (xmax - xmin); - xmax += 0.15 * (xmax - xmin); - ymin -= 0.15 * (ymax - ymin); - ymax += 0.15 * (ymax - ymin); + xrange_adjust = 0.15 * (xmax - xmin); + xmin -= xrange_adjust; + xmax += xrange_adjust; + yrange_adjust = 0.15 * (ymax - ymin); + ymin -= yrange_adjust; + ymax += yrange_adjust; pls->wind( xmin, xmax, ymin, ymax ); Modified: trunk/examples/d/x27d.d =================================================================== --- trunk/examples/d/x27d.d 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/d/x27d.d 2011-03-08 23:54:25 UTC (rev 11613) @@ -136,7 +136,9 @@ const int npnt = 2000; PLFLT[] xcoord, ycoord; int windings, steps; - PLFLT dphi, phi, phiw, xmin, xmax, ymin, ymax; + PLFLT dphi, phi, phiw; + PLFLT xmin, xmax, xrange_adjust; + PLFLT ymin, ymax, yrange_adjust; // Fill the coordinates @@ -173,10 +175,12 @@ ymax = ycoord[i]; } - xmin -= 0.15 * (xmax - xmin); - xmax += 0.15 * (xmax - xmin); - ymin -= 0.15 * (ymax - ymin); - ymax += 0.15 * (ymax - ymin); + xrange_adjust = 0.15*(xmax-xmin); + xmin = xmin - xrange_adjust; + xmax = xmax + xrange_adjust; + yrange_adjust = 0.15*(ymax-ymin); + ymin = ymin - yrange_adjust; + ymax = ymax + yrange_adjust; plwind( xmin, xmax, ymin, ymax ); Modified: trunk/examples/f77/x27f.fm4 =================================================================== --- trunk/examples/f77/x27f.fm4 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/f77/x27f.fm4 2011-03-08 23:54:25 UTC (rev 11613) @@ -152,8 +152,10 @@ real*8 dphi real*8 xmin real*8 xmax + real*8 xrange_adjust real*8 ymin real*8 ymax + real*8 yrange_adjust integer gcd c Fill the coordinates @@ -183,10 +185,12 @@ if ( ymax < ycoord(i) ) ymax = ycoord(i) 110 continue - xmin = xmin - 0.15d0 * (xmax - xmin) - xmax = xmax + 0.15d0 * (xmax - xmin) - ymin = ymin - 0.15d0 * (ymax - ymin) - ymax = ymax + 0.15d0 * (ymax - ymin) + xrange_adjust = 0.15d0 * (xmax - xmin) + xmin = xmin - xrange_adjust + xmax = xmax + xrange_adjust + yrange_adjust = 0.15d0 * (ymax - ymin) + ymin = ymin - yrange_adjust + ymax = ymax + yrange_adjust call plwind( xmin, xmax, ymin, ymax ) Modified: trunk/examples/f95/x27f.f90 =================================================================== --- trunk/examples/f95/x27f.f90 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/f95/x27f.f90 2011-03-08 23:54:25 UTC (rev 11613) @@ -153,8 +153,10 @@ real(kind=plflt) dphi real(kind=plflt) xmin real(kind=plflt) xmax + real(kind=plflt) xrange_adjust real(kind=plflt) ymin real(kind=plflt) ymax + real(kind=plflt) yrange_adjust integer gcd ! Fill the coordinates @@ -186,10 +188,12 @@ if ( ymax < ycoord(i) ) ymax = ycoord(i) end do - xmin = xmin - 0.15_plflt * (xmax - xmin) - xmax = xmax + 0.15_plflt * (xmax - xmin) - ymin = ymin - 0.15_plflt * (ymax - ymin) - ymax = ymax + 0.15_plflt * (ymax - ymin) + xrange_adjust = 0.15_plflt * (xmax - xmin) + xmin = xmin - xrange_adjust + xmax = xmax + xrange_adjust + yrange_adjust = 0.15_plflt * (ymax - ymin) + ymin = ymin - yrange_adjust + ymax = ymax + yrange_adjust call plwind( xmin, xmax, ymin, ymax ) Modified: trunk/examples/java/x27.java =================================================================== --- trunk/examples/java/x27.java 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/java/x27.java 2011-03-08 23:54:25 UTC (rev 11613) @@ -161,6 +161,8 @@ double xmax = 0.; double ymin = 0.; double ymax = 0.; + double xrange_adjust; + double yrange_adjust; // Fill the coordinates @@ -194,10 +196,12 @@ if ( ymax < ycoord[i] ) ymax = ycoord[i]; } - xmin -= 0.15 * (xmax - xmin); - xmax += 0.15 * (xmax - xmin); - ymin -= 0.15 * (ymax - ymin); - ymax += 0.15 * (ymax - ymin); + xrange_adjust = 0.15 * (xmax - xmin); + xmin -= xrange_adjust; + xmax += xrange_adjust; + yrange_adjust = 0.15 * (ymax - ymin); + ymin -= yrange_adjust; + ymax += yrange_adjust; pls.wind( xmin, xmax, ymin, ymax ); Modified: trunk/examples/lua/x27.lua =================================================================== --- trunk/examples/lua/x27.lua 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/lua/x27.lua 2011-03-08 23:54:25 UTC (rev 11613) @@ -76,10 +76,12 @@ if ymax<ycoord[i] then ymax = ycoord[i] end end - xmin = xmin - 0.15*(xmax-xmin) - xmax = xmax + 0.15*(xmax-xmin) - ymin = ymin - 0.15*(ymax-ymin) - ymax = ymax + 0.15*(ymax-ymin) + xrange_adjust = 0.15*(xmax-xmin) + xmin = xmin - xrange_adjust + xmax = xmax + xrange_adjust + yrange_adjust = 0.15*(ymax-ymin) + ymin = ymin - yrange_adjust + ymax = ymax + yrange_adjust pl.wind(xmin, xmax, ymin, ymax) Modified: trunk/examples/ocaml/x27.ml =================================================================== --- trunk/examples/ocaml/x27.ml 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/ocaml/x27.ml 2011-03-08 23:54:25 UTC (rev 11613) @@ -55,12 +55,13 @@ let steps = npnt / windings in let dphi = 2.0 *. pi /. float_of_int steps in - (* This initialisation is safe! *) + (* This initialisation appears to be necessary, but I (AWI) don't understand why! *) let xmin = ref 0.0 in let xmax = ref 0.0 in let ymin = ref 0.0 in let ymax = ref 0.0 in + for i = 0 to windings * steps do let phi = float_of_int i *. dphi in let phiw = (params.(0) -. params.(1)) /. params.(1) *. phi in @@ -81,10 +82,12 @@ if !ymax < ycoord.(i) then ymax := ycoord.(i) else (); done; - let xmin = !xmin -. 0.15 *. (!xmax -. !xmin) in - let xmax = !xmax +. 0.15 *. (!xmax -. xmin) in - let ymin = !ymin -. 0.15 *. (!ymax -. !ymin) in - let ymax = !ymax +. 0.15 *. (!ymax -. ymin) in + let xrange_adjust = 0.15 *. (!xmax -. !xmin) in + let xmin = !xmin -. xrange_adjust in + let xmax = !xmax +. xrange_adjust in + let yrange_adjust = 0.15 *. (!ymax -. !ymin) in + let ymin = !ymin -. yrange_adjust in + let ymax = !ymax +. yrange_adjust in plwind xmin xmax ymin ymax; Modified: trunk/examples/octave/x27c.m =================================================================== --- trunk/examples/octave/x27c.m 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/octave/x27c.m 2011-03-08 23:54:25 UTC (rev 11613) @@ -144,11 +144,13 @@ ymin = min(ycoord); ymax = max(ycoord); - xmin -= 0.15*(xmax-xmin); - xmax += 0.15*(xmax-xmin); - ymin -= 0.15*(ymax-ymin); - ymax += 0.15*(ymax-ymin); - + xrange_adjust = 0.15 * (xmax - xmin); + xmin -= xrange_adjust; + xmax += xrange_adjust; + yrange_adjust = 0.15 * (ymax - ymin); + ymin -= yrange_adjust; + ymax += yrange_adjust; + plwind( xmin, xmax, ymin, ymax ); plcol0(1); @@ -159,6 +161,5 @@ endif endfunction -## Log-linear plot. ix27c Modified: trunk/examples/python/xw27.py =================================================================== --- trunk/examples/python/xw27.py 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/python/xw27.py 2011-03-08 23:54:25 UTC (rev 11613) @@ -110,10 +110,12 @@ ymin = min(ycoord) ymax = max(ycoord) - xmin -= 0.15 * (xmax - xmin) - xmax += 0.15 * (xmax - xmin) - ymin -= 0.15 * (ymax - ymin) - ymax += 0.15 * (ymax - ymin) + xrange_adjust = 0.15 * (xmax - xmin) + xmin -= xrange_adjust + xmax += xrange_adjust + yrange_adjust = 0.15 * (ymax - ymin) + ymin -= yrange_adjust + ymax += yrange_adjust plwind( xmin, xmax, ymin, ymax ) Modified: trunk/examples/tcl/x27.tcl =================================================================== --- trunk/examples/tcl/x27.tcl 2011-03-08 18:45:21 UTC (rev 11612) +++ trunk/examples/tcl/x27.tcl 2011-03-08 23:54:25 UTC (rev 11613) @@ -148,10 +148,12 @@ if { $ymax < [ycoord $i] } { set ymax [ycoord $i] } } - set xmin [expr {$xmin - 0.15 * ($xmax - $xmin) }] - set xmax [expr {$xmax + 0.15 * ($xmax - $xmin) }] - set ymin [expr {$ymin - 0.15 * ($ymax - $ymin) }] - set ymax [expr {$ymax + 0.15 * ($ymax - $ymin) }] + set xrange_adjust [expr {0.15 * ($xmax - $xmin) }] + set xmin [expr {$xmin - $xrange_adjust }] + set xmax [expr {$xmax + $xrange_adjust }] + set yrange_adjust [expr {0.15 * ($ymax - $ymin) }] + set ymin [expr {$ymin - $yrange_adjust }] + set ymax [expr {$ymax + $yrange_adjust }] $w cmd plwind $xmin $xmax $ymin $ymax This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |