// Macros : $macros={}; $macros["CercleCentrePoint"]={ name:"Cercle Centre Point", parameters:["expression","expression"], exec: function (CdO,CdB){ PthMin=Point("PthMin","[0,0]","0"); PthMax=Point("PthMax","[2*\u03C0,0]","0"); Scerc=Segment("Scerc",PthMin,PthMax); tCerc=PointOn("tCerc",Scerc,0.6); CstOB=Expression("CstOB","Const OB = ","","","[((exp(CdO[0])+exp(-CdO[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdO[1]^2-CdB[1]^2)/(2*(CdB[1]-CdO[1])),(exp(CdO[0])+exp(-CdO[0]))^2/4+(CdO[1]+((exp(CdO[0])+exp(-CdO[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdO[1]^2-CdB[1]^2)/(2*(CdB[1]-CdO[1])))^2]","1.2","-2.6"); R=Expression("R","R = ","","","abs(log((sqrt(CstOB[1])+CdO[1]+CstOB[0])*(sqrt(CstOB[1])-CdB[1]-CstOB[0])/((sqrt(CstOB[1])-CdO[1]-CstOB[0])*(sqrt(CstOB[1])+CdB[1]+CstOB[0]))))/2","2.4","-0.4"); ChuCerc=Expression("ChuCerc","ChuCerc = ","","","(exp(R)+exp(-R))*(exp(CdO[0])+exp(-CdO[0]))/4+(exp(R)-exp(-R))*(exp(CdO[0])+exp(-CdO[0]))*cos(x(tCerc))/4","2.3","-0.5"); CdPtC=Expression("CdPtC","Coord PtCerc = ","","","[log(ChuCerc+sqrt(ChuCerc^2-1)),CdO[1]+(exp(R)-exp(-R))*(exp(CdO[0])+exp(-CdO[0]))*sin(x(tCerc))/4]","2.3","-0.4"); LePtC=Point("LePtC","[2*cos(CdPtC[1])/(exp(CdPtC[0])+exp(-CdPtC[0])),2*sin(CdPtC[1])/(exp(CdPtC[0])+exp(-CdPtC[0])),CdPtC[0]-(exp(CdPtC[0])-exp(-CdPtC[0]))/(exp(CdPtC[0])+exp(-CdPtC[0]))]","0"); LeCercle=Locus("LeCercle",LePtC,tCerc); STL(LeCercle,"c:#b40000;s:1;f:30;p:100"); return [LeCercle]; }}; $macros["ConstDroiteck2"]={ name:"Const. Droite [c,k2]", parameters:["expression","expression"], exec: function (CdA,CdB){ CstGene=Expression("CstGene","Const2pts = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","1.5","-0.4"); STL(CstGene,"c:#2f542d;s:7;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); return [CstGene]; }}; $macros["ConstMedetCdMilieu"]={ name:"ConstMed et CdMilieu", parameters:["expression","expression"], exec: function (CdA,CdB){ CstAB=Expression("CstAB","Const AB = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","1.8","-2.6"); xIab=Expression("xIab","xIab = ","","","log((sqrt(CstAB[1])+CdA[1]+CstAB[0])*((sqrt(CstAB[1])+CdB[1]+CstAB[0]))/((sqrt(CstAB[1])-CdA[1]-CstAB[0])*(sqrt(CstAB[1])-CdB[1]-CstAB[0])))/4","1.8","-1.5"); tI=Expression("tI","thetaI= ","","","sqrt(CstAB[1])*(exp(xIab)-exp(-xIab))/(exp(xIab)+exp(-xIab))-CstAB[0]","2.2","-1.2"); chuI=Expression("chuI","chuI =","","","sqrt(CstAB[1]-(tI+CstAB[0])^2)","1.7","-0.9"); uI=Expression("uI","uI = ","","","log(chuI+sqrt(chuI^2-1))","1.3","-0.9"); CdIab=Expression("CdIab","coord Iab =","","","[uI,tI]","1.6","-2.2"); CstMed=Expression("CstMed","Const Mediatrice AB = ","","","[CstAB[0]-CstAB[1]/(CdIab[1]+CstAB[0]),(CstAB[1]/(CdIab[1]+CstAB[0]))^2-CstAB[1]]","1.8","-2.9"); return [CdIab,CstMed]; }}; $macros["CoordInter2droites"]={ name:"Coord Inter 2 droites", parameters:["expression","expression"], exec: function (CstDrt1,CstDrt2){ CdInter=Expression("CdInter","CoordInter = ","","","[log(sqrt(CstDrt1[1]-(((CstDrt1[1]-CstDrt2[1])/(CstDrt1[0]-CstDrt2[0])-CstDrt1[0]-CstDrt2[0])/2+CstDrt1[0])^2)+sqrt(CstDrt1[1]-(((CstDrt1[1]-CstDrt2[1])/(CstDrt1[0]-CstDrt2[0])-CstDrt1[0]-CstDrt2[0])/2+CstDrt1[0])^2-1)),((CstDrt1[1]-CstDrt2[1])/(CstDrt1[0]-CstDrt2[0])-CstDrt1[0]-CstDrt2[0])/2]","2.3","-0.9"); STL(CdInter,"c:#512475;s:7;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); return [CdInter]; }}; $macros["CoordMilieu"]={ name:"Coord Milieu", parameters:["expression","expression"], exec: function (CdA,CdB){ CstAB=Expression("CstAB","Const AB = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","-0.2","0.1"); xIab=Expression("xIab","xIab = ","","","log((sqrt(CstAB[1])+CdA[1]+CstAB[0])*((sqrt(CstAB[1])+CdB[1]+CstAB[0]))/((sqrt(CstAB[1])-CdA[1]-CstAB[0])*(sqrt(CstAB[1])-CdB[1]-CstAB[0])))/4","1.8","-1.5"); tI=Expression("tI","thetaI= ","","","sqrt(CstAB[1])*(exp(xIab)-exp(-xIab))/(exp(xIab)+exp(-xIab))-CstAB[0]","2.4","-1.6"); chuI=Expression("chuI","chuI =","","","sqrt(CstAB[1]-(tI+CstAB[0])^2)","1.7","-0.9"); uI=Expression("uI","uI = ","","","log(chuI+sqrt(chuI^2-1))","1.3","-0.9"); CoordMilieu=Expression("CoordMilieu","coord Milieu =","","","[uI,tI]","1.8","-1.3"); STL(CoordMilieu,"c:#697917;s:7;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjoyMA=="); return [CoordMilieu]; }}; $macros["CoordMilieu3Exp"]={ name:"Coord Milieu 3Exp", parameters:["expression","expression","expression"], exec: function (CdA,CdB,CstAB){ xIab=Expression("xIab","xIab = ","","","log((sqrt(CstAB[1])+CdA[1]+CstAB[0])*((sqrt(CstAB[1])+CdB[1]+CstAB[0]))/((sqrt(CstAB[1])-CdA[1]-CstAB[0])*(sqrt(CstAB[1])-CdB[1]-CstAB[0])))/4","1.8","-1.5"); tI=Expression("tI","thetaI= ","","","sqrt(CstAB[1])*(exp(xIab)-exp(-xIab))/(exp(xIab)+exp(-xIab))-CstAB[0]","2.3","-1.7"); chuI=Expression("chuI","chuI =","","","sqrt(CstAB[1]-(tI+CstAB[0])^2)","1.7","-0.9"); uI=Expression("uI","uI = ","","","log(chuI+sqrt(chuI^2-1))","1.3","-0.9"); CoordMilieu=Expression("CoordMilieu","coord Milieu =","","","[uI,tI]","1.8","-1.3"); STL(CoordMilieu,"c:#697917;s:7;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjoyMA=="); return [CoordMilieu]; }}; $macros["CoordparAoAuA"]={ name:"Coord par A oA uA", parameters:["point","point","point"], exec: function (A,oA,uA){ E1=Expression("E1","","","","A-oA","0.36049591399451686","-0.736224049707112"); CdA=Expression("CdA","","","","[uA[2],IF(E1[1]>0,acos(E1[0]/sqrt(E1[0]^2+E1[1]^2)),2*\u03C0-acos(E1[0]/sqrt(E1[0]^2+E1[1]^2)))]","0.6143662759624864","-1.4470610632174268"); STL(CdA,"c:#435805;s:7;sn:true;f:24;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); return [CdA]; }}; $macros["DistanceparCoord"]={ name:"Distance par Coord", parameters:["expression","expression"], exec: function (CdA,CdB){ CstAB=Expression("CstAB","Const AB = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","1.2743523874591296","-2.73154653165846"); dAB=Expression("dAB","d(A,B) = ","","","abs(log((sqrt(CstOB1[1])+CdA[1]+CstOB1[0])*(sqrt(CstOB1[1])-CdB[1]-CstOB1[0])/((sqrt(CstOB1[1])-CdA[1]-CstOB1[0])*(sqrt(CstOB1[1])+CdB[1]+CstOB1[0]))))/2","4","-2.25"); STL(dAB,"c:#6c6834;s:7;sn:true;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); return [dAB]; }}; $macros["droiteparConst"]={ name:"droite par Const", parameters:["expression"], exec: function (CstAB){ PmaxDrte=Point("PmaxDrte","[-CstAB[0]+sqrt(CstAB[1]-1),-1]","0"); PminDrte=Point("PminDrte","[-CstAB[0]-sqrt(CstAB[1]-1),-1]","0"); SegDrte=Segment("SegDrte",PminDrte,PmaxDrte); tetaK=PointOn("tetaK",SegDrte,0.8); chuK=Expression("chuK","chuK = ","","","sqrt(CstAB[1]-(x(tetaK)+CstAB[0])^2)","2","-0.7"); uK=Expression("uK","uK = ","","","log(chuK+sqrt(chuK^2-1))","2.","-0.5"); PtDrt=Point("PtDrt","[cos(x(tetaK))/chuK,sin(x(tetaK))/chuK,uK-(exp(uK)-exp(-uK))/(exp(uK)+exp(-uK))]","0"); LaDroite=Locus("LaDroite",PtDrt,tetaK); STL(LaDroite,"c:#b40000;s:3;f:30;p:0"); return [LaDroite]; }}; $macros["HauteurABC"]={ name:"Hauteur (AB) C", parameters:["expression","expression","expression"], exec: function (CdA,CdB,CdC){ CstAB=Expression("CstAB","Const AB = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","1.2","-1.3"); tHc=Expression("tHc","theta H_C = ","","","(2*CdC[1]*CstAB[1]-CstAB[0]*((exp(CdC[0])+exp(-CdC[0]))^2/4+(CdC[1]+CstAB[0])^2-CstAB[1]))/((exp(CdC[0])+exp(-CdC[0]))^2/4+(CdC[1]+CstAB[0])^2+CstAB[1]) ","1.1","-0.8"); chuHc=Expression("chuHc","chuHc = ","","","sqrt(CstAB[1]-(tHc+CstAB[0])^2)","1.6963991054406837","-2.393472484595991"); uHc=Expression("uHc","uHc = ","","","log(chuHc+sqrt(chuHc^2-1))","1.93","-0.8"); CdHc=Expression("CdHc","Coord Hc = ","","","[uHc,tHc]","1.3","-1.6"); Hc=Point("Hc","[cos(tHc)/chuHc,sin(tHc)/chuHc,uHc-(exp(uHc)-exp(-uHc))/(exp(uHc)+exp(-uHc))]","0"); CstHc=Expression("CstHc","Const Hauteur Hc = ","","","[((exp(CdHc[0])+exp(-CdHc[0]))^2/4-(exp(CdC[0])+exp(-CdC[0]))^2/4+CdHc[1]^2-CdC[1]^2)/(2*(CdC[1]-CdHc[1])),(exp(CdHc[0])+exp(-CdHc[0]))^2/4+(CdHc[1]+((exp(CdHc[0])+exp(-CdHc[0]))^2/4-(exp(CdC[0])+exp(-CdC[0]))^2/4+CdHc[1]^2-CdC[1]^2)/(2*(CdC[1]-CdHc[1])))^2]","1.5","-1.8"); PmaxHt=Point("PmaxHt","[-CstHc[0]+sqrt(CstHc[1]-1),-1.3]","0"); PminHt=Point("PminHt","[-CstHc[0]-sqrt(CstHc[1]-1),-1.3]","0"); SegHaut=Segment("SegHaut",PminHt,PmaxHt); tetaK3=PointOn("tetaK3",SegHaut,0.7); chuK3=Expression("chuK3","chuK = ","","","sqrt(CstHc[1]-(x(tetaK3)+CstHc[0])^2)","-1.3","-0.7"); uK3=Expression("uK3","uK = ","","","log(chuK3+sqrt(chuK3^2-1))","-1.1","-0.55"); PtSurH=Point("PtSurH","[cos(x(tetaK3))/chuK3,sin(x(tetaK3))/chuK3,uK3-(exp(uK3)-exp(-uK3))/(exp(uK3)+exp(-uK3))]","0"); Hauteur=Locus("Hauteur",PtSurH,tetaK3); STL(Hc,"c:#007c00;s:4;f:30"); STL(Hauteur,"c:#007c00;s:2;f:30;p:200"); return [Hc,CstHc,Hauteur]; }}; $macros["HoricycleAltitude"]={ name:"Horicycle Altitude", parameters:["point"], exec: function (uG){ altG=Expression("altG","","","","uG[2]","-1.6498183460809837","-0.40080332701402427"); G1=Point("G1","[2/(exp(altG)+exp(-altG)),0,altG-(exp(altG)-exp(-altG))/(exp(altG)+exp(-altG))]","0"); G2=Point("G2","[0,2/(exp(altG)+exp(-altG)),altG-(exp(altG)-exp(-altG))/(exp(altG)+exp(-altG))]","0"); P13=Point("P13","[-2/(exp(altG)+exp(-altG)),0,altG-(exp(altG)-exp(-altG))/(exp(altG)+exp(-altG))]","0"); C11=Circle3pts3D("C11",G1,G2,P13); STL(C11,"c:#cc66cc;s:1;f:30;p:0"); return [C11]; }}; $macros["Mediatriceetcoord"]={ name:"M\u00e9diatrice et coord", parameters:["expression","expression"], exec: function (CdA,CdB){ // calcul de la constante de la droite et du milieu du segment CstAB=Expression("CstAB","Const AB = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","1.8","-2.6"); xIab=Expression("xIab","xIab = ","","","log((sqrt(CstAB[1])+CdA[1]+CstAB[0])*((sqrt(CstAB[1])+CdB[1]+CstAB[0]))/((sqrt(CstAB[1])-CdA[1]-CstAB[0])*(sqrt(CstAB[1])-CdB[1]-CstAB[0])))/4","1.8","-1.5"); tI=Expression("tI","thetaI= ","","","sqrt(CstAB[1])*(exp(xIab)-exp(-xIab))/(exp(xIab)+exp(-xIab))-CstAB[0]","2.2","-1.2"); chuI=Expression("chuI","chuI =","","","sqrt(CstAB[1]-(tI+CstAB[0])^2)","1.7","-0.9"); uI=Expression("uI","uI = ","","","log(chuI+sqrt(chuI^2-1))","1.3","-0.9"); CdIab=Expression("CdIab","coord Iab =","","","[uI,tI]","1.6","-2.2"); CstMed=Expression("CstMed","Const Mediatrice AB = ","","","[CstAB[0]-CstAB[1]/(CdIab[1]+CstAB[0]),(CstAB[1]/(CdIab[1]+CstAB[0]))^2-CstAB[1]]","1.8","-2.9"); PminMed=Point("PminMed","[-CstMed[0]-sqrt(CstMed[1]-1),-1.5]","0"); PmaxMed=Point("PmaxMed","[-CstMed[0]+sqrt(CstMed[1]-1),-1.5]","0"); SegMed=Segment("SegMed",PminMed,PmaxMed); tetaK=PointOn("tetaK",SegMed,0.7); chuK=Expression("chuK","chuK = ","","","sqrt(CstMed[1]-(x(tetaK)+CstMed[0])^2)","-1.3","-0.7"); uK=Expression("uK","uK = ","","","log(chuK+sqrt(chuK^2-1))","1.2","-0.6"); PtDrt=Point("PtDrt","[cos(x(tetaK))/chuK,sin(x(tetaK))/chuK,uK-(exp(uK)-exp(-uK))/(exp(uK)+exp(-uK))]","0"); LaDroite=Locus("LaDroite",PtDrt,tetaK); STL(CdIab,"c:#697917;s:7;sn:true;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjoyMA=="); STL(CstMed,"c:#660937;s:7;f:17;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); STL(LaDroite,"c:#b40000;s:3;f:30;p:1000"); return [CdIab,CstMed,LaDroite]; }}; $macros["PointparCoord"]={ name:"Point par Coord", parameters:["expression"], exec: function (CdPtC){ LePt=Point("LePt","[2*cos(CdPtC[1])/(exp(CdPtC[0])+exp(-CdPtC[0])),2*sin(CdPtC[1])/(exp(CdPtC[0])+exp(-CdPtC[0])),CdPtC[0]-(exp(CdPtC[0])-exp(-CdPtC[0]))/(exp(CdPtC[0])+exp(-CdPtC[0]))]","0"); STL(LePt,"c:#0000b2;s:6;f:18"); return [LePt]; }}; $macros["SegmentParCoord"]={ name:"Segment Par Coord", parameters:["expression","expression"], exec: function (CdA,CdB){ Cst2Pts=Expression("Cst2Pts","Const2pts = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","-1","-0.4") PmaxSeg=Point("PmaxSeg","[max(CdA[1],CdB[1]),-0.5]","0"); PminSeg=Point("PminSeg","[min(CdA[1],CdB[1]),-0.5]","0"); Segdeseg=Segment("Segdeseg",PminSeg,PmaxSeg); tetaK=PointOn("tetaK",Segdeseg,0.4); chuK=Expression("chuK","chuK = ","","","sqrt(Cst2Pts[1]-(x(tetaK)+Cst2Pts[0])^2)","0.9","-1.7"); uK=Expression("uK","uK = ","","","log(chuK+sqrt(chuK^2-1))","0.8","-1.5"); PtSeg=Point("PtSeg","[cos(x(tetaK))/chuK,sin(x(tetaK))/chuK,uK-(exp(uK)-exp(-uK))/(exp(uK)+exp(-uK))]","0"); LeSeg=Locus("LeSeg",PtSeg,tetaK); STL(LeSeg,"c:#b40000;s:3;f:30;p:100"); return [LeSeg]; }}; // Coordinates System : SetCoords(-50,39,196.95091468104658,true); // Geometry : O=Point("O",1.9091051219991315,-1.7872473482545062); Z=Point("Z","[0,0,1]","0"); X=Point("X","[1,0,0]","0"); P11=Point("P11","[-sqrt(2)/2,-sqrt(2)/2,0]","0"); PthMax=Point("PthMax","[2*\u03C0,0]","0"); PthMin=Point("PthMin","[0,0]","0"); Y=Point("Y","[0,1,0]","0"); S11=Segment("S11",O,X); C1=Circle3pts3D("C1",X,Y,P11); Scerc=Segment("Scerc",PthMin,PthMax); uI=Point("uI","[x(O.coords2D())+1,y(O.coords2D())]","0"); S21=Segment("S21",O,Y); S31=Segment("S31",O,Z); S3=Segment("S3",uI,Y); S2=Segment("S2",O,uI); Center1=Center("Center1",C1); tCerc=PointOn("tCerc",Scerc,0.6); Symc1=Symmetry("Symc1",Z,Center1); Symc2=Symmetry("Symc2",Symc1,Center1); Symc3=Symmetry("Symc3",Symc2,Center1); S1=Segment("S1",O,Symc3); uG=PointOn("uG",S1,0.20052710313256453); uC=PointOn("uC",S1,0.12405470152063312); uB=PointOn("uB",S1,0.18483058233642727); uA=PointOn("uA",S1,0.23543895607140145); altG3=Expression("altG3","","","","uC[2]","0.25387036196796964","-0.37033888357786793"); altG1=Expression("altG1","","","","uA[2]","0.25387036196796964","-0.3727563886392184"); altG2=Expression("altG2","","","","uB[2]","0.25387036196796964","-0.3829112031179372"); altG=Expression("altG","","","","uG[2]","0.4061925791487514","-1.020558855111238"); G21=Point("G21","[0,2/(exp(altG1)+exp(-altG1)),altG1-(exp(altG1)-exp(-altG1))/(exp(altG1)+exp(-altG1))]","0"); P133=Point("P133","[-2/(exp(altG3)+exp(-altG3)),0,altG3-(exp(altG3)-exp(-altG3))/(exp(altG3)+exp(-altG3))]","0"); P132=Point("P132","[-2/(exp(altG2)+exp(-altG2)),0,altG2-(exp(altG2)-exp(-altG2))/(exp(altG2)+exp(-altG2))]","0"); P131=Point("P131","[-2/(exp(altG1)+exp(-altG1)),0,altG1-(exp(altG1)-exp(-altG1))/(exp(altG1)+exp(-altG1))]","0"); G13=Point("G13","[2/(exp(altG3)+exp(-altG3)),0,altG3-(exp(altG3)-exp(-altG3))/(exp(altG3)+exp(-altG3))]","0"); G1=Point("G1","[2/(exp(altG)+exp(-altG)),0,altG-(exp(altG)-exp(-altG))/(exp(altG)+exp(-altG))]","0"); G2=Point("G2","[0,2/(exp(altG)+exp(-altG)),altG-(exp(altG)-exp(-altG))/(exp(altG)+exp(-altG))]","0"); G11=Point("G11","[2/(exp(altG1)+exp(-altG1)),0,altG1-(exp(altG1)-exp(-altG1))/(exp(altG1)+exp(-altG1))]","0"); G23=Point("G23","[0,2/(exp(altG3)+exp(-altG3)),altG3-(exp(altG3)-exp(-altG3))/(exp(altG3)+exp(-altG3))]","0"); P13=Point("P13","[-2/(exp(altG)+exp(-altG)),0,altG-(exp(altG)-exp(-altG))/(exp(altG)+exp(-altG))]","0"); G22=Point("G22","[0,2/(exp(altG2)+exp(-altG2)),altG2-(exp(altG2)-exp(-altG2))/(exp(altG2)+exp(-altG2))]","0"); G12=Point("G12","[2/(exp(altG2)+exp(-altG2)),0,altG2-(exp(altG2)-exp(-altG2))/(exp(altG2)+exp(-altG2))]","0"); HoriA=Circle3pts3D("HoriA",G11,G21,P131); Par2=Parallel("Par2",S3,G2); Locus3=Locus("Locus3",G1,uG); HoriC=Circle3pts3D("HoriC",G13,G23,P133); Locus4=Locus("Locus4",P13,uG); oG=MidPoint("oG",G1,P13); HoriB=Circle3pts3D("HoriB",G12,G22,P132); Par1=Parallel("Par1",S2,oG); Center3=Center("Center3",HoriC); Center4=Center("Center4",HoriB); Center2=Center("Center2",HoriA); C=PointOn("C",HoriC,222); B=PointOn("B",HoriB,449); A=PointOn("A",HoriA,122); uG1=OrderedIntersection("uG1",Par2,Par1,0); E12=Expression("E12","","","","C-Center3","0.38588295019131386","-0.7057596062709556"); E11=Expression("E11","","","","B-Center4","0.4061925791487514","-0.7159144207496744"); E1=Expression("E1","","","","A-Center2","0.4061925791487514","-0.7159144207496744"); CdA=Expression("CdA","","","","[uA[2],IF(E1[1]>0,acos(E1[0]/sqrt(E1[0]^2+E1[1]^2)),2*\u03C0-acos(E1[0]/sqrt(E1[0]^2+E1[1]^2)))]","4.214248008668296","-0.4112699863881108"); CdB=Expression("CdB","","","","[uB[2],IF(E11[1]>0,acos(E11[0]/sqrt(E11[0]^2+E11[1]^2)),2*\u03C0-acos(E11[0]/sqrt(E11[0]^2+E11[1]^2)))]","4.163473936274702","-0.7666884931432683"); CdC=Expression("CdC","","","","[uC[2],IF(E12[1]>0,acos(E12[0]/sqrt(E12[0]^2+E12[1]^2)),2*\u03C0-acos(E12[0]/sqrt(E12[0]^2+E12[1]^2)))]","4.214248008668296","-1.020558855111238"); Locus1=Locus("Locus1",uG1,uG); Symc4=Symmetry("Symc4",oG,uG1); CstAB1=Expression("CstAB1","Const AB = ","","","[((exp(CdB[0])+exp(-CdB[0]))^2/4-(exp(CdC[0])+exp(-CdC[0]))^2/4+CdB[1]^2-CdC[1]^2)/(2*(CdC[1]-CdB[1])),(exp(CdB[0])+exp(-CdB[0]))^2/4+(CdB[1]+((exp(CdB[0])+exp(-CdB[0]))^2/4-(exp(CdC[0])+exp(-CdC[0]))^2/4+CdB[1]^2-CdC[1]^2)/(2*(CdC[1]-CdB[1])))^2]","1.9117029592659065","-2.559380742085125"); CstAB=Expression("CstAB","Const AB = ","","","[((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])),(exp(CdA[0])+exp(-CdA[0]))^2/4+(CdA[1]+((exp(CdA[0])+exp(-CdA[0]))^2/4-(exp(CdB[0])+exp(-CdB[0]))^2/4+CdA[1]^2-CdB[1]^2)/(2*(CdB[1]-CdA[1])))^2]","1.9117029592659065","-2.559380742085125"); Locus2=Locus("Locus2",Symc4,uG); xIab=Expression("xIab","xIab = ","","","log((sqrt(CstAB[1])+CdA[1]+CstAB[0])*((sqrt(CstAB[1])+CdB[1]+CstAB[0]))/((sqrt(CstAB[1])-CdA[1]-CstAB[0])*(sqrt(CstAB[1])-CdB[1]-CstAB[0])))/4","1.9117029592659065","-1.4593807420851248"); xIab1=Expression("xIab1","xIab = ","","","log((sqrt(CstAB1[1])+CdB[1]+CstAB1[0])*((sqrt(CstAB1[1])+CdC[1]+CstAB1[0]))/((sqrt(CstAB1[1])-CdB[1]-CstAB1[0])*(sqrt(CstAB1[1])-CdC[1]-CstAB1[0])))/4","1.9117029592659065","-1.4593807420851248"); tI1=Expression("tI1","thetaI= ","","","sqrt(CstAB1[1])*(exp(xIab1)-exp(-xIab1))/(exp(xIab1)+exp(-xIab1))-CstAB1[0]","2.3117029592659066","-1.1593807420851245"); tI=Expression("tI","thetaI= ","","","sqrt(CstAB[1])*(exp(xIab)-exp(-xIab))/(exp(xIab)+exp(-xIab))-CstAB[0]","2.3117029592659066","-1.1593807420851245"); chuI1=Expression("chuI1","chuI =","","","sqrt(CstAB1[1]-(tI1+CstAB1[0])^2)","1.8117029592659066","-0.8593807420851248"); chuI=Expression("chuI","chuI =","","","sqrt(CstAB[1]-(tI+CstAB[0])^2)","1.8117029592659066","-0.8593807420851248"); uI2=Expression("uI2","uI = ","","","log(chuI1+sqrt(chuI1^2-1))","1.4117029592659065","-0.8593807420851248"); uI1=Expression("uI1","uI = ","","","log(chuI+sqrt(chuI^2-1))","1.4117029592659065","-0.8593807420851248"); CdIab=Expression("CdIab","coord Iab =","","","[uI1,tI]","4.214248008668296","-1.3252032894728014"); CdIab1=Expression("CdIab1","coord Ibc =","","","[uI2,tI1]","4.061925791487514","-1.731395868621553"); CstMed1=Expression("CstMed1","Const Mediatrice BC = ","","","[CstAB1[0]-CstAB1[1]/(CdIab1[1]+CstAB1[0]),(CstAB1[1]/(CdIab1[1]+CstAB1[0]))^2-CstAB1[1]]","3.7572813571259505","-1.9852662305895226"); CstMed=Expression("CstMed","Const Mediatrice AB = ","","","[CstAB[0]-CstAB[1]/(CdIab[1]+CstAB[0]),(CstAB[1]/(CdIab[1]+CstAB[0]))^2-CstAB[1]]","4.061925791487514","-1.5282995790471772"); CdInter=Expression("CdInter","Coord centre CCir ABC = ","","","[log(sqrt(CstMed[1]-(((CstMed[1]-CstMed1[1])/(CstMed[0]-CstMed1[0])-CstMed[0]-CstMed1[0])/2+CstMed[0])^2)+sqrt(CstMed[1]-(((CstMed[1]-CstMed1[1])/(CstMed[0]-CstMed1[0])-CstMed[0]-CstMed1[0])/2+CstMed[0])^2-1)),((CstMed[1]-CstMed1[1])/(CstMed[0]-CstMed1[0])-CstMed[0]-CstMed1[0])/2]","3.7065072847323566","-2.4422328821318677"); oABC=Point("oABC","[2*cos(CdInter[1])/(exp(CdInter[0])+exp(-CdInter[0])),2*sin(CdInter[1])/(exp(CdInter[0])+exp(-CdInter[0])),CdInter[0]-(exp(CdInter[0])-exp(-CdInter[0]))/(exp(CdInter[0])+exp(-CdInter[0]))]","0"); CstOB=Expression("CstOB","Const OB = ","","","[((exp(CdInter[0])+exp(-CdInter[0]))^2/4-(exp(CdA[0])+exp(-CdA[0]))^2/4+CdInter[1]^2-CdA[1]^2)/(2*(CdA[1]-CdInter[1])),(exp(CdInter[0])+exp(-CdInter[0]))^2/4+(CdInter[1]+((exp(CdInter[0])+exp(-CdInter[0]))^2/4-(exp(CdA[0])+exp(-CdA[0]))^2/4+CdInter[1]^2-CdA[1]^2)/(2*(CdA[1]-CdInter[1])))^2]","1.3117029592659064","-2.559380742085125"); R=Expression("R","R = ","","","abs(log((sqrt(CstOB[1])+CdInter[1]+CstOB[0])*(sqrt(CstOB[1])-CdA[1]-CstOB[0])/((sqrt(CstOB[1])-CdInter[1]-CstOB[0])*(sqrt(CstOB[1])+CdA[1]+CstOB[0]))))/2","2.5117029592659064","-0.3593807420851249"); ChuCerc=Expression("ChuCerc","ChuCerc = ","","","(exp(R)+exp(-R))*(exp(CdInter[0])+exp(-CdInter[0]))/4+(exp(R)-exp(-R))*(exp(CdInter[0])+exp(-CdInter[0]))*cos(x(tCerc))/4","2.4117029592659067","-0.45938074208512486"); CdPtC=Expression("CdPtC","Coord PtCerc = ","","","[log(ChuCerc+sqrt(ChuCerc^2-1)),CdInter[1]+(exp(R)-exp(-R))*(exp(CdInter[0])+exp(-CdInter[0]))*sin(x(tCerc))/4]","2.4117029592659067","-0.3593807420851249"); LePtC=Point("LePtC","[2*cos(CdPtC[1])/(exp(CdPtC[0])+exp(-CdPtC[0])),2*sin(CdPtC[1])/(exp(CdPtC[0])+exp(-CdPtC[0])),CdPtC[0]-(exp(CdPtC[0])-exp(-CdPtC[0]))/(exp(CdPtC[0])+exp(-CdPtC[0]))]","0"); LeCercle=Locus("LeCercle",LePtC,tCerc); // Styles : STL(O,"c:#0000b2;s:6;sn:true;f:18;fl:true"); STL(Z,"c:#0000b2;h:1;o:1;s:4;sn:true;f:18"); STL(X,"c:#0000b2;o:1;s:4;sn:true;f:18"); STL(P11,"c:#0000b2;h:1;s:6;f:18"); STL(PthMax,"c:#0000b2;h:2;s:6;f:30"); STL(PthMin,"c:#0000b2;h:2;s:6;f:30"); STL(Y,"c:#0000b2;o:1;s:4;sn:true;f:18"); STL(S11,"c:#117dad;s:1;f:24"); STL(C1,"c:#cc66cc;s:2.5;f:30;p:0"); STL(Scerc,"c:#006633;h:2;s:1;f:24"); STL(uI,"c:#0000b2;h:2;s:6;sn:true;f:18"); STL(S21,"c:#117dad;s:1;f:24"); STL(S31,"c:#117dad;h:1;s:1;f:24"); STL(S3,"c:#006633;h:2;s:1;f:24"); STL(S2,"c:#006633;h:2;s:1;f:24"); STL(Center1,"c:#0000b2;h:1;s:6;f:18"); STL(tCerc,"c:#0000b2;h:2;s:6;f:30"); STL(Symc1,"c:#0000b2;h:1;s:6;f:18"); STL(Symc2,"c:#0000b2;h:1;s:6;f:18"); STL(Symc3,"c:#0000b2;h:1;s:6;f:18"); STL(S1,"c:#006633;s:1;f:24"); STL(uG,"c:#0000b2;h:2;s:6;sn:true;f:18"); STL(uC,"c:#0000b2;s:6;sn:true;f:18"); STL(uB,"c:#0000b2;s:6;sn:true;f:18"); STL(uA,"c:#0000b2;s:6;sn:true;f:18"); STL(altG3,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MTg="); STL(altG1,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MTg="); STL(altG2,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MTg="); STL(altG,"c:#567f3b;h:1;s:7;sn:true;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MTtzOjEwO2Y6MTg="); STL(G21,"c:#0000b2;h:2;s:6;f:18"); STL(P133,"c:#0000b2;h:2;s:6;f:18"); STL(P132,"c:#0000b2;h:2;s:6;f:18"); STL(P131,"c:#0000b2;h:2;s:6;f:18"); STL(G13,"c:#0000b2;h:2;s:6;f:18"); STL(G1,"c:#0000b2;h:2;s:6;sn:true;f:18"); STL(G2,"c:#0000b2;h:2;s:6;sn:true;f:18"); STL(G11,"c:#0000b2;h:2;s:6;f:18"); STL(G23,"c:#0000b2;h:2;s:6;f:18"); STL(P13,"c:#0000b2;h:2;s:6;f:18"); STL(G22,"c:#0000b2;h:2;s:6;f:18"); STL(G12,"c:#0000b2;h:2;s:6;f:18"); STL(HoriA,"c:#cc66cc;s:1;sn:true;f:30;p:0"); STL(Par2,"c:#780013;h:2;s:1;f:30;p:0"); STL(Locus3,"c:#780013;s:1;f:30;p:100"); STL(HoriC,"c:#cc66cc;s:1;sn:true;f:30;p:0"); STL(Locus4,"c:#780013;s:1;f:30;p:100"); STL(oG,"c:#0000b2;h:2;s:6;sn:true;f:18"); STL(HoriB,"c:#cc66cc;s:1;sn:true;f:30;p:0"); STL(Par1,"c:#780013;h:1;s:1;f:30;p:0"); STL(Center3,"c:#0000b2;h:1;s:6;sn:true;f:18"); STL(Center4,"c:#0000b2;h:1;s:6;sn:true;f:18"); STL(Center2,"c:#0000b2;h:1;s:6;sn:true;f:18"); STL(C,"c:#0000b2;s:6;sn:true;f:18"); STL(B,"c:#0000b2;s:6;sn:true;f:18"); STL(A,"c:#0000b2;s:6;sn:true;f:18"); STL(uG1,"c:#0000b2;h:2;s:6;sn:true;f:18"); STL(E12,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MTg="); STL(E11,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MTg="); STL(E1,"c:#48314c;h:1;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MTtzOjEwO2Y6MTg="); STL(CdA,"c:#435805;s:7;sn:true;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjoxOA=="); STL(CdB,"c:#435805;s:7;sn:true;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjoxOA=="); STL(CdC,"c:#435805;s:7;sn:true;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjoxOA=="); STL(Locus1,"c:#780013;s:1;f:30;p:100"); STL(Symc4,"c:#0000b2;h:1;s:6;f:18"); STL(CstAB1,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(CstAB,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(Locus2,"c:#780013;s:1;f:30;p:100"); STL(xIab,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(xIab1,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(tI1,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(tI,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(chuI1,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(chuI,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(uI2,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(uI1,"c:#780013;h:2;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(CdIab,"c:#780013;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); STL(CdIab1,"c:#780013;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); STL(CstMed1,"c:#780013;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); STL(CstMed,"c:#780013;s:7;f:16;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); STL(CdInter,"c:#512475;s:7;f:18;p:4;cL:200;cPT:YzojNzgwMDEzO3M6MTA7ZjozMA=="); STL(oABC,"c:#0000b2;s:6;sn:true;f:15"); STL(CstOB,"c:#780013;h:2;s:7;f:24;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(R,"c:#780013;h:2;s:7;f:24;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(ChuCerc,"c:#780013;h:2;s:7;f:24;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(CdPtC,"c:#780013;h:2;s:7;f:24;p:4;cL:200;cPT:YzojNzgwMDEzO2g6MjtzOjEwO2Y6MzA="); STL(LePtC,"c:#0000b2;h:2;s:6;f:30"); STL(LeCercle,"c:#b40000;s:2;f:30;p:100"); SetCoordsStyle("3Dmode:true;isAxis:false;isGrid:true;isOx:true;isOy:true;isLockOx:false;isLockOy:false;centerZoom:true;color:#111111;fontSize:18;axisWidth:1;gridWidth:0.1");