function tracerFigure() { fixerNbInitialObjets(6); fixerValeursAsurveiller(['Niveau']); fixerPointsAsurveiller([]); initialiser() ; var n = valeur('Niveau') ; commandeG('sAB=Segment[A,B]') ; cacheEtiquette('sAB') ; commandeG('sAC=Segment[A,C]') ; cacheEtiquette('sAC') ; commandeG('sBC=Segment[B,C]') ; cacheEtiquette('sBC') ; sierpinski(n, 'A', 'B', 'C') ; } function sierpinski(niveau, point1, point2, point3) { if (niveau == 0) {return ;} var point12, point13, point23; point12=nouveau('P') ; point13=nouveau('P') ; point23=nouveau('P') ; commandeG('@1=(@2+@3)/2',point12,point1,point2); commandeG('@1=(@2+@3)/2',point13,point1,point3); commandeG('@1=(@2+@3)/2',point23,point2,point3); cacheObjet(point12); cacheObjet(point13); cacheObjet(point23); commandeG('@1=Polygon[@2,@3,@4]', nouveau('tri'), point12, point13, point23); sierpinski(niveau-1, point1, point12, point13) ; sierpinski(niveau-1, point2, point12, point23) ; sierpinski(niveau-1, point3, point13, point23) ; }