PRACA DYPLOMOWA. Politechnika Wrocławska. Opracowanie programu komputerowego do symulowania pracy synoptoforu z wykorzystaniem okularów migawkowych

Wielkość: px
Rozpocząć pokaz od strony:

Download "PRACA DYPLOMOWA. Politechnika Wrocławska. Opracowanie programu komputerowego do symulowania pracy synoptoforu z wykorzystaniem okularów migawkowych"

Transkrypt

1 Politechnika Wrocławska Wydział Podstawowych Problemów Techniki PRACA DYPLOMOWA Opracowanie programu komputerowego do symulowania pracy synoptoforu z wykorzystaniem okularów migawkowych Robert Karpiński Promotor: doc. dr hab. inż. Marek Zając słowa kluczowe: synoptofor, okulary migawkowe krótkie streszczenie: przedmiotem pracy jest opracowanie programu komputerowego do prezentacji obrazów, symulującego działanie synoptoforu i przystosowanego do współpracy z okularami migawkowymi Wrocław 2009

2 Spis treści 1 Wstęp Cel pracy Wprowadzenie System kontroli wersji kodu źródłowego Przebudowa kodu źródłowego Symulacja synoptoforu Rozbudowa klasycznych testów Funkcja zamiany polaryzacji Praca dwumonitorowa Internacjonalizacja Wbudowany system pomocy Filozofia działania programu Badanie widzenia przestrzennego Okulary migawkowe Zastosowanie okularów migawkowych do badania widzenia przestrzennego Tryby pracy okularów migawkowych Obsługiwany tryb pracy okularów System kontroli wersji kodu źródłowego Wstęp Wymagania Możliwe rozwiązania Ręczne wykonywanie kopii zapasowych CVS SVN Wybór sposobu realizacji Realizacja Konfiguracja serwera Konfiguracja środowiska programistycznego Podsumowanie

3 3 Przebudowa kodu źródłowego Wstęp Wymagania Realizacja Logiczny podział na pakiety Wykorzystanie dziedziczenia Angielskie nazwy Podsumowanie Symulacja synoptoforu Wstęp Wymagania Realizacja Implementacja klasy ImageFigure Przygotowanie obrazków Implementacja klasy SynoptiscopeTest Modyfikacja interfejsu użytkownika Kalibracja Podsumowanie Rozbudowa klasycznych testów Wstęp Wymagania Realizacja Parametry konstruktora testów Modyfikacja funkcji rysujących Modyfikacja interfejsu użytkownika Podsumowanie Funkcja zamiany polaryzacji Wstęp Wymagania Realizacja Przebudowa figur Najważniejsze metody figur Modyfikacja klasy Test Modyfikacja interfejsu użytkownika Dostosowanie testów do funkcji zamiany polaryzacji Podsumowanie

4 7 Praca dwumonitorowa Wstęp Wymagania Realizacja Okienko prezentujące aktualny wynik Modyfikacja klasy Test Modyfikacja interfejsu użytkownika Dostosowanie testów do pracy dwumonitorowej Podsumowanie Internacjonalizacja Wstęp Wymagania Realizacja Przygotowanie plików tłumaczeń Inicjalizacja interfejsu użytkownika Proces tłumaczenia programu Przykład działania internacjonalizacji Podsumowanie Wbudowany system pomocy Wstęp Wymagania Możliwe rozwiązania Brak pomocy Pomoc HTML Własny system pomocy JavaHelp Oracle Help HelpGUI Wybór sposobu realizacji Realizacja Dołączenie biblioteki HelpGUI Modyfikacja biblioteki HelpGUI Włączenie treści pomocy Funkcja wywołująca pomoc Podsumowanie Instrukcja obsługi programu Wprowadzenie Ogólnie o programie

5 Możliwości programu Wymagania Kontakt Licencja Przewodnik użytkownika Od czego zacząć Podłączanie okularów Ustawienia systemowe Opis interfejsu Menu Plik Menu Konfiguracja Menu Pomoc Zakładka Ustawienia Zakładka Pacjent Zakładka Testy Zakładka Synoptofor Zakładka Wyniki Opis testów Sterowanie przebiegiem testów Interpretacja rysunków Testy krzyżowe Testy klamrowe Test trójkątny Stereobalans Testy wskazówkowe Testy wektograficzne Testy kropkowe Testy jednoczesnej percepcji Testy fuzji Testy stereopsji Podsumowanie Zalety uzyskanego rozwiązania Możliwości rozbudowy

6 Rozdział 1 Wstęp 1.1 Cel pracy Wprowadzenie Głównym celem pracy jest opracowanie programu komputerowego do prezentacji obrazów, symulującego działanie synoptoforu i przystosowanego do współpracy z okularami migawkowymi. Autor tej pracy opracował już prototypową wersję aplikacji do badania widzenia przestrzennego wykorzystującą okulary migawkowe. Program o nazwie Vision powstał jako część obronionej wcześniej pracy dyplomowej [11]. Przedmiotem niniejszej pracy jest rozbudowa istniejącego programu, wprowadzenie szeregu istotnych usprawnień i nowych funkcjonalności. Nowy, znacznie ulepszony i rozwinięty program otrzymał nazwę Vision System kontroli wersji kodu źródłowego Kolejne wersje kodu źródłowego programu Vision2 zachowywane były w systemie kontroli wersji. Zapewniło to możliwość swobodnego wprowadzania śmiałych zmian w kodzie. Zawsze można było przecież wrócić do stanu poprzedniego, w którym program jeszcze działał. Ważną zaletą rozwiązania było także bezpieczeństwo danych. W przypadku awarii komputera, dane wciąż pozostawały w drugim miejscu - na serwerze systemu kontroli wersji. Dokładny opis sposobu wykorzystania systemu kontroli wersji kodu źródłowego znajduje się w rozdziale 2. 7

7 1.1.3 Przebudowa kodu źródłowego Prototyp, program Vision, powstawał jednocześnie z nauką przez autora stosowanych metod i narzędzi. Oczekiwany efekt nie był jednoznacznie określony, a wiele celów osiągnięto metodą prób i błędów. Spowodowało to nieporządek w kodzie źródłowym. Identyczne funkcje były definiowane wielokrotnie w różnych miejscach. Wiele fragmentów było zaimplementowanych nieefektywnie, powodując większą zasobochłonność programu. Dlatego przed dodaniem nowych funkcjonalności w ramach projektu Vision2 niezbędne okazało się przebudowanie istniejącego kodu źródłowego. Celem było uproszczenie, usunięcie powtórzeń, ujednolicenie interfejsów i zmniejszenie stopnia komplikacji. Dokładny opis sposobu przebudowy kodu źródłowego znajduje się w rozdziale Symulacja synoptoforu Synoptofor to przyrząd optyczny wykorzystywany szczególnie w pracy specjalistów leczących wady widzenia obuocznego u dzieci. Zawiera on dwa oddzielne układy optyczne prezentujące wybrane obrazy niezależnie dla każdego oka. Programowa symulacja takiego urządzenia była głównym celem niniejszej pracy. Dokładny opis sposobu programowej symulacji synoptoforu znajduje się w rozdziale Rozbudowa klasycznych testów Prototyp programu będący podstawą do rozbudowy w niniejszej pracy umożliwiał wykonanie kilku klasycznych testów widzenia obuocznego. Zostały one rozbudowane o 3 dodatkowe, alternatywne wersje. Zwiększyło to ilość materiału do badań porównawczych z testami wykonywanymi tradycyjnie oraz innymi systemami do badania widzenia przestrzennego. Dokładny opis sposobu rozbudowy testów klasycznych znajduje się w rozdziale Funkcja zamiany polaryzacji Podczas badania widzenia obuocznego pewne elementy testu są prezentowane tylko dla prawego, a inne tylko dla lewego oka. Bardzo użyteczna jest możliwość zamiany polaryzacji udostępniania przez programowe lub sprzętowe 8

8 sterowniki okularów migawkowych. Elementy widoczne dotychczas przez lewe oko stają się widoczne dla oka prawego i odwrotnie. Dostęp do tej funkcji jest częstokroć utrudniony i - w przypadku sterownika programowego - wymaga tymczasowego zakończenia testu. Aby ułatwić przeprowadzanie testów funkcja ta została zaimplementowana bezpośrednio na poziomie programu. Dokładny opis sposobu implementacji funkcji zamiany polaryzacji znajduje się w rozdziale Praca dwumonitorowa Znajomość wyniku pomiaru na każdym etapie wykonywania testu jest bardzo pomocna dla badającego. Prototyp programu umożliwiał wyświetlanie wyniku w lewym górnym rogu testu, jednak mógł on zostać dostrzeżony przez pacjenta. Dlatego program rozbudowano o funkcję pracy dwumonitorowej. W tym trybie pacjent oraz badający korzystają z oddzielnych monitorów. Umożliwia to stałe informowanie badającego o wyniku pomiaru bez ryzyka dostrzeżenia tej informacji przez pacjenta. Dokładny opis sposobu implementacji funkcji zamiany polaryzacji znajduje się w rozdziale Internacjonalizacja Prototypowy interfejs użytkownika wyświetlany był wyłącznie w języku polskim. Ograniczało to znacznie możliwość wykorzystania programu przez szersze grono użytkowników. Dlatego program został rozbudowany o wersję interfejsu użytkownika w języku angielskim. Odpowiedni język jest wybierany automatycznie na podstawie ustawień systemowych. Dokładny opis sposobu internacjonalizacji programu znajduje się w rozdziale Wbudowany system pomocy W celu ułatwienia pracy z programem, stworzono szczegółową instrukcję obsługi w języku polskim oraz angielskim. Odpowiednia jej wersja wyświetla się po wywołaniu z menu programu. Dokładny opis sposobu realizacji wbudowanego systemu pomocy znajduje się w rozdziale 9. Instrukcja obsługi programu w języku polskim znajduje się w rozdziale 10. 9

9 1.2 Filozofia działania programu Badanie widzenia przestrzennego W badaniach widzenia przestrzennego bardzo często istnieje konieczność prezentacji pacjentowi innego obrazu przed lewym i prawym okiem. Zwykle cel ten osiąga się za pomocą okularów czerwono-zielonych, filtrów polaryzacyjnych, pryzmatów lub soczewek cylindrycznych. W czasie badania pacjent opisuje położenie obrazów widzianych jednym okiem w odniesieniu do obrazów postrzeganych drugim okiem. Na tej podstawie stwierdza się występowanie wady i ewentualnie określa jej wielkość [1, 2] Okulary migawkowe Okulary migawkowe znajdują najszersze zastosowanie w grach komputerowych. Pozwalają uzyskać wrażenie trójwymiarowości. Każdy okular składa się z dwóch filtrów polaryzacyjnych o wzajemnie prostopadłych kierunkach polaryzacji. Między nimi znajduje się warstwa ciekłego kryształu z elektrodami. Ułożenie jego molekuł jest mechanicznie określane za pomocą rowków. W tym stanie światło jest przepuszczane. Podłączenie napięcia powoduje ułożenie molekuł ciekłego kryształu wzdłuż linii pola elektrycznego. Efektem jest zablokowanie przechodzącego światła [3]. Okulary migawkowe zasłaniają naprzemian lewe i prawe oko. W tym czasie na monitorze są prezentowane z tą samą częstotliwością naprzemiennie dwa różne obrazy. Jeżeli są odpowiednio spreparowane - uzyskuje się wrażenie trójwymiarowości Zastosowanie okularów migawkowych do badania widzenia przestrzennego Okulary migawkowe pozwalają prezentować inny obraz dla każdego oka. Nadają się więc do badania widzenia przestrzennego. Dodatkowo fakt generowania obrazu za pomocą komputera stwarza zupełnie nowe możliwości. Zostały one wykorzystane w programie Vision2. W czasie badania pacjent widzący zdeformowany test może go samodzielnie naprawić. Używa do tego klawiszy oznaczonych strzałkami. Na podstawie wielkości tego przesunięcia automatycznie obliczana jest wielkość wady. 10

10 1.2.4 Tryby pracy okularów migawkowych Okulary migawkowe mogą pracować w następujących trybach: ˆ Interleaved: W tym trybie parzyste linie ekranu są prezentowane przed jednym okiem, a nieparzyste przed drugim. Obraz wychodzący z karty graficznej komputera jest nieprzetworzony. Separacja parzystych i nieparzystych linii następuje dopiero w sprzętowym adapterze, podłączanym między komputerem a monitorem. Półobrazy dla każdego oka mają pionową rozdzielczość zredukowaną o połowę, ponieważ brakujące linie są uzupełniane przez podwojenie linii dostępnych. ˆ Page Flip: W tym trybie bufory karty graficznej przechowują dwa różne obrazu dla każdego oka. Kiedy odpowiednie oko jest odsłaniane przez okulary migawkowe, prezentowany jest właściwy obraz. Obrazy dla każdego oka mają pełną rozdzielczość Obsługiwany tryb pracy okularów Program Vision2 wspiera jedynie tryb Interleaved. Jest to podyktowane następującymi względami: ˆ Tryb Interleaved nie wymaga bezwzględnego wsparcia ze strony sterownika karty grafiki. Dzięki temu można go używać na praktywcznie każdym systemie operacyjnym. ˆ Tryb Page Flik wymaga wsparcia ze strony sterownika karty grafiki. Z tego powodu jest funkcjonalność jest praktycznie ograniczona do systemów Windows. 11

11 Rozdział 2 System kontroli wersji kodu źródłowego 2.1 Wstęp Sprzęt elektroniczny staje się coraz bardziej niezawodny. Nadal jednak trzymanie danych na jednym fizycznym nośniku bywa niebezpieczne. Łatwo stracić w ten sposób ważne informacje z powodu błędu programowego lub uszkodzenia sprzętowego. Kolejnym zagrożeniem jest nasza własna działalność. Niekiedy efekt końcowy uzyskany po danym etapie pracy bywa gorszy od stanu wcześniejszego. Dlatego bardzo przydatna byłaby możliwość przeglądania wszystkich wprowadzonych zmian i cofnięcia każdej z nich z osobna. Środkiem zaradczym na powyższe problemy może być zastosowanie systemu kontroli wersji kodu źródłowego. Dzięki temu można prześledzić wszystkie zmiany wprowadzone w projekcie. Znacznie podnosi to również bezpieczeństwo danych, jeżeli repozytorium systemu znajduje się na innej fizycznie maszynie. Głównym przeznaczeniem systemów kontroli wersji kodu źródłowego jest umożliwienie współbieżnej pracy wielu osób nad jednym projektem. Zwykle wspierane jest automatyczne rozwiązywanie prostych konfliktów, powstałych przy edycji tego samego pliku przez dwie osoby jednocześnie. Możliwa jest również ocena wkładu pracy każdego uczestnika projektu oraz zaawansowana kontrola dostępu i zarządzanie uprawnieniami. W naszym przypadku ta funkcjonalność jest nadmiarowa, ale w żaden sposób nie przysłania uzyskanych korzyści. 12

12 2.2 Wymagania Kod źródłowy należy przechowywać w sposób umożliwiający: ˆ Zapisywanie stanu kodu źródłowego w dowolnym momencie. ˆ Możliwość powrotu do dowolnego z zapisanych wcześniej stanów. ˆ Porównywanie zawartości plików pomiędzy zapisanymi stanami. ˆ Niedopuszczenie do ewentualnej utraty danych poprzez przechowywanie repozytorium zmian na fizycznie innej maszynie. 2.3 Możliwe rozwiązania Ręczne wykonywanie kopii zapasowych Teoretycznie najprostszym rozwiązaniem problemu jest okresowe tworzenie kopii całego projektu. Umożliwia to bardzo łatwe cofnięcie całego projektu do dowolnego ze skopiowanych wcześniej stanów. Niestety przeglądanie wprowadzonych zmian oraz cofanie wersji dla konkretnych plików jest bardzo utrudnione. W tym celu należałoby ręcznie przeglądać wiele kopii zapasowych aż do natrafienia na potrzebną informację CVS CVS (Concurrent Versions System) to do niedawna jeden z najbardziej popularnych systemów kontroli wersji. Umożliwia on zapisywanie kolejnych wersji projektu. W każdym momencie można przeglądać którąś z zapisanych wersji lub wyświetlić różnice między dwoma dowolnymi wersjami. System powstał w latach 80-tych i jest szeroko wspierany przez zintegrowane środowiska programistyczne [5] SVN SVN (Subversion) to system kontroli wersji, postały w celu zastąpienia CVS. Posiada wszystkie jego zalety, natomiast usunięto wiele wad poprzednika. Jest również bezpieczniejszy. Obecnie jest coraz szerzej wspierany przez zintegrowane środowiska programistyczne [6]. 13

13 2.4 Wybór sposobu realizacji Do kontroli wersji kodu źródłowego wybrany został system SVN. Zadecydowały o tym: ˆ Największa funkcjonalność: System SVN ma największą funkcjonalność wśród systemów branych pod uwagę oraz zapewnia największe bezpieczeństwo kodu źródłowego. ˆ Darmowy serwer: Firma Google udostępnia darmowy serwer SVN dla projektów z otwartym kodem źródłowym. 2.5 Realizacja Konfiguracja serwera W celu samodzielnej konfiguracji serwera SVN należałoby zainstalować i skonfigurować odpowiednie oprogramowanie. Najłatwiej jest wykorzystać do tego celu serwer HTTP Apache wraz z modułem mod_dav_svn. W naszym przypadku wykorzystane zostało konto w usłudze Google Code Project Hosting. Po zarejestrowaniu na stronie hosting/createproject otrzymujemy do dyspozycji serwer SVN z limitem 1024 MB. Jest on dostępny pod indywidualnym dla projektu adresem https: //vision2.googlecode.com/svn/ Konfiguracja środowiska programistycznego Podczas pracy nad programem Vision2 wykorzystywano zintegrowane środowisko programistyczne Netbeans. W wersji 6.5 standardowo wspiera ono SVN. Zaimportowanie istniejącego projektu do systemu kontroli wersji kodu źródłowego jest bardzo łatwe. Polega na wybraniu z menu kontekstowego opcji Versioning Import into Subversion Repository. Import jest wykonywany za pomocą kreatora przedstawionego na rysunku 2.1. Podczas importu trzeba podać wspomniany już adres repozytorium oraz nazwę użytkownika i hasło (otrzymane podczas zakładania konta). Dane te zostają zapamiętane i nie ma potrzeby ich każdorazowego wpisywania. Po każdym etapie pracy można teraz zapamiętać bieżący stan projektu za pomocą opcji Subversion Commit z menu kontekstowego. Możliwy jest powrót do każdej z zapamiętanych wersji dla pojedynczych plików lub całego projektu. Przeglądanie historii zmian umożliwia bardzo wygodny, oparty na AJAX, interfejs na stronie 14

