Outils d'utilisateurs

Outils du Site


animations:ateliers_openscad:exercices:defi_portebouteille

Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

animations:ateliers_openscad:exercices:defi_portebouteille [2020/04/01 10:58]
plogingenu
animations:ateliers_openscad:exercices:defi_portebouteille [2020/04/01 16:30] (Version actuelle)
plogingenu
Ligne 1: Ligne 1:
-!-- Complétez la fiche projet ci dessous -->+======= Défi OpenSCAD Défi Porte-bouteille &ampbouteilles ======
 {{{project {{{project
 logiciels: OpenSCAD logiciels: OpenSCAD
Ligne 10: Ligne 10:
  
 {{:animations:ateliers_openscad:exercices:defiopenscad_verreapiedclassique.png?200  }} {{:animations:ateliers_openscad:exercices:defiopenscad_verreapiedclassique.png?200  }}
-**Consigne : Réaliser un porte bouteille!**+**Consigne : Réaliser un porte bouteille et ses bouteilles !**
   * **méthode :** A la Hélène   * **méthode :** A la Hélène
-  * **méthode :** A la bully 
  
 {{:animations:ateliers_openscad:exercices:de_fi_openscad_verre_a_pied_super_rapide.stl|Voir l'objet en 3D (ln) }} {{:animations:ateliers_openscad:exercices:de_fi_openscad_verre_a_pied_super_rapide.stl|Voir l'objet en 3D (ln) }}
-{{:animations:ateliers_openscad:exercices:defiopenscad_verreapiedclassique.stl|Voir l'objet en 3D (verre classique) }} 
  
 Besoin d'aide, lisez la suite ! Besoin d'aide, lisez la suite !
Ligne 51: Ligne 49:
  
 **méthode :** ln **méthode :** ln
-  * Créer une bouteille (méthode simple)+ 
 +**1. Créer une bouteille** 
 +  
 +__Méthode simple __
    * le cylindre : //cylinder(d1,d2,h);//    * le cylindre : //cylinder(d1,d2,h);//
-  * Créer un bouteille (méthode un peu plus compliqué)+__Méthode un peu plus compliquée__
    * le cylindre : //cylinder(d1,d2,h);//    * le cylindre : //cylinder(d1,d2,h);//
    * : //hull(){...}//    * : //hull(){...}//
-  Créer une bouteille (méthode pour les gens précis) +   le déplacement : //translate([x,y,z]){...}// 
-   * polygone : //polygon(points);//+__ Méthode pour les gens précis__ 
 +   * polygone : //polygon();// 
 +   * rotate_extrude : //rotate_extrude();//
  
-  * Créer un pack de bouteilles paramétriques+**2. Créer un pack de bouteilles paramétriques**
    * Boucle for : //for(){...}//    * Boucle for : //for(){...}//
    * Module : // //    * Module : // //
  
 +**3. Créer les planches**
  
 +__ Méthode pour planches carrées__
 +  * le cube ://cube();//
 +  * le déplacement : //translate([x,y,z]){...}//
  
-  Créer les petits trous (méthode longue et répétitive+__ Méthode pour planches au bord arrondi__ 
-   la différence : //difference//+  le cube ://cube();// 
 +  le "Minkoski" : //minkoski([x,y,z]){...}// 
 +  * le cylindre : //cylinder(d1,d2,h);// 
 + 
 + 
 +**4. Créer les petits trous** 
 + 
 +__ Méthode répétitive__ 
    * le cylindre : //cylinder(d1,d2,h);//    * le cylindre : //cylinder(d1,d2,h);//
-  * Créer les petits trous (méthode courte) +   * le déplacement : //translate([x,y,z]){...}// 
-   * le miroir : //mirror ([x,y,z]){...}// +__ Méthode courte__ 
-   * la différence : //difference(){...}//+
    * le cylindre : //cylinder(d1,d2,h);//    * le cylindre : //cylinder(d1,d2,h);//
 +   * le déplacement : //translate([x,y,z]){...}// 
 +   * le miroir : //mirror ([x,y,z]){...}// 
 +    
 +**5. Assembler les différentes parties** 
   * la différence : //difference(){...}//   * la différence : //difference(){...}//
-  * le cylindre/cône : //cylinder(d1,d2,h);// 
  
-**méthode :** verre à pied classique +**6. Réalisation de la poignée**  
-  * la différence : //difference(){...}// +  * le cylindre : //cylinder(d1,d2,h);//
-  * le cylindre/cône : //cylinder(d1,d2,h);//+
   * le déplacement : //translate([x,y,z]){...}//   * le déplacement : //translate([x,y,z]){...}//
-  * le cube ://cube();// +  * la rotation : //rotate([x,y,z]){...}// 
-  * la sphere : // sphere(d=);//+ 
 +**7.Export en .svg**  
 +  * ... 
 +   
 +**8.Modélisation de la corde** (bonus) 
 +  * ...
  
 +**9.Animation du modèle 3D** (bonus)
 +  * ...
  
 <note tip>Si vous ne connaissez pas bien l'utilisation d'une de ses fonctions, il peut être utile d'aller voir les exercices du wiki ou la page Aide-Mémoire OpenSCAD.</note> <note tip>Si vous ne connaissez pas bien l'utilisation d'une de ses fonctions, il peut être utile d'aller voir les exercices du wiki ou la page Aide-Mémoire OpenSCAD.</note>
Ligne 96: Ligne 117:
  
  
-**méthode :** Super rapide +**Conseils Projets complexes** 
-  * Pas de difficultés particulièreson superpose 3 formes donc la base est centrée sur le point d'origine.+//Plus le projet est complexes, plus il est important de travailler avec méthodologie// 
 +  * Prendre les vraies mesures d'une bouteille, plus réaliste 
 +  * N'hésitez pas à utiliser la transparence ( # ) pour bien comprendre ou sont situées vos pièces 
 +  * Lorsque que vous ne comprenez plus, ne mettez pas des valeurs au pif, faites une pause plutôt. 
 +  * Enregistrer plusieurs versions de votre fichierafin de retrouver rapidement une sauvegarde qui marche. 
 +  * Commencez toujours par comprendre la logique, avant de généraliser (boucle for) 
 +  * Bien vérifier qu'en changeant chaque variable, le modèle reste valable. Cela permet de vérifier si il n'y a pas d'erreur dans le code. 
 +  * Commentez votre code, pour vous aider, mais aussi pour faciliter la documentation 
 +  
  
-  
-**méthode :**Verre à pied classique 
-  -Déplacer les formes de la bonne distance : 
-   -Poser la base et le pied, centrée sur le point d'origine (donc pas de translate(), la superposition du pied et de la basse n'est pas gênante.) 
-   - Déplacer la sphère extérieure de la longueur du pied 
-   - Déplacer la sphère intérieur de la longueur du pied plus un léger écart (qu'on peut calculer comme le rayon de la sphère extérieure moins le rayon de la sphère intérieure) 
-   - Déplacer le cube de la longueur du pied plus le rayon de la sphère extérieure. 
-  - Il est possible d'utiliser un translate() pour chaque pièce, mais le code sera plus lourd, il est aussi possible de faire un translate de translate(), cf .code ci-dessous 
  
 +===== Solutions par étapes ===== 
 +==== Créer une bouteille - Méthode simple ====
  
 +{{:animations:ateliers_openscad:exercices:bouteille1.png?200|}}
 +{{:animations:ateliers_openscad:exercices:bouteille1.stl|Voir l'objet en 3D }} 
 +<code java>
 +hb=230 ; // hauteur de la bouteille
 +hg=84; // hauteur du goulot
 +db=70; //diamètre ou largeur basse de la bouteille
 +dh=40; // diamètre ou largeur haute de la bouteille
  
-===== Solutions =====+cylinder(d=db, h=hb-hg, $fn=100); // gros cylindre 
 +cylinder(d=dh, h=hb, $fn=100); //petit cylindre
  
 +</code>
  
 +==== Créer une bouteille - un peu plus compliquée ==== 
 +{{:animations:ateliers_openscad:exercices:bouteille3.png?200|}} 
 +{{:animations:ateliers_openscad:exercices:bouteille3.stl|Voir l'objet en 3D }} 
  
-**méthode :** super rapide (4 lignes et 2 fonctions)+<code java> 
 +hb=230 ; // hauteur de la bouteille 
 +hg=84; // hauteur du goulot 
 +db=70; //diamètre ou largeur basse de la bouteille 
 +dh=40; // diamètre ou largeur haute de la bouteille 
 +hi=123; // hauteur intermédiaire
  
-// Changer le $fnpour faire varier le nombre de facettes de chaque solide //+cylinder(d=db, h=hi);// gros cylindre 
 +hull(){ 
 +translate([0,0,hi]){cylinder(d=db, h=1);} 
 +translate([0,0,hb-hg]){cylinder(d=dh, h=1);} 
 +
 +translate([0,0,0]){cylinder(d=dh, h=hb);} //petit cylindre
  
-{{:animations:ateliers_openscad:exercices:de_fi_openscad_-_verre_a_pied_super_rapide.png?200}} +</code>
-{{:animations:ateliers_openscad:exercices:de_fi_openscad_verre_a_pied_super_rapide.stl|Voir l'objet en 3D}}+
  
 +
 +==== Créer une bouteille - Méthode pour les gens précis ==== 
 +{{:animations:ateliers_openscad:exercices:bouteille3.png?200|}} 
 +{{:animations:ateliers_openscad:exercices:bouteille3.stl|Voir l'objet en 3D }} 
 <code java> <code java>
-difference(){ +hb=230; //hauteur de la bouteille 
-cylinder(r1=0, r2= 40, h =100, $fn=100); //cône extérieur +hg=84; // hauteur du goulot 
-cylinder(r1=0, r2= 38h =100+1$fn=100); //cône intérieur +db=70; //diamètre ou largeur basse de la bouteille 
-+dh=40; // diamètre ou largeur haute de la bouteille 
-cylinder(r1=40r2=5h= 10$fn=5); // la base+hi=123; 
 +rotate_extrude($fn=80){polygonpoints=[[0,0],[db/2,0],[db/2,hi],[dh/2,hb-hg],[dh/2,hb],[0,hb]]);
 </code> </code>
  
 +==== Créer un module bouteille(); ==== 
 +<code java>
 +module bouteille(hb=230,hi=123,hg=84,db=70,dh=40){
 +//hb, hauteur de la bouteille
 +//hg, hauteur du goulot
 +//db, diamètre ou largeur basse de la bouteille
 +//dh, diamètre ou largeur haute de la bouteille
 +//hi, hauteur intermédiaire
  
 +cylinder(d=db, h=hi);// gros cylindre
 +hull(){
 +translate([0,0,hi]){cylinder(d=db, h=1);}
 +translate([0,0,hb-hg]){cylinder(d=dh, h=1);}
 +}
 +translate([0,0,0]){cylinder(d=dh, h=hb);}
  
-**méthode :** Verre à pied classique (7 lignes et 5 fonctions)+}
  
-// N'hésitez pas à faire varier les paramètres lv et hv //+// bouteille();  
 +</code>
  
-{{:animations:ateliers_openscad:exercices:defiopenscad_verreapiedclassique.png?200}} +==== Créer un pack de bouteilles paramétriques ====  
-{{:animations:ateliers_openscad:exercices:defiopenscad_verreapiedclassique.stl|Voir l'objet en 3D}}+ 
 +Télécharger le code 
 + 
 +Module bouteille +
  
 <code java> <code java>
-lv=40 ; //largeur du verreici 40mm +db=70; // Rayon des trous, rt va de 0 à + infini
-hv=100; // hauteur du verreici 100mm+espdb+25; // espacemenent entre  les trous 
 +Nx= 2; // Nx va de 0 à + infinientier uniquement Compte +1 
 +Ny= 1; //Ny=Nx, pour faire un damier carré, ou Ny = valeur au choix
  
-translate([0,0,hv]){ +for (j = [-Ny/2:Ny/2]){ 
-    difference(){ +  for ([-Nx/2:Nx/2]){ 
-        sphere(r=lv,$fn=100); //sphere extérieur +    translate ([i*esp,j*esp,0]) {bouteille();} 
-        translate([0,0,lv]){cube(2*lv, center= true);}//cube +  }
-        sphere(r=lv-2, $fn=100); //sphère intérieur   +
-       }+
 } }
-cylinder(r=lv/10,h=hv-lv,$fn=100); // le pied +
-cylinder(r1=lv,r2=lv/10,h=hv/10,$fn=100); // la base+
 </code> </code>
 +===== Solutions finales=====
  
-** Votre méthode :** 
-N'hésitez pas à mettre vos codes ci-dessous :  
  
-{{:animations:ateliers_openscad:20191210_134616.jpg?300}} +**méthode :**  
-{{:animations:ateliers_openscad:20191210_134610.jpg?300}} +// N'hésitez pas à faire varier les paramètres //
  
 +Télécharger le code -
  
 <code java> <code java>
-.... 
-</code> 
  
-<code java> 
-.... 
 </code> </code>
 +
 +** Votre méthode :**
 +N'hésitez pas à mettre vos codes ci-dessous : 
 +
  
  
  
animations/ateliers_openscad/exercices/defi_portebouteille.1585731528.txt.gz · Dernière modification: 2020/04/01 10:58 par plogingenu