samedi 13 août 2016

Les cyclides de Dupin avec pst-solides3d (5)

Dans son livre “Mathématiques pour la représentation géométrique, la représentation 3D et la synthèse d’images” (éditions Ellipses), Lionel Garnier définit ainsi une surface parallèle à une cyclide (CD4) : «La surface parallèle, de paramètre ε, à une CD4 de paramètres a, c et μ est la CD4 de paramètres a, c et μ + ε.», en voici une illustration, la cyclide mère est représentée en totalité, tandis que la surface parallèle est coupée par le plan vertical de symétrie.

 Le fond est dû à  Thomas Söll ;
http://pstricks.blogspot.fr/2012/11/paysages-au-crepuscule-peints-avec.html

Cette animation a aussi été réalisée avec le package animate d'Alexander Grahn, en voici le listing à compiler pour en produire le pdf contenant l'animation.

\documentclass{article}
\usepackage[a4paper,margin=2cm]{geometry}
\usepackage[latin1]{inputenc}
\usepackage{times,mathtime}
\usepackage[T1]{fontenc}
\usepackage{pst-solides3d,pst-plot}
\usepackage{pst-slpe}
\usepackage{amsmath}
\usepackage{animate}
\title{Les cyclides de Dupin avec pst-solides3d (5)}
\date{13 août 2016}
\author{manuel.luque27@gmail.com}
\begin{document}
Dans son livre ``\textit{Mathématiques pour la représentation géométrique, la représentation 3D et la synthèse d'images}'' (éditions Ellipses), Lionel Garnier définit ainsi une surface parallèle à une cyclide (CD4) :
<<\textit{La surface parallèle, de paramètre $\epsilon$, à une CD4 de paramètres $a$, $c$ et $\mu$ est la CD4 de paramètres $a$, $c$ et $\mu+\epsilon$.}>>, en voici une illustration, la cyclide \textit{mère} est représentée en totalité, tandis que la surface parallèle est coupée par le plan vertical de symétrie.
\begin{center}
\begin{animateinline}[controls,palindrome,
                     begin={\begin{pspicture}(-6,-4)(8,6)},
                     end={\end{pspicture}}]{20}% 20 images/s
\multiframe{35}{r=4.5+0.25}{%
\psset[pst-solides3d]{viewpoint=100 70 40 rtp2xyz,Decran=30,lightsrc=viewpoint}
\psset{solidmemory}
\psframe[fillstyle=ccslope,sloperadius=14.3,slopeangle=-90,slopebegin=blue!10!white,slopeend=blue!10!black,
slopecenter={0.5 0},slopesteps=2000,linewidth=0pt,fading=true,startfading=0,endfading=1](-6,-4)(8,6)
\psset{linewidth=0.01,linecolor=blue}
\pstVerb{/a1 9 def /c1 3 def /mu 4 def /b1 a1 dup mul c1 dup mul sub sqrt def}%
\defFunction[algebraic]{CyclideDupin}(u,v){(mu*(c1-a1*cos(u)*cos(v))+b1^2*cos(u))/(a1-c1*cos(u)*cos(v))} % x
                                          {(b1*sin(u)*(a1-mu*cos(v)))/(a1-c1*cos(u)*cos(v))} % y
                                          {(b1*sin(v)*(c1*cos(u)-mu))/(a1-c1*cos(u)*cos(v))} % z
\psSolid[object=surfaceparametree,
         function=CyclideDupin,name=cyclide1,action=none,
         base=0 2 pi mul 0 2 pi mul,ngrid=36 36,
         fillcolor=red!50,incolor=white](0,0,0)
\defFunction[algebraic]{CyclideDupin2}(u,v){(mu2*(c2-a2*cos(u)*cos(v))+b2^2*cos(u))/(a2-c2*cos(u)*cos(v))} % x
                                          {(b2*sin(u)*(a2-mu2*cos(v)))/(a2-c2*cos(u)*cos(v))} % y
                                          {(b2*sin(v)*(c2*cos(u)-mu2))/(a2-c2*cos(u)*cos(v))} % z
\pstVerb{/a2 9 def /c2 3 def /mu2 \r\space def /b2 a2 dup mul c2 dup mul sub sqrt def}%
\psSolid[object=surfaceparametree,
         function=CyclideDupin2,
         base=-1 pi mul 0  0 2 pi mul,ngrid=24 36,linecolor=blue,name=cyclide2,action=none,
         fillcolor=yellow!50,incolor=white](0,0,0)
\psSolid[object=fusion,base=cyclide1 cyclide2]
}
\end{animateinline}
\end{center}
\end{document} 


Aucun commentaire:

Enregistrer un commentaire