二次近似曲線の描画マクロ

 二次近似曲線の描画マクロです。
 //**********************************************************************************
  #macro Contact_line(Lr,E1,E2)
  #local Px0=0; #local Pz0=0; #local Ox0=0; #local Oz0=0;
  #local i=0; #while( i < Pmax-2 )
   #local X0=Vp[i].x; #local Z0=Vp[i].y;
   #local Xc=Vp[i+1].x; #local Zc=Vp[i+1].y;
   #local X1=Vp[i+2].x; #local Z1=Vp[i+2].y;
   #local Sp=0; #local Ep=1;
   #local Ap=1/(10-1e-14); #local Mx=(Zc-Z0-1e-14)/(Xc-X0-1e-14);
   #while( Sp < Ep )
   Contact_curve_function(Sp,E1,E2,X0,Z0,Xc,Zc,X1,Z1,Px0,Pz0)
   #local Px1=Px0; #local Pz1=Pz0;
   Contact_curve_function(Sp+Ap,E1,E2,X0,Z0,Xc,Zc,X1,Z1,Px0,Pz0)
   #local Px2=Px0; #local Pz2=Pz0;
   #if(Sp=0) Beginning_center(Mx,Px1,Pz1,Px2,Pz2,Ox0,Oz0) #end
   Curve_element(Lr,Px1,Pz1,Px2,Pz2,Ox0,Oz0)
   #local Sp=Sp+Ap; #end
  #local i=i+2; #end
  #end
 //**********************************************************************************