14 Rysunek 2.1: Importowanie istniejącego projektu Netbeans do repozytorium Subversion 2.6 Podsumowanie Podczas prac nad projektem Vision2 nie doszło - na szczęście - do żadnych awarii prowadzących do utraty danych. Niemniej jednak stosowanie SVN zaoszczędziło żmudnego procesu samodzielnego tworzenia kolejnych kopii zapasowych. Największą zaletą rozwiązania okazała się możliwość przeglądania zmian w projekcie. Dzięki temu pisanie niniejszej pracy stało się dużo łatwiejsze. Głównym przeznaczeniem systemów kontroli wersji kodu źródłowego jest ułatwienie pracy grupom osób pracujących nad jednym projektem. Jednak nawet w przypadku jednoosobowej pracy nad projektem umieszczenie kodu w repozytorium SVN podnosi wygodę pracy oraz znacząco zmniejsza możliwość utraty danych. 15

15 Rozdział 3 Przebudowa kodu źródłowego 3.1 Wstęp Podstawą do rozwoju projektu Vision2 był prototypowy program Vision. Jego kod źródłowy został odziedziczony ze wszystkimi zaletami i wadami takiego rozwiązania. Główną zaletą użycia istniejącego kodu była niewątpliwie spora oszczędność czasu. Nie potrzeba implementować ponownie istniejących funkcji programu. Można się skupić jedynie na dodawaniu nowych. Niestety ostatnie zdanie nie do końca zgadza się z prawdą. Program Vision powstawał w specyficznych warunkach. Autor po raz pierwszy wykorzystywał nowe narzędzia i metody programowania. Nauka połączona z praktyką była bardzo efektywna, ale efekt niekoniecznie optymalny. Ponadto wymagania nie były jasno określone, ponieważ celem było stworzenie prototypowego narzędzia. To wszystko spowodowało, że kod stawał się stopniowo coraz bardziej skomplikowany i trudny w utrzymaniu. Dodawanie nowych funkcji lub znajdowanie błędów może być w takiej sytuacji nie lada wyczynem. Dlatego przed dodaniem jakichkolwiek nowych funkcjonalności zdecydowano się przebudować istniejący kod źródłowy. Chodzi o przeprowadzenie szeregu działań służących uproszczeniu kodu i ułatwieniu dalszej pracy. Trzeba dodać, że konieczność przebudowy kodu źródłowego nie musi oznaczać obecności błędów na etapie projektowania czy też implementacji. W metodykach programowania zwinnego (ang. agile) cyklicznie powtarzająca się przebudowa kodu jest stałym i wręcz obowiązkowym elementem pracy [4]. 16

16 3.2 Wymagania Celem przebudowy kodu źródłowego jest: ˆ Uproszczenie kodu: Rozbicie długich, niezrozumiałych funkcji na mniejsze problemy. ˆ Wykorzystanie dziedziczenia: Zaimplementowanie wspólnych funkcji w klasie bazowej. ˆ Usunięcie nadmiarowości: Usunięcie zdublowanych fragmentów kodu. ˆ Ujednolicenie interfejsów: Przykładowo W starej wersji programu każdym wyświetlanym obiektem sterowało się w inny sposób. 3.3 Realizacja Logiczny podział na pakiety Pakiety w języku Java umożliwiają logiczne pogrupowanie elementów programu. W prototypowym programie były tylko 2 pakiety: pierwszy na kod źródłowy, a drugi na ikony. Obecnie wszystkie elementy programu podzielono na pakiety zgodnie z ich funkcją. Poniższy spis jest kompletny. Zawiera również klasy i pakiety opisane szczegółowo dopiero w dalszych rozdziałach. ˆ pl.rdk.vision2: Zawiera klasy implementujące interfejs użytkownika: UserInterface: Główna klasa całego programu. Wyświetla interfejs użytkownika. TestHelper: Klasa wyświetlająca pomocnicze okienko dla badającego w trybie pracy dwumonitorowej. ˆ pl.rdk.vision2.data: Zawiera klasy służące głównie do przechowywania danych i udostępniające metody do operacji na tych danych. PatientData: Przechowuje dane pacjenta (imię, nazwisko, wiek, itd.) oraz kontener z wynikami pomiarów. ResultData: Przechowuje pojedynczy wynik pomiaru (data, nr testu, wynik). 17

17 SettingsData: Przechowuje ustawienia wpisane w zakładce Ustawienia i udostępnia metody umożliwiające obliczanie na tej podstawie wyników testów. ˆ pl.rdk.vision2.figures: Zawiera klasy umożliwiające wyświetlenie podstawowych figur geometrycznych i budowanie z nich zaawansowanych testów. Figure: Abstrakcyjna klasa nadrzędna w stosunku do pozostałych figur. Definiuje metody wspólne oraz deklaruje abstrakcyjne metody, które należy zdefiniować w klasach potomnych. ImageFigure: Figura przechowująca dowolny obraz. Pointer: Wskazówka. Jedyna figura nie dziedzicząca z Figure. Jest to spowodowane znacznymi różnicami w funkcjonowaniu. RectangleFigure: Prostokąt. TriangleFigure: Trójkąt. ˆ pl.rdk.vision2.tests: Zawiera wszystkie klasy odpowiedzialne za wyświetlanie testów. Configuration: Zawiera jedynie definicje statycznych zmiennych finalnych przechowujących parametry konstruowania testów. Test: Klasa przygotowująca wykonanie testu. Tworzy nowe okienko w trybie pełnoekranowym i udostępnia je dla klasy rzeczywiście wykonującej test. Klasy te jednak nie dziedziczą z klasy Test, a jedynie tworzą podczas własnej inicjalizacji. CrossTest: Klasa wyświetlająca testy krzyżowe. BracketTest Vertical: Klasa wyświetlająca pionowe testy klamrowe. BracketTest Horizontal: Klasa wyświetlająca poziome testy klamrowe. TriangleTest: Klasa wyświetlająca testy trójkątne. StereoBalanceTest: Wyświetla stereobalans. PointerTest Vertical: Wyświetla pionowy test wskazówkowy. PointerTest Horizontal: Wyświetla poziomy test wskazówkowy. PointerTest Double: Wyświetla podwójny test wskazówkowy VectographicTest: Klasa wyświetlająca testy wektograficzne. 18

18 RandomDotTest: Klasa wyświetlająca testy punktów przypadkowych. SynoptiscopeTest: Klasa wyświetlająca testy symulujące synoptofor. ˆ pl.rdk.vision2.library: Przechowuje bibliotekę funkcji wykorzystywanych w innych pakietach. Functions: Udostępnia metody statyczne wykorzystywane w kilku klasach wyświetlających test. TestName: Przyporządkowuje numer każdemu testowi i udostępnia metody służące do operowania tym numerem. ˆ pl.rdk.vision2.icons: Zawiera wszystkie 29 ikon wyświetlane w interfejsie użytkownika. ˆ pl.rdk.vision2.images: Zawiera 15 par obrazków wyświetlanych w testach symulujących synoptofor. ˆ pl.rdk.vision2.languages: Dla każdej wersji językowej obsługiwanej przez program, w tym pakiecie znajduje się 1 plik. ˆ docs.help: Zawiera pliki spisy treści, pliki HTML i obrazki składające się na pomoc użytkownika w języku polskim i angielskim. Szczegółowy opis zawartości pakietu pokazany jest na rysunku 9.1. ˆ net.sourceforge.helpgui: Zawiera klasy z biblioteki HelpGUI. Szczegółowy opis zawartości pakietu znajduje się w dokumentacji biblioteki Wykorzystanie dziedziczenia Wykorzystanie dziedziczenia pozwala ograniczyć występowanie nadmiarowego kodu źródłowego. Funkcjonalność raz zdefiniowana w klasie nadrzędnej jest automatycznie dostępna w klasie podrzędnej. Idealnym kandydatem do zastosowania dziedziczenia była grupa klas wyświetlająca różne rodzaje elementów testu (prostokąt, wskazówka, trójkąt, itp). Wcześniej klasy te nie były ze sobą w żaden sposób połączone, co powodowało, że w każdej z nich występowały bloki kodu o podobnej funkcjonalności. Obecnie dodano dla nich abstrakcyjną klasę nadrzędną Figure zawierającą definicję identycznie działających metod. Zadeklarowano również metody działające inaczej w każdej figurze, co zapewnia wymuszenie ich implementacji i udostępnia wspólny interfejs dla wszystkich figur. 19

19 3.3.3 Angielskie nazwy Prototypowa wersja programu w szeroki sposób korzystała z polskich nazw klas i zmiennych. W celu umożliwienia późniejszego wykorzystania napisanego kodu źródłowego przez osoby innej narodowości, zmieniono większość polskich nazw na ich angielskie odpowiedniki. Wykorzystano do tego funkcje środowiska Netbeans, umożliwiające jednoczesną zmianę nazwy zmiennej lub klasy i wszystkich odwołań do nich. 3.4 Podsumowanie Dzięki przebudowie i uproszczeniu kodu źródłowego możliwa jest dalsza rozbudowa programu. Kod można było dalej uprościć, ale starano się osiągnąć optimum między prostota kodu, a wkładem pracy na ten cel. 20

20 Rozdział 4 Symulacja synoptoforu 4.1 Wstęp Synoptofor to przyrząd optyczny służący do diagnozy wad widzenia przestrzennego. Najczęściej stosowany w leczeniu chorób zezowych u dzieci. Schemat budowy synoptoforu przedstawiony został na rysunku 4.1. Składa się on z dwóch oddzielnych układów optycznych, prezentujących niezależne obrazy dla każdego oka osobno. Wzajemne ustawienie ramion przyrządu można regulować, tak aby obraz padał centralnie na każde oko. Na każde ramię synoptoforu składają się: ˆ Ekran: Podświetlany, pozwala na prezentacji dowolnego obrazu na przeźroczu. ˆ Lustro: Powoduje złamanie osi optycznej urządzenia, co pozwala na bardziej zwartą budowę. ˆ Soczewka: Skupiająca o mocy około 6,5 D. Pozwala obserwować znajdujący się 15 cm dalej ekran bez konieczność męczącej akomodacji do bliży. Rysunek 4.1: Schemat budowy synoptoforu 21

21 Synoptofor pozwala przeprowadzić diagnozę wszystkich etapów widzenia obuocznego: ˆ Jednoczesna percepcja: Pierwszy stopień widzenia przestrzennego. Oznacza zdolność do jednoczesnego postrzegania dwóch obrazów tworzonych na siatkówce każdego oka. Opis testów jednoczesnej percepcji znajduje się w podsekcji ˆ Fuzja: Drugi stopień widzenia przestrzennego. Jest to proces przebiegający w ośrodkach korowych mózgu. Polega na zlaniu się obrazów w obu oczu. Opis testów sprawdzających fuzję znajduje się w podsekcji ˆ Stereopsja: Trzeci stopień widzenia przestrzennego. Polega na postrzeganiu głębi na podstawie analizy przez mózg dwóch, nieznacznie różniących się obrazów z lewego i prawego oka. Opis testów sprawdzających stereopsję znajduje się w podsekcji Wymagania W celu programowego symulowania działania synoptoforu należy rozszerzyć program o następującą funkcjonalność: ˆ Opracować test umożliwiający prezentację dwóch różnych obrazów w formacie PNG, JPG, GIF lub TIF oddzielnie dla każdego oka. ˆ Pacjent powinien mieć możliwość korygowania forii lub niewspółmierności fiksacyjnej poprzez przesuwanie jednego z prezentowanych obrazów w dowolnym kierunku. ˆ Na podstawie testów prezentowanych w synoptoforach optycznych opracować po 5 zestawów obrazów przeznaczonych do badania: jednoczesnej percepcji, fuzji i stereopsji. ˆ Dodać do programu kolejną zakładkę umożliwiającą uruchamianie stworzonych testów symulujących synoptofor. ˆ Przeprowadzić końcową kalibrację testów. Po uruchomieniu każdego testu oba prezentowane obrazy powinny się nakładać na siebie, jeżeli mają wspólne części. 22

