Wiki

Reso-nance numérique | Arts et cultures libres

Outils du site


projets:surfaces:accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
projets:surfaces:accueil [2015/04/16 21:17]
resonance [Tutoriel : Comment imprimer le modèle stl d'une surface algébrique]
projets:surfaces:accueil [2016/02/01 14:19] (Version actuelle)
resonance
Ligne 1: Ligne 1:
 ====== Surfaces ====== ====== Surfaces ======
-  * Porteur du projet : alba +  * Porteur du projet : Alba Málaga 
-  * Date : xx/xx/xxxx +  * Date : 2015 
-  * Licence : libre ! +  * Licence :  
-  Contexte :  +    Licence Creative Commons CC-BY pour les modèles 3D Taube, Kolibri et Herz; 
-  Fichiers : lien +    Licence de documentation libre GNU pour cette page de wiki;  
-  * Lien +    * Licence Creative Commons CC-BY-SA pour les autres modèles 3D et pour les images illustrant la documentation. 
 +  * Contexte :
     * [[http://www.imaginary.org]]     * [[http://www.imaginary.org]]
-    * http://imaginary.org/fr/hands-on/taube-kolibri-herz +    * [[http://mathematiquesvivantes.weebly.com/photosvideos.html]] 
-    * http://mathematiquesvivantes.weebly.com/photosvideos.html+  * Fichiers :  
 +    * [[http://imaginary.org/fr/hands-on/taube-kolibri-herz]]
  
 ===== Description ===== ===== Description =====
  
 L'intention du projet était de produire une série d'impressions 3D des surfaces disponibles sur la galérie IMAGINARY de Herwig Hauser. L'intention du projet était de produire une série d'impressions 3D des surfaces disponibles sur la galérie IMAGINARY de Herwig Hauser.
-Ces surfaces devaient accompagner une exposition au Vieux Port, pour que les animateurs puissent s'en saisir et les utiliser dans les explications au public.+Ces surfaces devaient accompagner une exposition au Vieux Port de Marseille, pour que les animateurs puissent s'en saisir et les utiliser dans les explications au public.
  
 En tout, 7 surfaces ont été imprimées à temps pour l'exposition Mathématiques Vivantes et Visuelles, dont quatre sur l'Ultimaker 2 du fablab LFO :  En tout, 7 surfaces ont été imprimées à temps pour l'exposition Mathématiques Vivantes et Visuelles, dont quatre sur l'Ultimaker 2 du fablab LFO : 
Ligne 33: Ligne 35:
  
 ===== Matériaux ===== ===== Matériaux =====
-Liste de matériel et composants nécessaires+ 
 +  * Imprimante 3D : Ultimaker 2 [[http://ultimaker.com/en/products/ultimaker-2-family/ultimaker-2]]  
 +  * Filament : PLA Form Futura 2.85mm 
 +  * Peinture acrylique 
 +  * Siccatif de bricolage  
 + 
 +===== Formules ===== 
 + 
 +Dans la table ci-dessus, toutes les formules implicites proviennent des contributions de Herwig Hauser sur Imaginary.org (galerie Herwig Hauser classic et l'ensemble de surfaces algébriques de l'institut Forwiss), avec éventuellement quelques constantes de rajoutées. Les paramétrisations correspondantes ont été calculées par Alba. L'intérêt d'une paramétrisation explicite pour la construction d'un modèle 3D est que les modèles qui en sortent sont plus propres, car approcher numériquement la solution d'une équation comporte des erreurs beaucoup plus grosses que d'évaluer une fonction. C'est particulièrement vrai dans le cas des équations polynomiales et l'évaluation des polynômes. 
 + 
 +^Nom^Équation polynomiale^Paramétrisation(s)^  
 +^Zitrus^$9(x^2+z^2)=64y^3(1-y)^3$^$\left\{\begin{array}{rcl}x&=&\frac83\sin^3(u)\cos^3(u)\cos(v)\\y&=&\cos^2(u)\\z&=&\frac83\sin^3(u)\cos^3(u)\sin(v)\end{array}\right.$^  
 +^Limão^$x^2=y^3z^3$^$\left\{\begin{array}{rcl}x&=&u^3v^3\\y&=&\pm u^2\\z&=&\pm v^2\end{array}\right.$^  
 +^Vis-à-vis^$x^2+y^2+y^4+z^3=x^3+z^4$^ ^ ^ 
 +^Calypso^$x^2+y^2z=z^2$^$\left\{\begin{array}{rcl}x&=&v^2\sin(u)&\\y&=&v\cos(u)&\\z&=&v^2\end{array}\right.$^$\left\{\begin{array}{rcl}x&=&v^2\cos(u)&\\y&=&v\sqrt{2\sin(u)}&\\z&=&v^2(\sin(u)-1)\end{array}\right.$^ 
 +^Calyx^$x^2+y^2z^3=z^4$^$\left\{\begin{array}{rcl}x&=&v^4\sin(u)&\\y&=&v\cos(u)&\\z&=&v^2\end{array}\right.$^$\left\{\begin{array}{rcl}x&=&v^4\sin(u)(\cos(u)-1)&\\y&=&v\sqrt{2\cos(u)}&\\z&=&v^2(\cos(u)-1)\end{array}\right.$^ 
 +^Daisy^$(x^2-y^3)^2=(z^2-y^2)^3$^$\left\{\begin{array}{rcl}x&=&v^3(\sin(u)+(\sin^2(u)-1) (\sin(u)+\cos(u)))^2\\y&=&v^2 (\sin(u)+(\sin^2(u)-1) (\sin(u)+\cos(u))) \sin(u) \\z&=&v^2(\sin^3(u)-\cos^3(u))\end{array}\right.$^  
 +^Diabolo^$x^2=(y^2+z^2)^2$^$\left\{\begin{array}{rcl}x&=&\pm(u^2+v^2)\\y&=&u\\z&=&v\end{array}\right.$^ 
 +^Ding Dong^$x^2+y^2+z^2=z^3$^$\left\{\begin{array}{rcl}x&=&\frac{v^6+1}{3\sqrt{3}v^3}\cos(u)\\y&=&\frac{v^6+1}{3\sqrt{3}v^3}\sin(u)\\z&=&\frac{-1+v^2-v^4}{3 v^2}\end{array}\right.$^$\left\{\begin{array}{rcl}x&=&\frac2{3\sqrt{3}}\cos\left(\frac{3v}2\right)\cos(u)\\y&=&\frac2{3\sqrt{3}}\cos\left(\frac{3v}2\right)\sin(u)\\z&=&\frac{1-2\cos(v)}3\end{array}\right.$^ 
 +^Distel^$x^2+y^2+z^2+1500(x^2+y^2)(x^2+z^2)(y^2+z^2)=1$^$ $^  
 +^Dullo^$x^2+y^2=(x^2+y^2+z^2)^2$^$\left\{\begin{array}{rcl}x&=&\frac{1-cos(v)}2\cos(u)\\y&=&\frac{1-cos(v)}2\sin(u)\\z&=&-\frac12\sin(v)\end{array}\right.$^  
 +^Eistüte^$(x^2+y^2)^3=4x^2y^2(z^2+1)$^$\left\{\begin{array}{rcl}x&=&\sin(2u)\sin(u)\sqrt{v^2+1}\\y&=&\sin(2u)\cos(u)\sqrt{v^2+1}\\z&=&v\end{array}\right.$^  
 +^Helix^$6x^2=2x^4+y^2z^2$^$\left\{\begin{array}{rcl}x&=&\frac1{\sqrt2}\sqrt{3\pm\sqrt{9\pm4u^2v^2}}\\y&=&u\\z&=&v\end{array}\right.$^$\left\{\begin{array}{rcl}x&=&\sqrt{3}\cos(u)\\y\text{ ou }z&=&\sqrt{3}v\\y\text{ ou }z&=&\sqrt{\frac32}\frac{\sin{2u}}v\end{array}\right.$^ 
 +^Herz^$x^2z^2+z^4=y^2+z^3$^$\left\{\begin{array}{rcl}x&=&\frac12v\sin(u)\\y&=&\pm\frac12\sqrt{v^2-1}(1+v\cos(u))\\z&=&\frac12(1+v\cos(u))\end{array}\right.$^  
 +^Himmel & Hölle^$x^2=y^2z^2$^$\left\{\begin{array}{rcl}x&=&\pm uv\\y&=&u\\z&=&v\end{array}\right.$^  
 +^Kolibri^$x^2=y^2z^2+z^3$^$\left\{\begin{array}{rcl}x&=&u(u^2-v^2)\\y&=&v\\z&=&u^2-v^2\end{array}\right.$^  
 +^Kreisel^$60(x^2+y^2)z^4=(60-x^2-y^2-z^2)^3$^$\left\{\begin{array}{rcl}x&=&\sqrt{\frac{60}{1+60(v^3+v^2)}}\cos(u)\\y&=&\sqrt{\frac{60}{1+60(v^3+v^2)}}\sin(u)\\z&=&\pm60\sqrt{\frac{v^3}{1+60(v^3+v^2)}}\end{array}\right.$^ 
 +^Miau^$x^2yz+x^2z^2+2y^3z+3y^3=0$^$ $^  
 +^Nepali^$(xy-z^3-1)^2=(1-x^2-y^2)^3$^$\left\{\begin{array}{rcl}x&=&\cos(v)\cos(u)\\y&=&\cos(v)\sin(u)\\z&=&\sqrt[3]{\frac12\cos^2(v)\sin(2u)-1-\sin^3(v)}\end{array}\right.$^  
 +^Seepferdchen^$(x^2-y^3)^2=(x+y^2)z^3$^$ $^  
 +^Solitude^$x^2yz+xy^2+y^3+y^3z=x^2z^2$^$ $^  
 +^Tanz^$2x^4=x^2+y^2z^2$^$\left\{\begin{array}{rcl}x&=&\pm\frac12\sqrt{1+\sqrt{1+2u^2v^2}}\\y&=&\frac1{\sqrt{2}}u\\z&=&\frac1{\sqrt{2}}v\end{array}\right.$^  
 +^Taube^$256z^3 − 128x^2z^2+16x^4z+144xy^2z−4x^3y^2−27y^4=0$^$\left\{\begin{array}{rcl}x&=&3(u^2-v^2)\\y&=&\pm2v(3u^2-v^2)\\z&=&3u^2v^2\end{array}\right.$^$\left\{\begin{array}{rcl}x&=&-3(u^2+v^2)\\y&=&\pm2v(3u^2+v^2)\\z&=&-3u^2v^2\end{array}\right.$^  
 +^Tülle^$yz\cdot (x^2+y-z)=0$^$\left\{\begin{array}{rcl}x&=&u\\y&=&v\\z&=&u^2+v\end{array}\right.$^$\left\{\begin{array}{rcl}x&=&u\\y\text{ ou }z&=&v\\y\text{ ou }z&=&0\end{array}\right.$^  
 +^Zeck^$x^2+y^2=z^3\cdot(1-z)$^$\left\{\begin{array}{rcl}x&=&\sin(v)\cos^3(v)\cos(u)\\y&=&\sin(v)\cos^3(v)\sin(u)\\z&=&\cos^2(v)\end{array}\right.$^ 
 +^Spitz^$(y^2-x^2-z^2)^3=27x^2y^3z^2$^$\left\{\begin{array}{rcl}x&=&4v^3\cos(u)\\y&=&6v^2\sqrt[3]{\sin^2(2u)}-\sqrt{4v^2\sqrt[3]{sin(2u)^4}+16v^6}\\z&=&4v^3\sin(u)\end{array}\right.$^  
 +^Schneeflocke^$x^3+y^2z^3+yz^4=0$^$\left\{\begin{array}{rcl}x&=&\pm(u-v)\sqrt[3]{uv}\\y&=&u\\z&=&v-u\end{array}\right.$^  
 + 
 +===== Code ===== 
 +Ci-dessus, un script pour MathMod contenant toutes les surfaces listées dans la section Formules de ce wiki, ainsi qu'une paramétrisation pour la plupart d'entre elles.  
 + 
 +<code javascript>{ "MathModels": [  
 +{ "Iso3D": { "Component": [ "Zitrus" ], "Fxyz": [ "9*(x^2+z^2)-64*y^3*(1-y)^3" ], "Name": [ "Zitrus" ], "Xmax": [ "1/3" ], "Xmin": [ "-1/3" ], "Ymax": [ "1" ], "Ymin": [ "0" ], "Zmax": [ "1/3" ], "Zmin": [ "-1/3" ] } },  
 +{ "Param3D": { "Component": [ "Zitrus P" ], "Description": [ "Parametric Zitrus" ], "Fx": [ "(8/3)*sin(u)^3*cos(u)^3*cos(v)" ], "Fy": [ "cos(u)^2" ], "Fz": [ "(8/3)*sin(u)^3*cos(u)^3*sin(v)" ], "Name": [ "Zitrus P" ], "Umax": [ "pi/2" ], "Umin": [ "0" ], "Vmax": [ "2*pi" ], "Vmin": [ "0" ] } },  
 +{ "Iso3D": { "Component": [ "Limão" ], "Fxyz": [ "x^2-y^3*z^3" ], "Name": [ "Limão" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "1" ], "Zmin": [ "-1" ] } },  
 +{ "Param3D": { "Component": ["Limão_+","Limão_-"], "Description": ["Parametric Limão"], "Fx": ["u^3*v^3","u^3*v^3"], "Fy": ["v^2","-v^2"], "Fz": ["u^2","-u^2"], "Name": ["Limão P"], "Umax": ["1","1"], "Umin": ["-1","-1"], "Vmax": ["1","1"], "Vmin": ["-1","-1"] } },  
 +{ "Iso3D": { "Component": [ "Vis-à-vis" ], "Fxyz": [ "x^2-x^3+y^2+y^4+z^3-z^4" ], "Name": [ "Vis-à-vis" ], "Xmax": [ "1.73" ], "Xmin": [ "-1.73" ], "Ymax": [ "2" ], "Ymin": [ "-2" ], "Zmax": [ "1.65" ], "Zmin": [ "-1.65" ] } },  
 +{ "Iso3D": { "Component": [ "Calypso" ], "Fxyz": [ "x^2+y^2*z-z^2" ], "Name": [ "Calypso" ], "Xmax": [ "2.55" ], "Xmin": [ "-2.55" ], "Ymax": [ "2.55" ], "Ymin": [ "-2.55" ], "Zmax": [ "2.55" ], "Zmin": [ "-2.55" ] } },  
 +{ "Param3D": { "Component": [ "CalypsoPolar_+", "CalypsoPolar_-" ], "Description": [ "Calypso parametrized polar" ], "Fx": [ "v^2*sin(u)", "v^2*cos(u)" ], "Fy": [ "v*cos(u)", "v*sqrt(2*sin(u))" ], "Fz": [ "v^2", "v^2*(sin(u)-1)" ], "Name": [ "Calypso polar" ], "Umax": [ "2*pi", "pi" ], "Umin": [ "0", "0" ], "Vmax": [ "1", "1" ], "Vmin": [ "0", "-1" ] } },  
 +{ "Iso3D": { "Component": [ "Calyx" ], "Fxyz": [ "x^2+y^2*z^3-z^4" ], "Name": [ "Calyx" ], "Xmax": [ "4" ], "Xmin": [ "-4" ], "Ymax": [ "2" ], "Ymin": [ "-2" ], "Zmax": [ "2" ], "Zmin": [ "-2" ] } },  
 +{ "Param3D": { "Component": [ "CalyxPolar_+", "CalyxPolar_-" ], "Description": [ "Calyx parametrized polar" ], "Fx": [ "v^4*sin(u)", "v^4*sin(u)*(cos(u)-1)" ], "Fy": [ "v*cos(u)", "v*sqrt(2*cos(u))" ], "Fz": [ "v^2", "v^2*(cos(u)-1)" ], "Name": [ "Calyx polar" ], "Umax": [ "2*pi", "pi/2" ], "Umin": [ "0", "-pi/2" ], "Vmax": [ "1", "1" ], "Vmin": [ "0", "-1" ] } },  
 +{ "Iso3D": { "Component": [ "Daisy" ], "Fxyz": [ "(x^2-y^3)^2-(z^2-y^2)^3" ], "Name": [ "Daisy" ], "Xmax": [ "0.1" ], "Xmin": [ "-0.1" ], "Ymax": [ "0.21" ], "Ymin": [ "-0.15" ], "Zmax": [ "0.21" ], "Zmin": [ "-0.21" ] } },  
 +{ "Param3D": { "Description": ["Parametric Daisy"], "Name": ["Daisy P"], "Component": ["Daisy_++","Daisy_+-","Daisy_-+","Daisy_--"], "Fx": ["sqrt((v+u)^3-u^3)","sqrt((v-u)^3+u^3)","-sqrt((v-u)^3+u^3)","-sqrt((v+u)^3-u^3)"], "Fy": ["-u","u","u","-u"], "Fz": ["sqrt((v+u)^2+u^2)","-sqrt((v-u)^2+u^2)","sqrt((v-u)^2+u^2)","-sqrt((v+u)^2+u^2)"], "Umax": [ "1", "1", "1", "1"], "Umin": ["-1","-1","-1","-1"], "Vmax": [ "1", "1", "1", "1"], "Vmin": [ "0", "0", "0", "0"] } },  
 +{ "Iso3D": { "Component": [ "Diabolo" ], "Fxyz": [ "x^2-(y^2+z^2)^2" ], "Name": [ "Diabolo" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "1" ], "Zmin": [ "-1" ] } },  
 +{ "Param3D": { "Component": [ "DiaboloP_+","DiaboloP_-" ], "Description": [ "Parametric diabolo" ], "Fx": [ "u^2","-u^2" ], "Fy": [ "u*cos(v)","u*cos(v)" ], "Fz": [ "u*sin(v)","u*sin(v)" ], "Name": [ "Diabolo P" ], "Umax": [ "pi/2","0" ], "Umin": [ "0","-pi/2" ], "Vmax": [ "2*pi","2*pi" ], "Vmin": [ "0","0" ] } },  
 +{ "Iso3D": { "Component": [ "Ding Dong" ], "Fxyz": [ "x^2+y^2+z^3-z^2" ], "Name": [ "Ding Dong" ], "Xmax": [ "1.34" ], "Xmin": [ "-1.34" ], "Ymax": [ "1.34" ], "Ymin": [ "-1.34" ], "Zmax": [ "1" ], "Zmin": [ "-0.85" ] } },  
 +{ "Param3D": { "Component": [ "DingDongP_+", "DingDongP_-" ], "Description": [ "Parametric ding dong" ], "Fx": [ "2/(3*sqrt(3))*sin(3*v/2)*cos(u)", "-(v^6+1)/(3*sqrt(3)*v^3)*cos(u)" ], "Fy": [ "2/(3*sqrt(3))*sin(3*v/2)*sin(u)", "-(v^6+1)/(3*sqrt(3)*v^3)*sin(u)" ], "Fz": [ "(1+2*cos(v))/3", "-(1-v^2+v^4)/(3*v^2)" ], "Name": [ "Ding Dong P" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "pi", "1.7" ], "Vmin": [ "0", "1"] } }, 
 +{ "Iso3D": { "Component": [ "Distel" ], "Fxyz": [ "x^2+y^2+z^2+1500*(x^2+y^2)*(x^2+z^2)*(y^2+z^2)-1" ], "Name": [ "Distel" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "1" ], "Zmin": [ "-1" ] } },  
 +{ "Iso3D": { "Component": [ "Dullo" ], "Fxyz": [ "(x^2+y^2+z^2)^2-(x^2+y^2)" ], "Name": [ "Dullo" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "0.5" ], "Zmin": [ "-0.5" ] } },  
 +{ "Param3D": { "Component": [ "Dullo P" ], "Description": [ "Parametric dullo" ], "Fx": [ "(1-cos(u))*cos(v)/2" ], "Fy": [ "(1-cos(u))*sin(v)/2" ], "Fz": [ "-sin(u)/2" ], "Name": [ "Dullo P" ], "Umax": [ "2*pi" ], "Umin": [ "0" ], "Vmax": [ "2*pi" ], "Vmin": [ "0" ] } },  
 +{ "Iso3D": { "Component": [ "Eistüte" ], "Fxyz": [ "(x^2+y^2)^3-4*x^2*y^2*(z^2+1)" ], "Name": [ "Eistüte" ], "Xmax": [ "10" ], "Xmin": [ "-10" ], "Ymax": [ "10" ], "Ymin": [ "-10" ], "Zmax": [ "10" ], "Zmin": [ "-10" ] } },  
 +{ "Param3D": { "Component": [ "Eistüte P" ], "Description": [ "Parametric Eistüte" ], "Fx": [ "sin(2*u)*sin(u)*sqrt(v^2+1)" ], "Fy": [ "sin(2*u)*cos(u)*sqrt(v^2+1)" ], "Fz": [ "v" ], "Name": [ "Eistüte P" ], "Umax": [ "2*pi" ], "Umin": [ "0" ], "Vmax": [ "10" ], "Vmin": [ "-10" ] } },  
 +{ "Iso3D": { "Component": [ "Helix" ], "Fxyz": [ "2*x^4+y^2*z^2-6*x^2" ], "Name": [ "Helix" ], "Xmax": [ "sqrt(3)" ], "Xmin": [ "-sqrt(3)" ], "Ymax": [ "3*sqrt(1.5)" ], "Ymin": [ "-3*sqrt(1.5)" ], "Zmax": [ "3*sqrt(1.5)" ], "Zmin": [ "-3*sqrt(1.5)" ] } },   
 +{ "Param3D": { "Component": [ "Helix_X++", "Helix_X+-", "Helix_X-+", "Helix_X--", "Helix_Y++", "Helix_Y+-", "Helix_Y-+", "Helix_Y--", "Helix_Z++", "Helix_Z+-", "Helix_Z-+", "Helix_Z--" ], "Description": [ "Parametric Helix" ], "Fx": [ "sqrt(1.5+sqrt(2.25-u^2*v^2))", "sqrt(1.5-sqrt(2.25-u^2*v^2))", "-sqrt(1.5+sqrt(2.25-u^2*v^2))", "-sqrt(1.5-sqrt(2.25-u^2*v^2))", "sqrt(1.5*(1+cos(u)))", "sqrt(1.5*(1+sin(u)))", "-sqrt(1.5*(1+sin(u)))", "-sqrt(1.5*(1+cos(u)))", "sqrt(1.5*(1+sin(u)))", "sqrt(1.5*(1+cos(u)))", "-sqrt(1.5*(1+cos(u)))", "-sqrt(1.5*(1+sin(u)))" ], "Fy": [ "v", "u", "u", "v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*cos(u)/v", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*cos(u)/v" ], "Fz": [ "u", "v", "v", "u", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*cos(u)/v", "sqrt(1.5)*cos(u)/v", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v" ], "Name": [ "Helix P" ], "Umax": [ "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi" ], "Umin": [ "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "0", "0", "0", "0", "0", "0", "0", "0" ], "Vmax": [ "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "3", "-1", "3", "-1", "3", "-1", "3", "-1" ], "Vmin": [ "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "1", "-3", "1", "-3", "1", "-3", "1", "-3" ] } },  
 +{ "Iso3D": { "Component": [ "Herz" ], "Fxyz": [ "x^2*z^2+z^4-y^2-z^3" ], "Name": [ "Herz" ], "Xmax": [ "3" ], "Xmin": [ "-3" ], "Ymax": [ "2.7" ], "Ymin": [ "-2.7" ], "Zmax": [ "3.5" ], "Zmin": [ "-2.5" ] } },  
 +{ "Param3D": { "Component": [ "HerzPolar_+", "HerzPolar_-" ], "Description": [ "Herz parametrized polar" ], "Fx": [ "0.5*v*sin(u)", "0.5*v*cos(u)" ], "Fy": [ "0.5*sqrt(v^2-1)*(1+v*cos(u))", "-0.5*sqrt(v^2-1)*(1+v*sin(u))" ], "Fz": [ "0.5*(1+v*cos(u))", "0.5*(1+v*sin(u))" ], "Name": [ "Herz polar" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "2", "2" ], "Vmin": [ "1", "1" ] } },  
 +{ "Iso3D": { "Component": [ "HimmelHolle_01", "HimmelHolle_02" ], "Fxyz": [ "x-y*z", "x+y*z" ], "Name": [ "Himmel & Hölle" ], "Xmax": [ "1", "1" ], "Xmin": [ "-1", "-1" ], "Ymax": [ "1", "1" ], "Ymin": [ "-1", "-1" ], "Zmax": [ "1", "1" ], "Zmin": [ "-1", "-1" ] } },  
 +{ "Param3D": { "Component": [ "HimmerHolleP_01", "HimmerHolleP_02" ], "Description": [ "parametric Himmer & Hölle" ], "Fx": [ "u*v", "-u*v" ], "Fy": [ "u", "u" ], "Fz": [ "v", "v" ], "Name": [ "Himmer & Hölle P" ], "Umax": [ "1.2", "1.2" ], "Umin": [ "-1.2", "-1.2" ], "Vmax": [ "1.2", "1.2" ], "Vmin": [ "-1.2", "-1.2" ] } },  
 +{ "Iso3D": { "Component": [ "Kolibri" ], "Fxyz": [ "y^2*z^2+z^3-x^2" ], "Name": [ "Kolibri" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "1" ], "Zmin": [ "-1" ] } },  
 +{ "Param3D": { "Component": [ "KolibriP" ], "Description": [ "parametrized Kolibri" ], "Fx": [ "u*(u^2-v^2)" ], "Fy": [ "v" ], "Fz": [ "u^2-v^2" ], "Name": [ "Kolibri P" ], "Umax": [ "1" ], "Umin": [ "-1" ], "Vmax": [ "1" ], "Vmin": [ "-1" ] } },  
 +{ "Iso3D": { "Component": [ "Kreisel" ], "Fxyz": [ "(60-x^2-y^2-z^2)^3-60*(x^2+y^2)*z^4" ], "Name": [ "Kreisel" ], "Xmax": [ "sqrt(60)" ], "Xmin": [ "-sqrt(60)" ], "Ymax": [ "sqrt(60)" ], "Ymin": [ "-sqrt(60)" ], "Zmax": [ "sqrt(60)" ], "Zmin": [ "-sqrt(60)" ] } },  
 +{ "Param3D": { "Component": [ "Kreisel_03", "Kreisel_04", "Kreisel_02", "Kreisel_01" ], "Description": [ "Kreisel parametrized polar" ], "Fx": [ "sqrt(60/(1+60*(-v^3+v^2)))*cos(u)", "sqrt(60/(1+60*(v^3+v^2)))*cos(u)", "sqrt(-60*v^3/(-v^3+60*(1-v)))*cos(u)", "sqrt(60*v^3/(v^3+60*(1+v)))*cos(u)" ], "Fy": [ "sqrt(60/(1+60*(-v^3+v^2)))*sin(u)", "sqrt(60/(1+60*(v^3+v^2)))*sin(u)", "sqrt(-60*v^3/(-v^3+60*(1-v)))*sin(u)", "sqrt(60*v^3/(v^3+60*(1+v)))*sin(u)" ], "Fz": [ "60*sqrt(-v^3/(1+60*(v^2-v^3)))", "-60*sqrt(v^3/(1+60*(v^3+v^2)))", "-60/sqrt(-v^3+60*(1-v))", "60/sqrt(v^3+60*(1+v))" ], "Name": [ "Kreisel polar" ], "Umax": [ "2*pi", "2*pi", "2*pi", "2*pi" ], "Umin": [ "0", "0", "0", "0" ], "Vmax": [ "0", "0.25", "0", "4" ], "Vmin": [ "-0.25", "0", "-4", "0" ] } },{ "Iso3D": { "Component": [ "Miau" ], "Fxyz": [ "x^2*y*z+x^2*z^2+2*y^3*z+3*y^3" ], "Name": [ "Miau" ], "Xmax": [ "5" ], "Xmin": [ "-5" ], "Ymax": [ "5" ], "Ymin": [ "-5" ], "Zmax": [ "5" ], "Zmin": [ "-5" ] } },   
 +{ "Iso3D": { "Component": [ "Nepali" ], "Fxyz": [ "(x*y-z^3-1)^2-(1-x^2-y^2)^3" ], "Name": [ "Nepali" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "0" ], "Zmin": [ "-1.26" ] } },  
 +{ "Param3D": { "Component": [ "Nepali Polar" ], "Description": [ "Nepali parametrized polar" ], "Fx": [ "sin(v)*cos(u)" ], "Fy": [ "sin(v)*sin(u)" ], "Fz": [ "-(-(sin(v)^2*sin(2*u)/2-1+cos(v)^3))^(1/3)" ], "Name": [ "Nepali polar" ], "Umax": [ "2*pi" ], "Umin": [ "0" ], "Vmax": [ "pi" ], "Vmin": [ "0" ] } }, 
 +{ "Iso3D": { "Component": [ "Seepferdchen" ], "Fxyz": [ "(x^2-y^3)^2-(x+y^2)*z^3" ], "Name": [ "Seepferdchen" ], "Xmax": [ "25" ], "Xmin": [ "-25" ], "Ymax": [ "15" ], "Ymin": [ "-15" ], "Zmax": [ "25" ], "Zmin": [ "-25" ] } },  
 +{ "Iso3D": { "Component": [ "Solitude" ], "Fxyz": [ "x^2*y*z+x*y^2+y^3+y^3*z-x^2*z^2" ], "Name": [ "Solitude" ], "Xmax": [ "25" ], "Xmin": [ "-25" ], "Ymax": [ "25" ], "Ymin": [ "-25" ], "Zmax": [ "25" ], "Zmin": [ "-25" ] } },  
 +{ "Iso3D": { "Component": [ "Tanz" ], "Fxyz": [ "2*x^4-x^2-y^2*z^2" ], "Name": [ "Tanz" ], "Xmax": [ "25" ], "Xmin": [ "-25" ], "Ymax": [ "25" ], "Ymin": [ "-25" ], "Zmax": [ "25" ], "Zmin": [ "-25" ] } },  
 +{ "Param3D": { "Component": [ "TanzP_+", "TanzP_-" ], "Description": [ "parametrized Tanz" ], "Fx": [ "sqrt(1+sqrt(1+2*u^2*v^2))/2", "-sqrt(1+sqrt(1+2*u^2*v^2))/2" ], "Fy": [ "u/sqrt(2)", "u/sqrt(2)" ], "Fz": [ "v/sqrt(2)", "v/sqrt(2)" ], "Name": [ "Tanz P" ], "Umax": [ "25", "25" ], "Umin": [ "-25", "-25" ], "Vmax": [ "25", "25" ], "Vmin": [ "-25", "-25" ] } }, 
 +{ "Iso3D": { "Component": [ "Taube" ], "Fxyz": [ "256*z^3-128*x^2*z^2+16*x^4*z+144*x*y^2*z-4*x^3*y^2-27*y^4" ], "Name": [ "Taube" ], "Xmax": [ "25" ], "Xmin": [ "-25" ], "Ymax": [ "25" ], "Ymin": [ "-25" ], "Zmax": [ "25" ], "Zmin": [ "-25" ] } },  
 +{ "Param3D": { "Component": [ "TaubePs_1", "TaubePs_2", "TaubePs_3", "TaubePs_4" ], "Description": [ "Parametric Taube" ], "Fx": [ "3*(u^2-v^2)", "-3*(u^2+v^2)", "-3*(u^2+v^2)", "3*(v^2-u^2)" ], "Fy": [ "2*v*(3*u^2-v^2)", "-2*v*(3*u^2+v^2)", "2*u*(3*v^2+u^2)", "-2*u*(3*v^2-u^2)" ], "Fz": [ "3*u^2*v^2", "-3*u^2*v^2", "-3*u^2*v^2", "3*u^2*v^2" ], "Name": [ "Taube Ps" ], "Umax": [ "2", "2", "2", "2" ], "Umin": [ "0", "0", "0", "0" ], "Vmax": [ "2", "2", "2", "2" ], "Vmin": [ "0", "0", "0", "0" ] } },  
 +{ "Iso3D": { "Component": [ "Tulle_01", "Tulle_02", "Tulle_03" ], "Fxyz": [ "x^2+y-z", "y", "z" ], "Name": [ "Tulle" ], "Xmax": [ "2", "2", "2" ], "Xmin": [ "-2", "-2", "-2" ], "Ymax": [ "2", "2", "2" ], "Ymin": [ "-2", "-2", "-2" ], "Zmax": [ "2", "2", "2" ], "Zmin": [ "-2", "-2", "-2" ] } },  
 +{ "Param3D": { "Component": [ "TulleP_01", "TulleP_02", "TulleP_03" ], "Description": [ "parametrized Tulle" ], "Fx": [ "v", "u", "u" ], "Fy": [ "0.5*(u-v^2)", "0", "v" ], "Fz": [ "0.5*(u+v^2)", "v", "0" ], "Name": [ "Tulle P" ], "Umax": [ "1", "1", "1" ], "Umin": [ "-1", "-1", "-1" ], "Vmax": [ "1", "1", "1" ], "Vmin": [ "-1", "-1", "-1" ] } }, 
 +{ "Iso3D": { "Component": [ "Zeek" ], "Fxyz": [ "x^2+y^2-z^3*(1-z)" ], "Name": [ "Zeek" ], "Xmax": [ "0.1875*sqrt(3)" ], "Xmin": [ "-0.1875*sqrt(3)" ], "Ymax": [ "0.1875*sqrt(3)" ], "Ymin": [ "-0.1875*sqrt(3)" ], "Zmax": [ "1" ], "Zmin": [ "0" ] } },  
 +{ "Param3D": { "Component": [ "Zeek Polar" ], "Description": [ "Parametric Zeek" ], "Fx": [ "sin(v)*cos(v)^3*cos(u)" ], "Fy": [ "sin(v)*cos(v)^3*sin(u)" ], "Fz": [ "cos(v)^2" ], "Name": [ "Zeek Polar" ], "Umax": [ "pi/2" ], "Umin": [ "-pi/2" ], "Vmax": [ "pi/2" ], "Vmin": [ "-pi/2" ] } },  
 +{ "Iso3D": { "Component": [ "Spitz" ], "Fxyz": [ "(y^2-x^2-z^2)^3-27*x^2*y^3*z^2" ], "Name": [ "Spitz" ], "Xmax": [ "2" ], "Xmin": [ "-2" ], "Ymax": [ "2" ], "Ymin": [ "-2" ], "Zmax": [ "2" ], "Zmin": [ "-2" ] } },  
 +{ "Param3D": { "Component": [ "SpitzPolar_+", "SpitzPolar_-" ], "Description": [ "Parametric Spitz" ], "Fx": [ "4*v^3*cos(u)", "4*v^3*cos(u)" ], "Fy": [ "6*v^2*(sin(2*u)^2)^(1/3)+sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "6*v^2*(sin(2*u)^2)^(1/3)-sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)" ], "Fz": [ "4*v^3*sin(u)", "4*v^3*sin(u)" ], "Name": [ "Spitz Polar" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "1.5874", "1.5874" ], "Vmin": [ "0", "0" ] } },  
 +{ "Iso3D": { "Component": [ "Schneeflocke" ], "Fxyz": [ "x^3+y^2*z^3+y*z^4" ], "Name": [ "Schneeflocke" ], "Xmax": [ "1" ], "Xmin": [ "-1" ], "Ymax": [ "1" ], "Ymin": [ "-1" ], "Zmax": [ "1" ], "Zmin": [ "-1" ] } },  
 +{ "Param3D": { "Component": [ "SchneeflockePX_1", "SchneeflockePX_2", "SchneeflockePX_3", "SchneeflockePX_4" ], "Description": [ "Parametric Schneeflocke" ], "Fx": [ "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)" ], "Fy": [ "u", "u", "u", "u" ], "Fz": [ "v-u", "v-u", "v-u", "v-u" ], "Name": [ "Schneeflocke P X" ], "Umax": [ "2", "0", "0", "2" ], "Umin": [ "0", "-2", "-2", "0" ], "Vmax": [ "2", "2", "0", "0" ], "Vmin": [ "0", "0", "-2", "-2" ] } }  
 +] } </code> 
 +Voici un script pour MathMod contenant les surface accompagnées ou bien d'une sphère avec laquelle les intersecter, ou bien d'une sphère les contenant. 
 +<code javascript>{ "MathModels": [  
 +{ "Param3D": { "Component": [ "Zitrus P", "Sphere" ], "Description": [ "Parametric Zitrus with sphere" ], "Fx": [ "(8/3)*sin(u)^3*cos(u)^3*cos(v)", "1/2*cos(v)*cos(u)" ], "Fy": [ "cos(u)^2", "1/2*cos(v)*sin(u)+1/2" ], "Fz": [ "(8/3)*sin(u)^3*cos(u)^3*sin(v)", "1/2*sin(v)" ], "Name": [ "Zitrus⊂Sphere½" ], "Umax": [ "pi/2", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "2*pi", "pi/2" ], "Vmin": [ "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Limão_+", "Limão_-", "Sphere" ], "Description": [ "Parametric Limão" ], "Fx": [ "u^3*v^3", "u^3*v^3", "cos(v)*cos(u)" ], "Fy": [ "v^2", "-v^2", "cos(v)*sin(u)" ], "Fz": [ "u^2", "-u^2", "sin(v)" ], "Name": [ "Limão+Sphere1" ], "Umax": [ "1", "1", "2*pi" ], "Umin": [ "-1", "-1", "0" ], "Vmax": [ "1", "1", "pi/2" ], "Vmin": [ "-1", "-1", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "CalypsoPolar_+", "CalypsoPolar_-", "Sphere" ], "Description": [ "Calypso parametrized polar" ], "Fx": [ "v^2*sin(u)", "v^2*cos(u)", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "v*cos(u)", "v*sqrt(2*sin(u))", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "v^2", "v^2*(sin(u)-1)", "sqrt(2)*sin(v)" ], "Name": [ "Calypso+Sphere√2" ], "Umax": [ "2*pi", "pi", "2*pi" ], "Umin": [ "0", "0", "0" ], "Vmax": [ "1", "1", "pi/2" ], "Vmin": [ "0", "-1", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "CalyxPolar_+", "CalyxPolar_-", "Sphere" ], "Description": [ "Calyx parametrized polar" ], "Fx": [ "v^4*sin(u)", "v^4*sin(u)*(cos(u)-1)", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "v*cos(u)", "v*sqrt(2*cos(u))", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "v^2", "v^2*(cos(u)-1)", "sqrt(2)*sin(v)" ], "Name": [ "Calyx+Sphere√2" ], "Umax": [ "2*pi", "pi/2", "2*pi" ], "Umin": [ "0", "-pi/2", "0" ], "Vmax": [ "1", "1.121", "pi/2" ], "Vmin": [ "0", "-1.121", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Daisy_++", "Daisy_+-", "Daisy_-+", "Daisy_--", "Sphere" ], "Description": [ "Parametric Daisy" ], "Fx": [ "sqrt((v+u)^3-u^3)", "sqrt((v-u)^3+u^3)", "-sqrt((v-u)^3+u^3)", "-sqrt((v+u)^3-u^3)", "cos(v)*sin(u)" ], "Fy": [ "-u", "u", "u", "-u", "cos(v)*cos(u)" ], "Fz": [ "sqrt((v+u)^2+u^2)", "-sqrt((v-u)^2+u^2)", "sqrt((v-u)^2+u^2)", "-sqrt((v+u)^2+u^2)", "sin(v)" ], "Name": [ "Daisy + Sphere 1" ], "Umax": [ "1/sqrt(3)", "1/2*(sqrt(5)-1)", "1/2*(sqrt(5)-1)", "1/sqrt(3)", "2*pi" ], "Umin": [ "1/2*(1-sqrt(5))", "-1/sqrt(3)", "-1/sqrt(3)", "1/2*(1-sqrt(5))", "0" ], "Vmax": [ "1.01881", "1.0181", "1.0181", "1.0181", "pi/2" ], "Vmin": [ "0", "0", "0", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "DiaboloP_+", "DiaboloP_-", "Sphere" ], "Description": [ "Parametric diabolo" ], "Fx": [ "u^2", "-u^2", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "u*cos(v)", "u*cos(v)", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "u*sin(v)", "u*sin(v)", "sqrt(2)*sin(v)" ], "Name": [ "Diabolo+Sphere√2" ], "Umax": [ "1", "0", "2*pi" ], "Umin": [ "0", "-1", "0" ], "Vmax": [ "2*pi", "2*pi", "pi/2" ], "Vmin": [ "0", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "DingDongP_+", "DingDongP_-", "Sphere" ], "Description": [ "Parametric ding dong" ], "Fx": [ "2/(3*sqrt(3))*sin(3*v/2)*cos(u)", "-(v^6+1)/(3*sqrt(3)*v^3)*cos(u)", "cos(v)*cos(u)" ], "Fy": [ "2/(3*sqrt(3))*sin(3*v/2)*sin(u)", "-(v^6+1)/(3*sqrt(3)*v^3)*sin(u)", "cos(v)*sin(u)" ], "Fz": [ "(1+2*cos(v))/3", "-(1-v^2+v^4)/(3*v^2)", "sin(v)" ], "Name": [ "Ding Dong + Sphere1" ], "Umax": [ "2*pi", "2*pi", "2*pi" ], "Umin": [ "0", "0", "0" ], "Vmax": [ "pi", "1.564", "pi/2" ], "Vmin": [ "0", "1", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Dullo P", "Sphere" ], "Description": [ "Parametric dullo" ], "Fx": [ "(1-cos(u))*cos(v)/2", "cos(v)*cos(u)" ], "Fy": [ "(1-cos(u))*sin(v)/2", "cos(v)*sin(u)" ], "Fz": [ "-sin(u)/2", "sin(v)" ], "Name": [ "Dullo⊂Sphere1" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "2*pi", "pi/2" ], "Vmin": [ "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Eistüte P", "Sphere" ], "Description": [ "Parametric Eistüte" ], "Fx": [ "sin(2*u)*sin(u)*cosh(v)", "sinh(3)*cos(v)*cos(u)" ], "Fy": [ "sin(2*u)*cos(u)*cosh(v)", "sinh(3)*cos(v)*sin(u)" ], "Fz": [ "sinh(v)", "sinh(3)*sin(v)" ], "Name": [ "Eistüte+SphereSH3" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "3", "pi/2" ], "Vmin": [ "-3", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Helix_X++", "Helix_X+-", "Helix_X-+", "Helix_X--", "Helix_Y++", "Helix_Y+-", "Helix_Y-+", "Helix_Y--", "Helix_Z++", "Helix_Z+-", "Helix_Z-+", "Helix_Z--", "Sphere" ], "Description": [ "Parametric Helix" ], "Fx": [ "sqrt(1.5+sqrt(2.25-u^2*v^2))", "sqrt(1.5-sqrt(2.25-u^2*v^2))", "-sqrt(1.5+sqrt(2.25-u^2*v^2))", "-sqrt(1.5-sqrt(2.25-u^2*v^2))", "sqrt(1.5*(1+cos(u)))", "sqrt(1.5*(1+sin(u)))", "-sqrt(1.5*(1+sin(u)))", "-sqrt(1.5*(1+cos(u)))", "sqrt(1.5*(1+sin(u)))", "sqrt(1.5*(1+cos(u)))", "-sqrt(1.5*(1+cos(u)))", "-sqrt(1.5*(1+sin(u)))", "3*sqrt(1.5)*cos(v)*cos(u)" ], "Fy": [ "v", "u", "u", "v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*cos(u)/v", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*cos(u)/v", "3*sqrt(1.5)*cos(v)*sin(u)" ], "Fz": [ "u", "v", "v", "u", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*cos(u)/v", "sqrt(1.5)*cos(u)/v", "sqrt(1.5)*sin(u)/v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "sqrt(1.5)*v", "3*sqrt(1.5)*sin(v)" ], "Name": [ "Helix + Sphere3" ], "Umax": [ "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi", "2*pi" ], "Umin": [ "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], "Vmax": [ "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "sqrt(1.5)", "3", "-1", "3", "-1", "3", "-1", "3", "-1", "pi/2" ], "Vmin": [ "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "-sqrt(1.5)", "1", "-3", "1", "-3", "1", "-3", "1", "-3", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "HerzPolar", "Sphere" ], "Description": [ "Herz parametrized polar" ], "Fx": [ "0.5*cosh(v)*sin(u)", "cos(v)*sin(u)" ], "Fy": [ "0.5*sinh(v)*(1+cosh(v)*cos(u))", "cos(v)*cos(u)" ], "Fz": [ "0.5*(1+cosh(v)*cos(u))", "sin(v)" ], "Name": [ "Herz+Sphere1" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "1.47", "pi/2" ], "Vmin": [ "-1.47", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "HerzPolar", "Sphere" ], "Description": [ "Herz parametrized polar" ], "Fx": [ "0.5*cosh(v)*sin(u)", "sqrt(2)*cos(v)*sin(u)" ], "Fy": [ "0.5*sinh(v)*(1+cosh(v)*cos(u))", "sqrt(2)*cos(v)*cos(u)" ], "Fz": [ "0.5*(1+cosh(v)*cos(u))", "sqrt(2)*sin(v)" ], "Name": [ "Herz+Sphere√2" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "1.77", "pi/2" ], "Vmin": [ "-1.77", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "HerzPolar", "Sphere" ], "Description": [ "Herz parametrized polar" ], "Fx": [ "0.5*cosh(v)*sin(u)", "2*cos(v)*sin(u)" ], "Fy": [ "0.5*sinh(v)*(1+cosh(v)*cos(u))", "2*cos(v)*cos(u)" ], "Fz": [ "0.5*(1+cosh(v)*cos(u))", "2*sin(v)" ], "Name": [ "Herz+Sphere2" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "2.1", "pi/2" ], "Vmin": [ "-2.1", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "HimmerHolleP_01", "HimmerHolleP_02", "Sphere" ], "Description": [ "parametric Himmer & Hölle" ], "Fx": [ "u*v", "-u*v", "cos(v)*sin(u)" ], "Fy": [ "u", "u", "cos(v)*cos(u)" ], "Fz": [ "v", "v", "sin(v)" ], "Name": [ "Himmer & Hölle + Sphere 1" ], "Umax": [ "1", "1", "2*pi" ], "Umin": [ "-1", "-1", "0" ], "Vmax": [ "1", "1", "pi/2" ], "Vmin": [ "-1", "-1", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "KolibriP", "Sphere" ], "Description": [ "parametrized Kolibri" ], "Fx": [ "u*(u^2-v^2)", "cos(v)*cos(u)" ], "Fy": [ "v", "cos(v)*sin(u)" ], "Fz": [ "u^2-v^2", "sin(v)" ], "Name": [ "Kolibri + Sphere 1" ], "Umax": [ "5^(1/4)/sqrt(2)", "2*pi" ], "Umin": [ "-5^(1/4)/sqrt(2)", "0" ], "Vmax": [ "5^(1/4)/sqrt(2)", "pi/2" ], "Vmin": [ "-5^(1/4)/sqrt(2)", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "KolibriP", "Sphere" ], "Description": [ "parametrized Kolibri" ], "Fx": [ "u*(u^2-v^2)", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "v", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "u^2-v^2", "sqrt(2)*sin(v)" ], "Name": [ "Kolibri + Sphere √2" ], "Umax": [ "sqrt(1/2+sqrt(5/2))", "2*pi" ], "Umin": [ "-sqrt(1/2+sqrt(5/2))", "0" ], "Vmax": [ "sqrt(1/2+sqrt(5/2))", "pi/2" ], "Vmin": [ "-sqrt(1/2+sqrt(5/2))", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "KolibriP", "Sphere" ], "Description": [ "parametrized Kolibri" ], "Fx": [ "u*(u^2-v^2)", "2*cos(v)*cos(u)" ], "Fy": [ "v", "2*cos(v)*sin(u)" ], "Fz": [ "u^2-v^2", "2*sin(v)" ], "Name": [ "Kolibri + Sphere 2" ], "Umax": [ "sqrt(1/2*(3+sqrt(26)))", "2*pi" ], "Umin": [ "-sqrt(1/2*(3+sqrt(26)))", "0" ], "Vmax": [ "sqrt(1/2*(3+sqrt(26)))", "pi/2" ], "Vmin": [ "-sqrt(1/2*(3+sqrt(26)))", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Kreisel_03", "Kreisel_04", "Kreisel_02", "Kreisel_01", "Kreisel_01_01" ], "Description": [ "Kreisel parametrized polar" ], "Fx": [ "sqrt(60/(1+60*(-v^3+v^2)))*cos(u)", "sqrt(60/(1+60*(v^3+v^2)))*cos(u)", "sqrt(-60*v^3/(-v^3+60*(1-v)))*cos(u)", "sqrt(60*v^3/(v^3+60*(1+v)))*cos(u)", "2*sqrt(15)*cos(v)*cos(u)" ], "Fy": [ "sqrt(60/(1+60*(-v^3+v^2)))*sin(u)", "sqrt(60/(1+60*(v^3+v^2)))*sin(u)", "sqrt(-60*v^3/(-v^3+60*(1-v)))*sin(u)", "sqrt(60*v^3/(v^3+60*(1+v)))*sin(u)", "2*sqrt(15)*cos(v)*sin(u)" ], "Fz": [ "60*sqrt(-v^3/(1+60*(v^2-v^3)))", "-60*sqrt(v^3/(1+60*(v^3+v^2)))", "-60/sqrt(-v^3+60*(1-v))", "60/sqrt(v^3+60*(1+v))", "2*sqrt(15)*sin(v)" ], "Name": [ "Kreisel⊂Sphere√60" ], "Umax": [ "2*pi", "2*pi", "2*pi", "2*pi", "2*pi" ], "Umin": [ "0", "0", "0", "0", "0" ], "Vmax": [ "0", "0.25", "0", "4", "pi/2" ], "Vmin": [ "-0.25", "0", "-4", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Nepali Polar", "NepaliPolar_01" ], "Description": [ "Nepali parametrized polar" ], "Fx": [ "sin(v)*cos(u)", "(2+2^(1/3))/(2*2^(2/3))*cos(v)*cos(u)" ], "Fy": [ "sin(v)*sin(u)", "(2+2^(1/3))/(2*2^(2/3))*cos(v)*sin(u)" ], "Fz": [ "-(-(sin(v)^2*sin(2*u)/2-1+cos(v)^3))^(1/3)", "(2+2^(1/3))/(2*2^(2/3))*(sin(v)-1)" ], "Name": [ "Nepali⊂Sphere" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "pi", "pi/2" ], "Vmin": [ "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TanzP_+", "TanzP_-", "Sphere" ], "Description": [ "parametrized Tanz" ], "Fx": [ "sqrt(1+sqrt(1+2*u^2*v^2))/2", "-sqrt(1+sqrt(1+2*u^2*v^2))/2", "sqrt(313)*cos(v)*cos(u)" ], "Fy": [ "u/sqrt(2)", "u/sqrt(2)", "sqrt(313)*cos(v)*sin(u)" ], "Fz": [ "v/sqrt(2)", "v/sqrt(2)", "sqrt(313)*sin(v)" ], "Name": [ "Tanz + Sphere √313" ], "Umax": [ "25", "25", "2*pi" ], "Umin": [ "-25", "-25", "0" ], "Vmax": [ "25", "25", "pi/2" ], "Vmin": [ "-25", "-25", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TaubePs_1", "TaubePs_2", "TaubePs_3", "TaubePs_4", "Sphere" ], "Description": [ "Parametric Taube" ], "Fx": [ "3*(u^2-v^2)", "-3*(u^2+v^2)", "-3*(u^2+v^2)", "3*(v^2-u^2)", "cos(v)*cos(u)" ], "Fy": [ "2*v*(3*u^2-v^2)", "-2*v*(3*u^2+v^2)", "2*u*(3*v^2+u^2)", "-2*u*(3*v^2-u^2)", "cos(v)*sin(u)" ], "Fz": [ "3*u^2*v^2", "-3*u^2*v^2", "-3*u^2*v^2", "3*u^2*v^2", "sin(v)" ], "Name": [ "Taube + Sphere 1" ], "Umax": [ "0.615", "0", "0.734145", "0.734145", "2*pi" ], "Umin": [ "0", "-0.734145", "0", "0", "0" ], "Vmax": [ "0.734145", "0.734145", "0", "0.615", "pi/2" ], "Vmin": [ "0", "0", "-0.734145", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TaubePs_1", "TaubePs_2", "TaubePs_3", "TaubePs_4", "Sphere" ], "Description": [ "Parametric Taube" ], "Fx": [ "3*(u^2-v^2)", "-3*(u^2+v^2)", "-3*(u^2+v^2)", "3*(v^2-u^2)", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "2*v*(3*u^2-v^2)", "-2*v*(3*u^2+v^2)", "2*u*(3*v^2+u^2)", "-2*u*(3*v^2-u^2)", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "3*u^2*v^2", "-3*u^2*v^2", "-3*u^2*v^2", "3*u^2*v^2", "sqrt(2)*sin(v)" ], "Name": [ "Taube + Sphere √2" ], "Umax": [ "0.692", "0", "0.84172", "0.84172", "2*pi" ], "Umin": [ "0", "-0.84172", "0", "0", "0" ], "Vmax": [ "0.84172", "0.84172", "0", "0.692", "pi/2" ], "Vmin": [ "0", "0", "-0.84172", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TaubePs_1", "TaubePs_2", "TaubePs_3", "TaubePs_4", "Sphere" ], "Description": [ "Parametric Taube" ], "Fx": [ "3*(u^2-v^2)", "-3*(u^2+v^2)", "-3*(u^2+v^2)", "3*(v^2-u^2)", "2*cos(v)*cos(u)" ], "Fy": [ "2*v*(3*u^2-v^2)", "-2*v*(3*u^2+v^2)", "2*u*(3*v^2+u^2)", "-2*u*(3*v^2-u^2)", "2*cos(v)*sin(u)" ], "Fz": [ "3*u^2*v^2", "-3*u^2*v^2", "-3*u^2*v^2", "3*u^2*v^2", "2*sin(v)" ], "Name": [ "Taube + Sphere 2" ], "Umax": [ "0.82", "0", "0.963985", "0.963985", "2*pi" ], "Umin": [ "0", "-0.963985", "0", "0", "0" ], "Vmax": [ "0.963985", "0.963985", "0", "0.82", "pi/2" ], "Vmin": [ "0", "0", "-0.963985", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TaubePs_1", "TaubePs_2", "TaubePs_3", "TaubePs_4", "Sphere" ], "Description": [ "Parametric Taube" ], "Fx": [ "3*(u^2-v^2)", "-3*(u^2+v^2)", "-3*(u^2+v^2)", "3*(v^2-u^2)", "6*cos(v)*cos(u)" ], "Fy": [ "2*v*(3*u^2-v^2)", "-2*v*(3*u^2+v^2)", "2*u*(3*v^2+u^2)", "-2*u*(3*v^2-u^2)", "6*cos(v)*sin(u)" ], "Fz": [ "3*u^2*v^2", "-3*u^2*v^2", "-3*u^2*v^2", "3*u^2*v^2", "6*sin(v)" ], "Name": [ "Taube + Sphere 6" ], "Umax": [ "1.42", "0", "1.45475", "1.45475", "2*pi" ], "Umin": [ "0", "-1.45475", "0", "0", "0" ], "Vmax": [ "1.45475", "1.45475", "0", "1.42", "pi/2" ], "Vmin": [ "0", "0", "-1.45475", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TaubePs_1", "TaubePs_2", "TaubePs_3", "TaubePs_4", "Sphere" ], "Description": [ "Parametric Taube" ], "Fx": [ "3*(u^2-v^2)", "-3*(u^2+v^2)", "-3*(u^2+v^2)", "3*(v^2-u^2)", "12*cos(v)*cos(u)" ], "Fy": [ "2*v*(3*u^2-v^2)", "-2*v*(3*u^2+v^2)", "2*u*(3*v^2+u^2)", "-2*u*(3*v^2-u^2)", "12*cos(v)*sin(u)" ], "Fz": [ "3*u^2*v^2", "-3*u^2*v^2", "-3*u^2*v^2", "3*u^2*v^2", "12*sin(v)" ], "Name": [ "Taube + Sphere 12" ], "Umax": [ "2", "0", "1.85398", "1.85398", "2*pi" ], "Umin": [ "0", "-2", "0", "0", "0" ], "Vmax": [ "1.85398", "1.85398", "0", "2", "pi/2" ], "Vmin": [ "0", "0", "-2", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TulleP_01", "TulleP_02", "TulleP_03", "Sphere" ], "Description": [ "parametrized Tulle" ], "Fx": [ "v", "u", "u", "cos(v)*cos(u)" ], "Fy": [ "0.5*(u-v^2)", "0", "v", "cos(v)*sin(u)" ], "Fz": [ "0.5*(u+v^2)", "v", "0", "sin(v)" ], "Name": [ "Tulle + Sphere 1" ], "Umax": [ "sqrt(2)", "1", "1", "2*pi" ], "Umin": [ "-sqrt(2)", "-1", "-1", "0" ], "Vmax": [ "1", "1", "1", "pi/2" ], "Vmin": [ "-1", "-1", "-1", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TulleP_01", "TulleP_02", "TulleP_03", "Sphere" ], "Description": [ "parametrized Tulle" ], "Fx": [ "v", "u", "u", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "0.5*(u-v^2)", "0", "v", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "0.5*(u+v^2)", "v", "0", "sqrt(2)*sin(v)" ], "Name": [ "Tulle + Sphere √2" ], "Umax": [ "2", "sqrt(2)", "sqrt(2)", "2*pi" ], "Umin": [ "-2", "-sqrt(2)", "-sqrt(2)", "0" ], "Vmax": [ "sqrt(2)", "sqrt(2)", "sqrt(2)", "pi/2" ], "Vmin": [ "-sqrt(2)", "-sqrt(2)", "-sqrt(2)", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "TulleP_01", "TulleP_02", "TulleP_03", "Sphere" ], "Description": [ "parametrized Tulle" ], "Fx": [ "v", "u", "u", "2*cos(v)*cos(u)" ], "Fy": [ "0.5*(u-v^2)", "0", "v", "2*cos(v)*sin(u)" ], "Fz": [ "0.5*(u+v^2)", "v", "0", "2*sin(v)" ], "Name": [ "Tulle + Sphere 2" ], "Umax": [ "2*sqrt(2)", "2", "2", "2*pi" ], "Umin": [ "-2*sqrt(2)", "-2", "-2", "0" ], "Vmax": [ "2", "2", "2", "pi/2" ], "Vmin": [ "-2", "-2", "-2", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "Zeek Polar", "Sphere" ], "Description": [ "Parametric Zeek" ], "Fx": [ "sin(v)*cos(v)^3*cos(u)", "cos(v)*cos(u)/2" ], "Fy": [ "sin(v)*cos(v)^3*sin(u)", "cos(v)*sin(u)/2" ], "Fz": [ "cos(v)^2", "(sin(v)+1)/2" ], "Name": [ "Zeek⊂Sphere½" ], "Umax": [ "2*pi", "2*pi" ], "Umin": [ "0", "0" ], "Vmax": [ "pi/2", "pi/2" ], "Vmin": [ "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "SpitzPolar_+", "SpitzPolar_-", "Sphere" ], "Description": [ "Parametric Spitz" ], "Fx": [ "4*v^3*cos(u)", "4*v^3*cos(u)", "cos(v)*cos(u)" ], "Fy": [ "6*v^2*(sin(2*u)^2)^(1/3)+sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "6*v^2*(sin(2*u)^2)^(1/3)-sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "cos(v)*sin(u)" ], "Fz": [ "4*v^3*sin(u)", "4*v^3*sin(u)", "sin(v)" ], "Name": [ "Spitz +Sphere 1" ], "Umax": [ "2*pi", "2*pi", "2*pi" ], "Umin": [ "0", "0", "0" ], "Vmax": [ "1/2^(5/6)", "0.63", "pi/2" ], "Vmin": [ "0", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "SpitzPolar_+", "SpitzPolar_-", "Sphere" ], "Description": [ "Parametric Spitz" ], "Fx": [ "4*v^3*cos(u)", "4*v^3*cos(u)", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "6*v^2*(sin(2*u)^2)^(1/3)+sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "6*v^2*(sin(2*u)^2)^(1/3)-sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "4*v^3*sin(u)", "4*v^3*sin(u)", "sqrt(2)*sin(v)" ], "Name": [ "Spitz +Sphere √2" ], "Umax": [ "2*pi", "2*pi", "2*pi" ], "Umin": [ "0", "0", "0" ], "Vmax": [ "1/2^(2/3)", "0.71", "pi/2" ], "Vmin": [ "0", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "SpitzPolar_+", "SpitzPolar_-", "Sphere" ], "Description": [ "Parametric Spitz" ], "Fx": [ "4*v^3*cos(u)", "4*v^3*cos(u)", "2*cos(v)*cos(u)" ], "Fy": [ "6*v^2*(sin(2*u)^2)^(1/3)+sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "6*v^2*(sin(2*u)^2)^(1/3)-sqrt(4*v^2*(sin(2*u)^4)^(1/3)+16*v^6)", "2*cos(v)*sin(u)" ], "Fz": [ "4*v^3*sin(u)", "4*v^3*sin(u)", "2*sin(v)" ], "Name": [ "Spitz +Sphere 2" ], "Umax": [ "2*pi", "2*pi", "2*pi" ], "Umin": [ "0", "0", "0" ], "Vmax": [ "1/sqrt(2)", "0.8", "pi/2" ], "Vmin": [ "0", "0", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "SchneeflockePX_1", "SchneeflockePX_2", "SchneeflockePX_3", "SchneeflockePX_4", "Sphere" ], "Description": [ "Parametric Schneeflocke" ], "Fx": [ "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "cos(v)*cos(u)" ], "Fy": [ "u", "u", "u", "u", "cos(v)*sin(u)" ], "Fz": [ "v-u", "v-u", "v-u", "v-u", "sin(v)" ], "Name": [ "Schneeflocke +Sphere 1" ], "Umax": [ "1", "0", "0", "1", "2*pi" ], "Umin": [ "0", "-1", "-1", "0", "0" ], "Vmax": [ "1.23", "1.23", "0", "0", "pi/2" ], "Vmin": [ "0", "0", "-1.23", "-1.23", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "SchneeflockePX_1", "SchneeflockePX_2", "SchneeflockePX_3", "SchneeflockePX_4", "Sphere" ], "Description": [ "Parametric Schneeflocke" ], "Fx": [ "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "sqrt(2)*cos(v)*cos(u)" ], "Fy": [ "u", "u", "u", "u", "sqrt(2)*cos(v)*sin(u)" ], "Fz": [ "v-u", "v-u", "v-u", "v-u", "sqrt(2)*sin(v)" ], "Name": [ "Schneeflocke +Sphere √2" ], "Umax": [ "sqrt(2)", "0", "0", "sqrt(2)", "2*pi" ], "Umin": [ "0", "-sqrt(2)", "-sqrt(2)", "0", "0" ], "Vmax": [ "1.67", "1.67", "0", "0", "pi/2" ], "Vmin": [ "0", "0", "-1.67", "-1.67", "-pi/2" ] } }, 
 +{ "Param3D": { "Component": [ "SchneeflockePX_1", "SchneeflockePX_2", "SchneeflockePX_3", "SchneeflockePX_4", "Sphere" ], "Description": [ "Parametric Schneeflocke" ], "Fx": [ "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "(u-v)*(u*v)^(1/3)", "-(u-v)*(-u*v)^(1/3)", "2*cos(v)*cos(u)" ], "Fy": [ "u", "u", "u", "u", "2*cos(v)*sin(u)" ], "Fz": [ "v-u", "v-u", "v-u", "v-u", "2*sin(v)" ], "Name": [ "Schneeflocke +Sphere 2" ], "Umax": [ "2", "0", "0", "2", "2*pi" ], "Umin": [ "0", "-2", "-2", "0", "0" ], "Vmax": [ "2.27", "2.27", "0", "0", "pi/2" ], "Vmin": [ "0", "0", "-2.27", "-2.27", "-pi/2" ] } } 
 +] } </code>
 ===== Tutoriel : Comment construire le modèle stl d'une surface algébrique ===== ===== Tutoriel : Comment construire le modèle stl d'une surface algébrique =====
 Voyons comment construire un modèle à partir de sa formule en utilisant l'exemple de Kolibri. Voyons comment construire un modèle à partir de sa formule en utilisant l'exemple de Kolibri.
Ligne 46: Ligne 174:
 {{ :projets:surfaces:kolibri_mathmod_implicite_morceaux.png?800 |}} {{ :projets:surfaces:kolibri_mathmod_implicite_morceaux.png?800 |}}
 On préférera donc passer par une forme paramétrée de Kolibri. Pour cela on fait la substitution x = u z. Après cette substitution l'équation devient u<sup>2</sup>z<sup>2</sup>=y<sup>2</sup>z<sup>2</sup>+z<sup>3</sup> qu'on peut simplifier en  On préférera donc passer par une forme paramétrée de Kolibri. Pour cela on fait la substitution x = u z. Après cette substitution l'équation devient u<sup>2</sup>z<sup>2</sup>=y<sup>2</sup>z<sup>2</sup>+z<sup>3</sup> qu'on peut simplifier en 
 +
 +$u^2=y^2+z$
  
 u<sup>2</sup>=y<sup>2</sup>+z u<sup>2</sup>=y<sup>2</sup>+z
Ligne 143: Ligne 273:
 Autres photos, galerie, ... Autres photos, galerie, ...
  
-Les mots clés (tags) représentant votre travail+
 {{tag>[surfaces parametrisation impression-3D]}} {{tag>[surfaces parametrisation impression-3D]}}
/home/resonancg/www/wiki/data/attic/projets/surfaces/accueil.1429211859.txt.gz · Dernière modification: 2015/04/16 21:17 de resonance