OpenSCAD - funkcje tworzące obiekty 2W

Stronę tą wyświetlono już: 41 razy

Rysowanie okręgów

OpenSCAD udostępnia funkcję circle (ang. okrąg). Funkcja ta przyjmuje jeden z dwóch dostępnych argumentów: r oznaczający promień lub d oznaczający średnicę. Oto dwa jednoznaczne polecenia tego typu:

Listing 1
  1. circle(r = 10);
  2. circle(d = 20);

Wynikiem powyższych poleceń będzie narysowanie dwóch okręgów o promieniu r = 10 i średnicy d = 20.

OpenSCAD - tworzenie rysunków okręgów
Rys. 1
OpenSCAD - wynik działania funkcji circle

Jak widać okrąg jest rysowany z segmentów, które mogą być mniej lub bardziej widoczne z tego względu w każdej praktycznie funkcji generującej powierzchnie zakrzywione przydatna jest również zmienna sterująca $fn, która wpływa na liczbę segmentów użytych do narysowania krzywizny. Zmienną można użyć w funkcji circle w sposób następujący:

Listing 2
  1. circle(r = 10, $fn = 100);

Rysowanie prostokątów

Do rysowania obszarów prostokątnych służy funkcja square, która przyjmuje jako argument parametr size oraz (opcjonalnie) center jako wartość true lub false. Oto przykład użycia tejże funkcji:

Listing 3
  1. square(size = [20, 40], center = true);

Powyższy kod wygeneruje prostokąt o wymiarach 20 w osi x oraz 40 w osi y. Parametr center ustawiony na true oznacza, że środek prostokąta będzie znajdował się w środku układu współrzędnych. W przeciwnym przypadku jeden z narożników prostokąta będzie zaczynał się w punkcie przecięcia się osi układu współrzędnych.

OpenSCAD - efekt działania funkcji squere
Rys. 2
OpenSCAD - efekt działania funkcji square

Rysowanie dowolnej figury prostokreślnej 2W

Ostatnią funkcją do rysowania obiektów geometrycznych 2W jest polygon, przyjmuje ona jako argument points listę wektorów 2W opisujących punkty będące wierzchołkami rysowanego obiektu geometrycznego. Opcjonalnie dostępny jest parametr paths, który pozwala na jednoczesne wygenerowanie kilku ścieżek zbudowanych na podstawie indeksów punktów. Pierwsza ścieżki nie przenikające się określają nowe obszary elementu geometrycznego, części przenikające się zostaną wycięte. Oto przykład użycia tej funkcji:

Listing 4
  1. polygon([[0.0, 0.0], [0.0, -25.0], [5.0, -30.0], [65.0, -30.0], [65.0, -25.0], [70.0, -25.0], [70.0, -40.0], [75.0, -45.0], [240.0, -45.0], [245.0, -40.18545], [245.0, -25.000000000000004], [250.0, -25.000000000000004], [250.0, -30.000000000000004], [310.00001, -30.000000000000004], [315.00001, -25.000000000000004], [315.00001, -3.552713678800501e-15]]);

Wynik działania powyższego kodu jest widoczny na poniższym rysunku.

OpenSCAD - przykład użycia funkcji polygon
Rys. 3
OpenSCAD - przykład użycia funkcji polygon

Rysowanie tekstu

W OpenSCAD-zie można również rysować tekst wykorzystując jakże przewrotnie nazwaną funkcję text, która przyjmuje następujące argumenty:

  • text - tekst do wyświetlenia;
  • size - określa rozmiar czcionki (domyślna wartość to 10);
  • font - określa krój czcionki. Listę dostępnych czcionek można zobaczyć klikając w menu File→Font list.
  • halign - horyzontalne wyrównanie tekstu (domyślnie ustawienie left), dostępne są również:
    • right;
    • center;
    • left
  • valign - pionowe wyrównanie tekstu (domyślnie ustawione baseline - czyli linia dolnej krawędzi liter bez ogonków). Dostępne opcje to:
    • top;
    • center;
    • baseline
  • spacing - określa rozmiar przestrzeni pomiędzy kolejnymi znakami;
  • direction - określa kierunek rysowania tekstu (domyślnie "ltr" - left to right). Dostępne są również:
    • "ltr";
    • "rtl" - right to left (od prawej do lewej);
    • "ttb" - top to bottom (od góry do dołu);
    • "btt" - bottom to top (od dołu do góry)
  • language - język (domyślnie "en");

Przykład użycia funkcji:

Listing 5
  1. text("Obliczeniowo.com.pl");
Wynik działania funkcji text
Rys. 4
Wynik działania funkcji text

Komentarze