22 4.3 Realizacja Implementacja klasy ImageFigure Klasa ImageFigure ma umożliwiać prezentowanie jednego obrazka dla określonego oka. Parametrem konstruktora jest ścieżka do pliku graficznego. Jeżeli nie uda się załadować pliku odpowiadającego dokładnie podanej nazwie, konstruktor próbuje zgadywać. Po kolei próbuje wczytywać plik o takiej samej nazwie ale kolejno z rozszerzeniami:.png,.jpg,.fig i.tif. Używany jest pierwszy plik, który uda się załadować. Jeżeli nie uda się załadować żadnego - konstruktor zwraca wyjątek. Listing 4.1 prezentuje opisywaną funkcjonalność. Listing 4.1: Konstruktor klasy ImageFigure public ImageFigure ( S t r i n g name) throws Exception { // t a b l i c a możliwych r o z s z e r z e ń S t r i n g [ ] e x t e n s i o n s = {"", ".png", ".jpg", ".gif", ".tif" } ; // próbujemy po k o l e i w s z y s t k i e r o z s z e r z e n i a for ( int i = 0 ; i < e x t e n s i o n s. l ength ; i++) { try { image = ImageIO. read ( g e t C l a s s ( ). getresource (name+e x t e n s i o n s [ i ] ) ) ; } catch ( Exception ex ) {} } i f ( image!= null ) break ; } // j e ż e l i s i ę nie udało, zwracamy wyjątek i f ( image==null ) throw new Exception ( "Nie udało się wczytać "+name+"." ) ; Funkcja paintcomponent klasy ImageFigure przechodzi po kolejnych pikselach obrazka. Dla każdego sprawdza, czy jego kolor jest wystarczająco odległy od białego. Jeżeli suma wszystkich składowych RGB jest większa od piksel nie jest rysowany. Pozwala to uniknąć przerysowania tła obrazka, które jest zwykle białe. 23

23 4.3.2 Przygotowanie obrazków W celu symulacji synoptoforu, należało przygotować odpowiednie testy. Przeznaczono na to pakiet images. Umieszczono w nim 15 par obrazków, ponumerowanych kolejnymi liczbami od 1 do 15. Obrazki z tej samej pary miały ten sam numer. Różniły się występującą za numerem liczbą a lub b. Większość obrazków przygotowano w formacie PNG, ale zdarzyły się także JPG i GIF. Przykłady par obrazków to i 10.31, i oraz i Obrazki przygotowano tworząc własne wersje na podstawie szkiców testów występujących w instrukcjach obsługi synoptoforów optycznych [8, 9, 10] Implementacja klasy SynoptiscopeTest Klasa SynoptiscopeTest służy do symulacji synoptoforu. Wykorzystuje do tego dwa, opisane wcześniej, obiekty ImageFigure. Symulacja polega na prezentacji jednego z przygotowanych obrazków dla oka prawego, a drugiego dla oka lewego. Drugi obrazek można dowolnie przesuwać za pomocą klawiszy ze strzałkami. Służy to korekcji ewentualnej forii lub niewspółmierności fiksacyjnej. Numer pary obrazków, które mają być użyte, podaje się jako argument konstruktora. Do ich załadowania jest wykorzystywana funkcjonalność klasy ImageFigure. Po kolei podejmowane są próby załadowania obrazka dla predefiniowanego zbioru rozszerzeń. Klasa umożliwia kalibrację testów poprzez podanie dla drugiego obrazka początkowego przesunięcia w płaszczyźnie poziomej i pionowej. Wartości przesunięć podaje się jako argumenty konstruktora Modyfikacja interfejsu użytkownika Główny interfejs użytkownika rozszerzono o zakładkę Synoptofor. Zawiera ona przyciski umożliwiające uruchomienie wszystkich 15 testów symulujących synoptofor. Ikony prezentujące funkcje poszczególnych przycisków umieszczono w pakiecie icons. Na ikonach znajdują się miniaturowe wersje obu obrazków używanych do przeprowadzenia danego testu. 24

24 4.3.5 Kalibracja Przygotowane obrazki miały różne rozmiary. Z tego powodu standardowa funkcja centrująca nie zawsze ustawiała je w pożądanej pozycji startowej. Za pomocą parametrów wywołania każdego testu doprowadzono do poprawnego wyświetlania wszystkich testów synoptoforowych. 4.4 Podsumowanie Uzyskane rozwiązanie wiernie odwzorowuje działanie synoptoforu. Jednak zastosowanie okularów migawkowych powoduje przysłonięcie oczy pacjenta i uniemożliwia ich obserwację. Tymczasem podczas badania synoptoforem optycznym badający ma możliwość obserwacji oczu pacjenta. Na obu rogówkach obecne są odbicia światła wychodzącego z układów optycznych. Dzięki temu badający może ustawić ramiona synoptoforu w osi każdego oka ustawiając położenie odbicia na środku źrenicy. Podczas badania ważne są także ruchy gałek ocznych po rozpoczęciu prezentacji testu. Ich zaobserwowanie pozwala stwierdzić występowanie wady. Jednak samo stwierdzenie występowania tej różnicy nie pozwala stwierdzić, że symulacja funkcjonalności synoptoforu jest niemożliwa. W tym celu konieczne byłyby badania porównujące wyniki uzyskiwane dla tych samych pacjentów na obu rozwiązaniach. 25

25 Rozdział 5 Rozbudowa klasycznych testów 5.1 Wstęp Elementy testu, prezentowane podczas badania, mają zróżnicowane znaczenie. Najważniejsze są elementy duże i/lub prezentowane w środku testu. Prototyp programu, będący podstawą do rozbudowy w niniejszej pracy, umożliwiał wykonanie kilku klasycznych testów widzenia obuocznego. Trzy z nich nadają się do modyfikacji poprzez wprowadzenie lub usunięcie istnienia centralnego bodźca do fuzji w postaci pierścienia. Celem tych modyfikacji jest zwiększenie ilości materiału do badań porównawczych z testami wykonywanymi tradycyjnie oraz innymi systemami do badania widzenia przestrzennego. Takie testy powinny być wykonane przed jakimkolwiek profesjonalnym użyciem programu w celu uwiarygodnienia prezentowanych wyników. 5.2 Wymagania Należy zaimplementować następujące testy klasyczne: ˆ Test krzyżowy z centralnym bodźcem. ˆ Test klamrowy poziomy bez centralnego bodźca. ˆ Test klamrowy pionowy bez centralnego bodźca. 26

26 5.3 Realizacja Parametry konstruktora testów Testy występujące w programie obsługiwane są przez klasy z pakietu tests. Przykładowo klasa CrossTest służy do wyświetlania testu krzyżowego, klasa BracketTestHorizontal prezentuje poziomy test klamrowy, a BracketTestVertical - jego pionową wersję. Celem jest stworzenie alternatywnych wersji dla 3 istniejących testów. Zadanie można rozwiązać tworząc 3 nowe klasy bazujące na już istniejących. Bardziej optymalnym rozwiązaniem jest wprowadzenie poprawek do istniejących klas. Powinny one umożliwiać uruchomienie dwóch wersji testu w zależności od parametru. W tym celu w każdym z modyfikowanych testów wprowadzono zmienną logiczną: private boolean centralcircle; Jej wartość jest ustawiana w konstruktorze na podstawie podanego argumentu Modyfikacja funkcji rysujących Za rysowanie testów odpowiadają metody paintcomponent. Zawierają one kolejne instrukcje wykonywane przy pierwszym wyświetleniu elementu oraz później, gdy konieczne jest przerysowanie elementu. W treści tych metod zlokalizowano elementy odpowiedzialne za wyświetlenie centralnego bodźca i dodano instrukcję warunkującą wykonanie w zależności od parametru centralcircle. Zmiany ilustruje listing 5.1. Listing 5.1: Modyfikacja funkcji rysujących i f ( c e n t r a l C i r c l e ){ Graphics2D g2 = Graphics2D. class. c a s t ( g ) ; g2. s e t S t r o k e ( C o n f i g u r a t i o n. LINIA SREDNIA ) ; g2. drawoval ( C o n f i g u r a t i o n.max X/2 C o n f i g u r a t i o n.srednica KOLA Z DZIURKA/2, C o n f i g u r a t i o n.max Y/2 C o n f i g u r a t i o n.srednica KOLA Z DZIURKA/2, C o n f i g u r a t i o n. SREDNICA KOLA Z DZIURKA, C o n f i g u r a t i o n.srednica KOLA Z DZIURKA ) ; g2. s e t S t r o k e ( C o n f i g u r a t i o n.linia NORMALNA) ; } 27

27 5.3.3 Modyfikacja interfejsu użytkownika Sekcję testów klasycznych w zakładce Testy rozszerzono o ikony uruchamiające 3 nowe wersje testów. Ikony zostały dodane do pakietu icons. Utworzono je modyfikując istniejące ikony. Zmodyfikowano funkcje obsługujące zdarzenia naciśnięcia przycisków uruchamiających dotychczasowe wersje testów. Parametry testów rozszerzono o centralcircle. 5.4 Podsumowanie Dodane testy właściwie nie są klasyczne. Dodano je jednak w do grupy testów klasycznych, ponieważ stanowią ich nieznaczne modyfikacje. Jednak wpływ obecności centralnego bodźca jest prawdopodobnie bardzo duży i wyniki osiągane za pomocą zmodyfikowanych testów mogą znacznie odbiegać od wyników osiąganych za pomocą ich pierwowzorów. 28

28 Rozdział 6 Funkcja zamiany polaryzacji 6.1 Wstęp Większość okularów migawkowych udostępnia możliwość zamiany polaryzacji. Opcja ta powoduje zamianę między sobą obrazów wyświetlanych dla lewego i prawego oka. Dla okularów marki VRJoy opcja ta jest dostępna po naciśnięciu przycisku na sprzętowym sterowniku. Jest to dosyć wygodne rozwiązanie, ponieważ fizyczny przycisk można nacisnąć zawsze, niezależnie od aktualnej zawartości monitora. Niestety okulary marki edimensional udostępniają możliwość sterowania jedynie za pośrednictwem programowego sterownika. Działa on tylko w systemie Windows i jest wyświetlany obok zegara systemowego. Przełączenie opcji polega na kliknięciu odpowiedniej ikony kursorem myszy i wybraniu potrzebnej opcji. Niestety testy są wyświetlane w trybie pełnoekranowym, co powoduje niedostępność sterownika tych okularów. Jedynym rozwiązaniem jest w tej sytuacji wyłączenie testu, zmiana opcji i ponowne uruchomienie testu. W celu usprawnienia pracy w okularami marki edimensional funkcję zamiany polaryzacji zaimplementowano bezpośrednio w programie. Parzyste linie ekranu są widoczne poprzez okulary migawkowe jednym okiem, a nieparzyste drugim. Zamiana polaryzacji polega więc na przesunięciu figury o jeden piksel w górę lub w dół. Aby przy kolejnych wywołaniach funkcji figura nie poruszała się w jednym kierunku, zastosowano dodatkowe metody zabezpieczające. 29

29 6.2 Wymagania Celem jest umożliwienie zmiany polaryzacji prezentowanych testów z poziomu programu: ˆ W czasie normalnej pracy - z menu Konfiguracja za pomocą opcji Zamiana polaryzacji. ˆ W czasie wykonywania testu kolejne naciśnięcia klawisza P powinny powodować przełączenie polaryzacji na odwrotną do aktualnej. ˆ Sterowanie za pomocą obu powyższych metod powinno być spójne. To znaczy, że przełączenie polaryzacji klawiszem P powinno być widoczne w interfejsie użytkownika. 6.3 Realizacja Przebudowa figur W prototypowej wersji programu niektóre elementy testu mogły być wyświetlone jedynie dla prawego oka. Dlatego implementacja funkcji zamiany polaryzacji była możliwa dopiero po przebudowie i ujednoliceniu kodu figur. Wszystkie figury przeniesiono do wspólnego pakietu figures. Stworzono klasę bazową Figure. Implementuje ona wspólną dla wszystkich figur funkcjonalność oraz definiuje metody abstrakcyjne, które muszą być zdefiniowane w klasach potomnych. Szczegóły przebudowy kodu źródłowego zostały opisane w rozdziale Najważniejsze metody figur Najważniejsze metody figur wykorzystywane w implementacji funkcji zamiany polaryzacji to: ˆ public Rectangle seteye(int eye): Umożliwia określenie oka, które będzie postrzegać figurę. Jeżeli zmiana spowodowała konieczność przerysowania figury, zwrócony zostanie obszar do przerysowania za pomocą metody repaint(). ˆ public int geteye(): Umożliwia sprawdzenia dla jakiego oka będzie wyświetlana figura. 30

30 6.3.3 Modyfikacja klasy Test Klasa Test jest odpowiedzialna za przygotowania do wyświetlenia testu. Tworzy ona nowe okno w trybie pełnoekranowym, używane następnie do wyświetlania testu przez odpowiednią klasę. Modyfikacja klasy Test polegała na dodaniu statycznej, publicznej zmiennej logicznej kontrolującej bieżący stan polaryzacji: public static boolean polarisationchanged = false; Modyfikacja interfejsu użytkownika Podczas inicjalizacji zmiennej polarisationchanged w klasie Test otrzymuje ona domyślna wartość false. Oznacza to, że bezpośrednio po uruchomieniu programu polaryzacja nie jest zmieniona. W celu umożliwienia użytkownikowi zmiany polaryzacji dodano opcję Zamiana polaryzacji w menu Konfiguracja (opis menu znajduje się w podsekcji ). Wykorzystano do tego element menu z możliwością zaznaczenia lub odznaczenia (kontrolka JCheckBoxMenuItem). Podczas inicjalizacji interfejsu użytkownika początkowy stan kontrolki jest ustawiany zgodnie ze zmienną polarisationchanged: kontrolka.setselected(test.polarisationchanged); Zdarzenie zmiany opcji powoduje odwrotną akcję - stan zmiennej polarisationchanged jest ustawiany zgodnie ze stanem kontrolki: Test.polarisationChanged = kontrolka.getstate(); Dostosowanie testów do funkcji zamiany polaryzacji Każdą klasę służącą do wyświetlania testów zmieniono następująco: ˆ Stworzono specjalną funkcję setpolarisation() korzystająca z metody seteye() do ustawienia odpowiedniego oka dla każdej figury składającej się na test. Ustawienia dokonywane są na podstawie zmiennej polarisationchanged. ˆ W konstruktorze usunięto wszelkie wywołania metody seteye(). Zamiast tego na końcu dodano wywołanie metody setpolarisation(). 31

31 ˆ Obsłużono zdarzenia naciśnięcie przycisku P za pomocą kodu pokazanego na listingu 6.1: Wartość zmienne polarisationchanged jest przełączana na przeciwną (z prawdy na fałsz i odwrotnie). Zmieniany jest stan konstrolki w głównym interfejsie użytkownika. Wywoływana jest funkcja setpolarisation, powodująca ustawienie odpowiedniego oka dla każdej figury składającej się na test. Cały test jest przerysowywany metodą repaint() w celu uwidocznienia zmian. Listing 6.1: Sposób obsłużenia naciśnięcia klawisza P w trakcie testu Test. polarisationchanged =! Test. polarisationchanged ; t. u s e r I n t e r f a c e. jcheckboxmenuitempolarisationchanged. s e t S t a t e ( Test. polarisationchanged ) ; s e t P o l a r i s a t i o n ( ) ; r e p a i n t ( ) ; 6.4 Podsumowanie Wygodna opcja zamiany polaryzacji była bardzo potrzebna, ponieważ każdy pacjent indywidualnie postrzega testy. Wiele osób znacznie lepiej znosi badanie po zmianie polaryzacji. Wcześniej nie było to łatwe do zrobienia w przypadku pracy z okularami edimensional. 32

32 Rozdział 7 Praca dwumonitorowa 7.1 Wstęp W starej wersji programu obsługiwany był tylko jeden monitor. Oznaczało to, że interfejs użytkownika przeznaczony dla badającego wyświetlany był naprzemiennie z testami przeznaczonymi dla pacjenta. Miało to szereg negatywnych skutków: ˆ Aktualne wyniki badania w czasie trwania testu mogły być wyświetlane jedynie na wspólnym ekranie. Wielkość czcionki służącej do wyświetlania wyników musiała być niewielka. Badający musiał więc znajdować się blisko monitora. ˆ Pacjent o dobrym wzroku mógł poznać wyniki przed zakończeniem badania i sugerować się nimi udzielając odpowiedzi. ˆ Przeprowadzający badanie musiał patrzeć na monitor pod kątem lub okresowo zasłaniać widok pacjentowi, jeżeli chciał zająć wygodną pozycję przed monitorem. ˆ Badający i pacjent musieli przebywać w tym samym pomieszczeniu. Uniemożliwiało to przeprowadzenie badań w specjalistycznych warunkach, na przykład w ciemni. ˆ Rozdzielczość używana do wyświetlania testów oraz interfejsu użytkownika do sterowania badaniem musiała być identyczna. ˆ Na ekranie pojawiały się na zmianę testy lub interfejs dla badającego. Mogło to powodować zmęczenie oczu pacjenta. 33

33 7.2 Wymagania Należy umożliwić dwumonitorową pracę programu: ˆ Program powinien być przystosowany do wyświetlania jednocześnie testu i interfejsu użytkownika w trybie pracy dwumonitorowej udostępnianej przez system operacyjny. ˆ Na głównym monitorze powinny być wyświetlane testy dla pacjenta. ˆ Na dodatkowym monitorze powinien być wyświetlany interfejs użytkownika dla badającego. ˆ W czasie testu na dodatkowym monitorze powinno pojawić się okno prezentujące aktualny wynik i opisujące badaną wadę. 7.3 Realizacja Okienko prezentujące aktualny wynik W celu umożliwienia badającemu podglądu bieżącego wyniku w trybie pracy dwumonitorowej, opracowano dodatkowe okienko w ramach klasy TestHelper. Jego wygląd jest pokazany na rysunku Okienko zawiera dwa pola tekstowe (JTextField). Pierwsze pole informuje jaką wadę badamy, a drugie wyświetla aktualny wynik. W dolnej części okienka znajduje się przycisk (JButton) Anuluj. Okienko zostało zaprojektowane przy użyciu graficznego edytora w środowisku Netbeans. Dodatkowo: ˆ Zmieniono dostępność pól wyświetlających wynik i opis wady z prywatnej na publiczną. Celem było umożliwienie ustawienia zawartości tych pól metodą settext ze znajdujących się w innym pakiecie klas wyświetlających testy. ˆ Obsłużono zdarzenie naciśnięcia przycisku Anuluj. W takim przypadku aktualnie wykonywany test jest kończony, a pomocnicze okienko jest niszczone za pomocą metody dispose(). ˆ Wyłączono reakcję na naciśnięcie czerwonego krzyżyka w prawym górnym rogu okna. 34

34 7.3.2 Modyfikacja klasy Test Klasa Test jest odpowiedzialna za przygotowania do wyświetlenia testu. Tworzy ona nowe okno w trybie pełnoekranowym. W nim jest następnie wyświetlany któryś test za pomocą odpowiedniej klasy. Jednocześnie główne okno programu jest chowane. W trybie pracy dwumonitorowej interfejs użytkownika nie powinien być ukrywany. Dlatego konieczna była modyfikacja tej klasy. Modyfikacje rozpoczęto od dodania statycznej, publicznej zmiennej logicznej kontrolującej tryb pracy dwumonitorowej: public static boolean dualmonitorwork = false; W konstruktorze klasy Test uzależniono wywołanie niektórych funkcji od stanu dualmonitorwork: ˆ W trybie pracy dwumonitorowej: Główne okienko (userinterface) jest dezaktywowane. Tworzone jest okienko testhelper do prezentacji bieżącego wyniku. Okienko testhelper jest pokazywane nad głównym okienkiem. ˆ W trybie pracy jednomonitorowej: Główne okienko (userinterface) jest ukrywane. Główne okienko ma ignorować żądania odświeżenia od systemu operacyjnego (setignorerepaint). Opisywany fragment konstruktora znajduje się na listingu 7.1. Listing 7.1: Zmiany w konstruktorze klasy Test i f ( dualmonitorwork ){ // DWA MONITORY u s e r I n t e r f a c e. setenabled ( f a l s e ) ; t e s t H e l p e r = new TestHelper ( this ) ; t e s t H e l p e r. s e t V i s i b l e ( true ) ; t e s t H e l p e r. s e t L o c a t i onrelativeto ( u s e r I n t e r f a c e ) ; } else { // JEDEN MONITOR u s e r I n t e r f a c e. s e t V i s i b l e ( f a l s e ) ; u s e r I n t e r f a c e. s e t I g n o r e R e p a i n t ( true ) ; } 35

35 7.3.3 Modyfikacja interfejsu użytkownika Podczas inicjalizacji zmiennej dualmonitorwork w klasie Test otrzymuje ona domyślna wartość false. Oznacza to, że bezpośrednio po uruchomieniu programu opcja pracy dwumonitorowej jest wyłączona. W celu umożliwienia kontroli pracy dwumonitorowej przez użytkownika dodano opcję Praca dwumonitorowa w menu Konfiguracja (opis menu znajduje się w podsekcji ). Wykorzystano do tego element menu z możliwością zaznaczenia lub odznaczenia (kontrolka JCheckBoxMenuItem). Podczas inicjalizacji interfejsu użytkownika początkowy stan kontrolki jest ustawiany zgodnie ze zmienną dualmonitorwork: kontrolka.setselected(test.dualmonitorwork); Zdarzenie zmiany opcji powoduje odwrotną akcję - stan zmiennej dualmonitorwork jest ustawiany zgodnie ze stanem kontrolki: Test.dualMonitorWork = kontrolka.getstate(); Dostosowanie testów do pracy dwumonitorowej Samo wyświetlanie testów jest możliwe w trybie pracy dwumonitorowej bez dodatkowych modyfikacji. Konieczne jest jednak dostosowanie testów do wyświetlania wyniku w dodatkowym okienku. Aby to umożliwić konstruktory wszystkich testów rozszerzono o kod pokazany na listingu 7.2. Sprawdza on, czy istnieje dodatkowe okno do wyświetlania wyniku. Jeżeli istnieje, ustawiany jest opis badanej wady. Funkcje obliczające wyniki we wszystkich testach rozszerzono o kod pokazany na listingu 7.3. Są one wywoływane przy każdym przesunięciu któregoś elementu testu przez pacjenta. Dodany fragment ustawia bieżący wynik w dodatkowym oknie. Oczywiście, jeżeli ono istnieje. Listing 7.2: Fragment konstruktora klasy wyświetlającej test i f ( t. t e s t H e l p e r!= null ) t. t e s t H e l p e r. j T e x t F i e l d D e f e c t. settext ( TestName. gettestname ( ). getopisbadanejwady ( nrtestu ) ) ; Listing 7.3: Fragment funkcji obliczającej wynik testu i f ( t. t e s t H e l p e r!= null ) t. t e s t H e l p e r. j T e x t F i e l d R e s u l t. settext ( r e s u l t ) ; 36

36 7.4 Podsumowanie Program rozbudowano o funkcję pracy dwumonitorowej. Jej uruchomienie polega na: ˆ Włączeniu pracy dwumonitorowej w opcjach systemu operacyjnego. ˆ Uruchomieniu programu ˆ Przeciągnięciu okienka programu na monitor dodatkowy. ˆ Włączeniu pracy dwumonitorowej w opcjach programu. ˆ Na głównym monitorze będą wyświetlane testy. Opcja pracy dwumonitorowej pozwala znacząco zwiększyć komfort pracy z programem. Została jednak zaimplementowana w sposób częściowo nieoptymalny z powodu programowych ograniczeń sterownika okularów marki edimensional. Są one w stanie wyświetlać obraz w trybie stereo tylko na głównym ekranie. Powoduje to problem, ponieważ na głównym ekranie wyświetlają się również standardowo wszystkie ikony i systemowe paski menu. Najlepszym rozwiązaniem byłoby wyświetlanie tych elementów dla badającego, a pacjent między testami powinien oglądać jednobarwny ekran. Niestety nie dało się tego osiągnąć z dostępnym sprzętem. 37

37 Rozdział 8 Internacjonalizacja 8.1 Wstęp Prototypowy interfejs użytkownika wyświetlany był wyłącznie w języku polskim. Wszystkie ciągi znaków wyświetlane w interfejsie użytkownika podane były bezpośrednio w kodzie źródłowym. Ograniczało to znacznie możliwość wykorzystania przez szersze grono odbiorców. Dlatego program został podany procesowi internacjonalizacji i rozbudowany o wersję interfejsu użytkownika w języku angielskim. Odpowiedni język jest wybierany automatycznie na podstawie ustawień systemowych. 8.2 Wymagania Należy przetłumaczyć interfejs użytkownika w następujący sposób: ˆ Domyślnie uruchamiany ma być angielska wersja interfejsu użytkownika. ˆ Polska wersja interfejsu użytkownika powinna się automatycznie uruchomić w polskojęzycznych systemach operacyjnych. ˆ Dodawanie kolejnych tłumaczeń nie powinno już wymagać żadnych zmian w programie. Może polegać na dodaniu maksymalnie jednego pliku. 38

38 8.3 Realizacja Przygotowanie plików tłumaczeń W celu internacjonalizacji programu wykorzystano mechanizmy wbudowane w język Java. Specjalnie na pliki związane z tłumaczeniami stworzono pakiet languages. W nim umieszczono dwa, początkowo puste, pliki: ˆ i18n.properties - przeznaczony na domyślną wersję językową (w naszym przypadku angielską), ˆ i18n_pl_pl.properties - przeznaczony na polską wersję językową Inicjalizacja interfejsu użytkownika Interfejs użytkownika jest wyświetlany przez klasę UserInterface. Listing 8.1 ilustruje wprowadzone zmiany: ˆ Zdefiniowano prywatną zmienną labels typu ResourceBundle. ˆ Zmienna labels jest inicjalizowana w konstruktorze za pomocą statycznej metody ResourceBundle.getBundle. Jej argumentem jest lokalizacja wspomnianych wcześniej plików z tłumaczeniami. Odpowiedni wersja językowa jest wybierana automatycznie 1. Listing 8.1: Zmiany w klasie UserInterface public class U s e r I n t e r f a c e extends javax. swing. JFrame { private ResourceBundle l a b e l s ; } public U s e r I n t e r f a c e ( ) { l a b e l s = ResourceBundle. getbundle ( "pl/rdk/vision2/languages/i18n" ) ; s e t T i t l e ( l a b e l s. g e t S t r i n g ( "programtitle" ) ) ; } 1 Istnieje również wersja metody ResourceBundle.getBundle umożliwiająca podanie pożądanej wersji językowej jako dodatkowego argumentu wywołania. 39

39 8.3.3 Proces tłumaczenia programu W celu internacjonalizacji całego programu należało odnaleźć w kodzie źródłowym wszystkie bezpośrednio wpisane ciągi znaków wyświetlane w interfejsie użytkownika. Każde takie wystąpienie trzeba było zastąpić wywołaniem postaci: labels.getstring("klucz") Taki sam klucz z odpowiednimi wartościami należało dodać również w obu plikach z tłumaczeniami Przykład działania internacjonalizacji Listingi 8.2 i 8.3 zawierają fragmenty plików z tłumaczeniami. Można zauważyć, że składają się z par klucz=wartość. Klucz jest podawany w wywołaniu metody labels.getstring. Powoduje to podstawienie pola wartość z pliku wybranego podczas inicjalizacji przez funkcję ResorceBundle.getBundle. Przykład działania internacjonalizacji stanowi ustawienie tytułu okienka programu za pomocą metody settitle, występującej w dolnej części listingu 8.1. Listing 8.2: Fragment pliku i18n.properties programtitle = Vision2 b i n o c u l a r v i s i o n assessment s e t t i n g s = S e t t i n g s... Listing 8.3: Fragment pliku i18n pl PL.properties programtitle = Vision2 t e s t y widzenia obuocznego s e t t i n g s = Ustawienia Podsumowanie Dodanie angielskiej wersji interfejsu znacznie zwiększa krąg potencjalnych użytkowników programu. Ponadto w stanie obecnym dodanie kolejnego tłumaczenia polega już tylko na dodaniu pojedynczego pliku properties z odpowiednio zmienionymi wartościami. Należy przypuszczać, że tłumaczenie angielskiej wersji tego pliku na język narodowy nie powinno stanowić problemu dla większości użytkowników. 40

40 Rozdział 9 Wbudowany system pomocy 9.1 Wstęp W przypadku wielu programów nie ma konieczności korzystania z instrukcji obsługi, nawet przy pierwszym użyciu. Jest to możliwe dzięki standardom, których przestrzegają producenci oprogramowania. Na przykład w menu Plik prawie zawsze znajdziemy opcje Otwórz i Zapisz. Podczas tworzenia programu Vision2 starano się w jak największym stopniu przestrzegać standardów. Jednak zagadnienia związane z badaniem widzenia przestrzennego nie zawsze są proste ani powszechnie znane. Należy więc przypuszczać, że pełne wykorzystanie takiego programu będzie możliwe tylko z instrukcją użytkownika. Instrukcję można dołączyć do programu na wiele sposobów. Może to być wersja papierowa, załączona wersja w formacie PDF lub odnośnik otwierający w przeglądarce stronę z instrukcją. Wszystkie te możliwości mają swoje wady. Na przykład plik PDF wymaga programu Adobe Reader, a odnośnik połączenia z internetem. Dlatego właśnie zdecydowano się na wbudowaną instrukcję obsługi. Taka instrukcja nigdy się nie zagubi i będzie zawsze dostępna dla użytkownika - jeżeli tylko będzie on w staniu uruchomić program. Dodatkowo wbudowana instrukcji zawsze będzie zgodna z posiadaną wersją programu. Nie ma możliwości pomyłki w tym zakresie. 9.2 Wymagania Należy stworzyć wbudowaną w program instrukcję użytkowania opisującą w języku polskim i angielskim wszystkie funkcje programu i sposób korzystania z niego. 41

41 9.3 Możliwe rozwiązania Brak pomocy Najprostszym rozwiązaniem jest niedostarczenie instrukcji obsługi wraz z programem. Większość użytkowników mimo wszystko będzie w stanie wykorzystać program w podstawowym zakresie. Jednak dostęp do bardziej zaawansowanych funkcji programu może być utrudniony Pomoc HTML Język HTML umożliwia stworzenie przyjemnego wizualnie i łatwego w użytkowaniu systemu pomocy. Przy zachowaniu standardów taka pomoc może być wyświetlona w każdej współczesnej przeglądarce internetowej. Problemem jest wywołanie przeglądarki z wnętrza program. Program może być uruchomiony w bardzo wielu systemach operacyjnych. Dlatego nie można założyć, że użytkownik posiada konkretną przeglądarkę Własny system pomocy Wyświetlanie pomocy przez program można obsłużyć w całości za pomocą własnoręcznie napisanego kodu. Wadą tego rozwiązania jest ekstremalnie wysoka pracochłonność. Zaimplementowanie formatowania tekstu i innych typowych funkcji może zająć wiele dni pracy JavaHelp JavaHelp to pakiet bibliotek w języku Java wspomagających przygotowanie i wyświetlanie instrukcji użytkownika. Jest dobrze ustandaryzowany i posiada wiele ciekawych funkcji. Zestaw bibliotek, które trzeba dołączyć do programu ma jednak duży rozmiar, a wygląd generowanego interfejsu użytkownika ma staromodny wygląd[7] Oracle Help Oracle Help to również pakiet bibliotek Javy dających możliwość wyświetlania pomocy bazującej na HTML. Zawiera jeszcze więcej funkcji niż JavaHelp, a interfejs użytkownika jest przyjemniejszy dla oka. Jednak rozmiar bibliotek jest jeszcze większy niż w przypadku JavaHelp. 42

42 9.3.6 HelpGUI HelpGUI to prosta biblioteka udostępniająca komponent służący do przeglądania pomocy sporządzonej w formacie HTML. Ma schludny interfejs użytkownika i mały rozmiar. 9.4 Wybór sposobu realizacji Do stworzenia wbudowanej instrukcji użytkownika została wybrana biblioteka HelpGUI. Zadecydowały o tym: ˆ Mały rozmiar: Był ważny ponieważ dotychczasowy rozmiar programu nie przekracza 0,5 MB. W przypadku niektórych rozwiązań konkurencyjnych wynikowy rozmiar programu mógłby być wielokrotnie większy. ˆ Łatwość użytkowania: Zastosowanie biblioteki jest bardzo proste i intuicyjne. ˆ Formaty HTML: W bibliotece HelpGUI jedynie spis treści ma format XML. Cała treść wyświetlanej pomocy może być w formacie HTML. Umożliwia to łatwe umieszczenie instrukcji użytkownika na stronie internetowej. 9.5 Realizacja Dołączenie biblioteki HelpGUI Najprostszym sposobem dodania biblioteki do programu w języku Java jest dołączenie dodatkowego pliku z archiwum w formacie jar. Otrzymujemy w ten sposób program składający się z dwóch lub więcej plików. W przypadku projektu Vision2 priorytetem była możliwość dystrybuowania programu w formie pojedynczego pliku. Dlatego kod źródłowy biblioteki HelpGUI dołączono bezpośrednio do projektu Modyfikacja biblioteki HelpGUI Usunięcie niepotrzebnych ikon Biblioteka HelpGUI zawiera 10 różnych zestawów ikon, nazwanych: windows, kde, gtk, crystal, plastic, itp. Ponieważ zestaw plastic wydawał się najciekawszy, pozostałe zostały usunięte. 43

43 Polonizacja HelpGUI HelpGUI zostało przetłumaczone na 10 różnych języków. Niestety języka polskiego nie uwzględniono. Brak ten okazał się jednak łatwy do uzupełnienia. Pliki z tłumaczeniami znajdują się bowiem w pakiecie com.sourceforge.helpgui.languages. Domyślne tłumaczenie zawarte jest w pliku i18n.properties, niemieckie w pliku i18n_de.properties, itd. Domyślne tłumaczenie skopiowano tworząc w ten sposób plik i18n_pl.properties. Jego początkowa zawartość znajduje się na listingu 9.1. Składa się on z listy postaci klucz = wartość. Należało w miejscu wartości wpisać odpowiednie, polskie tłumaczenia. Uzyskany efekt znajduje się na listingu 9.2 Listing 9.1: Domyślne tłumaczenie HelpGUI a c t i o n = Action addbookmarks = Add Bookmarks bookmarks = Bookmarks f i l e = F i l e home = Home next = Next p r e v i o u s = Previous p r i n t = Print q u i t = Quit Listing 9.2: Polskie tłumaczenie HelpGUI a c t i o n = Nawigacja addbookmarks = Dodaj zakładkę bookmarks = Zakładki f i l e = P l i k home = Strona główna next = Następne p r e v i o u s = Poprzednie p r i n t = Drukuj q u i t = Zakończ 44

44 9.5.3 Włączenie treści pomocy Do programu Vision2 przygotowano szczegółową instrukcję użytkownika w formacie HTML w języku polskim i angielskim. Polska wersja znajduje się w rozdziale 10. Obie wersje językowe można przeglądać w zakładce Wiki na stronie internetowej projektu pod adresem com. Schemat organizacji pomocy w pakiety znajduje się na rysunku 9.1. Na pomoc składają się pliki HTML oraz obrazki w formacie PNG. Całość została umieszczona w pakiecie docs.help. Wszystkie pliki graficzne zostały zebrane w podpakiecie (images), polska treść w pl, a angielska w en. Obie wersje językowe zostały podzielone na 4 podpakiety zgodnie z podziałem treści na rozdziały. Rysunek 9.1: Organizacja pomocy w pakietach 45

45 9.5.4 Funkcja wywołująca pomoc W celu umożliwienia użytkownikom przeglądania pomocy, w menu Pomoc dodano opcję Tematy pomocy. Po wybraniu tej opcji uruchamiany jest funkcja jmenuitemhelptopicsactionperformed przedstawiona na listingu 9.3. Tworzy ona nową instancję obiektu HelpFrame przekazując mu lokalizacje treści pomocy w zależności od aktualnych ustawień systemu związanych z internacjonalizacją. Następnie okienko pomocy jest centrowane na ekranie i pokazywane użytkownikowi. Wygląd przeglądarki pomocy przedstawiony jest na rysunku Listing 9.3: Funkcja obsługująca zdarzenie wybrania opcji Tematy pomocy private void jmenuitemhelptopicsactionperformed ( java. awt. event. ActionEvent evt ){ // o b i e k t okienka pomocy net. s o u r c e f o r g e. h e l p g u i. gui. MainFrame helpframe ; // wybór właściwych l o k a l i i f ( Locale. g e t D e f a u l t ( ). e q u a l s (new Locale ( "pl", "PL" ) ) ) { helpframe = new net. s o u r c e f o r g e. h e l p g u i. gui. MainFrame ( "/docs/help/pl/", "plastic" ) ; } else { helpframe = new net. s o u r c e f o r g e. h e l p g u i. gui. MainFrame ( "/docs/help/en/", "plastic" ) ; } // centrowanie Dimension dim=t o o l k i t. g e t D e f a u l t T o o l k i t ( ). g e t S c r e e n S i z e ( ) ; helpframe. s e t S i z e (800, helpframe. getheight ( ) ) ; int w = helpframe. getwidth ( ) ; int h = helpframe. getheight ( ) ; int x = ( dim. width w) / 2 ; int y = ( dim. h e i g h t h ) / 2 ; helpframe. s e t L o c a t i o n ( x, y ) ; helpframe. s e t T i t l e ( new S t r i n g ( l a b e l s. g e t S t r i n g ( "helptitle" ) ) ) ; } // pokazanie okienka helpframe. s e t V i s i b l e ( true ) ; 46

46 9.6 Podsumowanie Dzięki wprowadzonym zmianom program stał się przystępniejszy dla użytkownika. Drukowana instrukcja może się zgubić, instrukcja zamieszczona w Internecie nie zawsze jest dostępna. Natomiast pomoc wbudowana w program zawsze pozwoli użytkownikowi zacząć pracę z programem i poznać jego bardziej zaawansowane funkcje. W otrzymanym rozwiązaniu brakuje jednej typowej funkcjonalności - wyszukiwania po słowach kluczowych. Jednak z drugiej strony dzięki małej złożoności biblioteki HelpGUI implementacja opisywanych funkcji nie wymagała dużych nakładów prac. 47

47 Rozdział 10 Instrukcja obsługi programu 10.1 Wprowadzenie Ogólnie o programie Program Vision2 powstał, a następnie był rozwijany, jako element dwóch prac inżynierskich napisanych pod kierunkiem doc. dra hab. inż. Marka Zająca na Wydziale Podstawowych Problemów Techniki Politechniki Wrocławskiej. Temat pierwszej pracy brzmiał Budowa stanowiska komputerowego do badania widzenia przestrzennego z wykorzystaniem okularów migawkowych [11]. Tematem drugiej pracy było Opracowanie programu komputerowego do symulowania pracy synoptoforu z wykorzystaniem okularów migawkowych 1. Program służy do badania widzenia przestrzennego z wykorzystaniem okularów migawkowych. Udostępnia możliwość wykonania wielu tradycyjnych testów widzenia obuocznego jak i nowych typów testów wektograficznych i punktów przypadkowych. Program symuluje również działanie synoptoforu. Nowością jest możliwość wzajemnego przesuwania elementów testu widocznych przez lewe lub prawe oko. Umożliwia to ilościowy, a nie tylko jakościowy, pomiar wady. Do wykorzystania programu niezbędny jest komputer z zainstalowanym środowiskiem uruchomieniowym Java i monitorem kineskopowym oraz okulary migawkowe. 1 Chodzi o niniejszą pracę dyplomową. 48

48 Możliwości programu Program umożliwia wykonanie następujących testów widzenia przestrzennego: ˆ Test krzyżowy z centralnym bodźcem lub bez niego. ˆ Testy klamrowe pionowe i poziome oraz z centralnym bodźcem lub bez niego. ˆ Testy wskazówkowe pionowe i poziome. ˆ Test wskazówkowy podwójny. ˆ Test trójkątny. ˆ Stereobalans. ˆ Testy wektograficzne o dowolnych lub predefiniowanych wartościach kąta stereoskopowego. ˆ Testy punktów przypadkowych o dowolnych lub predefiniowanych wartościach kąta stereoskopowego. ˆ Testy symulujące synoptofor, umożliwiające sprawdzenie jednoczesnej percepcji obuocznej, fuzji lub stereopsji. Każdy z wyżej wymienionych testów udostępnia następującą funkcjonalność: ˆ Badanie ilościowe określonej wady widzenia przestrzennego poprzez umożliwienie pacjentowi przesunięcia odpowiednich elementów testu, tak aby był on postrzegany poprawnie. Wielkość tego przesunięcia umożliwia obliczenie wielkości wady. ˆ Wyświetlanie aktualnego wyniku pomiaru w lewy górnym rogu testu. ˆ Przełączanie polaryzacji testów, czyli zamiana ze sobą elementów widocznych przez lewe i prawe oko. ˆ Praca dwumonitorowa umożliwiająca wyświetlanie elementów sterujących i aktualnych wyników dla badającego na jednym monitorze, a testów widzenia dla pacjenta na drugim monitorze. Wyniki pomiarów oraz dane pacjenta mogą być zapisane na dysku twardym komputera celem porównania z wynikami następnych badań. 49

49 Wymagania Do działania programu wymagane są: ˆ Okulary migawkowe marki VRJoy, edimensional ( lub inne umożliwiające niezależną prezentacje dla każdego oka obrazów powstałych odpowiednio z podwojenia parzystych i nieparzystych linii ekranu (ang. interleaved line stereo) ˆ Monitor kineskopowy do wyświetlania testów, o przekątnej ekranu 17 cali (wielkość zalecana). Jego częstotliwość odświeżania przy rozdzielczość pikseli powinna wynosić minimum 100 Hz 2. ˆ Drugi monitor do wyświetlania interfejsu badającego, o dowolnym typie (może być ciekłokrystaliczny lub wbudowany ekran laptopa). Drugi monitor jest wymagany jedynie, jeżeli badający zamierza wykorzystywać funkcję pracy dwumonitorowej. ˆ Komputer spełniający następujące wymagania sprzętowe i programowe: Złącze klawiatury typu PS/2: może być zajęte przez klawiaturę (wymagane jedynie w przypadku zastosowania okularów migawkowych marki VRJoy). Dysk twardy: 120 MB wolnego miejsca. Uwzględniono miejsce wymagane do instalacji środowiska uruchomieniowego Javy. Procesor: 500 MHz lub szybszy. Pamięć: 256 MB lub więcej. System operacyjny: Windows, Linux, Solaris lub MacOS (okulary marki edimensional działają jedynie z systemem Windows). Java: zainstalowane środowisko uruchomieniowe w wersji lub wyższej. 2 Zapewnia to częstotliwość odświeżania dla każdego oka wynoszącą minimum 50 Hz 50

50 Kontakt Tabela 10.1: Dane kontaktowe autora i promotora pracy dyplomowej Autor programu: Robert Karpiński robert.karpinski@rdk.pl Promotor pracy dyplomowej: doc. dr hab. inż. Marek Zając marek.zajac@pwr.wroc.pl Projekt Vision2 Z autorem programu (robert.karpinski@rdk.pl) można się kontaktować w sprawach: ˆ Dostosowania programu do indywidualnych wymagań. Na stronie internetowej projektu Vision2 ( com) można: ˆ Pobrać najnowszą wersję programu (zakładka Downloads ). ˆ Zgłosić błąd w programie (zakładka Issues ). ˆ Przeglądać lub pobrać kod źródłowy (zakładka Source ). Z promotorem pracy dyplomowej (marek.zajac@pwr.wroc.pl) można się kontaktować w sprawach: ˆ Ogólnej koncepcji działania programu. ˆ Badań naukowych dotyczących przydatności programu. ˆ Badań naukowych dotyczących porównania programu z testami klasycznymi lub innymi systemami do badania widzenia przestrzennego. 51

51 Licencja Vision2 Badanie widzenia przestrzennego z wykorzystaniem okularów migawkowych Copyright 2009 Robert Karpinski robert.karpinski@rdk.pl Niniejszy program jest wolnym oprogramowaniem - możesz go rozpowszechniać dalej i/lub modyfikować na warunkach Powszechnej Licencji Publicznej GNU wydanej przez Fundację Wolnego Oprogramowania, według wersji 3 tej Licencji lub dowolnej z późniejszych wersji. Niniejszy program rozpowszechniany jest z nadzieją, że będzie on użyteczny - jednak bez żadnej gwarancji, nawet domyślnej gwarancji przydatności handlowej albo przydatności do określonych zastosowań. Bliższe informacje na ten temat można uzyskać z Powszechnej Licencji Publicznej GNU. Kopia Powszechnej Licencji Publicznej GNU powinna zostać ci dostarczona razem z tym programem. Jeżeli nie została dostarczona, odwiedź W programie wykorzystano bibliotekę HelpGUI ( służącą do wyświetlania pomocy. Jest ona rozprowadzana na warunkach Powszechnej Licencji Publicznej GNU w wersji 2. Biblioteka została zmodyfikowana poprzez dodanie polskiego tłumaczenia interfejsu użytkownika. 52

52 10.2 Przewodnik użytkownika Od czego zacząć Aby uruchomić program należy wykonać poniższe kroki: ˆ Sprawdź, czy spełnione są wymagania sprzętowe i programowe określone w sekcji ˆ Podłącz okulary migawkowe do komputera. Podłączanie okularów marki edimensional lub VRoy jest opisane w podsekcji Inne okulary należy podłączyć zgodnie z ich instrukcją użytkowania. ˆ Po włączeniu komputera ustaw odpowiednią rozdzielczość za pomocą procedury opisanej w podsekcji ˆ Umieść załączony dysk w czytniku CD-ROM. Uruchom program klikając dwukrotnie na pliku vision2.jar znajdującym się w katalogu program. Jeżeli mimo wszystko program nie uruchomi się, spróbuj kliknąć dwukrotnie na pliku start.bat. Dalszy brak możliwości uruchomienia programu może oznaczać brak środowiska uruchomieniowego Java. Można je zainstalować z katalogu java na załączonym dysku. ˆ Funkcje programu zawarte są w zakładkach posegregowanych zgodnie z typową kolejnością ich użycia. Należy rozpocząć od zakładki Ustawienia, następnie Pacjent itd. Szczegółowy opis wszystkich elementów interfejsu użytkownika znajduje się w sekcji ˆ Testy uruchamia się klikając na ikony w zakładce Testy lub Synoptofor. Szczegółowy opis sterowania przebiegiem testu znajduje się w sekcji ˆ Program można samodzielnie zainstalować na dysku twardym. W tym celu należy skopiować katalog program z załączonego dysku CD-ROM i wkleić do katalogu Program files. Nazwę katalogu należy zmienić na Vision2. Następnie należy utworzyć skrót odnoszący się do pliku vision2.jar i skopiować go na pulpit lub do menu start. ˆ Najnowszą wersję programu można pobrać ze strony googlecode.com. 53

53 Podłączanie okularów Podłączanie okularów marki VRJoy ˆ Wyłącz komputer. ˆ Odłącz monitor B od karty graficznej A (oznaczenia jak na rys. 10.1). ˆ Do karty graficznej A podłącz adapter C. ˆ Podłącz monitor B do adaptera C. ˆ Podłącz adapter C do sterownika D. ˆ Podłącz okulary migawkowe E do sterownika D, można użyć kabla przedłużającego. ˆ Odłącz klawiaturę od komputera. ˆ Do gniazda klawiatury w komputerze podłącz rozgałęziacz (nie pokazany na rysunku). ˆ Klawiaturę podłącz do komputera poprzez rozgałęziacz. ˆ Podłącz rozgałęziacz do sterownika D. ˆ Uruchom komputer. Rysunek 10.1: Schemat blokowy układu z okularami VRJoy 54

54 Podłączanie okularów marki edimensional ˆ Wyłącz komputer. ˆ Odłącz monitor B od karty graficznej A (oznaczenia jak na rys. 10.2). ˆ Do karty graficznej A podłącz adapter C. ˆ Podłącz monitor B do adaptera C. ˆ Podłącz nadajnik podczerwieni D do adaptera C. ˆ Uruchom komputer. ˆ Po włączeniu komputera uruchom okulary migawkowe za pomocą programowego sterownika, którego ikona wyświetla się obok zegara na pasku zadań, jak pokazano na rys Rysunek 10.2: Schemat blokowy układu z okularami edimensional Rysunek 10.3: Sterowanie okularami migawkowymi edimentional 55

55 Ustawienia systemowe Praca z jednym monitorem W celu optymalnej pracy programu należy ustawić rozdzielczość pikseli. Dla tej rozdzielczości należy wybrać maksymalną możliwą częstotliwość odświeżania. Poniżej opisana jest procedura ustawienia tych parametrów dla sytemu Microsoft Windows XP: ˆ Kliknij prawym przyciskiem myszki na obszarze pulpitu i wybierz Właściwości. ˆ W okienku, które się otworzy wybierz ostatnią zakładkę: Ustawienia. ˆ Ustaw suwakiem rozdzielczość podobnie jak na rysunku ˆ Zatwierdź zmiany przyciskiem Zastosuj. ˆ Kliknij przycisk Zaawansowane. ˆ W okienku, które się otworzy, wybierz zakładkę Monitor. ˆ Z menu rozwijalnego wybierz maksymalną dostępną częstotliwość odświeżania, podobnie jak na rysunku ˆ Zatwierdź zmiany przyciskami OK w kolejnych oknach. Praca dwumonitorowa Przy pracy z dwoma monitorami należy ustawić na głównym monitorze rozdzielczość Dla tej rozdzielczości należy na głównym monitorze ustawić maksymalną dostępną częstotliwość odświeżania. Rozdzielczość i częstotliwość na monitorze dodatkowym są nieistotne. Poniżej opisana jest procedura ustawienia tych parametrów dla sytemu Microsoft Windows XP: ˆ Podłącz drugi monitor do komputera 3. ˆ Kliknij prawym przyciskiem myszki na obszarze pulpitu i wybierz Właściwości. ˆ W okienku, które się otworzy wybierz ostatnią zakładkę: Ustawienia. 3 Jest to możliwe jedynie, jeżeli komputer jest wyposażony w odpowiednią kartę graficzną z wyjściami na dwa monitory 56

56 ˆ Kliknij prawym przyciskiem myszy na prostokącie symbolizującym drugi monitor i wybierz opcję Dołączony podobnie jak na rysunku ˆ Jeżeli drugi monitor ma służyć do wyświetlania testów dla pacjenta, oznacz go jako podstawowy. Aby to zrobić kliknij prawym przyciskiem myszy na prostokącie symbolizującym drugi monitor i wybierz opcję Podstawowy. ˆ Zatwierdź zmiany przyciskiem Zastosuj. ˆ Kliknij prawym klawiszem myszy na prostokącie symbolizującym podstawowy monitor. ˆ W okienku, które się otworzy, wybierz zakładkę Monitor. ˆ Z menu rozwijalnego wybierz maksymalną dostępną częstotliwość odświeżania, podobnie jak na rysunku ˆ Zatwierdź zmiany przyciskami OK w kolejnych oknach. Rysunek 10.4: Ustawianie rozdzielczości ekranu w systemie Windows XP 57

57 Rysunek 10.5: Ustawianie częstotliwości w systemie Windows XP Rysunek 10.6: Dołączanie drugiego monitora w systemie Windows XP 58

58 10.3 Opis interfejsu Menu Plik Wygląd menu Plik przedstawiono na rysunku Zawiera ono następujące opcje: ˆ Otwórz: Umożliwia wczytanie danych pacjenta oraz wyników badań zapisanych w pliku programu Vision2 (domyślnie z rozszerzeniem vis). Funkcja dostępna również po naciśnięciu przycisku Wczytaj na zakładce Pacjent. ˆ Zapisz: Umożliwia zapisanie danych pacjenta oraz wyników badań w pliku programu Vision2 (domyślnie z rozszerzeniem vis). Funkcja dostępna również po naciśnięciu przycisku Zapisz na zakładce Pacjent. ˆ Eksportuj: Umożliwia wyeksportowanie danych pacjenta oraz wyników badań do pliku tekstowego (domyślnie z rozszerzeniem txt). Funkcja dostępna również po naciśnięciu przycisku Eksportuj na zakładce Pacjent. ˆ Zakończ: Powoduje zakończenie pracy programu. Równoważne z kliknięciem czerwonego krzyżyka w prawym górnym rogu okna programu. Rysunek 10.7: Menu Plik 59

59 Menu Konfiguracja Wygląd menu Konfiguracja przedstawiono na rysunku Zawiera ono następujące opcje: ˆ Zamiana polaryzacji: Zaznaczenie tej opcji spowoduje zamianę ze sobą wszystkich elementów testu wyświetlanych dla lewego i prawego oka. Równoważne z naciśnięciem klawisza P w czasie wyświetlania dowolnego testu. ˆ Praca dwumonitorowa: Zaznaczenie tej opcji spowoduje włączenie trybu pracy dwumonitorowej. W trybie pracy jednomonitorowej główne okienko znika podczas wyświetlania testu. W trybie pracy dwumonitorowej główne okienko nie znika, a dodatkowo w trakcie testów pojawia się nad nim dodatkowe okienko (pokazane na rysunku 10.9) prezentujące aktualny wynik pomiaru. Po włączeniu trybu pracy dwumonitorowej główne okienko programu należy przeciągnąć na monitor dodatkowy. ˆ Pokazuj wyniki na teście: Zaznaczenie tej opcji spowoduje wyświetlanie w górnym lewym rogu testu aktualnego wyniku. Równoważne z naciśnięciem spacji w czasie wyświetlania dowolnego testu. Rysunek 10.8: Menu Konfiguracja Rysunek 10.9: Aktualny wynik w trybie pracy dwumonitorowej 60

60 Menu Pomoc Wygląd menu Pomoc przedstawiono na rysunku Zawiera ono następujące opcje: ˆ Tematy pomocy: Wybranie spowoduje wyświetlenie okna z pomocą, przedstawionego na rysunku ˆ O programie: Wybranie spowoduje wyświetlenie wersji programu oraz daty kompilacji. Rysunek 10.10: Menu Pomoc Rysunek 10.11: Okno Pomoc programu Vision2 61

61 Zakładka Ustawienia Zakładka Ustawienia (rys ) służy do wprowadzenia danych o warunkach przeprowadzania testów. Informacje te są wykorzystywane w procesie obliczania wyników testów. Należy je podawać po każdym uruchomieniu programu, gdyż nie są w żaden sposób zapamiętywane. Większość zakładki zajmuje obrazek krzyża, którego wysokość i szerokość w milimetrach należy wpisać odpowiednio w pola opisane wysokość [mm] i szerokość [mm]. W pole odległość [cm] należy wpisać wyrażoną w centymetrach odległość od monitora do oczu pacjenta. Rysunek 10.12: Zakładka do wstępnej konfiguracji programu Zakładka Pacjent Dobrą praktyką jest przeprowadzanie wstępnego wywiadu z pacjentem przed przystąpieniem do badań. Oprócz podstawowych danych pacjenta badający powinien uzyskać również wszelkie informacje mogące ułatwić postawienie diagnozy. Program umożliwia przechowywanie tych danych razem z wynikami badania i ich późniejszą analizę. 62

62 Wszystkie dane pacjenta są pokazywane w zakładce Pacjent (rys ). Edycja tych danych jest możliwa na każdym etapie pracy z programem. Wyniki badania są prezentowane w zakładce Wyniki. Nie jest możliwa edycja wyników, a jedynie ich przeglądanie. Operacje na danych pacjenta i wynikach jego badań są możliwe za pomocą trzech przycisków w dolnej części zakładki pacjent: ˆ Wczytaj: Umożliwia wczytanie danych pacjenta oraz wyników badań zapisanych w pliku programu Vision2 (domyślnie z rozszerzeniem vis). Funkcja dostępna jest również w menu Plik pod nazwą Otwórz. ˆ Zapisz: Umożliwia zapisanie danych pacjenta oraz wyników badań w pliku programu Vision2 (domyślnie z rozszerzeniem vis). Funkcja dostępna jest również w menu Plik. ˆ Eksportuj: Umożliwia wyeksportowanie danych pacjenta oraz wyników badań do pliku tekstowego (domyślnie z rozszerzeniem txt). Funkcja dostępna jest również w menu Plik. Rysunek 10.13: Zakładka pomagająca w przeprowadzeniu wywiadu z pacjentem 63

63 Zakładka Testy Zakładka Testy (rys ) podzielona jest na 3 części, w których zgrupowane są przyciski umożliwiające przeprowadzenie odpowiednio testów klasycznych, wektograficznych lub kropkowych. Uruchomienie konkretnego testu następuje po kliknięciu jednej z ikon symbolizujących poszczególne rodzaje testów. Sterowanie programem w czasie wykonywania testu opisane jest w podsekcji Uruchomienie testu klasycznego powoduje jednokrotne wykonanie tego testu. Testy wektograficzne i kropkowe przeprowadzane są domyślnie 4 razy. Wartość tę można zmienić niezależnie dla obu rodzajów testów w polach ilość powtórzeń. Testy wektograficzne i kropkowe mierzą kąt widzenia stereoskopowego. Dla ułatwienia predefiniowano 7 wartości: 0,5 ; 1 ; 2 ; 5 ; 10 ; 20 ; i 50. Przycisk położony najniżej w obu grupach testów służy do uruchamiania badania z wartością kąta stereoskopowego podaną przez użytkownika. Domyślnie wpisana jest wartość 75, ale można wpisać dowolną wartość. Rysunek 10.14: Zakładka umożliwiająca uruchamianie testów klasycznych 64

64 Zakładka Synoptofor Zakładka Synoptofor (rys ) podzielona jest na 3 części, w których zgrupowane są przyciski umożliwiające przeprowadzanie odpowiednio testów jednoczesnej percepcji, fuzji lub stereopsji. Uruchomienie konkretnego testu następuje po kliknięciu jednej z ikon symbolizujących poszczególne rodzaje testów. Sterowanie programem w czasie wykonywania testu opisane jest w podsekcji Rysunek 10.15: Zakładka umożliwiająca uruchamianie testów symulujących synoptofor Zakładka Wyniki Zakładka Wyniki (rys ) umożliwia przeglądanie wyników badań. Są one prezentowane w kolejności chronologicznej w tabeli podzielonej na 4 kolumny: ˆ Data: Data i godzina wykonania testu. Jeżeli test wykonywany był tego samego dnia wyświetlana jest sama godzina. 65

65 ˆ Nazwa testu: Nazwa przeprowadzonego testu, np. Test krzyżowy lub Test krzyżowy z centralnym bodźcem. ˆ Badana wada: Opis badanej wady, np. foria pozioma/pionowa. Jeżeli test mierzy jednocześnie dwie wady, są one rozdzielone ukośnikiem. ˆ Wynik: Wynik uzyskany w teście, np / Apostrof przy wyniku oznacza, że wynik podany jest w minutach kątowych. Jeżeli test umożliwia pomiar dwóch wad jednocześnie, podane będą dwie wartości rozdzielone ukośnikiem. Kolejność odpowiada opisowi w polu Badana wada. Wyniki (razem z danymi pacjenta) można wczytywać, zapisywać lub eksportować za pomocą przycisków z zakładki Pacjent (rys ) lub korzystając z menu Plik (rys. 10.7). Jeżeli szerokość pola jest za mała w stosunku do ilości tekstu, można rozszerzyć kolumnę lub zmaksymalizować całe okienko z programem. Rysunek 10.16: Zakładka prezentująca wyniki badania 66

66 10.4 Opis testów Sterowanie przebiegiem testów Opcje dostępne w testach klasycznych i symulujących synoptofor Podczas wyświetlania testów klasycznych lub symulujących synoptofor dostępne są następujące opcje: ˆ ^: Powoduje przesunięcie w górę fragmentu testu widocznego dla jednego oka. ˆ _: Powoduje przesunięcie w dół fragmentu testu widocznego dla jednego oka. ˆ : Powoduje przesunięcie w lewo fragmentu testu widocznego dla jednego oka. ˆ : Powoduje przesunięcie w prawo fragmentu testu widocznego dla jednego oka. ˆ ENTER: Powoduje zakończenie testu i zapamiętanie aktualnego wyniku badania. Przeglądanie zapamiętanych wyników jest możliwe w zakładce Wyniki. ˆ ESC: Powoduje anulowanie testu. Wynik nie jest zapamiętywany. ˆ SPACE: Kolejne naciśnięcia spacji powodują kolejno ukrycie lub pokazanie wyniku w lewym górnym rogu testu. Równoznaczne z wybraniem opcji Pokazuj wyniki na teście w menu Konfiguracja (rys. 10.8). ˆ P: Kolejne naciśnięcia klawisza P powodują zamianę polaryzacji czyli zamianę między sobą elementów prezentowanych dla lewego lub prawego oka. Równoznaczne z wybraniem opcji Zamiana polaryzacji w menu Konfiguracja (rys. 10.8). Opcje dostępne w testach wektograficznych i kropkowych Testy wektograficzne i kropkowe działają nieco inaczej od pozostałych. Domyślnie są one powtarzane kolejno 4 razy. Ilość tą można zmienić w zakładce Testy (rys ) w polach Ilość powtórzeń niezależnie dla testów wektograficznych lub kropkowych. Dodatkowo klawisze ze strzałkami nie służą w tych testach do przesuwania elementów. Są one używane do wskazywania jednego z czterech trójkątów, który wydaje się pacjentowi przestrzenny (położony nad lub pod płaszczyzną ekranu). 67

67 Opcje dostępne podczas wykonywania testów wektograficznych i kropkowych: ˆ ^: Zaznaczenie górnego trójkąta. Wynik tego pojedynczego testu jest od razu zapamiętywany i następuje przejście do następnego testu z serii lub zakończenie pomiaru. ˆ _: Zaznaczenie dolnego trójkąta. Wynik tego pojedynczego testu jest od razu zapamiętywany i następuje przejście do następnego testu z serii lub zakończenie pomiaru. ˆ : Zaznaczenie lewego trójkąta. Wynik tego pojedynczego testu jest od razu zapamiętywany i następuje przejście do następnego testu z serii lub zakończenie pomiaru. ˆ : Zaznaczenie prawego trójkąta. Wynik tego pojedynczego testu jest od razu zapamiętywany i następuje przejście do następnego testu z serii lub zakończenie pomiaru. ˆ ESC: Powoduje anulowanie testu. Wynik aktualnego pomiaru nie jest zapamiętywany, ale wyniki testów poprzedzających aktualny w serii zostały już zapisane podczas naciśnięcia jednego z klawiszy oznaczonych strzałkami. ˆ SPACE: Kolejne naciśnięcia spacji powodują kolejno ukrycie lub pokazanie wyniku w lewym górnym rogu testu. Równoznaczne z wybraniem opcji Pokazuj wyniki na teście w menu Konfiguracja (rys. 10.8). ˆ P: Kolejne naciśnięcia klawisza P powodują zamianę polaryzacji czyli zamianę między sobą elementów prezentowanych dla lewego lub prawego oka. Równoznaczne z wybraniem opcji Zamiana polaryzacji w menu Konfiguracja (rys. 10.8). Opcje dostępne w trybie dwumonitorowym Włączenie trybu pracy dwumonitorowej następuje po wybraniu opcji Praca dwumonitorowa z menu Konfiguracja. Przed uruchomieniem tego trybu należy skonfigurować system operacyjny zgodnie z zaleceniami w podsekcji Podczas pracy w trybie dwumonitorowym dostępne są dodatkowe opcje, oprócz tych opisanych wcześniej. Na monitorze przeznaczonym dla badającego wyświetlane jest dodatkowe okienko z aktualnymi wynikami badania (rys. 10.9). Naciśnięcie przycisku Anuluj na tym okienku jest równoznaczne z naciśnięciem klawisza ESC. 68

68 Interpretacja rysunków W rysunkach obrazujących testy użyto ukośnego kreskowania na oznaczenie elementów widocznych jednoocznie. Kreskowanie pod kątem 45 oznacza, że element jest widoczny jednym okiem. Elementy zakreskowane pod kątem 135 są widoczne drugim okiem Testy krzyżowe Klasyczny test krzyżowy Wygląd klasycznego testu krzyżowego jest przedstawiony na rysunku Pozwala on zmierzyć poziomą i pionową forię dysocjacyjną. Podczas badania pacjent ma możliwość niezależnego: ˆ przesuwania poziomego ramienia krzyża w górę (klawisz ^) lub w dół (klawisz _), ˆ przesuwania pionowego ramienia krzyża w lewo (klawisz ) lub w prawo (klawisz ). Wynik badania jest podawany w mierze kątowej w postaci dwóch liczb oddzielonych ukośnikiem. Pierwsza wartość dotyczy wady w płaszczyźnie poziomej, a druga w pionowej. Oba wyniki są obliczane z równania 10.1 na podstawie przesunięcia odpowiedniego ramienia krzyża x i odległości od monitora l. ( ) x α = arctg (10.1) l Test krzyżowy z centralnym bodźcem do fuzji Test krzyżowy z centralnym bodźcem do fuzji przedstawiono na rysunku Stanowi on samodzielną modyfikację klasycznego testu krzyżowego, dlatego brak jest danych na temat interpretacji otrzymywanego testu. Podczas badania pacjent ma możliwość niezależnego przesuwania ramion krzyża analogicznie jak w klasycznym teście krzyżowym. Wynik badania jest obliczany i prezentowany jak poprzednio. 69

69 Rysunek 10.17: Klasyczny test krzyżowy Rysunek 10.18: Test krzyżowy z centralnym bodźcem do fuzji 70

70 Testy klamrowe Klasyczny pionowy test klamrowy Klasyczny pionowy test klamrowy jest przedstawiony na rysunku Pozwala on zmierzyć pionową forię asocjacyjną oraz pionową anizejkonię. Podczas badania pacjent ma możliwość niezależnego: ˆ przesuwania prawej klamry w górę (klawiszem ^) lub w dół (klawiszem _), ˆ wydłużania w górę i w dół (klawiszem ) lub skracania (klawiszem ) prawej klamry. Wynik badania jest podawany w postaci dwóch liczb oddzielonych ukośnikiem. Pierwsza wartość (wyrażona w mierze kątowej) dotyczy pionowej forii, a druga (w procentach) dotyczy pionowej anizejkonii. Wielkość forii α jest obliczana z równania 10.1 na podstawie przesunięcia prawej klamry x i odległości od monitora l. Wielkość anizejkonii A jest obliczana z równania 10.2 na podstawie początkowej wysokości klamry x, końcowej wielkości klamry y oraz odległości od monitora l. A = y x 100% (10.2) x Pionowy test klamrowy bez centralnego bodźca do fuzji Pionowy test klamrowy bez centralnego bodźca do fuzji przedstawiono na rysunku Stanowi on samodzielną modyfikację klasycznego pionowego testu klamrowego, dlatego brak jest danych na temat interpretacji otrzymywanego wyniku. Podczas badania pacjent ma możliwość niezależnego przesuwania prawej klamry analogicznie jak w klasycznym pionowym teście klamrowym. Wynik badania jest obliczany i prezentowany jak poprzednio. 71

71 Rysunek 10.19: Klasyczny pionowy test klamrowy Rysunek 10.20: Pionowy test klamrowy bez centralnego bodźca do fuzji 72

72 Klasyczny poziomy test klamrowy Klasyczny poziomy test klamrowy jest przedstawiony na rysunku Pozwala on zmierzyć poziomą forię asocjacyjną oraz poziomą anizejkonię. Podczas badania pacjent ma możliwość niezależnego: ˆ przesuwania dolnej klamry w lewo (klawiszem ) lub w prawo (klawiszem ), ˆ wydłużania w poziomie (klawiszem ^) lub skracania (klawiszem _) dolnej klamry. Wynik badania jest podawany w postaci dwóch liczb oddzielonych ukośnikiem. Pierwsza wartość (wyrażona w mierze kątowej) dotyczy poziomej forii, a druga (w procentach) dotyczy poziomej anizejkonii. Wielkość forii α jest obliczana z równania 10.1 na podstawie przesunięcia dolnej klamry x i odległości od monitora l. Wielkość anizejkonii A jest obliczana z równania 10.2 na podstawie początkowej wysokości klamry x, końcowej wielkości klamry y oraz odległości od monitora l. Poziomy test klamrowy bez centralnego bodźca do fuzji Poziomy test klamrowy bez centralnego bodźca do fuzji przedstawiono na rysunku Stanowi on samodzielną modyfikację klasycznego poziomego testu klamrowego, dlatego brak jest danych na temat interpretacji otrzymywanego wyniku. Podczas badania pacjent ma możliwość niezależnego przesuwania dolnej klamry analogicznie jak w klasycznym poziomym teście klamrowym. Wynik badania jest obliczany i prezentowany jak poprzednio. 73

73 Rysunek 10.21: Klasyczny poziomy test klamrowy Rysunek 10.22: Poziomy test klamrowy bez centralnego bodźca do fuzji 74

74 Test trójkątny Test trójkątny jest przedstawiony na rysunku Służy on do sprawdzania czy występuje widzenie stereoskopowe. W centrum testu znajduje się duże koło stanowiące punkt do fiksacji wzroku. Powyżej i poniżej koła znajdują się po dwa trójkąty. Oba lewe trójkąty są widziane przez jedno oko, a oba prawe przez drugie. Wywołuje to wrażenie przestrzenności trójkątów. Osoba badana u której występuje widzenie stereoskopowe będzie widziała oba trójkąty ponad powierzchnią planszy (lub pod powierzchnią w zależności od ustawienia okularów). Paralaksę trójkątów wyświetlanych przez program można zwiększać za pomocą klawisza ^lub zmniejszać za pomocą klawisza _. Umożliwia to sprawdzanie występowania widzenia stereoskopowego dla różnych kątów. Po uruchomieniu testu program wyświetla trójkąty rozsunięte zawsze o 10. Rozsunięcie trójkątów x jest przeliczane na kąt widzenia stereoskopowego α na podstawie odległości od monitora l z równania Rysunek 10.23: Test trójkątny 75

75 Stereobalans Stereobalans jest przedstawiony na rysunku Stanowi on zmodyfikowany test trójkątny, służący do wykrywania dominacji któregoś oka. Jeżeli taka wada występuje, to linia łącząca środki trójkątów nie przechodzi przez środek koła. Aby umożliwić pacjentowi dokładniejsze określenie położenia tej linii dodano skalę pomiarową w okolicach koła. Podczas badania pacjent ma możliwość niezależnego: ˆ zwiększania kąta widzenia stereoskopowego (klawiszem ^) lub jego zmniejszania (klawiszem _), ˆ przesuwania wszystkich trójkątów razem w lewo (klawiszem ) lub w prawo (klawiszem ) Możliwość poziomego przesuwania trójkątów umożliwia kompensację dominacji oka, jeżeli taka występuje i pomiar wielkości D tej wady. Jest ona obliczana z równania 10.3 na podstawie odległości trójkątów x i poziomego przesunięcia trójkątów y. D = 2y x 100% (10.3) Rysunek 10.24: Stereobalans 76

76 Testy wskazówkowe Testy wskazówkowe pionowe i poziome Testy wskazówkowe pionowe (rys ) i poziome (rys ) mogą służyć do badania forii. W tym zakresie dublują funkcjonalność testów: krzyżowych i klamrowych. Podstawowa różnica polega na istnieniu dodatkowego niecentralnego bodźca do fuzji w postaci zewnętrznego okręgu na tle czarnego kwadratu. Dlatego mierząc forię testem wskazówkowym otrzymujemy wynik najlepiej oddający wielkość niewspółmierności fiksacyjnej. Zasada działania pionowych i poziomych testów wskazówkowych w stworzonym programie jest analogiczna do testów krzyżowych. Jedno oko widzi nieruchome podziałki, a drugie wskazówkę, którą można przemieszczać prostopadle do wskazywanego kierunku: ˆ W teście pionowym w górę (klawiszem ^) lub w dół (klawiszem _). ˆ W teście poziomym w lewo (klawiszem ) lub w prawo (klawiszem ). Wynik w mierze kątowej jest w obu przypadkach obliczany z równania 10.1 na podstawie odsunięcia x wskazówki od pierwotnego położenia i odległości od ekranu l. Test wskazówkowy podwójny Test wskazówkowy podwójny przedstawiono na rysunku Podczas badania pacjent ma możliwość niezależnego: ˆ Obracania pionową wskazówką (klawiszami oraz ). ˆ Obracania poziomą wskazówka (klawiszami ^oraz _). Test umożliwia rozróżnienie pomiędzy cykloforią o podłożu fizjologicznym, a pozorną cykloforią wywołaną przez soczewki o mocy cylindrycznej: ˆ Cykloforia fizjologiczna powoduje obrót wszystkich wskazówek o ten sam kąt. ˆ Pozorna cykloforia powoduje, że obrót wskazówki poziomej i pionowej nie jest jednakowy. Wynik badania jest prezentowany jako aktualny kąt obrotu poziomej i pionowej wskazówki. Dlatego konieczna jest jego samodzielna interpretacja w celu postawienia diagnozy. 77

77 Rysunek 10.25: Test wskazówkowy pionowy Rysunek 10.26: Test wskazówkowy poziomy Rysunek 10.27: Test wskazówkowy podwójny 78

78 Testy wektograficzne Testy wektograficzne zastosowane w programie służą do badania granicznego kąta widzenia stereoskopowego. Wygląd testu przedstawiony jest na rysunku Składa się on z bodźca do fuzji w postaci zewnętrznego czarnego okręgu oraz 4 trójkątów. Jeden z nich (wybierany losowo przez komputer) zawsze jest przestrzenny. Jest to osiągane poprzez wyświetlanie dla drugiego oka nieco przesuniętego w poziomie obrazu jednego z trójkątów. Dostępnych jest 7 predefiniowanych wartości kąta widzenia stereoskopowego: 0.5, 1, 2, 5, 10, 20, 50. Użytkownik może również sam podać dowolną wartość kąta. Po wyświetleniu testu pacjent określa trójkąt, który wydaje mu się przestrzenny. Trójkąty zostały rozłożone w sposób umożliwiający ich jednoznaczną identyfikację. Prawidłowa odpowiedź dla badającego jest określana za pomocą oznaczeń godzinowych: 3:00, 6:00, 9:00, 12:00. Pacjent może wskazać trójkąt, który wydaje mu się przestrzenny za pomocą strzałek na klawiaturze: ˆ Naciśnięcie ^ powoduje wskazanie górnego trójkąta. ˆ Naciśnięcie _ powoduje wskazanie dolnego trójkąta. ˆ Naciśnięcie powoduje wskazanie lewego trójkąta. ˆ Naciśnięcie powoduje wskazanie prawego trójkąta. Dla zwiększenia dokładności możliwe jest automatyczne powtarzanie testu. Domyślnie ilość powtórzeń wynosi 4. Rysunek 10.28: Test wektograficzny 79

79 Testy kropkowe Filozofia działania testów kropkowych jest podobna jak w przypadku testów wektograficznych. Również służą do pomiaru granicznego kąta widzenia stereoskopowego. Podobnie jak poprzednio, pojawiają się przestrzenne trójkąty, których położenie można wskazywać za pomocą strzałek na klawiaturze. Identyczne są również predefiniowane wartości kąta widzenia stereoskopowego, jak również możliwość powtarzania testu. Na tym jednak kończą podobieństwa. Sama zasada działania jest diametralnie różna. Wygląd testu przedstawiony jest na rysunku Składa się on z losowych punktów. Na ich tle pojawia się jeden z czterech trójkątów występujących uprzednio w testach wektograficznych. Powstaje on poprzez skopiowanie obszary ograniczonego kształtem trójkąta dla lewego oka. Następnie ta sama zawartość jest prezentowana prawemu oku z przesunięciem odpowiednim do wybranego kąta widzenia stereoskopowego. Dla zwiększenia dokładności możliwe jest automatyczne powtarzanie testu. Domyślnie ilość powtórzeń wynosi 4. Rysunek 10.29: Test punktów losowych 80

80 Testy jednoczesnej percepcji Jednoczesna percepcja obuoczna to pierwszy stopień widzenia obuocznego. Jest to zdolność do jednoczesnego postrzegania dwóch różnych obrazów tworzonych na siatkówce każdego oka. Sprawdzanie jednoczesnej percepcji obuocznej polega na prezentacji pacjentowi innego obrazu przed lewym i prawym okiem. Jeżeli pacjent nie widzi któregoś z obrazów, albo postrzega naprzemiennie - nie ma zdolności do jednoczesnej percepcji obuocznej. Program zawiera 5 testów sprawdzających występowanie u pacjenta jednoczesnej percepcji obuocznej. Składają się one zawsze z dwóch elementów, z których każdy widziany jest innym okiem: ˆ klatka i lew, ˆ buda i pies, ˆ koło rowerowe i piasta, ˆ dwa trójkąty stykające się wierzchołkami, ˆ garaż i samochód. Przykładowo na rysunku znajduje się element widoczny jednym okiem, a na rysunku drugim. Pacjent posiadający zdolność jednoczesnej percepcji obuocznej powinien postrzegać jak pokazano na rysunku W przypadku występowania forii pacjent ma możliwość jej skorygowania poprzez dowolne przesunięcie jednego z elementów: ˆ w górę za pomocą klawisza ^, ˆ w dół za pomocą klawisza _, ˆ w lewo za pomocą klawisza, ˆ w prawo za pomocą klawisza. Na podstawie przesunięcia elementu x i odległości od ekranu l program oblicza forię ze wzoru

81 Rysunek 10.30: Test jednoczesnej percepcji - obraz widziany jednoocznie Rysunek 10.31: Test jednoczesnej percepcji - obraz widziany jednoocznie Rysunek 10.32: Test jednoczesnej percepcji - obraz widziany obuocznie 82

82 Testy fuzji Fuzja to drugi stopień widzenia obuocznego. Polega na zlaniu się obrazów z obu siatkówek w jeden obraz. Proces ten przebiega w ośrodkach korowych mózgu. Filozofia sprawdzania zdolności do fuzji polega na prezentacji pacjentowi dwóch bardzo podobnych obrazów różniących się małymi szczegółami. Jeżeli pacjent nie postrzega wszystkich tych szczegółów - nie ma zdolności do fuzji. Program zawiera 5 testów sprawdzających występowanie fuzji u pacjenta. Składają się one zawsze z dwóch podobnych elementów, z których każdy widziany jest innym okiem: ˆ linia i kropka, ˆ królik, ˆ kwiatek, ˆ kościół, ˆ zegar. Przykładowo na rysunku znajduje się element widoczny jednym okiem, a na rysunku drugim. Pacjent posiadający do fuzji powinien postrzegać jak pokazano na rysunku W przypadku występowania forii pacjent ma możliwość jej skorygowania poprzez dowolne przesunięcie jednego z elementów: ˆ w górę za pomocą klawisza ^, ˆ w dół za pomocą klawisza _, ˆ w lewo za pomocą klawisza, ˆ w prawo za pomocą klawisza. Na podstawie przesunięcia elementu x i odległości od ekranu l program oblicza forię ze wzoru

83 Rysunek 10.33: Test fuzji - obraz widziany jednoocznie Rysunek 10.34: Test fuzji - obraz widziany jednoocznie Rysunek 10.35: Test fuzji - obraz widziany obuocznie 84

84 Testy stereopsji Stereopsja to najwyższy, trzeci stopień widzenia obuocznego. Jest możliwa dzięki parze oczu, postrzegających nieznacznie różniące się obrazy. Mózg analizuje te różnice i pozwala na odczuwanie trzeciego wymiaru (głębi). Sprawdzanie zdolności do stereopsji polega na prezentacji dla każdego oka obrazów przedstawiających ten sam przedmiot, ale z nieco różniących się kierunków patrzenia. Pacjent bez zdolności do stereopsji widzi w takim przypadku tylko płaski obraz. Program zawiera 5 testów sprawdzających zdolność do stereopsji. Zawierają one obrazy tych samych przedmiotów przedstawionych z różnych kierunków patrzenia. ˆ okręgi, ˆ wiadro, ˆ oczy, ˆ bierki, ˆ figury. Przykładowo na rysunku znajduje się element widoczny jednym okiem, a na rysunku drugim. Pacjent posiadający do stereopsji powinien postrzegać te obrazy przestrzennie. W przypadku występowania forii pacjent ma możliwość jej skorygowania poprzez dowolne przesunięcie jednego z elementów: ˆ w górę za pomocą klawisza ^, ˆ w dół za pomocą klawisza _, ˆ w lewo za pomocą klawisza, ˆ w prawo za pomocą klawisza. Na podstawie przesunięcia elementu x i odległości od ekranu l program oblicza forię ze wzoru

85 Rysunek 10.36: Test stereopsji - obraz widziany jednoocznie Rysunek 10.37: Test stereopsji - obraz widziany jednoocznie 86

Komputery I (2) Panel sterowania:

Komputery I (2) Panel sterowania: Komputery I (2) Paweł Jamer Panel sterowania: Podstawowym miejscem z którego zarządzamy ustawieniami systemu Windows jest panel sterowania. Znaleźć tam możemy wszelkiego rodzaju narzędzia umożliwiające

Bardziej szczegółowo

Pokaz slajdów na stronie internetowej

Pokaz slajdów na stronie internetowej Pokaz slajdów na stronie internetowej... 1 Podpisy pod zdjęciami... 3 Publikacja pokazu slajdów w Internecie... 4 Generator strony Uczelni... 4 Funkcje dla zaawansowanych użytkowników... 5 Zmiana kolorów

Bardziej szczegółowo

4.2. Ustawienia programu

4.2. Ustawienia programu 4.2. Ustawienia programu Zmiana wielkości dokumentu Pracując w programie MS Excel 2010 niejednokrotnie doświadczysz sytuacji, w której otwarty przez Ciebie arkusz nie będzie mieścił się na ekranie monitora.

Bardziej szczegółowo

I. Program II. Opis głównych funkcji programu... 19

I. Program II. Opis głównych funkcji programu... 19 07-12-18 Spis treści I. Program... 1 1 Panel główny... 1 2 Edycja szablonu filtrów... 3 A) Zakładka Ogólne... 4 B) Zakładka Grupy filtrów... 5 C) Zakładka Kolumny... 17 D) Zakładka Sortowanie... 18 II.

Bardziej szczegółowo

Oficyna Wydawnicza UNIMEX ebook z zabezpieczeniami DRM

Oficyna Wydawnicza UNIMEX ebook z zabezpieczeniami DRM Oficyna Wydawnicza UNIMEX ebook z zabezpieczeniami DRM Opis użytkowy aplikacji ebookreader Przegląd interfejsu użytkownika a. Okno książki. Wyświetla treść książki podzieloną na strony. Po prawej stronie

Bardziej szczegółowo

Tworzenie prezentacji w MS PowerPoint

Tworzenie prezentacji w MS PowerPoint Tworzenie prezentacji w MS PowerPoint Program PowerPoint dostarczany jest w pakiecie Office i daje nam możliwość stworzenia prezentacji oraz uatrakcyjnienia materiału, który chcemy przedstawić. Prezentacje

Bardziej szczegółowo

System obsługi wag suwnicowych

System obsługi wag suwnicowych System obsługi wag suwnicowych Wersja 2.0-2008- Schenck Process Polska Sp. z o.o. 01-378 Warszawa, ul. Połczyńska 10 Tel. (022) 6654011, fax: (022) 6654027 schenck@schenckprocess.pl http://www.schenckprocess.pl

Bardziej szczegółowo

Expo Composer. www.doittechnology.pl 1. Garncarska 5 70-377 Szczecin tel.: +48 91 404 09 24 e-mail: info@doittechnology.pl. Dokumentacja użytkownika

Expo Composer. www.doittechnology.pl 1. Garncarska 5 70-377 Szczecin tel.: +48 91 404 09 24 e-mail: info@doittechnology.pl. Dokumentacja użytkownika Expo Composer Dokumentacja użytkownika Wersja 1.0 www.doittechnology.pl 1 SPIS TREŚCI 1. O PROGRAMIE... 3 Wstęp... 3 Wymagania systemowe... 3 Licencjonowanie... 3 2. PIERWSZE KROKI Z Expo Composer... 4

Bardziej szczegółowo

Synchronizator plików (SSC) - dokumentacja

Synchronizator plików (SSC) - dokumentacja SZARP http://www.szarp.org Synchronizator plików (SSC) - dokumentacja Wersja pliku: $Id: ssc.sgml 4420 2007-09-18 11:19:02Z schylek$ > 1. Witamy w programie SSC Synchronizator plików (SZARP Sync Client,

Bardziej szczegółowo

System imed24 Instrukcja Moduł Analizy i raporty

System imed24 Instrukcja Moduł Analizy i raporty System imed24 Instrukcja Moduł Analizy i raporty Instrukcja obowiązująca do wersji 1.8.0 Spis treści 1. Moduł Analizy i Raporty... 3 1.1. Okno główne modułu Analizy i raporty... 3 1.1.1. Lista szablonów

Bardziej szczegółowo

Rozdział 5. Administracja kontami użytkowników

Rozdział 5. Administracja kontami użytkowników Rozdział 5. Administracja kontami użytkowników Ćwiczenia zawarte w tym rozdziale pozwolą przygotować oddzielne środowisko pracy dla każdego użytkownika komputera. Windows XP, w porównaniu do systemów Windows

Bardziej szczegółowo

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem. WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy

Bardziej szczegółowo

Temat: Organizacja skoroszytów i arkuszy

Temat: Organizacja skoroszytów i arkuszy Temat: Organizacja skoroszytów i arkuszy Podstawowe informacje o skoroszycie Excel jest najczęściej wykorzystywany do tworzenia skoroszytów. Skoroszyt jest zbiorem informacji, które są przechowywane w

Bardziej szczegółowo

Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska

Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska Katedra Cybernetyki i Robotyki Politechnika Wrocławska Kurs: Zaawansowane metody programowania Copyright c 2014 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania

Bardziej szczegółowo

Przewodnik użytkownika (instrukcja) AutoMagicTest

Przewodnik użytkownika (instrukcja) AutoMagicTest Przewodnik użytkownika (instrukcja) AutoMagicTest 0.1.21.137 1. Wprowadzenie Aplikacja AutoMagicTest to aplikacja wspierająca testerów w testowaniu i kontrolowaniu jakości stron poprzez ich analizę. Aplikacja

Bardziej szczegółowo

5.4. Tworzymy formularze

5.4. Tworzymy formularze 5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania

Bardziej szczegółowo

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel etrader Pekao Podręcznik użytkownika Strumieniowanie Excel Spis treści 1. Opis okna... 3 2. Otwieranie okna... 3 3. Zawartość okna... 4 3.1. Definiowanie listy instrumentów... 4 3.2. Modyfikacja lub usunięcie

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

Minimalna wspierana wersja systemu Android to 2.3.3 zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4.

Minimalna wspierana wersja systemu Android to 2.3.3 zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4. Dokumentacja dla Scandroid. Minimalna wspierana wersja systemu Android to 2.3.3 zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4. Scandroid to aplikacja przeznaczona

Bardziej szczegółowo

Instrukcja obsługi programu Do-Exp

Instrukcja obsługi programu Do-Exp Instrukcja obsługi programu Do-Exp Autor: Wojciech Stark. Program został utworzony w ramach pracy dyplomowej na Wydziale Chemicznym Politechniki Warszawskiej. Instrukcja dotyczy programu Do-Exp w wersji

Bardziej szczegółowo

Dell UltraSharp UP3017 Dell Display Manager Instrukcja użytkownika

Dell UltraSharp UP3017 Dell Display Manager Instrukcja użytkownika Dell UltraSharp UP3017 Dell Display Manager Instrukcja użytkownika Model: UP3017 Model - zgodność z przepisami: UP3017t UWAGA: UWAGA oznacza ważną informację, pomocną w lepszym używaniu komputera. Copyright

Bardziej szczegółowo

wersja 1.0 ośrodek komputerowy uj cm ul. mikołaja kopernika 7e, Kraków tel

wersja 1.0 ośrodek komputerowy uj cm ul. mikołaja kopernika 7e, Kraków tel S Y S T E M B A D A Ń A N K I E T O W Y C H wersja 1.0 uj cm, 31-034 Kraków tel. 12 422 99 63 Opis konfiguracji Tworzenie ankiety rozpoczynamy ikoną znajdującą się w prawym górnym rogu ekranu. Ilustracja

Bardziej szczegółowo

ERGODESIGN - Podręcznik użytkownika. Wersja 1.0 Warszawa 2010

ERGODESIGN - Podręcznik użytkownika. Wersja 1.0 Warszawa 2010 ERGODESIGN - Podręcznik użytkownika Wersja 1.0 Warszawa 2010 Spis treści Wstęp...3 Organizacja menu nawigacja...3 Górne menu nawigacyjne...3 Lewe menu robocze...4 Przestrzeń robocza...5 Stopka...5 Obsługa

Bardziej szczegółowo

9.1.2. Ustawienia personalne

9.1.2. Ustawienia personalne 9.1.2. Ustawienia personalne 9.1. Konfigurowanie systemu Windows Systemy z rodziny Windows umożliwiają tzw. personalizację ustawień interfejsu graficznego poprzez dostosowanie wyglądu pulpitu, menu Start

Bardziej szczegółowo

Instrukcja obsługi. Helpdesk. Styczeń 2018

Instrukcja obsługi. Helpdesk. Styczeń 2018 Instrukcja obsługi Helpdesk Styczeń 2018 1 Spis treści: Ogólna obsługa Helpdesk...3 1. Logowanie do systemu....3 2. Menu główne...3 2.1 Strona domowa...4 2.2 Zmiana hasła...6 3. Otwarcie zgłoszenia...6

Bardziej szczegółowo

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer; 14.3. Podstawy obsługi X Window 14.3. Podstawy obsługi X Window W przeciwieństwie do systemów Windows system Linux nie jest systemem graficznym. W systemach Windows z rodziny NT powłokę systemową stanowi

Bardziej szczegółowo

1. Przypisy, indeks i spisy.

1. Przypisy, indeks i spisy. 1. Przypisy, indeks i spisy. (Wstaw Odwołanie Przypis dolny - ) (Wstaw Odwołanie Indeks i spisy - ) Przypisy dolne i końcowe w drukowanych dokumentach umożliwiają umieszczanie w dokumencie objaśnień, komentarzy

Bardziej szczegółowo

Dodawanie grafiki i obiektów

Dodawanie grafiki i obiektów Dodawanie grafiki i obiektów Word nie jest edytorem obiektów graficznych, ale oferuje kilka opcji, dzięki którym można dokonywać niewielkich zmian w rysunku. W Wordzie możesz zmieniać rozmiar obiektu graficznego,

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja Jesień 2007) Instrukcja numer D1/04_01/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 (D1) Tworzenie kopii zapasowej ustawień systemowych serwera - Zadania do wykonania

