Wstęp do projektowania komputerowego Laboratorium 1



Pobieranie 21,09 Kb.
Data04.03.2018
Rozmiar21,09 Kb.

Wstęp do projektowania komputerowego

Laboratorium 1

  1. Co to jest POV-Ray?

    1. Czym jest POV-Ray ?

POV-Ray jest programem umożliwiającym rendering złożonych scen przy wykorzystaniu metody śledzenie promieni. Do opisu scen wykorzystywany jest wbudowany w system język opisu scen trójwymiarowych oparty na składni języka C. Parser języka wbudowany jest w system generujący obrazy. Wynikiem działanie programu jest plik graficzny przedstawiający opisaną scenę. Format generowanego pliku zależy od systemu operacyjnego. W środowisku Windows jest to format bitmapowy bmp, w systemie MS_DOS – format Targa tga.

Pliki opisujące scenę można tworzyć w dowolnym edytorze tekstowym nie dopisującym znaków kontrolnych (co wyklucza np. MS Word). W środowisku Windows POV-Ray dostarczany jest z wbudowanym edytorem ułatwiającym pisanie skryptów opisujących sceny. Edytor ten poza standardowymi operacjami edycyjnymi ułatwia dostęp do systemu pomocy, a także kolorowanie składni języka opisu scen, co znacząco zmniejsza liczbę popełnianych błędów literowych.

    1. Czym POV-Ray nie jest?

POV-Ray nie jest środowiskiem graficznym umożliwiającym interaktywne i wizualne definiowanie sceny. Istnieją jednak programy interaktywne pozwalające na wizualne wprowadzanie podstawowych obiektów i transformacji oraz na eksport tak zdefiniowanych scen w formacie POV-Ray, a nawet na zintegrowanie ich z POV-Ray’em i bezpośredni rendering tworzonych scen w oknie programu (Moray).


  1. Uruchamianie i korzystanie z pomocy

    1. Windows

W środowisku Windows program uruchamiany jest w standardowy sposób. Po uruchomieniu otwarty zostaje wbudowany edytor i można zacząć tworzyć opis nowej sceny. Po napisaniu całej sceny rendering może zostać uruchomiony albo przez wybór ikony biegnącego człowieka na pasku narzędzi albo przez kombinację klawiszy Alt-G.

W przypadku błędów ich opis dostępny jest w zakładce „Messages”, zazwyczaj wskazana jest strzałką linii, w której został wykryty błąd (niekoniecznie miejsce wystąpienia błędu!!) oraz jego opis.

Rozdzielczość generowanego obrazka wybierana jest z listy w lewej górnej części ekranu. Do ćwiczeń zalecana jest rozdzielczość 320x240 z uwagi na czas wykonania.

System pomocy składa się z dwóch części. Pierwsza zawiera informacje o sposobie używania edytora, myszki, klawiszy itp. Dostępna jest albo przez wybranie z menu opcji Help/Help on POV-Ray for Windows albo przez wybór niebieskiego pytajnika pod paskiem narzędzi.

Zasadnicza część systemu pomocy tzn. dokumentacja języka opisu scen dostępna jest przez wybór z menu opcji Help/Help on the POV-Ray Scene Description Language lub czerwonego pytajnika pod paskiem narzędzi.


    1. MS-DOS


W środowisku MS-DOS plik opisu sceny należy utworzyć w dowolnym edytorze, ponieważ nie ma wbudowanego edytora. Tak utworzony plik powinien mieć rozszerzenie .pov. Należy go uruchomić korzystając z dostarczonego pliku wsadowego runpov w następujący sposób:

runpov +inazwapliku.pov +dg

+i - określa podanie nazwy pliku

+d - włącza generowanie podglądu tworzonego obrazka

g – jest typem karty graficznej (VESA)

Inne opcje to m.in.:

+w - szerokośc obrazka

+h - wysokośc obrazka

System pomocy dostępny jest jako osobny plik w katalogu, w którym został zainstalowany POV-Ray i należy go uruchomić samodzielnie.


    1. Inne systemy

System POV-Ray dostepny jest ponadto dla systemu Linux, na komputery Amiga i Mac oraz w postaci żródeł dla dowolnego systemu. Sposób uruchamiania opisany jest w dołączanej dokumentacji.


C1: Uruchomić przykładowy plik shapes.pov.
  1. Pierwsza scena

    1. Uwagi ogólne


