Helt siden min gode kollega Stig kjøpte seg en 3D-printer tilbake i 2016 og viste meg OpenSCAD har jeg hatt lyst på min egen 3D-printer. Men trang leilighet og høy pris har holdt meg unna. Inntil for noen år siden, da vi flyttet til en større bolig med man-cave, og helt supre 3D-printere var blitt relativt rimelige.

Så jeg kjøpte meg en 3D-printer (Creality Ender 3 V3 KE). Den var fantastisk.

En 3D-printers livssyklus

Og jeg oppdaget livssyklusen til en 3D-printer:

  1. Man finner mange modeller av fidget toys og artikulerte print-in-place figurer på nettet som man skriver ut.
  2. Man skriver ut mange kjekke forbedringer til 3D-printeren (Hei, kulelager-spool-holder)
  3. Printeren samler støv i et hjørne

Satt litt på spissen, selvfølgelig. Innimellom finner man en kjekk modell på nett for å holde ladekabelen til elbilladeren, eller en riktig stilig bananflue-lokke-felle. Eller en hodeskalle-godteriskål til Halloween. Eller hva med en gammeldags bordklokke? Men det aller meste jeg printet var modeller som andre hadde laget, og jeg merket at det ble lengre og lengre tid mellom hver gang.

For jeg oppdaget at jeg ikke fikk tid til (eller kanskje riktigere sagt; hadde ork til å begynne) å lage så mange egendesignede ting som jeg kanskje hadde forestilt meg. Jeg hadde noen ideer, men ønsker man å lage egne, litt kompliserte modeller så er det ganske tidkrevende.

OpenSCAD

De fleste CAD-verktøy (Computer Assisted Design) er avanserte pek, klikk og dra 3D-editorer. Men i OpenSCAD skriver du 3D-modellene dine som kode. Man kan f.eks skrive

holes = 9;
spacing = 18;
hole_d = 12;
height = 80;

difference() {
   cube([holes * spacing, spacing, height]);
   for (i = [0 : holes-1]) {
      translate([spacing/2 + i*spacing, spacing/2, 5])
         cylinder(h = height, d = hole_d, $fn = 32);
   }
}

så får du en kloss med 9 hull. Ved å sette sammen og trekke fra forskjellige figurer kan man lage ganske avanserte 3D-modeller.

Kloss med 9 sylindriske hull rendret i OpenSCAD

Dette appellerte til meg; programmere kunne jeg jo, og jeg slapp å lære meg avanserte 3D-programvare med klikk og pek. Ved å ha noen sentrale variabler kan man justere og endre modellen sin.

Claude Code

Claude kan ikke styre disse klikk-og-pek CAD-programmene, som f.eks. Fusion 360. Men Claude Code kan produsere kode. Og det er jo akkurat hva OpenSCAD ønsker seg.

Det viste seg at Claude er overraskende god til å lage modeller i OpenSCAD. Og overraskende dårlig. Men med litt flaks og en grundig prompt kan Claude lage en 3D-modell som er nesten det du ønsker deg.

Claude er god på kode og matematikk. Så å behandle modellen matematisk og å lage modulene klarer den relativt bra. Problemet er at den ikke ser det den lager, som kan gi morsomme resultater (som blir til irriterende resultater når den ikke klarer å rette opp feilene).

Gi Claude syn

Jeg bruker en OpenSCAD skill for Claude Code, som lar Claude “se” modellen den genererer, ved at den kan rendre modellen i OpenSCAD og ta screenshots fra flere vinkler. Det gir en bedre feedback-loop. Men Claude forstår fortsatt ikke helt 3D-modellen, den ser bare 2D-projeksjoner av den fra forskjellige vinkler. Så det løser ikke problemet helt.

Så de siste 10% kan være seige. Det virker som om Claude egentlig ikke har så god forståelse av 3D, og det kan være frustrerende når du for tiende gang forsøker å justere plasseringen av en skruehull-standoff, og Claude nok en gang plasserer den svevende i løse lufta, bare på en litt annen plass enn der den svevde sist.

Dørstokkmila

Likevel har jeg merket at jeg, med Claude Code, har lagd flere egne modeller enn jeg har gjort til sammen i årene før. Claude tar meg over dørstokkmila.

Om jeg har spart noe tid totalt sett er jeg faktisk litt usikker på. Men når det tar 10 minutter å komme nesten i mål, så er det lettere for meg å bli motivert til å fortsette. Det er jo bare igjen å justere litt på plasseringen av standoffene.

Bevingede, avsluttende ord

Så hvis du har en støvete 3D-printer stående hjemme, og noen tokens til overs, hvorfor ikke prøve å realisere 3D-modellen du alltid har drømt om ved hjelp av Claude Code? Bare over neste bakketopp, så er vi fremme.