︠1f91881b-a97f-4a34-b271-035bdecfd246s︠ typeset_mode(true) ︡197dae6d-511d-49cb-af13-e85813b174eb︡{"done":true}︡ ︠b5fef976-8850-4ab7-8dae-006e2a205332i︠ %md ## Who cares about topology Dans [cette vidéo](https://www.youtube.com/watch?v=AmgkSdhK4K8) on trouve plein de belles choses : un beau problème (rectangles) et une solution tout ce qui a de plus beau. Ci-après on trouvera ce qu'il faut pour dessiner la surface dont il est question, une fois que l'on aura la paramétrisation de la courbe de base. Par défaut, ma courbe est un cardiodïde, mais on peut changer tout assez facilement. ︡54aa7c70-9738-4a17-b3ec-99825d8e3d4f︡{"done":true,"md":"## Who cares about topology\n\nDans [cette vidéo](https://www.youtube.com/watch?v=AmgkSdhK4K8) on trouve plein de belles choses : un beau problème (rectangles) et une solution tout ce qui a de plus beau.\n\nCi-après on trouvera ce qu'il faut pour dessiner la surface dont il est question, une fois que l'on aura la paramétrisation de la courbe de base. Par défaut, ma courbe est un cardiodïde, mais on peut changer tout assez facilement."} ︠73c99860-9d3c-4b04-ad77-9cb3f1b40eafs︠ var('s,t') def x(t) : return cos(t)*(1-cos(t)) def y(t) : return sin(t)*(1-cos(t)) ︡19a7c7de-d096-4ed9-a17c-f8229381511c︡{"stdout":"(s, t)\n"}︡{"done":true}︡ ︠976b7188-c625-49f8-b477-a4e0f4ed6bf7ss︠ def cf(s,t): return sin(s-t) # La seule fonction de ceci est de colorier joliment la surface. Surf = parametric_plot3d([(x(t)+x(s))/2, (y(t)+y(s))/2, 1/2*sqrt((x(t)-x(s))^2 + (y(t)-y(s))^2)], (t,0,2*pi),(s,0,2*pi), adaptive = True, color=(cf,colormaps.ocean) , opacity=0.7, mesh = 0.7) show(Surf, frame=False) ︡c3f53b4f-4de9-463b-b551-ebe0b306cf4f︡{"file":{"filename":"691689ce-b74f-461c-b07b-d16853e2bd0c.sage3d","uuid":"691689ce-b74f-461c-b07b-d16853e2bd0c"}}︡{"done":true}︡ ︠bae8c9ef-16d8-4d79-89e0-5fa846fe5cfc︠ ︠bfcaa029-00ee-4572-ac52-f381247b86d0︠