dimanche 18 septembre 2016

Représentation des surfaces implicites avec PSTricks

\psImplicitSurface est une commande additionnelle à ‘pst-solides3d’ permettant de représenter les surfaces implicites. Si vous ne connaissez pas la définition de ce type de surface, le Wikipedia en fait un exposé assez complet : https://en.wikipedia.org/wiki/Implicit_surface
Cette commande utilise l’algorithme “Marching Cubes”, tel qu’il est décrit par Paul Bourke :

http://paulbourke.net/geometry/polygonise/
c’est donc une adaptation en postscript incorporée à PSTricks.
Cette commande s’utilise très simplement car elle ne comprend qu’une option : [surface=tore]. ’surface’ doit être la définition de la surface étudiée. Le fichier “pst-implicitsurface.pro” contient la définition d’un certain nombre de surfaces, par exemple pour le tore, nous avons :
 /tore {
/plagesXYZ[% min max dx
[-2.0 2.0 0.2]
[-2.0 2.0 0.2]
[-1.0 1.0 0.2]
] def
/function {% x y z => isovalue
3 dict begin
/z exch def /y exch def /x exch def
1 x dup mul y dup mul add sqrt sub dup mul z dup mul add 0.25 sub % = 0
end
} def
} def
Les plages de variations des variables (x, y, z) et le pas de chacun de ces intervalles. Ensuite, c’est la définition de la fonction représentative de la surface à étudier. Toutes les nouvelles surfaces créées doivent suivre le même modèle. Cette commande peut utiliser toutes les options de pst-solides3d pour la représentation de la surface.
Voici quelques exemples, certains utilisent les surfaces déjà définies :

Les fichiers doivent être placés dans un même répertoire.

Aucun commentaire:

Enregistrer un commentaire