Bardziej szczegółowo

Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.

Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja. Kontrola topto Obsługa aplikacji Kontrola topto 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja. 5. Dodawanie, edycja i usuwanie przejść.

Bardziej szczegółowo

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI asix Aktualizacja pakietu asix 4 do wersji 5 lub 6 Pomoc techniczna Dok. Nr PLP0016 Wersja:08-12-2010 ASKOM i asix to zastrzeżony znak firmy ASKOM Sp. z o. o.,

Bardziej szczegółowo

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Uruchamianie edytora OpenOffice.ux.pl Writer 9 Dostosowywanie środowiska pracy 11 Menu Widok 14 Ustawienia dokumentu 16 Rozdział 2. OpenOffice

Bardziej szczegółowo

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Instalacja roli kontrolera domeny, Aby zainstalować rolę kontrolera domeny, należy uruchomić Zarządzenie tym serwerem, po czym wybrać przycisk

Bardziej szczegółowo

Dodawanie stron do zakładek

Dodawanie stron do zakładek Dodawanie stron do zakładek Aby dodać adres strony do zakładek otwieramy odpowiednią stronę a następnie wybieramy ikonę Dodaj zakładkę Po wybraniu ikony otworzy się okno umożliwiające dodanie adresy strony

Bardziej szczegółowo

Projekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31

Projekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31 Strona: 1 z 31 Explorer Analyzer 1 Uruchamianie programu i raportu PoniŜsze czynności uruchamiają program Bex Analyzer oraz wybrany raport z hurtowni danych. 1. uruchom z menu Start>Programy>Business Explorer>Analyzer

Bardziej szczegółowo

Spis treści. tel.: 782 580 850 e-mail: kontakt@e-zaplecze.pl 2

Spis treści. tel.: 782 580 850 e-mail: kontakt@e-zaplecze.pl 2 Spis treści 1. Wstęp... 3 2. Szybkie wystawienie aukcji w szablonie bez konieczności instalacji szablonu na koncie allegro... 4 3. Wystawianie aukcji w szablonie z instalacją szablonu na koncie allegro...

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja Jesień 2007) Instrukcja numer D1/05_03/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 Ręczne zakładanie kont użytkowników (D1) Jak ręcznie założyć konto w systemie

Bardziej szczegółowo

Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800.

Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800. Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800. Wraz z niniejszym tutorialem, dołączone są 4 pliki (krok0, krok1, itd). Nie należy ich

Bardziej szczegółowo

Przewodnik... Tworzenie Landing Page

Przewodnik... Tworzenie Landing Page Przewodnik... Tworzenie Landing Page Spis treści Kreator strony landing page Stwórz stronę Zarządzaj stronami 2 Kreator strony landing page Kreator pozwala stworzyć własną stronę internetową z unikalnym

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką Autor: Paweł Konieczny Promotor: dr Jadwigi Bakonyi Kategorie: aplikacja www Słowa kluczowe: Serwis

