Externí konzultant: Antonín Míšek (Antonin.Misek [at] skoda-auto.cz)
Řešitel: Václav Kyba (kyba [at] feld·cvut·cz)
Navrhněte a implementujte modulární aplikaci sloužící jako jádro pro zpracování a vizualizaci 3D dat. Aplikace bude mít architekturu využívající pluginy ve formě dynamických knihoven s podporou vícevláknového zpracování. Při návrhu dbejte na možnost běhu na operačních systémech Windows a Linux. K implementaci použijte jazyk ANSI C++ a knihovnu wxWidgets.
Aplikace bude mít následující komponenty:
- datová struktura pro reprezentaci grafu scény včetně tzv. variant (podpora pro reprezentaci několika scén současně, metody pro modifikaci grafu scény)
- flexibilní pluginové rozhraní, jednotná reprezentace a modifikace parametrů pro pluginy
ovládání pomocí vlastního textového terminálu - parser příkazové řádky systému
- importní a exportní pluginy formátů FHS a OBJ
- zobrazovací plugin na bázi OpenGL
- plugin pro ovládání kamery
Plán prvních prací na projektu:
- formulace požadavků na pluginové rozhraní
- seznámení s možnostmi knihovny wxWidgets především co se týče podpory pluginů
- v případě nevyhovující funkčnosti wxWidgets nalezení vhodné alternativy s flexibilní pluginovou architekturou
- v nejhorším případě definice požadavků pro vlastní implementaci