/*/////////////////////////////////////////////////////////////////// ACCROCHE CABLES DE PORTE Version 3 Carrefour Numérique² La Villette PARIS - avec OpenSCAD 2015.03 BERNARD du 1 février 2020 : 5 supports Modif: 23/02/2020 : V3 + 6 petits supports Options : - Fixation sur une porte mesurer l'épaisseur de la porte (variable Eporte=..) - Fixation sur un mur (désactiver le crochet) Angle 30° : reborts au bout pas utile F6 : 1mn 44s //////////////////////////////////////////////////////////////////////*/ // VARIABLES A SAISIR dimensions en mm // Eporte=34; // Epaisseur de la porte + 1 a 2mm Angle=15; Diam=40; // Diam porte cable grand h=60; Rebord1=-16; Epais=6; Diam2=15; // Diam porte cable petit h2=20; Rebord2=-7; prec=40; // nb. facettes (0=défaut) // EpaisPorte: Paris:32+2 ; Mont:37+1 // -- PROGRAMME -- difference(){ union(){ // a) Support arrondi for (i=[1:3]) { translate([i*40,0,0]) { rotate([ 0, -Angle, 0]) { difference(){ union(){ cylinder(d=Diam,h=h,$fn=prec); // supports rotate([ 0, Angle, 0]) { // rebords au bout translate([Rebord1,0,42]) {cylinder(d=Diam+3, h=3,$fn=prec); } } } translate([0,0,-1]) { cylinder(d=Diam-Epais, h=h+4,$fn=prec); } // creuse translate([-6,-Diam/2-1,-1]) {cube([Diam/2+6,Diam+2, h+2]); } } } } } // Fin 'for' for (i=[4:6]) { // b) 2éme PETITS support arrondi de Droite translate([i*27+32,11.2,0]) { rotate([ 0, -Angle, 0]) { difference(){ union(){ cylinder(d=Diam2,h=h2,$fn=prec); // supports rotate([ 0, Angle, 0]) { // rebords au bout translate([Rebord2,0,h2-4]) {cylinder(d=Diam2+1, h=3,$fn=prec); } } } translate([0,0,-1]) { cylinder(d=Diam2-Epais, h=h2+4,$fn=prec); } // creuse translate([-1,-Diam2/2-1,-1]) {cube([Diam/2+6,Diam+2, h2+2]); } } } } // c) 3éme PETITS support arrondi de Gauche translate([i*27+32,-11.2,0]) { rotate([ 0, -Angle, 0]) { difference(){ union(){ cylinder(d=Diam2,h=h2,$fn=prec); // supports rotate([ 0, Angle, 0]) { // rebords au bout translate([Rebord2,0,h2-4]) {cylinder(d=Diam2+1, h=3,$fn=prec); } } } translate([0,0,-1]) { cylinder(d=Diam2-Epais, h=h2+4,$fn=prec); } // creuse translate([-1,-Diam2/2-1,-1]) {cube([Diam/2+6,Diam+2, h2+2]); } } } } translate([i*27+23.9,-5,h2-3]) {cube([2,10,2]); } // 2 Supports a enlever translate([i*27+26.5,-5,h2-13]) {cube([2,10,2]); } } // Fin 'for'2 translate([0,-Diam/2,-Epais]) {cube ([195,Diam,Epais]); } // Semelle // CROCHET pour porte 2 lignes a desactiver SI fixation sur MUR translate([0,-Diam/2,-Eporte-Epais*2]) {cube ([5,Diam,Eporte+Epais*2]); } translate([0,-Diam/2,-Eporte-Epais*2]) {cube ([25,Diam,Epais]); } } // fin union // // 2 TROUS pour fixation sur mur translate([32,0,-Epais-0.5]) { cylinder(d=5.2, h=Epais+1,$fn=prec); } translate([147,0,-Epais-0.5]) { cylinder(d=5.2, h=Epais+1,$fn=prec); } rotate([0,90,0]) { // Trou au dessus translate([22,0,-1]) { cylinder(d=5.2, h=Epais+1,$fn=prec); } } // Rabotage des exterieurs translate([Epais,-Diam/2,-Epais*2]) {cube ([195,Diam,Epais]); } // rabote bas translate([-Epais*2,-Diam/2-3,h-15]) {cube ([200,Diam+4,Epais+6]); } // rabote haut translate([-10,-Diam/2-2.5,-Eporte-14]) {cube ([210,4,Eporte+60]); } // rabote Y moins translate([-10,Diam/2-1.5,-Eporte-14]) {cube ([210,4,Eporte+60]); } // rabote Y plus } // FIN de programme