Bardziej szczegółowo

Data wydania: 2013-06-12. Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego

Data wydania: 2013-06-12. Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego Wersja 1.0 Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach Programu Operacyjnego Kapitał Ludzki Tytuł dokumentu: Dokumentacja dla administratora strony

Bardziej szczegółowo

Stawiamy pierwsze kroki

Stawiamy pierwsze kroki Stawiamy pierwsze kroki 3.1. Stawiamy pierwsze kroki Edytory tekstu to najbardziej popularna odmiana programów służących do wprowadzania i zmieniania (czyli edytowania) tekstów. Zalicza się je do programów

Bardziej szczegółowo

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7 5.0 5.3.3.5 Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7 Wprowadzenie Wydrukuj i uzupełnij to laboratorium. W tym laboratorium, będziesz korzystać z narzędzi administracyjnych

Bardziej szczegółowo

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2. Spis treści: 1 Podstawy pracy z aplikacją... 2 1.1 Układ strony... 2 strona 1 z 7 1 Podstawy pracy z aplikacją InDesign jest następcą starzejącego się PageMakera. Pod wieloma względami jest do niego bardzo

Bardziej szczegółowo

Viatoll Calc v1.3. Viatoll Calc. Instrukcja użytkownika. Strona 1

Viatoll Calc v1.3. Viatoll Calc. Instrukcja użytkownika. Strona 1 Viatoll Calc Instrukcja użytkownika Strona 1 Spis treści 1 Wstęp...3 2 Opis panelu głównego...3 2.1 Menu aplikacji...4 2.2 Tabela z trasami...5 2.3 Strona kalkulatora viatoll...6 2.4 Pasek statusu...7

