changeset 22420:e5ae26e50374

Fix a bug in view () *__gnuplot_draw_axes__.m: sets the correct rot_x, rot_z when abs(el)>90
author Avinoam
date Wed, 31 Aug 2016 17:20:38 +0300
parents be969d43d95f
children d6c1da692e59
files scripts/plot/util/private/__gnuplot_draw_axes__.m
diffstat 1 files changed, 16 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/plot/util/private/__gnuplot_draw_axes__.m	Sat Aug 06 02:27:11 2016 -0500
+++ b/scripts/plot/util/private/__gnuplot_draw_axes__.m	Wed Aug 31 17:20:38 2016 +0300
@@ -1687,8 +1687,22 @@
       plot_cmd = "plot";
     else
       plot_cmd = "splot";
-      rot_x = 90 - axis_obj.view(2);
-      rot_z = axis_obj.view(1);
+      ## Wrap view correctly to match Matlab
+      if (axis_obj.view(2) <= 90)
+        rot_x = 90 - axis_obj.view(2);
+      else 
+        rot_x = axis_obj.view(2) - 90;
+      endif  
+      rot_x = mod (rot_x, 360);
+      while (rot_x < 0)
+        rot_x += 360;
+      endwhile
+      if (axis_obj.view(2) <= 90)
+        rot_z = axis_obj.view(1);
+      else
+        rot_z = axis_obj.view(1) + 180;
+      endif  
+      rot_z = mod (rot_z, 360);
       while (rot_z < 0)
         rot_z += 360;
       endwhile