18 grudnia 2017


Rezultat rekonstrukcji modelu przestrzennego, wykonanej za pomocą funkcji dostępnych w zakresie Reverse Engineering jest zwykle nieparametryczny. To oczywiście oznacza, że nie jest możliwa łatwa i szybka modyfikacja kształtu takiego modelu. Ale czy zawsze tak musi być?

Andrzej Wełyczko

Jeśli rekonstruowany element ma kształt zdefiniowany przez zaawansowane powierzchnie z krzywizną zmieniającą się w obu kierunkach głównych (double curvature surfaces), to nie ma jednoznacznej metody „odtworzenia” ich parametrycznej definicji. Problem jest jednak znacznie łatwiejszy dla części pryzmatycznych, czyli takich, których kształt jest opisany za pomocą powierzchni kanonicznych (płaskich, cylindrycznych, stożkowych lub wyciąganych). Powierzchnie kanoniczne to takie, dla których w każdym ich punkcie promień krzywizny przynajmniej w jednym kierunku ma wartość nieskończoną.

rekonstrukacja skanu 3d
Rys. 1

Rozważmy przykład kostki, której rezultat skanowania 3D w formacie STL jest importowany do CATIA V5 (Rys.1). Można oczywiście kwestionować konieczność rekonstrukcji tak prostego detalu, który łatwo zmierzyć, a wyniki pomiarów uwzględnić w procesie konstruowania „od zera”. Mam jednak nadzieję, że metoda opisana poniżej chociaż w części zainspiruje tych, którzy problemy rekonstrukcji modelu rozwiązują na co dzień.
Skan 3D (niezależnie od formatu) umożliwia zdefiniowanie modelu przestrzennego za pomocą siatki trójkątów. Pewnie dlatego skrót STL (STereo Lithography), jako najstarszy z formatów stosowanych w technikach Rapid Prototyping oraz Reverse Engineering, ma także inne rozwinięcia: Standard Triangle Language lub Standard Tessellation Language. Taka siatka może być wygładzana, filtrowana, ręcznie lub automatycznie naprawiana, optymalizowana, …itd. W tym przypadku ten etap pominę, bo te operacje nie mają wpływu na metodę opisaną poniżej.
Przed rozpoczęciem procesu rekonstrukcji warto wykonać analizę rozkładu krzywizny dla zaimportowanej siatki (polecenie Curvature Mapping dostępne w środowisku na rysunku 2). Jeśli taka analiza zostanie wykonana dla Type = Maximum, to jej rezultatem jest identyfikacja obszarów o różnych promieniach krzywizny:

  • obszary czerwone lub niebieskie: „klasyczne” zaokrąglenia krawędzi,
  • obszary zielone: powierzchnie płaskie, cylindryczne, stożkowe lub wyciągane, czyli takie, których krzywizna przynajmniej w jednym kierunku jest zerowa.

 

cały artykuł dostępny jest w wydaniu 11 (122) listopad 2017