Libor Šedivý - osobní stránky

Je libo model podle textového zadání?

30.5.2023

Téma umělé inteligence a 3D tisku je dnes široce skloňováno. Při mých pokusech s umělou inteligencí mě napadlo - nešly by tyto dva fenomény spojit? Nastartoval jsem ChatGPT a zkusil to.

A opravdu, AI se nezalekne asi ničeho a pomohla mi s palčivým problémem, jak zvětšit model tak, aby se roztáhl na šířku, ale zachovaly se dírky pro šroubky tak, aby se nezdeformovaly. Výsledek měl pár chybiček, ale mě to ušetřilo jistě nějakou tu půlhodinku v hledání řešení.

Jistě si říkáte, jak na to. Existuje mnoho programů na návrhy 3D modelů, ale jak je propojit s umělou inteligencí, prostě jen tak, bez nějakých podpůrných programů či pluginů? Řešení je jednoduché. Zkuste program OpenSCAD, který vytváří objekty podle toho, co naprogramujete. Že neumíte v OpenSCADu? Žádný problém, to za vás vyřídí umělá inteligence. 

Stačí zadat třeba - vytvoř mi kód pro program OpenSCAD tak, aby výsledný model vypadal jako číslo osm - a začnou se dít divy. ChatGPT někdy chvíli přemýšlí, ale vytvoří vám funkční model, který si přejete. Ale pozor, AI ráda dělá chyby. ;) Nic není dokonalé, nicméně je fajn vědět, že to jde. Pod obrázkem níže najdete mou konverzaci s AI, která mi tento kód připravila.

Ležatá osmička v programu OpenSCAD

A nyní slibovaná ukázka komunikace...

Já:

Ahoj, vytvořila bys mi kód pro program OpenSCAD tak, aby výsledný model vypadal jako číslo osm?

ChatGPT:

Samozřejmě! Zde je příklad kódu pro program OpenSCAD, který vytvoří model čísla osm:

openscad

$fn = 100; // Počet stran polygonů pro plynulost křivek

module osm() {
difference() {
union() {
// Horní kruh
translate([0, 10, 0]) rotate_extrude(convexity = 10) translate([10, 0, 0]) circle(5);
// Spodní kruh
translate([0, -10, 0]) rotate_extrude(convexity = 10) translate([10, 0, 0]) circle(5);
}

// Levá horní smyčka
translate([-10, 0, 0]) rotate_extrude(convexity = 10) translate([0, 5, 0]) circle(5);
// Pravá horní smyčka
translate([10, 0, 0]) rotate_extrude(convexity = 10) translate([0, 5, 0]) circle(5);

// Levá dolní smyčka
translate([-10, 0, 0]) rotate_extrude(convexity = 10) translate([0, -5, 0]) circle(5);
// Pravá dolní smyčka
translate([10, 0, 0]) rotate_extrude(convexity = 10) translate([0, -5, 0]) circle(5);
}
}

osm();

 

Poslední aktualizace této stránky: 30.05.2023