Grille d'héxagones et leurs homothétiques avec #pyggb

Grille d'héxagones et leurs homothétiques avec #pyggb
[url=https://geogebra.org/python/index.html?name=grille+d%27h%C3%A9xagones+et+leurs+homoth%C3%A9tiques&code=eJy9VMGO2jAQvecrrN1Dw8YBAksPSDksu7BSRQR3hKpsYliTYKeOQfG5P9P%2BRvtjHTsBAqGr7aFrybFn3vP4eSaaleBbJEIWw0K3GRfyzipXJOmWWLdfRmgsKWGMoF7X7XloE7I9JQKs3sCyrJisUESYFGQtwj2VxH7AI%2FyIn%2FAYT1pDC8EQRO4EQ3NOmbTth3bhjGA%2BwnyCOYY5aRetzmcMmAJMAaYAU4ApwJTGaP51T3P6khJ%2FEqY5aVnWLUgO1wTFO5Tp2ChAWShQ%2BumVb7l8%2Ff3910%2BQjmJSKUQzRKQ2RZiZJyZDo99EsQM8w8k1xcmdHbQLdwYaHfhgYyuwlbbVdWUzhtZaAIPPD7h6BwlcC5qmRo%2BRm6NvOwJqOUO55FECSMhyw0xpLg3RbHIUGJ0xyXPK7JhucVTgSFViA3%2BxNJsVF0ghynRB4UFdrJlexdJjemAe2MVbbD3mfpmDwtkxCie2tquvLlpY1TxKi7mSh3qkaRuSTlhsz0%2F%2B4OCblj4taXMhye3jXk2UptATxaso9xe6n%2F3znzJYbJYLusTl6nhmBwvse%2BW%2BV%2FPr%2FYnhesvzp2gNSV3D4OJ2PSIOFfOR5yadQQPMIK2pWnNmL6qfr9L3jPU5yGXNq1VV%2FkagE%2FH4mEaI49OuI%2B8ODnk4UJewpFz4CztxvFZngA%2Br17Gps3H6wOBZGFGpfK8ZWLeWdp4Sktnddrc7OGdcqd1ZpczeO1oVdqzjBV7ZZ2xXox9R0zeKclL5nvTXHnmlis1gTfRfLjL5%2BY%2B11g1yXOj2GO0khf43tKwVZ%2FExg2XTcb0u1rPRWHCJ9%2F8CW%2Fi%2B0nzzkoZRclPXB53UdFE4CHoG5gPePwg%2B%2BKI%3D]LIEN / LINK[/url]
[code]from random import*[br]import time[br]#JB Etienne 20-21 janvier 2025[br][br][br]def centregravite(A,B,C,D,E,F):[br] return Point((A.x+B.x+C.x+D.x+E.x+F.x)/6,(A.y+B.y+C.y+D.y+E.y+F.y)/6,is_visible=False)[br][br]# image du point M par l'homothétie de centre O et de rapport k:[br]def image(M,O,k):[br] return Point(k*(M.x-O.x)+O.x,k*(M.y-O.y)+O.y,is_visible=False)[br][br]# On génère une grille de points que l'on stocke dans une liste de listes M[br]def dessin(dim,cx,cy):[br] M=[][br] for y in range(0,dim,1):[br] L=[][br] for x in range(0,dim,1):[br] P=Point(x+uniform(-cx,cx),y+uniform(-cy,cy),is_visible=False)[br] L.append(P)[br] M.append(L)[br] for j in range(0,dim-3,2):[br] for i in range(1,dim-3,4):[br] G=centregravite(M[j][i],M[j][i+1],M[j+1][i+2],M[j+2][i+1],M[j+2][i],M[j+1][i-1])[br] for k in range(1,5):[br] coef = 1-k/5[br] p=Polygon([image(M[j][i],G,coef),image(M[j][i+1],G,coef)[br] ,image(M[j+1][i+2],G,coef),image(M[j+2][i+1],G,coef),image(M[j+2][i],G,coef)[br] ,image(M[j+1][i-1],G,coef)],color=[(k+1)/5,(k+1)/5,1/(i+j+3)],opacity=1)[br] time.sleep(0.005)[br] G=centregravite(M[j+1][i+2],M[j+1][i+1+2],M[j+1+1][i+2+2],M[j+2+1][i+1+2],M[j+2+1][i+2],M[j+1+1][i-1+2])[br] for k in range(1,5):[br] coef = 1-k/5[br] p=Polygon([image(M[j+1][i+2],G,coef),image(M[j+1][i+1+2],G,coef)[br] ,image(M[j+1+1][i+2+2],G,coef),image(M[j+2+1][i+1+2],G,coef),image(M[j+2+1][i+2],G,coef)[br] ,image(M[j+1+1][i-1+2],G,coef)],color=[(k+1)/5,(k+1)/5,1/(i+j+3)],opacity=1)[br] time.sleep(0.005)[br] [br][br]# Exécution :[br][br]fond=Polygon(Point(-10,-10,is_visible=False),Point(30,-10,is_visible=False)[br],4,color="black",opacity=1)[br][br]dessin(10,0.05,0.05)[br][br][/code]

Information: Grille d'héxagones et leurs homothétiques avec #pyggb