Bardziej szczegółowo

Instrukcja obsługi programu. BlazeVideo HDTV Player v6

Instrukcja obsługi programu. BlazeVideo HDTV Player v6 Instrukcja obsługi programu BlazeVideo HDTV Player v6 Spis treści 1. Opis programu...3 1.1 Wprowadzenie...3 1.2 Funkcje programu...3 1.3 Wymagania sprzętowe...4 2. Wygląd interfejsu...4 3. Obsługa programu...6

Bardziej szczegółowo

Internetowy sterownik podlewania ogrodowego na LOGO! Sieciowy dostęp do LOGO! za pomocą http

Internetowy sterownik podlewania ogrodowego na LOGO! Sieciowy dostęp do LOGO! za pomocą http Internetowy sterownik podlewania ogrodowego na LOGO! Sieciowy dostęp do LOGO! za pomocą http W artykule przedstawiamy pierwszy z możliwych sposobów uinternetowienia systemu podlewania ogrodowego wykonanego

Bardziej szczegółowo

Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0

Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0 Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0 UWAGA 1: Przed dokonaniem jakichkolwiek zmian, zalecamy skopiować wcześniej kod html modułu do pliku na lokalnym dysku. W przypadku problemów ułatwi

Bardziej szczegółowo

Konfiguracja szablonu i wystawienie pierwszej aukcji allegro

