function EExecD00(D,X,Y,Z,A,Sg1,Sg2,Sg3) { var S=false; var XCentr = {Re:undefined, Im:undefined} var YCentr = {Re:undefined, Im:undefined} var Radius = {Re:undefined, Im:undefined} var Att=CopyAtt(A); if ((Att.Lv==drw_Limited) || (Att.Lv==drw_Opposite)) Att.Lv=drw_UnLimited; if ((X.OB==undefined) || (Y.OB==undefined) || (Z.OB==undefined)) return false; if (((X.OB=="C") || (X.OB=="D")) && ((Y.OB=="C") || (Y.OB=="D")) && ((Z.OB=="C") || (Z.OB="O") || (Z.OB="D"))) { if (X.OB=="C") XCentr=MCompl(Sg1*X.C.Re,X.C.Im); if (Y.OB=="C") YCentr=MCompl(Sg2*Y.C.Re,Y.C.Im); if (X.OB=="D") XCentr=MCompl(Sg1*X.Xc.Re,X.Xc.Im); if (Y.OB=="D") YCentr=MCompl(Sg2*Y.Yc.Re,Y.Yc.Im); if (Z.OB=="C") { Radius= Z.C; } if ((Z.OB=="O") && (Z.OAtt.LV==0)) { Radius=MCompl(Math.sqrt(Sqr(Z.X2.Re-Z.X1.Re)+Sqr(Z.Y2.Re-Z.Y1.Re)),0); } if (Z.OB=="D") { Radius=Z.R; } TODuga_Create(D,XCentr,YCentr,Radius,XCentr.Re+Radius.Re,YCentr.Re,XCentr.Re+Radius.Re,YCentr.Re,Att); } else if (Att.Chk==1) {Out_Prm1.OB="$"} S=true; return S; } // EExecD00