Nazwy obiektów POV-Raya pisane są mała literą, kolory – dużą literą, komentarze jednolinijkowe umieszczane są po dwóch slashach (//), natomiast dłuższe między znakami /* oraz */ (podobnie jak w C). Opis każdego obiektu znajduje się w nawiasach klamrowych {}, natomiast współrzędne punktów (nazywane w POV_Rayu wektorami) – w nawiasach ostrych <> (znaki mniejszy i większy). Liczby w POV-Rayu nazywane są „float” (przydatne w zrozumieniu komunikatów o błędach).
    1. Układ współrzędnych


W POV-Ray’u wykorzystywany jest lewoskrętny układ współrzędnych, tzn. oś x skierowana jest w prawo, y – do góry, a z- za ekran (rys.1).
    1. Pliki include


Podobnie jak w wielu językach programowania konieczne jest dołączenie pewnych plików, aby możliwe było korzystanie z zawartych w nich funkcji. Podstawowe pliki to: colors.inc zawierający definicje nazw kolorów (w języku angielskim) oraz textures.inc – zawierający definicje tekstur, pigmentów i innych właściwości materiałów.

Początek pliku powinien wyglądać np. tak: (patrz plik cad.pov)



#include ‘’colors.inc”

#include ‘’textures.inc”

UWAGA: Plik z definicjami kolorów musi być dołączony przed plikiem z teksturami.


    1. Kamera

Kamera (w niektórych systemach graficznych zastępuje ją „obserwator”) określa jaki fragment zdefiniowanej sceny będzie widzialny. Można ją utożsamiać z aparatem fotograficznym – zależnie od tego gdzie umieścimy aparat i jak go skierujemy otrzymamy inne zdjęcie mimo, że obiekty będą w tym samym miejscu.

Kamera wprowadzana jest poleceniem:

camera{ location

look_at

}

Parametr location określa położenie kamery w układzie współrzędnych, natomiast look_at – punkt, na który skierowany jest obiektyw kamery. Punkt ten jest jednocześnie środkiem obrazka wygenerowanego przez POV-Ray. (W związku z tym pytanie gdzie na obrazku jest punkt <0,0,0> nie ma sensu.)


    1. Obiekt


W scenie musi być co najmniej jeden obiekt. Najprostszym obiektem jest kula definiowana w następujący sposób:

sphere { , r

pigment { color Blue}

}

Liczby x, y, z definiują położenie środka kuli, a r – jej promień. Ponadto każdy obiekt geometryczny musi mieć przypisany kolor, pigment lub teksturę – w przeciwnym przypadku jest on czarny i obiekt jest niewidzialny dla użytkownika. W przykładzie kula będzie niebieska. Pigment jest czymś więcej niż kolorem – jest to zabarwienie obiektu. Dopuszczalne są pigmenty dwu- i wielokolorowe.


    1. Światło


W opisie sceny musi znaleźć się co najmniej jedno źródło światła. Liczba świateł ograniczona jest możliwościami komputera, należy jednak pamiętać, że każde źródło światła dodane do sceny zwiększa czas obliczeń mniej więcej o czas potrzebny na wygenerowanie sceny z jednym światłem.

Światło wprowadzane jest w najprostszym przypadku następującym poleceniem:



light_source { col*I},

gdzie x, y, z oznacza współrzędne położenie światła, col – jego kolor a I intensywność, a ściśle biorąc wielokrotność podstawowej intensywności.


  1. Obiekty podstawowe


Poza przedstawioną wcześniej kulą w POV-Rayu zdefiniowane są także inne obiekty podstawowe. Podobnie jak dla kuli ich opis składa się z części geometrycznej oraz dotyczącej materiałów. Poniżej podana zostanie jedynie część geometryczna. Domyślnie przyjmuje się, że musi wystąpić co najmniej blok pigmentu podobny jak dla kuli.
    1. Walec


Walec wprowadzany jest następującym poleceniem:

cylinder {

,

r

}

gdzie lx, ly, lz są współrzędnymi środka dolnej podstawy walca, ux, uy, uz – środka górnej podstawy, a r jest promieniem walca.


    1. Stożek


Stożek wprowadzany jest następującym poleceniem:

cone { , R

, r

}

gdzie lx, ly, lz są współrzędnymi środka dolnej podstawy stożka, r jest promieniem dolnej podstawy, ux, uy, uz są współrzędnymi środka górnej podstawy, a R jest promieniem górnej podstawy.



    1. Płaszczyzna


Płaszczyzna wprowadzana jest następującym poleceniem:

plane { , D

}

gdzie A, B, C są współrzędnymi wektora normalnego (prostopadłego) do płaszczyzny przechodzącej przez punkt <0,0,0>, a D jest odległością tej płaszczyzny od środka układu współrzędnych mierzoną zgodnie ze zwrotem wektora .

Przykładowo polecenie

plane { <0,1, 0>, -1 }

definiuje płaszczyznę równoległą do płaszczyzny XZ i przesuniętą o jedną jednostkę „w dół” (płaszczyzna taka często stosowana jest jak „podłoga” w scenach graficznych).

UWAGA:

Polecenie



plane { <0,-1, 0>, -1 }

definiuje płaszczyznę równoległą do płaszczyzny XZ i przesuniętą o jedną jednostkę „w górę”.



    1. Prostopadłościan

  1. Deklaracje

  2. Transformacje

    1. Przesunięcie

    2. Skalowanie

    3. Obrót

  3. Ćwiczenia






©operacji.org 2019
wyślij wiadomość

    Strona główna