- 66 -
Skalowanie
Dla punktu Q na rys, 2 transforraaoję skalowania dla współrzędnej x określa zależność
gdzie: xQ jost współrzędną przetransformowanego punktu Q.
Podobną transformację -stosujo się dla współrzędnej y. Nietrudno zauważyć, że równania (1 ) i (2) są podobno, przy czym równanie (2) można również rozwiązywać za pomocą specjalizowanych układów zawierających sumator, wykonującyoh zarówno dzielenie jak i mnożenie. Y1 wypadku,gdy znana jo3t wartość współczynnika skali v/w, wymagane jest tylko wykonanie jednogo ranożonia.
Skalowanie wstępne wymaga tylko mnożenia wartośoi każdej współrzędnoj przez określony współczynnik.
Należy zauważyć, żo do wykonania obrotu przetransformowane współrzędne punktu (x, y) obróconego o kąt 0 mogą być określone w następującej postaci
cos 0 -sin O
sin 0 cos 0
Wartości współrzędnych (x, y) i (x', y')odnoszą się do punktu środkowego, który nie musi być punktem środkowym obrazu wirtualnego. Obliczenia sprowadzają się zatem do wykonania dwóch mnożeń dla każdej współrzędnej, co w realizacji sprzętowej można uzyskać za pomocą dwóch sumatorów' na współrzędną. Funkcje sin 0 i cos 0 są obliczane programowo lub ze względu na szybkość, odszukiwano w tablicy umieszczonej np. w pamięci stałej (ROM).
Podane algorytmy mają na celu minimalizację czasu przetwarzania bez nieproporcjonalnego wzrostu kosztu, przez co większa ilość danych może być wyświetlana bez. migotania.
Możliwo realizacje praktyczne
Coohą charakterystyczną współczesnych procesorów ogólnego zastosowania, w tym również większości dostępnych na rynku mikroprocesorów monolitycznych jest stosowanie równoległych rejo3-trów i akumulatorów współpracujących tylko z jednym arytmometrem. Procesor obrazowy musi być natomiast przystosowany do przetwarzania dużych ilośoi danych, przy czym dla tych danych wykonuje się wiole niozależnych obliczeń arytmetycznych, np. przy skalowaniu segmentu liniowego każda z oztoreoh wartości współrzędnych jest przedmiotem podobnych przekształceń i w celu zwiększenia szybkości przetwarzania pożądane byłoby zastosowanie czterech ciągów realizujących operacje arytmetyczne.
Równoległa realizacja operacji arytmetycznych jest pożądana również dla operacji okienkowania, przy wykonywaniu której zdarza się, że trzeba obliczyć współrzędne przecięcia linii nawet z czteroma krawędziami. Szybkie wykonanie tych obliczeń za pomocą maszyny uniwersalnej wymaga stosowania kosztownogo komputera z rozbudowaną jednostką arytmetyczną.
Znacznie efektywniejsze w tym wypadku jest zastosowanie urządzenia specjalizowanego np. w postaci sieci mikroprocesorów monolitycznych lub w postaoi zespołu jednakowych arytmometrów, kompletowanych w zależności od potrzeb z odpowiedniej liczby mikroprocesorów segmentowych. Y/ynika to z faktu, żo w danym momencie wykonywane są podobne operaoje na tym samym zbiorzo danych, przy czym operacje to mogą być wykonywane za pomocą prostych jednostek arytmetycznych sterowanych jednostką sterującą,, zaprojektowaną speojalnie dla systemu graficznego.
• System grafiozny HIEROGŁIPH
Irzy budoyrie systemu HIEROGŁIPH ( High-speed Interpretation and Execution of a Ring-Organised Graphics Li9t by Interactive Prooessing Hardware) przyjęto omówioną wyżej koncepcję urządzenia specjalizowanego. Podstawowe elementy systemu przedstawiono na rys. 3. HIEROGŁIPH jest systemem autonomicznym, sterowanym instrukcjami przechowywanymi w zbiorze obrazowym, umieszozonym w dzie—