Function contd is similar to contf but with manual contour colors.
MGL code:
call 'prepare2d' list v -0.5 -0.15 0 0.15 0.5 new a1 30 40 3 '0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)' subplot 2 2 0:title 'ContD plot (default)':rotate 50 60:box:contd a subplot 2 2 1:title 'manual levels':rotate 50 60:box:contd v a subplot 2 2 2:title '"\_" style':rotate 50 60:box:contd a '_' subplot 2 2 3:title 'several slices':rotate 50 60:box:contd a1
C++ code:
void smgl_contd(mglGraph *gr) { mglData a,v(5),a1(30,40,3); mgls_prepare2d(&a); v.a[0]=-0.5; v.a[1]=-0.15; v.a[2]=0; v.a[3]=0.15; v.a[4]=0.5; gr->Fill(a1,"0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)"); if(big!=3) { gr->SubPlot(2,2,0); gr->Title("ContD plot (default)"); } gr->Rotate(50,60); gr->Box(); gr->ContD(a); if(big==3) return; gr->SubPlot(2,2,1); gr->Title("manual levels"); gr->Rotate(50,60); gr->Box(); gr->ContD(v,a); gr->SubPlot(2,2,2); gr->Title("'\\_' style"); gr->Rotate(50,60); gr->Box(); gr->ContD(a,"_"); gr->SubPlot(2,2,3); gr->Title("several slices"); gr->Rotate(50,60); gr->Box(); gr->ContD(a1); }