6. Komponent „elektroniczny system informacyjny”
6.1 Dyskretyzacja obiektów punktowych dwu- i trójwymiarowych
Do procesu dyskretyzacji utworzonych obiektów wykorzystuje się meto-dy, które zamieniają rastrowy obraz w pamięci komputera (nieprzezroczyste powierzchnie, określone granice i zajmowane obszary, etc.) na obraz stworzony z punktów wykonywanych przez laser. Otrzymany wynik takiej transformacji
6. Komponent „elektroniczny system informacyjny”
powinien spełniać warunek dokładnego odwzorowania punktów zamodelowane-go wcześniej obiektu.
Operacja formowania obiektów trójwymiarowych oparta jest na tworze-niu lokalnych defektów o rozmiarach 200x200x600 mikrometrów impulsami na-grzewającymi lasera. Tak powstałe lokalne mikropęknięcie struktury szkła wizu-alnie odwzorowuje obiekt punktowy (rys. 15). Dlatego format odwzorowania, jaki zostanie wykorzystany do wytworzenia złożonej struktury obiektu, musi być sprowadzony do uporządkowanego zbioru punktów.
Rys. 15. Fotografie punktowych defektów w płaszczyźnie XY (z lewej), XZ (z prawej)
Trzeba jednak mieć na uwadze pewne ograniczenia, które wynikają z sa-mego charakteru procesu. Chodzi tu przede wszystkim o:
częstotliwość użytego lasera i wyni-kający z tego czas obróbki;
wymiary defektu (punktu);
odległość pomiędzy sąsiadującymi defektami.
Jedynym z głównych problemów wyboru odpowiedniego algorytmu dyskre-tyzacji jest dopasowanie liczby i wielkości punktów, które mają odwzorowywać za-modelowany wcześniej obiekt. Zależność koniecznego zbioru punktów od wybrane-go typu alwybrane-gorytmu ukazana jest rys. 16 [9, 51]. W danym przypadku wyjściowa figura geometryczna była przecięta płaszczyznami prostopadłymi do osi Z. Otrzymano przy tym dwuwymiarowe kontury. Wykorzy-stano przy tym funkcję dzielenia krzy-wych. Widać wprawdzie przerwy pomię-dzy przecinającymi się płaszczyznami (włą-czając płaszczyznę Z), ale w płaszczyźnie
XY, obiekt przedstawiony jest jako pełne odwzorowanie pierwotne. Do rozwią-Rys. 16. Zależność koniecznej liczby punktów
od wybranego algorytmu dyskretyzacji
zania tego problemu można zbudować określony algorytm dyskretyzacji. Prze-prowadza się wtedy przypadkowy wybór małego obszaru przestrzeni. Przed taką operacją obróbki punktów niezbędne jest ich posortowanie, albo też zebranie w grupy, dla podwyższenia prędkości przeprowadzanych operacji.
Innym problemem, który należy uwzględnić podczas dyskretyzacji jest tzw. gubienie informacji o strukturze obiektu. Wynika ono z niewłaściwego określenia parametrów wykorzystywanego algorytmu. Może to zachodzić w przypadkach niepoprawnego określenia kąta nachylenia płaszczyzny przecinają-cej, przy wykorzystaniu metody dzielenia obiektu na sekcje. Powodem może być również niewłaściwy wybór odległości między punktami. Na przykład przy roz-biciu płaszczyznami figury typu walec, równolegle do jego podstawy, sama pod-stawa nie będzie przedstawiona przez zbiór skończony z powodu braku kontu-rów przecinających. Można to rozwiązać matematycznie. Chodzi tu o analizę struktury obiektu poddawanego dyskretyzacji z uwzględnieniem najbardziej pa-sującej metody i matematycznych parametrów, dla osiągnięcia dokładnego od-wzorowania obiektu. Stosowane dotychczas oprogramowanie wykorzystuje trzy metody dyskretyzacji [8, 9, 22, 51]:
metodę dzielenia obiektu na sekcje;
metodę wypełniania trójkątów przez punkty; metodę wiązek równoległych.
Poniżej zaprezentowana zostanie każda z nich.
6.1.1 Metoda dzielenia obiektu na sekcje
Metoda opiera się na standartowej operacji wykorzystywanej w programie 3D StudioMAX. Zakłada się, że obiekt składa się z sekcji (warstw), które stano-wią o tym, że jest on przedstawiany jako szereg złożonych zamkniętych kontu-rów.
6. Komponent „elektroniczny system informacyjny”
Dla każdej warstwy przeprowadzana jest analiza krzywej powstałej w wy-niku przecięcia jej z płaszczyzną warstwy przecinającej. Te zamknięte kontury są przybliżane następnie przez trójkąty. Na podstawie opisanego toru punktu, przy warunku równomiernego rozłożenia ich na otrzymanej krzywej, uzyskuje się przetransformowany model punktowy. Graficzne przedstawienie idei metody pokazuje rys. 17.
6.1.2 Metoda wypełniania trójkątów przez punkty
Metoda opiera się na pojęciu głównej struktury środowiska 3D Studio-MAX. Obiekt odzwierciedlany jest przez trójkąty. W każdym z otrzymanych trójkątów wstawia się punkty przy zapewnieniu warunku jednakowej odległości między punktami sąsiadującymi. Przez to następuje zapełnienie całego konturu, stanowiącego obiekt (rys. 18). Zaletą metody jest dosyć duża prędkość w porów-naniu z metodą przedstawioną poprzednio. Algorytm ten również posiada pewne niedogodności. Po pierwsze, każdy z trójkątów oddzielnie jest wypełniany przez punkty, co w strukturze geometrycznej może przejawiać się koncentracją punk-tów na linii łączenia trójkąpunk-tów sąsiadujących ze sobą. Można wprawdzie zrezy-gnować z zapełniania punktami krawędzi, trzeba jednak przy tym brać pod uwa-gę pojawiający się problem nieobecności granic obiektu tworzonego z punktów. Druga niedogodność wynika z zaobserwowanego zjawiska, że kiedy mamy zło-żoną strukturę wyjściową obiektu, to powierzchnie są odwzorowywane przez trójkąty tak małe, iż niejednokrotnie rozmiary trójkąta są mniejsze od rozmiaru wstawionego wewnątrz punktu.
d - minimalna odległość między punktami; jedyny parametr
Rys. 18. Graficzne przedstawienie metody dyskretyzacji dzielenia wypełniania trójkątów przez punkty
Pozostałe oznaczenia: 1) obiekt wyjściowy stworzony w 3D StudioMAX; 2) powiększo-ny obszar struktury obiektu (uporządkowapowiększo-ny zbiór trójkątów); 3) wybrapowiększo-ny trójkąt w kolejnej iteracji; 4) powiększony widok trójkąta wybranego dla operacji wypełnienia; 5) jeden z wielu punktów, tworzących zbiór danych wyjściowych
Uwzględniając przedstawione wady algorytmu, należy stwierdzić, że jest on jednak podstawowym algorytmem do otrzymywania pierwszych przybliżają-cych odwzorowań, które nie powodują utraty informacji o formowanym obiek-cie.
6.1.3 Metoda wiązek równoległych
Metoda ta oparta jest na pozyskiwaniu punktów przez wiązki równolegle przenikające zamodelowany obiekt. Jednym z parametrów tego algorytmu jest wektor normalny do powierzchni rzutowania. Jest on prostopadły do po-wierzchni i przenika obiekt. Wiązki przenikają obiekt przy założonej od siebie minimalnej odległości (od punktów bazowych), tworząc strukturę sąsiadujących ze sobą kwadratów. Podaje się przy tym parametr d (minimalna odległość mię-dzy wiązkami), będący długością boku kwadratu. Następnym krokiem jest przy-pisanie punktów uzyskanych przez przeniknięcie wiązek (rys. 19). Wykorzystuje się w tym celu wywołanie standardowej funkcji IntersectRay pakietu 3D Stu-dioMAX [42, 92].
d - minimalna odległość pomiędzy punktami (parametr algorytmu)
n- wektor płaszczyzny rzutującej;
Rys. 19. Graficzne przedstawienie metody dyskretyzacji wiązkami równoległymi
Pozostałe oznaczenia: 1) obiekt wyjściowy zamodelowany w programie 3D StudioMAX; 2) jeden z wielu punktów, otrzymanych przy przenikaniu wiązek – zbiór danych wyjściowych; 3) wiązka rzutująca (przenikająca); 4) komórka macierzy rzutującej płaszczyzny bazowej; 5) płaszczyzna bazowa.
Wadą tej funkcji jest znajdowanie tylko jednego punktu przenikania, na wiązce przenikającej. Do znajdowania wszystkich pozostałych punktów obiektu wykorzystuje się wykluczenie ze struktury obiektów danych trójkątów i po-wtórne wykonywanie wyżej wymienionych kroków. Funkcja IntersectRay
„do-6. Komponent „elektroniczny system informacyjny”
strzega” tylko te trójkąty, które zwrócone są do niej w kierunku normalnym [9]. Powtórne przejście algorytmu ujawnia drugą cześć pozyskiwanych punktów obiektu.
6.1.4 Oprogramowanie realizujące dyskretyzację obiektów
Następnym etapem przygotowania odwzorowania do dalszej obróbki jest jego zamiana na kolejny zbiór punktów. Chodzi tu o zbiór na podstawie którego oprogramowanie sterujące procesem grawerowania wygeneruje odpowiednią tra-jektorię obróbki szkła. Wykorzystuje się do tego celu specjalnie napisany skrypt “lotisbi01.ms” [22, 87] aplikowany dla oprogramowania 3D StudioMAX (w. 2.6 i późniejszych), służący do zamiany istniejącego formatu pliku oprogramowania, do formatu “*.cft” rozumianego przez oprogramowanie sterujące obróbką. Techniczne szczegóły tej aplikacji zamieszczono w załączniku B.