CAD cz.4: technika 3D - FreeCAD
CAD 4. Część poprzednia: CAD cz.3: technika 3D - BRLCAD
Spis treści
Wstęp
Dziś zajmiemy się oprogramowaniem, którym w jakimś zakresie posługuję się na co dzień. Oczywiście jest to system CAD 3D. Mowa o oprogramowaniu FreeCAD. To zupełnie współczesne, aktywnie rozwijane i wspierane narzędzie.
Szczypta historii
FreeCAD zaczął powstawać krótko po 2001 r. Twórcy postawili sobie za cel stworzenie nowoczesnego narzędzia, w pełni porównywalnego do dostępnych komercyjnych systemów CAD.
Ale…
FreeCAD został oparty o „silnik geometryczny” „Open CASCADE Technology” (OCCT) – zespół bibliotek i narzędzi realizujących operacje geometryczne. Oprogramowanie CASCADE zostało oficjalnie udostępnione publicznie („otwarte”) w 1999 r. Umożliwia ono, m. in.
- Modelowanie geometryczne: Obliczenia przecięć krzywych/powierzchni, projekcje, konstrukcje na podstawie relacji (ograniczeń), interpolacja/aproksymacja.
- Modelowanie powierzchni i brył.
- Wymianę danych.
- Wizualizację.
Ale…
„Open CASCADE” to otwarta wersja silnika geometrycznego francuskiej firmy Matra Datavision. Ten silnik wcześniej był znany jako „CAS.CADE” (Computer Aided Software for Computer Aided Design and Engineering). „CAS.CADE” znalazło się na rynku około 1996 r. i było używane jako podstawa systemu „Euclid Quantum”.
Ale…
System Euclid pojawił się na rynku w 1980 r., po prawie 10 latach pracy firmy Matra Datavision w branży oprogramowania inżynierskiego.
Przeplataniec
Matra Datavision zrezygnowała z rozwoju własnego oprogramowania CAD w 1998 r.
Niektóre moduły jej systemu „Euclid”, po zaprzestaniu jego rozwoju, w 1999 r. zakupiła firma Dassault Systèmes, w tym „Euclid Styler” (zaawansowane powierzchnie swobodne), „Euclid Machinist” (obróbka CNC) i „Euclid Strim” (Strimflow) (opływ powierzchni i symulacja wtrysku). Przejęto również część pracowników.
W 2001 r. Matra Datavision utworzyła spółkę zależną OPEN CASCADE S.A.S. do wsparcia i rozwoju komercyjnej wersji CASCADE. Nadal korzysta z niego duża gama programów z rynku inżynieryjnego i naukowego.
Inna sprawa, że później firma zmieniała właścicieli: w 2003 roku została przejęta przez Principia, a w 2014 roku stała się częścią Capgemini Engineering (wcześniej Altran).
Jak widzimy sam FreeCAD ma dość solidne podstawy. Zadziwia również przepływ technologii i inżynierów pomiędzy firmami, rynkami (w sensie międzynarodowym) i projektami.
FreeCAD
Należy zwrócić uwagę, że system CAD, to nie tylko silnik geometryczny. Poza wykorzystaniem OpenCASCADE, FreeCAD został napisany od podstaw, zupełnie na nowo. Nie posiada wspólnego kodu z innymi zamkniętymi, komercyjnymi systemami CAD.
Natomiast istnieje podobieństwo podstawowych modułów FreeCADa (np. Part Design lub TechDraw) do np. SolidWorksa. To całkowicie świadomy wybór twórców FreeCADa, aby nie tworzyć nowego systemu lub nowej metodyki współpracy z oprogramowaniem. Tak aby maksymalnie ułatwić przesiadanie się inżynierów pomiędzy różnymi systemami CAD.
Można jeszcze dodać, że większa połowa kodu FreeCADa powstała w C++, ale niewiele mniej napisano w języku Python. I w tym też języku przyjmuje polecenia wiersz poleceń FreeCADa.
Tak, tradycyjnie mamy dostępny wiersz poleceń i konsolę na którą wyprowadzane są komunikaty o błędach.
FreeCAD dostępny jest dla najpopularniejszych platform, zarówno dla MS Windows, Linuxa oraz MacOSa.
Organizacja wewnętrzna
FreeCAD podzielony jest na moduły. Oddzielne części, realizujące różne zadania. Najczęściej stosowane to:
- Part Design
- Part
- Sketcher
- TechDraw
Modułów jest dużo. W standardzie jest ich ponad 20. Ale istnieją też liczne rozszerzenia. Na ilustracji, na liście modułów widać np., dodatkowy moduł „Sheet metal” wspomagający projektowanie wyrobów z giętej blachy.
Part
To prawdopodobnie pierwotny moduł systemu. Umożliwia tworzenie obiektów 3D i ich modyfikację za pomocą techniki CSG (patrz część poprzednia). Cechą charakterystyczną tego modułu jest to, że nie musi on wykorzystywać wyłącznie brył, ale potrafi także operować np. na powierzchniach nie posiadających grubości. Możliwe jest też wykorzystanie obiektów innych typów, pochodzących z innych modułów oraz ich mieszanie.
Part Design
Najczęściej używany moduł, służący do projektowania obiektów 3D. Zasadniczą techniką projektowania jest BREP. Projektowane obiekty muszą być „mięsne”, tzn. posiadać zamknięte wnętrze. Oczywiście możliwe jest również wykonywanie działań logicznych CSG, ale są one wykonywane w inny sposób niż w module „Part”.
Sketcher
Moduł pomocniczy, szkicownik, głównie wykorzystywany do projektowania zarysów brył (tzn. zarysów do wyciągnięcia lub obrotu), szkiców głównych (np. zawierających główne linie symetrii i odniesienia, które będą później wykorzystywane przy projektowaniu elementu). Moduł jest w pełni parametryczny i relacyjny.
TechDraw
Narzędzie do tworzenia dokumentacji 2D. Jako niezależny program do rysowania 2D, w porównania nawet do LibreCAD, jest dość ułomny. Ale umożliwia semi-samoczynne utworzenie widoków, także przekrojów, z modelu 3D. Jednak należy się przygotować, że wykonanie pełnego, zgodnego z normami rysunku będzie dość pracochłonne. Zaletą jest samoczynna aktualizacja rysunku 2D (np. zarysów, wymiarów) przy modyfikacjach modelu 3D.
Pozostałe moduły
Modułów jest dużo. Zarówno dołączonych do programu, jak i dostępnych jako rozszerzenia. Zarówno umożliwiające tworzenie obiektów, np. kół lub listew zębatych, jak i eksport danych do programów obliczeniowych. Niektóre z nich są dość użyteczne. Inne nadal niedopracowane. Ale najważniejsze, że większość z nich jest nadal rozwijana.
Wersje
Program występuje w paru wersjach. Różnią się one stabilnością i stopniem dopracowania:
- 0.21.2 – to poprzednia stabilna wersja. Miała swoje problemy, ale dość bezpiecznie dało się na niej pracować produkcyjnie.
- 1.0 – to pierwsza oficjalnie dostępna nowa wersja, opublikowana w listopadzie 2025 r. po całych latach wprowadzania zmian i ulepszeń. Zawierała straszne ilości błędów i niedopracowań w porównaniu do poprzedniczki. Stanowczo odradzam. Zresztą w momencie pisania artykułu jest już przestarzała.
- 1.1 – aktualna, oficjalna, stabilna wersja, w której poprawiono znaczną ilość nieprawidłowości z wersji 1.0. Chyba już można ją polecić osobom chcącym rozpocząć przygodę z tym programem.
- 1.2 – wersja rozwojowa. Aktualnie rozwijane wersje dostępne są jako cotygodniowe kompilacje. Zdarzają się wpadki deweloperów. Ale zasadniczo nie ma tragedii i zwykle wersje 1.2.x pracują pod pewnymi względami „lepiej” niż oficjalne 1.1. Jednak z uwagi na niestabilność wpisaną w samą ideę powstania tej wersji, mogę ją polecić raczej osobom mającym już jakieś doświadczenie w pracy z FreeCADem.
Niestety mogą się zdarzyć niekompatybilności między wersjami. Np. nie wszystkie rysunki (modele 3D) z wersji 1.x będą się prawidłowo otwierać w wersji 0.21.2. Może się też zdarzyć, że rysunek z wersji 1.0 będzie miał problemy w 1.1 lub 1.2 i będzie wymagał trochę pracy, aby nie tworzyć komunikatów z ostrzeżeniami w linii komend przy każdym odświeżeniu widoku na ekranie...
Wnioski
Z tego programu korzystam prawie na co dzień.
FreeCAD nadal ma swoje problemy i będzie je miał. Każdy użytkownik dużego systemu CAD wie, że każdy duży system ma swoje problemy, nawet jeżeli kosztuje setki tysięcy PLN.
FreeCAD umożliwia dość bezpieczną pracę nawet z dość skomplikowanymi modelami. Dla niektórych najważniejsze będzie, że jest dostępny zupełnie za darmo.
Jednak jeżeli wykorzystuje się takie programy w celach zarobkowych, warto dobrowolnie wesprzeć ich projekty jakąś, nawet bardzo niedużą wpłatą.
Tekst i zdjęcia: Szymon Dowkontt
