Fix test win64b: test_run('graphics', 'contour2d')
[scilab.git] / scilab / modules / graphics / macros / graypolarplot.sci
index fb7d8f6..f9cb21f 100644 (file)
@@ -11,12 +11,11 @@ function graypolarplot(theta,rho,z,varargin)
 [lhs,rhs]=argn(0)
 if rhs<=0 then
   rho=1:0.2:4;theta=(0:0.02:1)*2*%pi;
-  z=30+round(theta'*(1+rho^2));
-  xbasc();
+  z=30+round(theta'*(1+rho.^2));
+  clf();
   f=gcf();
   f.color_map=hotcolormap(128);
   f.background= 128;
-  f.foreground=1;
   a=gca();
   a.background= 128;
   a.foreground=1;
@@ -24,6 +23,10 @@ if rhs<=0 then
   return
 end
 
+if rhs<3 then
+  error(msprintf(gettext("%s: Wrong number of input argument(s): At least %d expected.\n"), "graypolarplot", 3));
+end
+
 
 R=max(rho)
 nv=size(varargin)
@@ -90,6 +93,16 @@ function [x,y] = polar2Cart(rho, theta)
   y = rho * sin(theta);
 endfunction
 
+function [nbDecomp] = computeNeededDecompos(theta)
+  // Compute the needed decomposition for each patch
+  
+  // minimal decompostion for each ring
+  nbFactesPerRingMin = 512;
+  
+  nbDecomp = ceil(nbFactesPerRingMin / size(theta, '*'));
+  
+endfunction
+
 
 function drawGrayplot(theta, rh, z)
 // draw only the colored part of the grayplot
@@ -104,7 +117,7 @@ function drawGrayplot(theta, rh, z)
 nbRho = size(rho,'*');
 nbTheta = size(theta,'*');
 
-nbDecomposition = 32; // number of approximation facets
+nbDecomposition = computeNeededDecompos(theta); // number of approximation facets
 
 nbRefinedTheta = (nbTheta - 1) * nbDecomposition + 1;