Hier heb je de complete code: Raamwerk.scad .... gewoon aanklikken om OpenSCAD te openen.
Dit raamwerk is samengesteld uit diverse onderdelen. In de stuklijst op de tekening staan vermeld: twee stukken ongelijkzijdig hoekijzer, twee dito gelijkzijdig en een stuk rondijzer (staf).
Uit het virtueel magazijn - de modules "Gelijkzijdig_Hoekijzer (L)" en "Ongelijkzijdig_Hoekijzer (L)" - halen we voldoend lange einden profiel en we zagen deze conform tekening c.q. zaaglijst nauwkeurig haaks op de benodigde lengtes. De modules van het hoekijzer hebben de virtueel te zagen lengte als variabele "L". Je ziet dat je in de zaaglijst die variabele de juiste lengte geeft: L=100; L=60;.
Zo is zagen nog eens comfortabel. Niets inspannen op de metaal-lintzaagmachine, niets nameten voor je de machine start. Geen neervallend afgezaagd stuk ijzer. Altijd perfect haaks en op lengte. Je hebt bovendien nooit restafval. Virtueel gewalste profielen hebben een oneindige lengte, echte zijn hooguit 6 meter lang. Je zaagt 5 stukken van 1 meter en dan houd je (vanwege de 2 mm brede zaagsnede) een stuk van 99 cm over - dat is net iets te kort voor het zesde stuk dat je nog nodig had ....
Het rondijzer komt ook uit het magazijn, in de vorm van een cylinder, die we direct op lengte knippen in de daar aanwezige virtuele rondijzer- (hefboom) schaar.
Na het eventueel ontbramen met een handvijl leggen we de vier stukken hoekijzer van het raamwerk in positie op de stalen lastafel, klemmen ze vast, controleren de haaksheid nog eens, hechten ze en - na een laatste controle op vorm, haaksheid en maat - lassen we alle naden af. We hebben tevoren goed nagedacht over de volgorde waarin we de lasnaden leggen. Kies je een foute lasvolgorde, dan krijg je een fout werkstuk. Dat komt door het krimpen van de lasnaden. Het is niet voor niets dat je eerst hecht, en pas aflast als alles in positie zit. Dat je daardoor lasspanningen in je werk krijgt, moet je accepteren. Of je moet je werk nadien "spanningsvrij gloeien" in een electro-oven.
Het inlassen van de staaf geeft weinig problemen, tenminste, als je hem goed hebt gepositioneerd. Dat is niet zo simpel als het lijkt, je hebt er zelfs speciaal-klemmen voor nodig. De lasplaats aan beide einden moet immers goed bereikbaar blijven.
Als we de profielen alleen op lengte zagen, kunnen we het werk echt NIET maken zoals afgebeeld. In de hoeken zitten de flenzen elkaar in de weg. We moeten de stukken eerst "uithoeken" en zo het teveel aan ijzer verwijderen. Dat moet zorgvulgig gebeuren om de profielen netjes, zonder gaten, op elkaar te laten aansluiten. Uithoeken is naar werk, juist omdat het zo nauw luistert.
Een bijzonder voordeel van het virtueel produceren is wel, dat het te gebruiken materiaal OOK virtueel is. OpenSCAD is een "solid 3D" programma, het houdt zich alleen bezig met de begrenzende oppervlakken en niet met de zaken onder die oppervlakken. Virtueel is uithoeken gewoon overbodig, de flenzen schuiven gewoon in elkaar en alles past altijd perfect.
Het positioneren en vastklemmen heeft virtueel ook wel bijzondere voordelen. Met een paar "translate"s en een paar "rotate"s richt je alles uit. Soms komt een "for-statement" goed van pas om meerdere stukken in één keer te plaatsen. Liggen de delen eenmaal op hun plaats, dan liggen ze muurvast. Je zou er rustig tegenaan kunnen stoten zonder dat je daarna weer opnieuw aan het uitrichten kan beginnen.
Het lassen vergt geen lasapparaat, krachtstroom, aardklem, elektrodehouder, electrodes, handschoenen en laskap. Er zijn geen lasdampen, die afgezogen moeten worden (en gefilterd, vanwege het milieu).
Er is ook geen lasslak die je af moet bikken. Evenmin hoef je het werk schoon te borstelen. Het roest immers niet en er zit ook geen walshuid op het hoekijzer. We kunnen het werk dus eenvoudig direct verven, door het eenvoudigweg onder te dompelen in een pot "color {}". En de stukken die ongeverfd moeten blijven, hoef je niet eerst af te plakken. Je houdt ze gewoon buiten de accolades van "color {}".
color ("red") {
rotate ([0,0,90]) Ongelijkzijdig_Hoekijzer (100);
translate ([-45,0,0]) rotate ([0,0,90]) Ongelijkzijdig_Hoekijzer (100);
for (i=[0,1])
translate ([0,0,i*100]) rotate ([0,-90,0]) Gelijkzijdig_Hoekijzer (60);
}; // einde color
translate ([-30,0.6,10]) cylinder (90,0.6,0.6);
module Gelijkzijdig_Hoekijzer (L) {
linear_extrude (height=L,convexity=10) polygon ([[0,0],[0,10],[1.2,10],[1.2,1.2],[10,1.2],[10,0]]);
};
module Ongelijkzijdig_Hoekijzer (L) {
linear_extrude (height=L,convexity=10) polygon ([[0,0],[0,15],[1.2,15],[1.2,1.2],[10,1.2],[10,0]]);
};