PrusaSlicer — to slicer, czyli program, który bierze model 3D w postaci siatki z zwykłych trójkątów i konwertuje go na specjalny program do zarządzania drukarką 3D. Na przykład w formie G-kodu do drukarek FFF, w którym zawarte są szczegółowe instrukcje, jak należy poruszać głowicą drukującą (ekstruder) w przestrzeni oraz ile gorącego plastiku wydobywać przez nią w danym momencie. Oprócz G-kodu ta wersja wprowadziła także generację warstw obrazów rastrowych dla drukarek fotopolimerowych mSLA. Początkowe modele 3D mogą być ładowane z plików w formatach STL, OBJ lub AMF.
Choć PrusaSlicer był rozwijany z myślą o drukarkach open source Prusa, może generować G-kod kompatybilny z każdą nowoczesną drukarką bazującą na rozwiązaniach RepRap, w tym wszystkie z oprogramowaniem Marlin, Prusa (fork Marlin), Sprinter i Repetier. Jest także możliwość generacji G-kodu wspieranego przez kontrolery Mach3, LinuxCNC i Machinekit.
PrusaSlicer jest forkiem Slic3r, który z kolei został opracowany przez Alessandro Ranelucci oraz społeczność RepRap. Do wersji 1.41 włącznie, projekt był rozwijany pod nazwą Slic3r Prusa Edition, znanej również jako Slic3r PE. Fork odziedziczył specyficzny i niezbyt wygodny interfejs użytkownika oryginalnego Slic3r, więc w pewnym momencie deweloperzy z Prusa Research stworzyli osobny uproszczony interfejs dla Slic3r PE — PrusaControl. Ale później, podczas opracowywania Slic3r PE 1.42, zdecydowano się całkowicie przebudować oryginalny interfejs, włączając część rozwiązań z PrusaControl i zaprzestając rozwoju tego ostatniego. Poważna przebudowa interfejsu oraz dodanie wielu nowych funkcji stały się podstawą do zmiany nazwy projektu.
Jedną z wyróżniających cech PrusaSlicer (jak i Slic3r) jest duża liczba ustawień, dających użytkownikowi kontrolę nad procesem slicingu.
PrusaSlicer jest napisany głównie w C++, jest rozpowszechniany na licencji AGPLv3 i działa na Linuxie, macOS i Windowsie.
Główne zmiany w stosunku do Slic3r PE 1.41.0
Wideo-przegląd interfejsu i możliwości tej wersji: https://www.youtube.com/watch?v=bzf20FxsN2Q.
- Interfejs
- Teraz interfejs prawidłowo wyświetla się na monitorach HiDPI.
- Znacząco poprawiono możliwości manipulacji obiektami 3D:
- Teraz obsługiwane są przesuwanie, obracanie, skalowanie i odbicie po wszystkich trzech osiach oraz nieregularne skalowanie za pomocą trójwymiarowych elementów sterujących bezpośrednio w oknie podglądu 3D. Te same elementy można wybierać z klawiatury: m — przesuwanie, r — obracanie, s — skalowanie, Esc — wyjście z trybu edycji.
- Teraz można zaznaczyć kilka obiektów, przytrzymując Ctrl. Ctrl-A zaznacza wszystkie obiekty.
- Podczas przesuwania, obracania i skalowania można wprowadzać dokładne wartości w panelu pod listą obiektów. Gdy odpowiednie pole tekstowe ma fokus, w oknie podglądu 3D rysowane są strzałki, pokazujące, co i w jakim kierunku zmienia dana liczba.
- Przeprojektowano działanie Project (wcześniej nazywane Factory File). W pliku projektu zapisane są wszystkie modele, ustawienia i modyfikatory, potrzebne do uzyskania identycznego kodu G na innym komputerze.
- Wszystkie ustawienia zostały podzielone na trzy różne kategorie: Proste, Zaawansowane i Ekspert. Domyślnie wyświetlane są tylko ustawienia kategorii Proste, co znacząco ułatwia życie początkującym użytkownikom. Tryby Zaawansowane i Ekspert można łatwo włączyć w razie potrzeby. Ustawienia różnych kategorii wyświetlane są w różnych kolorach.
- Wiele użytecznych funkcji Slic3r zostało teraz przeniesionych na główną kartę (Plater).
- Szacowany czas drukowania jest teraz wyświetlany natychmiast po wykonaniu akcji „Slice” bez potrzeby eksportowania kodu G.
- Wiele działań jest teraz wykonywanych w tle i nie blokuje interfejsu. Na przykład, wysyłanie do OctoPrint.
- Na liście obiektów wyświetlana jest hierarchia obiektów, parametry obiektu, objętości obiektu oraz modyfikatory. Wszystkie parametry są wyświetlane albo bezpośrednio na liście obiektów (po kliknięciu prawym przyciskiem na ikonę po prawej stronie nazwy), albo w panelu kontekstowym pod listą.
- Modele z problemami (szczeliny między trójkątami, przecinające się trójkąty) są teraz oznaczane wykrzyknikiem na liście obiektów.
- Wsparcie dla opcji wiersza poleceń opiera się teraz na kodzie z Slic3r. Format jest taki sam jak w upstreamie, z kilkoma zmianami:
- —help-fff oraz —help-sla zamiast —help-options
- u —loglevel ma dodatkowy parametr do ustawiania ważności (severity) wyświetlanych komunikatów
- —export-sla zamiast —export-sla-svg lub —export-svg
- nie są obsługiwane: —cut-grid, —cut-x, —cut-y, —autosave
- Możliwości druku 3D
- Wsparcie dla kolorowego druku za pomocą modułu (sprzętowego) automatycznej zmiany filamentu.
- Wsparcie dla mSLA (stereolitografia z użyciem maski) oraz drukarki Prusa SL1, która korzysta z tej technologii. Może się wydawać, że wsparcie dla mSLA jest prostsze niż FFF, ponieważ mSLA wymaga jedynie narysowania dwuwymiarowych obrazów dla każdej warstwy, ale w rzeczywistości tak nie jest. Problem polega na tym, że technologia wymaga dodania podpór o odpowiednich kształtach dla bardziej lub mniej skomplikowanych modeli. Przy druku z niewłaściwymi podporami może się zdarzyć, że część drukowanego obiektu pozostanie na macie drukarskiej i zrujnuje wszystkie kolejne warstwy.
- Dodano wsparcie dla wtyczki Cancelobject dla OctoPrint. Umożliwia to anulowanie druku poszczególnych obiektów bez przerywania druku innych.
- Możliwość dodawania własnych oraz usuwania automatycznie generowanych podpór za pomocą modyfikatorów.
- Zmiany wewnętrzne
- Cały podstawowy kod został przepisany w C++. Teraz nie wymaga już Perla do działania.
- Porzucenie Perla w silniku slicingowym pozwoliło na zakończenie wsparcia dla slice’owania w tle z możliwością anulowania w dowolnym momencie.
- Dzięki przeprojektowanemu systemowi synchronizacji frontendu z silnikiem, niewielkie zmiany teraz unieważniają nie całe obiekty, ale tylko te części, które wymagają przeliczenia.
- Teraz wymagana jest wersja OpenGL 2.0 lub wyższa. Przejście na nową wersję pomogło uprościć kod i poprawić wydajność na nowoczesnym sprzęcie.
- Usunięte możliwości
- Wsparcie dla druku przez port szeregowy bezpośrednio z programu. Programiści jeszcze nie zdecydowali, czy przywrócą tę funkcjonalność w przyszłych wersjach, czy nie. (od autora wiadomości: nie rozumiem, po co ta funkcja, skoro jest OctoPrint, który realizuje interfejs webowy i HTTP API dla drukarek podłączonych przez port szeregowy)
- Podgląd 2D toolpath nie został zaimplementowany w nowym interfejsie. Prawdopodobnie wróci w jednej z następujących wersji. Tymczasowe rozwiązanie: skierować kamerę 3D podglądu z góry w dół naciskając klawisz 1 i wybrać odpowiednią warstwę.
- Wciąż niezaimplementowane możliwości =)
- Funkcja Cofnij (Undo) i Ponów (Redo) działania nadal nieobecna.
Szczegółowa lista zmian
Opis wszystkich zmian można znaleźć pod tymi linkami: 1.42.0-alpha1, 1.42.0-alpha2, 1.42.0-alpha3, 1.42.0-alpha4, 1.42.0-alpha5, 1.42.0-alpha7, 1.42.0-beta, 1.42.0-beta1, 1.42.0-beta2, 2.0.0-rc, 2.0.0-rc1, 2.0.0.
Linki
Źródło: linux.org.ru

