Zeszyt 1: Czołg T34/85 kompletna dokumentacja 3D
Autorzy: grupa Bosweek
Wprowadzenie
Tematem Zeszytu jest stworzenie kompletnej dokumentacji 3D modelu czołgu T34/85 w skali 1:25. Zostanie ona przedstawiona jako moduły poszczególnych części lub ich fragmentów, w postaci modułów programu OpenSCAD. Dodatkowo dokumentacja zawiera wykaz wszystkich tworzonych elementów.
Praca z programem OpenSCAD v2021.01
Program OpenSCAD jest interpreterem skryptów tekstowych. Przekłada je na obraz CGS, który następnie można zachować w formacie stl.
W opracowaniu przyjęto pracę z drukarką 3D i tłoczeniem pojedynczej warstwy o wysokości 0.2 mm. Format stl może być zastosowany w dedykowanym dla konkretnej drukarki 3D programie zwanym slicerem.
Program OpenSCAD posiada szereg wbudowanych bibliotek, które ułatwiają interpretację poszczególnych instrukcji oraz może pracować z szeregiem bibliotek zewnętrznych, pochodzących z różnych źródeł. Biblioteki standardowe zlokalizowano w podkatalogu MCAD aplikacji. Tutaj będziemy wykorzystywać dodatkową bibliotekę pathbuilder.scad, której wstępne przedstawienie zawiera pomoc do programu OpenSCAD.
Wstępne ustawienia dla aplikacji, zwykle wymieniane na początku każdego tworzonego pliku scad, mogą wyglądać następująco:
$fa=1; $fs=0.4; $fn=40; use<MCAD/pathbuilder.scad>
W miejsce ścieżki, jak zastosowano to wyżej, można też użyć odwołania do pliku pathbuilder.scad, o ile umieścimy go w tym samym katalogu, co plik, który to odwołanie będzie zawierał. Dotyczy to również innych plików, tworzonych w ramach jednego projektu.
W Zeszycie każdy element modelu przedstawiono w postaci tabelki.
Widok 3D | Kod |
---|---|
![]() |
module tarcza_kola_jezdnego() { module cut1() { rotate_extrude(angle=22) polygon([[4.5,3],[9,3],[14,6],[14,9],[4.5,9]]); } difference() { cylinder(r=17.5, h=7.85); translate([0,0,6]) cylinder(r=14, h=2.1); translate([0,0,-0.1]) cylinder(r=3.2, h=9); for(a=[0:30:330]) rotate([0,0,a]) translate([6.5,0,-0.1]) cylinder(r=0.8, h=9); for(a=[0:30:330]) rotate([0,0,a]) translate([11,0,-0.1]) cylinder(r=1.25, h=9); for (n=[0:12]) rotate([0,0,n*30-11]) cut1(); } sleew(h=7.85); } |