Home
InterLight - aplikacja do wspierania oceny i ewaluacji instalacji oświetlenia wewnętrznego.
Quote by dr A. Sędziwy:
"Zasadniczym celem pracy jest opakowanie Radiance'a w oprogramowanie, które pozwala na policzenie fotometrii dla zadanej przez użytkownika sceny. Output ten może być w excelu/json-ie lub jeszcze czymś innym. Dodatkowo chciałbym, aby program miał możliwość znajdowania optymalnego rozwiązania. Optymalnego w sensie zużycia energii, paybacku itp. (do przedyskutowania)"
Numeracja stosowana w całym dokumencie
Bartłomiej Gnojek: Model formalny dla reprezentacji sceny w projektowaniu oświetlenia wewnętrznego. (żółty na schemacie)
- stworzenie modelu formalnego sceny (obiekty, ogólne parametry całej sceny, rozmiary)
- technologia: preferowany JSON (schema: JSON Schema, transformata: ??? research example, np: jsonT - wygląda ok)
- dobre poznanie Radiance, aby stworzony model był z nim kompatybilny (+ ew. rozszerzał go)
- Schema - do walidacji opisów scen, czy są zgodne z modelem
- Transformata JSONa do formatu Radiance
- parametryzowanie obiektów sceny ("pomieszczenie z obiektami w środku + tekstury + ew. jakieś parametry dot. właściwości w zakresie odbijania światła+???"), zależne od researchu i postępu pracy nr. 2.
- wystawienie API (interfejsów) dla pracy 3 dla wszystkich potrzebnych funkcjonalności (dodawanie obiektów, walidacja schemą, transformata JSONa do formatu Radiance, obiekty datamodelu do JSONa i w drugą stronę).
Rafał Salawa: Aplikacja do optymalizacji projektowania oświetlenia wewnętrznego. (zielony)
- input: output z Radiance + parametry sceny z tematu 1.
- output: wynik dwóch kolejnych funkcjonalności
- sprawdzanie spełniania norm oświetleniowych dla sceny - prawdopodobnie te normy dotyczą tylko luminancji na powierzchniach użytkowych, a w outpucie z Radiance dostajemy punkty i wartość luminancji (tylko w niestandardowych jednostkach).
- 'opłacalność'. Na razie mamy się skupić jedynie na oszczędności energetycznej na początek. Dla zadanej sceny (obiekty + powierzchnie użytkowe + punkty gdzie mają być lampy) i dostępnych źródeł światła ma podać najbardziej opłacalne spełniające normy. Parametry: póki co tylko wybór lampy + jej diming.
- wystawienie API dla tematu 3, które będzie pobierać input, i po wykonaniu operacji zwracać output.
Jakub Czajkowski: Budowa interfejsu dla biblioteki Radiance do projektowania oświetlenia wewnętrznego. (pomarańczowy)
- GUI w JavaFX umożliwiające wykonanie całej funkcjonalności projektu
- połączenie pozostałych modułów w spójną całość
- integracja z binariami Radiance
- Brak importu sceny z zewnętrznych formatów
- lampa na scenie == plik i ies2rad + diming
- outputem ma być output z modułu 3 oraz podgląd sceny z naniesionym naświetleniem - albo bezpośrednio w aplikacji (do rozeznania), albo wyeksportowanie w znanym formacie.
- Aplikacja desktopowa
- Interfejs użytkownika w JavaFX (od wersji Java 7u7 wbudowana w JDK)
- Binaria Radiance dołączone do aplikacji
- Projekt 3 jest zależny od 1 i 2, łączy on wszystkie moduły i zbudowanie go daje wykonywalny plik JAR całego projektu.
- Java JDK 8
- Maven
- IDE dowolne (polecany Eclipse)
Cała aplikacja to trzy moduły Mavenowe, odpowiadające poszczególnym tematom, jeden wspólny dla nich "parent" o nazwie "interlight", gdzie będziemy umieszczać wspólne dla całego projektu zależności zewnętrzne oraz projekt common-datamodel, który będzie wspólny dla wszystkich modułów - będzie to model podstawowych obiektów w całym projekcie.
Między poszczególnymi modułami, wydaje się, że jedyną zależnością jest, że "interlight-interface" zaciąga sobie dwa pozostałe moduły - tak też jest aktualnie zrobione.
Uruchomienie Mavenowego goala install ("mvn clean install") na projekcie parentowym ("interlight") buduje wszystkie moduły, sama aplikacja gotowa do uruchomienia powstaje w "interlight-interface\target\jfx\app".
UWAGA: przy pierwszym odpaleniu prawdopodobnie trzeba zrobić "mvn install -N" na parencie, żeby za pierwszym razem zbudował się bez "dzieci".
Projekt stworzony, w celu wydzielenia wszystkich modeli danych, które będą współdzielone przez aplikację. Przykładowo będą tu pewnie klasy na: Lampa, ConfigGUI, Obiekt na scenie, Wynik itp itd. "W praniu" wyjdzie co tu będzie tak na prawdę. Moduł developowany wspólnie przez wszystkich.
Zasady:
- jeśli istnieje potrzeba stworzenia obiektu datamodelu, który będzie potrzebny/będzie przekazywany do innego modułu, to tworzymy go tu.
- jeśli już taki tu jest, stworzony przez kogoś innego to nie tworzymy swojej wersji. Możemy w razie potrzeby ewentualnie dodać do niego dodatkowe pola, NIE zmieniając metod/konstruktorów, w razie potrzeby tworzymy swój konstruktor.
- Java JDK/JRE 8. Uwaga: GUI do uruchomienia wymaga Java 8 w wersji min. 8u40.
- "Stara" strona Radiance
- "Nowa" strona Radiance
- Instalki Radiance
- wszystkie otrzymane materiały - w repozytorium w katalogu uploads