Środowisko pracy OpenSCAD
Wprowadzenie
Środowisko pracy OpenSCAD służy do zapewnienia interoperacyjności z oprogramowaniem OpenSCAD. Program ten nie jest częścią projektu FreeCAD i by zapewnić pełną funkcjonalność tego środowiska należy zainstalować go samodzielnie.
OpenSCAD nie powinien być mylony z OpenCASCADE będącym nierozłącznym komponentem FreeCAD odpowiedzialnym za opis geometrii. Instalacja oprogramowania OpenSCAD jest w pełni opcjonalna.
Zawiera importer formatu CSG, który otwiera pliki CSG z OpenSCAD, oraz eksporter, który tworzy drzewo oparte na CSG. Geometria, która nie jest oparta na operacjach CSG, zostanie wyeksportowana jako siatka.
To środowisko pracy zawiera funkcje do modyfikacji drzewa cech CSG i naprawy modeli. Zawiera także narzędzia ogólnego przeznaczenia, które nie wymagają instalacji OpenSCAD Mogą być one używane w połączeniu z innymi środowiskami pracy. Na przykład, środowiskiem Projekt Siatki wewnętrznie używa funkcji OpenSCAD do wykonywania operacji z siatkami, ponieważ są one dość stabilne.
Zależności
W wersji FreeCAD 0.19 moduł Ply (Python-Lex-Yacc), który jest używany do importowania plików CSG, został usunięty z kodu źródłowego FreeCAD, ponieważ jest to biblioteka zewnętrzna, która nie została opracowana przez zespół FreeCAD. W rezultacie musisz teraz zainstalować Ply przed użyciem środowiska OpenSCAD. W przypadku używania wstępnie spakowanej, stabilnej wersji FreeCAD zależność ta powinna być zainstalowana automatycznie na wszystkich platformach; w innych przypadkach, na przykład podczas kompilowania ze źródeł, może być konieczne zainstalowanie jej z repozytorium online.
W dystrybucjach opartych o openSUSE środowisko może zostać zainstalowane za pomocą:
sudo zypper install python3-ply
W dystrybucjach opartych o Debian / Ubuntu środowisko może zostać zainstalowane za pomocą:
sudo apt install python3-ply
Ogólna instalacja na wszystkich platformach może być wykonana z indeksu pakietów Pythona.
pip3 install --user ply
Język OpenSCAD i format pliku
Język OpenSCAD pozwala na używanie zmiennych i pętli. Pozwala on na określenie modułów podrzędnych w celu ponownego użycia geometrii i kodu. Ten wysoki stopień elastyczności sprawia, że parsowanie kodu jest bardzo złożone. Obecnie środowisko OpenSCAD nie obsługuje natywnie języka OpenSCAD. Zamiast tego, jeśli OpenSCAD jest zainstalowany, może być użyty do konwersji danych wejściowych do formatu CSG, który jest podzbiorem języka OpenSCAD i może być użyty jako dane wejściowe do OpenSCAD do dalszej obróbki. Podczas konwersji wszystkie parametry są tracone, co oznacza, że wszystkie nazwy zmiennych są usuwane, pętle rozwijane, a wyrażenia matematyczne obliczane.
Przybory
Oznacz kształt kolorem: Zmienia kolor wybranych lub wszystkich kształtów na podstawie ich znaczenia.
Zastąp obiekt: Zastępuje obiekt w drzewie cech.
Usuń gałąź drzewa: Usuwa wybrane obiekty i wszystkie elementy podrzędne, do których nie istnieją odniesienia z innych obiektów.
Udoskonal siatkę: Tworzy cechę udoskonalonego kształtu.
Odbicie lustrzane siatki: Tworzy cechę odbicia lustrzanego dla siatki.
Skaluj cechę siatki: Skaluje elementy siatki.
Zmień rozmiar cechy siatki: Zmień rozmiar elementu siatki.
Zwiększ tolerancję cechy: Zwiększa tolerancję krawędzi / powierzchni / wierzchołków wybranych obiektów..
Przekształć krawędzie na ściany: Przekształć krawędzie na powierzchnie. Przydatne do przygotowania importowanej geometrii DXF do wyciągnięcia.
Rozwiń umiejscowienia: Rozwiń wszystkie umiejscowienia w dół drzewa cech.
Rozbij grupę: Rozbija elementy pierwotne części scalonych.
Dodaj element OpenSCAD: Dodaj element OpenSCAD, wprowadzając kod OpenSCAD do panelu zadań.
Operacja logiczna na siatce: Tworzy nowy obiekt siatki za pomocą operacji logicznej z kształtów.
Hull: Stosuje funkcję hull do wybranych kształtów.
Minkowski: Stosuje sumę minkowskiego do wybranych kształtów.
Ustawienia
Preferencje: ustawienia dostępne dla środowiska OpenSCAD.
Ograniczenia
OpenSCAD tworzy konstrukcyjną geometrię bryłową, a także importuje pliki siatek i wytłacza geometrię 2D z plików DXF. FreeCAD pozwala również na tworzenie formatu CSG za pomocą elementów pierwotnych. Jądro geometrii FreeCAD (OCCT) działa w oparciu o reprezentację brzegową. Dlatego konwersja z CSG do BREP teoretycznie powinna być możliwa, natomiast konwersja z BREP do CSG zasadniczo nie jest.
OpenSCAD pracuje wewnętrznie na siatkach. Niektóre operacje, które są przydatne w przypadku siatek, nie mają znaczenia w modelu BREP i nie mogą być w pełni obsługiwane. Należą do nich m.in. kadłub wypukły, suma minkowskiego, przesuwanie i podział. Obecnie w celu wykonania operacji na kadłubie i sumie minkwoskiej uruchamiamy binarny program OpenSCAD i importujemy wynik. Oznacza to, że zaangażowana geometria zostanie poddana triangulacji. W OpenSCAD często stosuje się skalowanie niejednolite, co nie stwarza problemów przy korzystaniu z siatek. W naszym jądrze geometrii elementy pierwotne geometrii (linie, odcinki koliste itp.) są konwertowane na krzywe złożone przed wykonaniem takich deformacji. Te krzywe złożone są znane z tego, że powodują problemy w późniejszych operacjach logicznych. W chwili obecnej nie jest dostępne automatyczne rozwiązanie tego problemu. Jeśli napotkasz takie problemy, napisz o tym na forum. Często takie problemy można rozwiązać, przemodelowując małe części. Zniekształcenie walca można zastąpić wycięciem elipsy.
Importowanie tekstu
Importowanie kodu OpenSCAD z tekstami wymaga, aby czcionki, które są używane, były poprawnie zainstalowane w systemie. Można to sprawdzić otwierając OpenSCAD jako samodzielne narzędzie i sprawdzając listę w Pomoc → Font List. Lista ta zawiera również prawidłowe nazwy czcionek. Jeżeli po zainstalowaniu czcionka nie pojawia się na liście, może być konieczne ręczne skopiowanie pliku z czcionką do odpowiedniego katalogu systemowego.
Importowanie tekstów jest stosunkowo powolne. Za kulisami FreeCAD korzysta z pliku DXF utworzonego przez OpenSCAD. Im więcej konturów, tym wolniejszy jest import.
Dobrym pomysłem może być zaimportowanie najpierw prostego przykładu testowego (zamień NameOfFont
na poprawną nazwę czcionki):
TESTFONT="NameOfFont"; linear_extrude(0.001) { text("A", size=5, font=TESTFONT, script="Latn"); };
Parametr script="Latn"
można tutaj pominąć, ale jest on wymagany, jeśli łańcuch tekstowy nie zawiera żadnych liter, a jedynie znaki interpunkcyjne i / lub cyfry.
Należy pamiętać, że deklaracje use <FONT>;
w plikach źródłowych są ignorowane podczas importu w FreeCAD. W OpenSCAD efektem deklaracji use
jest tymczasowe dodanie podanego pliku czcionki do listy znanych czcionek (chociaż nawet tam deklaracja nie działa, gdy skrypt jest modyfikowany interaktywnie).
Wskazówki
Podczas importowania plików w formacie DXF ustaw precyzję szkicu na rozsądną wartość, ponieważ będzie to miało wpływ na wykrywanie połączonych krawędzi.
Jeśli program FreeCAD zawiesza się podczas importowania pliku CSG, zaleca się włączenie opcji "Automatycznie sprawdź model po operacji logicznej" w menu Edycja → Preferencje ... → Projekt Części → Ogólne → Ustawienia modelu.
Poradniki
Odnośniki internetowe
- Oficjalne repozytorium kodu źródłowego projektu OpenSCAD znajduje się na stronie GitHub
- Otwórz zgłoszenia oznaczone tagiem "OpenSCAD" na FreeCAD Github issue tracker. Istnieją również zgłoszenia na zarchiwizowanym już mantis bugtracker.
- Modele oznaczone tagiem "OpenSCAD" w serwisie Thingiverse
- Narzędzia: Oznaczenie kolorystyczne kształtu, Zamień obiekt, Usuń gałąź drzewa, Udoskonal kształt cechy, Cecha zwiększonej tolerancji, Krawędzie na ścianę, Rozszerzenie umieszczenia, Rozbij grupę, Dodaj element OpenSCAD, Operacje logiczne na siatkach, Hull, Minkowski
- Dodatkowe: Preferencje; Import kodu OpenSCAD (CSG)

- Jak zacząć
- Instalacja: Pobieranie programu, Windows, Linux, Mac, Dodatkowych komponentów, Docker, AppImage, Ubuntu Snap
- Podstawy: Informacje na temat FreeCAD, Interfejs użytkownika, Profil nawigacji myszką, Metody wyboru, Nazwa obiektu, Edytor ustawień, Środowiska pracy, Struktura dokumentu, Właściwości, Pomóż w rozwoju FreeCAD, Dotacje
- Pomoc: Poradniki, Wideo poradniki
- Środowiska pracy: Strona Startowa, Złożenie, BIM, CAM, Rysunek Roboczy, MES, Inspekcja, Siatka, OpenSCAD, Część, Projekt Części, Punkty, Inżynieria Wsteczna, Robot, Szkicownik, Arkusz Kalkulacyjny, Powierzchnia 3D, Rysunek Techniczny, Test Framework