Konfiguracja szablonu i wystawienie pierwszej aukcji allegro Konfiguracja szablonu i wystawienie pierwszej aukcji allegro Metod na wystawienie aukcji na allegro jest co najmniej 2. W pierwszej przechodzimy do zakładki MOJA SPRZEDAŻ, w USTAWIENIACH SPRZEDAŻY odnajdujemy

Bardziej szczegółowo

WOJEWÓDZTWO PODKARPACKIE

WOJEWÓDZTWO PODKARPACKIE WOJEWÓDZTWO PODKARPACKIE UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ ROZWOJU REGIONALNEGO Instrukcja instalacji generatora wniosku o dofinansowanie projektu ze środków EFRR w ramach I osi priorytetowej Regionalnego

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ

INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ W celu wprowadzenia, modyfikacji lub usunięcia informacji w Biuletynie Informacji Publicznej należy wpisać w przeglądarce adres strony: http:/bip.moriw.pl/admin.php

Bardziej szczegółowo

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6 Zawartość Wstęp... 1 Instalacja... 2 Konfiguracja... 2 Uruchomienie i praca z raportem... 6 Wstęp Rozwiązanie przygotowane z myślą o użytkownikach którzy potrzebują narzędzie do podziału, rozkładu, rozbiórki

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

1. Opis okna podstawowego programu TPrezenter.

1. Opis okna podstawowego programu TPrezenter. OPIS PROGRAMU TPREZENTER. Program TPrezenter przeznaczony jest do pełnej graficznej prezentacji danych bieżących lub archiwalnych dla systemów serii AL154. Umożliwia wygodną i dokładną analizę na monitorze

Bardziej szczegółowo

Programowanie Obiektowe GUI

Programowanie Obiektowe GUI Programowanie Obiektowe GUI Swing Celem ćwiczenia jest ilustracja wizualnego tworzenia graficznego interfejsu użytkownika opartego o bibliotekę Swing w środowisku NetBeans. Ponadto, ćwiczenie ma na celu

Bardziej szczegółowo

Nowy interfejs w wersji 11.0 C8 BETA

Nowy interfejs w wersji 11.0 C8 BETA Nowy interfejs w wersji 11.0 C8 BETA Copyright 2012 COMARCH Wszelkie prawa zastrzeżone Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione.

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 07 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami tworzenia aplikacji okienkowych w C#. Wprowadzenie teoretyczne. Rozważana w

Bardziej szczegółowo

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista 5.0 5.3.3.6 Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista Wprowadzenie Wydrukuj i uzupełnij to laboratorium. W tym laboratorium, będziesz korzystać z narzędzi administracyjnych

Bardziej szczegółowo

Serwis jest dostępny w internecie pod adresem www.solidnyserwis.pl. Rysunek 1: Strona startowa solidnego serwisu

Serwis jest dostępny w internecie pod adresem www.solidnyserwis.pl. Rysunek 1: Strona startowa solidnego serwisu Spis treści 1. Zgłoszenia serwisowe wstęp... 2 2. Obsługa konta w solidnym serwisie... 2 Rejestracja w serwisie...3 Logowanie się do serwisu...4 Zmiana danych...5 3. Zakładanie i podgląd zgłoszenia...

Bardziej szczegółowo

OPROGRAMOWANIE DEFSIM2

OPROGRAMOWANIE DEFSIM2 Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych OPROGRAMOWANIE DEFSIM2 Instrukcja użytkownika mgr inż. Piotr Trochimiuk, mgr inż. Krzysztof Siwiec, prof. nzw. dr hab. inż. Witold Pleskacz

Bardziej szczegółowo

VectraPortal. VectraPortal. wersja Instrukcja użytkownika Podstawowa funkcjonalność serwisu. [czerwiec 2016]

VectraPortal. VectraPortal. wersja Instrukcja użytkownika Podstawowa funkcjonalność serwisu. [czerwiec 2016] VectraPortal wersja 1.6.9 Instrukcja użytkownika Podstawowa funkcjonalność serwisu [czerwiec 2016] Spis treści 1 Wymagania systemowe... 3 2 Podstawowa funkcjonalność serwisu... 3 2.1 Mapa... 3 2.2 Pasek

Bardziej szczegółowo

I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu...

I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu... Kreator szablonów I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu... 7 a. Grafika... 7 b. Tekst... 7 c.

Bardziej szczegółowo

Dodanie nowej formy do projektu polega na:

Dodanie nowej formy do projektu polega na: 7 Tworzenie formy Forma jest podstawowym elementem dla tworzenia interfejsu użytkownika aplikacji systemu Windows. Umożliwia uruchomienie aplikacji, oraz komunikację z użytkownikiem aplikacji. W trakcie

Bardziej szczegółowo

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM 1.1. PODSTAWOWE INFORMACJE PC to skrót od nazwy Komputer Osobisty (z ang. personal computer). Elementy komputera można podzielić na dwie ogólne kategorie: sprzęt - fizyczne

Bardziej szczegółowo

Podgląd z rejestratorów IPOX na komputerze z systemem WINDOWS za pomocą programu NVMS-2.0 LITE

Podgląd z rejestratorów IPOX na komputerze z systemem WINDOWS za pomocą programu NVMS-2.0 LITE Wersja: 1.0 Data: 06.08.2019 Podgląd z rejestratorów IPOX na komputerze z systemem WINDOWS za pomocą programu NVMS-2.0 LITE NVMS-2 LITE jest oprogramowaniem typu CMS, umożliwiającym użytkownikowi sprawowanie

Bardziej szczegółowo

Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC.

Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC. 1 Moduł OPC Moduł OPC pozwala na komunikację z serwerami OPC pracującymi w oparciu o model DA (Data Access). Dzięki niemu można odczytać stan obiektów OPC (zmiennych zdefiniowanych w programie PLC), a

Bardziej szczegółowo

MS Access formularze

MS Access formularze MS Access formularze Formularze to obiekty służące do wprowadzania i edycji danych znajdujących się w tabelach. O ile wprowadzanie danych bezpośrednio do tabel odbywa się zawsze w takiej samej formie (arkusz

Bardziej szczegółowo

Dell Display Manager podręcznik użytkownika

Dell Display Manager podręcznik użytkownika Dell Display Manager podręcznik użytkownika Przegląd Korzystanie z okna dialogowego szybkich ustawień Ustawianie podstawowych funkcji wyświetlania Przypisywanie trybów ustawień wstępnych do aplikacji Stosowanie

Bardziej szczegółowo

Przewodnik użytkownika (instrukcja) AutoMagicTest

Przewodnik użytkownika (instrukcja) AutoMagicTest Przewodnik użytkownika (instrukcja) AutoMagicTest 0.2.1.173 1. Wprowadzenie Aplikacja AutoMagicTest to aplikacja wspierająca testerów w testowaniu i kontrolowaniu jakości stron poprzez ich analizę. Aplikacja

Bardziej szczegółowo

OpenOfficePL. Zestaw szablonów magazynowych. Instrukcja obsługi

OpenOfficePL. Zestaw szablonów magazynowych. Instrukcja obsługi OpenOfficePL Zestaw szablonów magazynowych Instrukcja obsługi Spis treści : 1. Informacje ogólne 2. Instalacja zestawu a) konfiguracja połączenia z bazą danych b) import danych z poprzedniej wersji faktur

Bardziej szczegółowo

Przewodnik Szybki start

Przewodnik Szybki start Przewodnik Szybki start Program Microsoft Publisher 2013 wygląda inaczej niż wcześniejsze wersje, dlatego przygotowaliśmy ten przewodnik, aby skrócić czas nauki jego obsługi. Pasek narzędzi Szybki dostęp

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji

Bardziej szczegółowo

SPIS TREŚCI. Sposób pierwszy... 3 Sposób drugi Ikony banków Ikony dostawców Strona1

SPIS TREŚCI. Sposób pierwszy... 3 Sposób drugi Ikony banków Ikony dostawców Strona1 INSTRUKCJA UŻYTKOWANIA SZABLONU ALLEGRO ZAKUPIONEGO W PAKIECIE STANDARD, MAXI LUB VIP. SPIS TREŚCI 1. OTRZYMANE PLIKI.... 2 2. DODANIE SZABLONU DO SERWISU ALLEGRO ORAZ JEGO UŻYTKOWANIE.... 3 Sposób pierwszy....

Bardziej szczegółowo

System Obsługi Zleceń

System Obsługi Zleceń System Obsługi Zleceń Podręcznik Administratora Atinea Sp. z o.o., ul. Chmielna 5/7, 00-021 Warszawa NIP 521-35-01-160, REGON 141568323, KRS 0000315398 Kapitał zakładowy: 51.000,00zł www.atinea.pl wersja

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,

Bardziej szczegółowo

Dodawanie stron do zakładek

Dodawanie stron do zakładek Dodawanie stron do zakładek Aby dodać adres strony do zakładek otwieramy odpowiednią stronę a następnie wybieramy ikonę Dodaj zakładkę Po wybraniu ikony otworzy się okno umożliwiające dodanie adresy strony

Bardziej szczegółowo

Baza wiedzy instrukcja

Baza wiedzy instrukcja Strona 1 z 12 Baza wiedzy instrukcja 1 Korzystanie z publikacji... 2 1.1 Interaktywny spis treści... 2 1.2 Przeglądanie publikacji... 3 1.3 Przejście do wybranej strony... 3 1.4 Przeglądanie stron za pomocą

Bardziej szczegółowo

Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku

Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku NOR-STA jest narzędziem wspierającym budowę, ocenę oraz zarządzanie strukturą argumentacji wiarygodności (assurance case),

Bardziej szczegółowo

Windows 10 - Jak uruchomić system w trybie

Windows 10 - Jak uruchomić system w trybie 1 (Pobrane z slow7.pl) Windows 10 - Jak uruchomić system w trybie awaryjnym? Najprostszym ze sposobów wymuszenia na systemie przejścia do trybu awaryjnego jest wybranie Start a następnie Zasilanie i z

Bardziej szczegółowo

5. Administracja kontami uŝytkowników

5. Administracja kontami uŝytkowników 5. Administracja kontami uŝytkowników Windows XP, w porównaniu do systemów Windows 9x, znacznie poprawia bezpieczeństwo oraz zwiększa moŝliwości konfiguracji uprawnień poszczególnych uŝytkowników. Natomiast

Bardziej szczegółowo

Korzystanie z aplikacji P-touch Transfer Manager

Korzystanie z aplikacji P-touch Transfer Manager Korzystanie z aplikacji P-touch Transfer Manager Wersja 0 POL Wprowadzenie Ważna uwaga Treść niniejszego dokumentu i dane techniczne produktu mogą ulegać zmianom bez powiadomienia. Firma Brother zastrzega

Bardziej szczegółowo

Spis treści. 1 Moduł RFID (APA) 3

Spis treści. 1 Moduł RFID (APA) 3 Spis treści 1 Moduł RFID (APA) 3 1.1 Konfigurowanie Modułu RFID..................... 3 1.1.1 Lista elementów Modułu RFID................. 3 1.1.2 Konfiguracja Modułu RFID (APA)............... 4 1.1.2.1

Bardziej szczegółowo

Instrukcja użytkownika Dell Display Manager

Instrukcja użytkownika Dell Display Manager Instrukcja użytkownika Dell Display Manager Informacje ogólne Dell Display Manager to aplikacja Windows wykorzystywana do zarządzania monitorem lub grupą monitorów. Umożliwia ona ręczną regulację wyświetlanego

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer

Bardziej szczegółowo

Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows

Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows Cel ćwiczenia: Zapoznanie się z: zarządzaniem systemami plików, zarządzaniem atrybutami plików, prawami do plików

Bardziej szczegółowo

Spis treści. 1 Moduł Mapy 2

Spis treści. 1 Moduł Mapy 2 Spis treści 1 Moduł Mapy 2 1.1 Elementy planu............................. 2 1.1.1 Interfejs widoku......................... 3 1.1.1.1 Panel sterujacy.................... 3 1.1.1.2 Suwak regulujacy przybliżenie...........

Bardziej szczegółowo

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze ABC komputera dla nauczyciela Materiały pomocnicze 1. Czego się nauczysz? Uruchamianie i zamykanie systemu: jak zalogować się do systemu po uruchomieniu komputera, jak tymczasowo zablokować komputer w

Bardziej szczegółowo

Rozdział 2. Konfiguracja środowiska pracy uŝytkownika

Rozdział 2. Konfiguracja środowiska pracy uŝytkownika Rozdział 2. Konfiguracja środowiska pracy uŝytkownika Ćwiczenia zawarte w tym rozdziale pozwolą na dostosowanie pulpitu i menu Start do indywidualnych potrzeb uŝytkownika. Środowisko graficzne systemu

Bardziej szczegółowo

Podstawy technologii cyfrowej i komputerów

Podstawy technologii cyfrowej i komputerów BESKIDZKIE TOWARZYSTWO EDUKACYJNE Podstawy technologii cyfrowej i komputerów Budowa komputerów cz. 2 systemy operacyjne mgr inż. Radosław Wylon 2010 1 Spis treści: Rozdział I 3 1. Systemy operacyjne 3

Bardziej szczegółowo

Opis zmian funkcjonalności platformy E-GIODO wprowadzających możliwość podpisania wniosku bezpośrednio w oknie przeglądarki.

Opis zmian funkcjonalności platformy E-GIODO wprowadzających możliwość podpisania wniosku bezpośrednio w oknie przeglądarki. Opis zmian funkcjonalności platformy E-GIODO wprowadzających możliwość podpisania wniosku bezpośrednio w oknie przeglądarki. Wstęp. Opisane poniżej zmiany wprowadzają modyfikacje platformy e-giodo w zakresie

Bardziej szczegółowo

Włączanie/wyłączanie paska menu

Włączanie/wyłączanie paska menu Włączanie/wyłączanie paska menu Po zainstalowaniu przeglądarki Internet Eksplorer oraz Firefox domyślnie górny pasek menu jest wyłączony. Czasem warto go włączyć aby mieć szybszy dostęp do narzędzi. Po

Bardziej szczegółowo

- w firmie AGD, w komputerze używanym przez sekretarkę oraz trzech akwizytorów stwierdzono usterkę systemu komputerowego,

- w firmie AGD, w komputerze używanym przez sekretarkę oraz trzech akwizytorów stwierdzono usterkę systemu komputerowego, 1. Projekt realizacji prac prowadzących do zlokalizowania i usunięcia usterek systemu komputerowego, w zakresie diagnozowania wstępnego, ustalenia przyczyn usterek i usunięcia usterek. 2. Założenia do

Bardziej szczegółowo

Instrukcja użytkownika systemu medycznego w wersji mobilnej. meopieka

Instrukcja użytkownika systemu medycznego w wersji mobilnej. meopieka Instrukcja użytkownika systemu medycznego w wersji mobilnej meopieka 17-04-2018 INFUSIO sp. z o. o. tel. 052 50 65 730 strona 2 z 23 Spis treści: 1. Logowanie do systemu... 4 2. Ekran główny... 6 3. Pacjenci-

Bardziej szczegółowo

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED Podręcznik użytkownika Katowice 2010 Producent programu: KAMSOFT S.A. ul. 1 Maja 133 40-235 Katowice Telefon: (0-32) 209-07-05 Fax:

Bardziej szczegółowo

Jak przygotować pliki gotowe do publikacji w sieci za pomocą DigitLabu?

Jak przygotować pliki gotowe do publikacji w sieci za pomocą DigitLabu? Jak przygotować pliki gotowe do publikacji w sieci za pomocą DigitLabu? Po zainstalowaniu DigitLabu na komputerze otrzymujemy pakiet programów niezbędnych do przygotowania cyfrowych wersji obiektów tekstowych.

Bardziej szczegółowo

IIIIIIIIIIIIIIIMMIMMIII

IIIIIIIIIIIIIIIMMIMMIII IIIIIIIIIIIIIIIMMIMMIII O programie Program Itelix itender Manager przeznaczony jest do zarządzania zapytaniami ofertowymi przesyłanymi za pomocą poczty elektronicznej przez firmy korzystające z systemu

Bardziej szczegółowo

MS Word 2010. Długi dokument. Praca z długim dokumentem. Kinga Sorkowska 2011-12-30

MS Word 2010. Długi dokument. Praca z długim dokumentem. Kinga Sorkowska 2011-12-30 MS Word 2010 Długi dokument Praca z długim dokumentem Kinga Sorkowska 2011-12-30 Dodawanie strony tytułowej 1 W programie Microsoft Word udostępniono wygodną galerię wstępnie zdefiniowanych stron tytułowych.

Bardziej szczegółowo