Page 1 sur 1

Le modèle patrons.mod

MessagePublié: 15 Juil 2009 15:41
par P.Fradin
Le modèle patrons.mod propose essentiellement la macro:

patron( polyèdre convexe, [options] )


qui renvoie le patron du polyèdre (sous forme de facettes dans l'espace).

Télécharger: patrons.zip ( version 0.1 du 15/05/09)

Le paquet contient 4 fichiers:

- patrons.mac (macros)
- patrons.mod (modèle à charger)
- patrons.pdf (aide)
- patrons.txt (à lire)

Les questions/propositions concernant ce modèle sont à poster dans ce forum.

Un exemple (charger PolyedresII.mac et patrons.mod):
Code: Tout sélectionner
[
view(-6,6,-6,7), Marges(0,0,0,0), size(12),
C:= PtRhombicosidodecaedre(M(0,0,0), M(2,0,0) ),
P:= patron(C, [aplat:=1]),
DrawFacet(P, [color:=lightblue]),
LabelStyle:=left,
Label(Xmin+i*(Ymin+0.5/Yscale),
  " Patron du Petit rhombicosidodécaèdre")
]   


Image


Cela permet aussi des animations sympas:

Image

Re: Le modèle patrons.mod

MessagePublié: 08 Jan 2010 15:35
par Jean-François
Bonjour

Ce modèle est déjà très bien, et je sais que je suis pénible :lol: :lol: :lol: mais est-il possible de demander l'ouverture que de certaines faces ?
Merci

Re: Le modèle patrons.mod

MessagePublié: 08 Jan 2010 16:27
par P.Fradin
Salut Jean-François,

Tu peux être plus clair? Un exemple?

Re: Le modèle patrons.mod

MessagePublié: 10 Jan 2010 15:50
par Jean-François
Bonjour Patrick,

Désolé pour le temps de réaction !! :oops: :oops: :oops:
Ce que je souhaite obtenir c'est par exemple un cube " entièrement fermé " sauf une face qui serait ouverte plus ou moins.

C'est un peu comme si on ferme le patron, mais face par face.

Re: Le modèle patrons.mod

MessagePublié: 11 Jan 2010 21:39
par P.Fradin
Jean-François a écrit:Bonjour Patrick,

Désolé pour le temps de réaction !! :oops: :oops: :oops:
Ce que je souhaite obtenir c'est par exemple un cube " entièrement fermé " sauf une face qui serait ouverte plus ou moins.

C'est un peu comme si on ferme le patron, mais face par face.


C'est faisable pour une seul face, mais j'ai bien peur qu'il faille une macro à part...

Re: Le modèle patrons.mod

MessagePublié: 12 Jan 2010 12:10
par Jean-François
Bonjour Patrick,
C'est faisable pour une seul face, mais j'ai bien peur qu'il faille une macro à part...

Ce n'est pas très grave, je ne suis pas certain que ce soit d'une grande utilité (de l'ordre d'une figure par an alors ;) ).

Re: Le modèle patrons.mod

MessagePublié: 12 Jan 2010 23:45
par P.Fradin
Voilà une macro qui fait le travail demandé. Elle est moins sophistiquée que la macro patron, mais on peut l'appliquer à plusieurs facettes:

rotFacet( polyedre convexe, [numéros de facettes], [angles en degrés], [numéros des arêtes] )


On donne le polyèdre, les numéros des facettes à faire tourner, l'angle de rotation de chacune en degrés, et le numéro de l'arête servant d'axe de rotation.

Code: Tout sélectionner
{ rotFacet( polyedre convexe, [numeros des facettes], [angles en degrés], [numeros des arêtes]}
[
$num:=0,
for $face in %1 by jump do
    Inc(num,1),
    $k:=Pos(num,%2),
    if k<>Nil then
       $alpha:=Copy(%3,k,1), if alpha=Nil then alpha:= Copy(%3,1,1) fi,
       $arete:=Copy(%4,k,1), if $arete=Nil then $arete:= Copy(%4,1,1),
                                if $arete=Nil then $arete:=1 fi
                             fi,
       $A:=AretesNum([face,jump], arete),
       rot3d(face,[A[1,2],A[3,2]-A[1,2]], alpha*deg)
    else face
    fi
od
]


Exemple d'utilisation (charger PolyedresII.mac):

Code: Tout sélectionner
[
P:=Cube(Origin, M(3,0,0)),
P':=rotFacet(P,[1,4],[60,70],[3,3]),
DrawFacet(P',[color:=blue])
]


J'ai fait mumuse avec:

cube.gif
cube.gif (187.04 Kio) Consulté 13412 fois

Re: Le modèle patrons.mod

MessagePublié: 13 Jan 2010 17:57
par Jean-François
Bonjour Patrick,

Encore une fois quelle efficacité :!: :!:
Merci pour ce travail, c'est parfait.