Teaching at the UoP
Courses
During the academic year 2009-2010 I am teaching the following courses at the Department of Computer Science and Technology of the University of Peloponnese:
Winter Semester
- Object-Oriented Programming (3rd semester)
- Computer Graphics (3rd semester)
Spring Semester
- Advanced Programming Topics (4th semester)
Graduate theses
The following graduate theses subjects in the areas of Graphics and Visualization are available. For more information, as well as for other subjects that may interest you in these areas, please contact me. Graduate theses that I have supervised in the past are available in the archives.
- Ray casting in multiresolution tetrahedral meshes
Details
Description
Ray casting through a tetrahedral mesh is used extensively for the visualization of scalar data fields defined on the mesh: every tetrahedron is coloured depending on the value of the field at its vertices using a colour map (for example, smaller values correspond to shades of blue and larger values to shades of red).
Simplified representations of the tetrahedral mesh (consisting of fewer tetrahedra) can be produced using various algorithms, so that the processing of the field by Graphics algorithms is simplified.
In this thesis, multiple levels of detail of a tetrahedral mesh will be combined in order to accelerate ray casting through the original mesh.
Objectives
For this thesis, software to visualize scalar fields over tetrahedral meshes using ray casting will be constructed. Multiple levels of detail of the original mesh will be provided, and an algorithm will be devised which will exploit the coherence of tetrahedra in successive levels of detail, in order to accelerate ray casting computations. The resulting visualization will be displayed using OpenGL or possibly another 3D Graphics API.
Deliverables
- Software library for loading tetrahedral meshes in multiple details, displaying them as wireframes, and switching between levels of detail.
- Program for scalar field visualization using ray casting.
- Source code documentation.
- Technical report describing the file formats, the algorithms developed, etc.
Required background
- Object-oriented programming in C++ (preferrably) or in Java.
- Basic knowledge of OpenGL or other 3D Graphics API.
Note that due to the heavy computational demands of the methods, use of the C++ language is preferred.
Expected duration (full time)
1 academic semester for 1 – 2 students.
- Production of support material for the labs of the “Data and Information Visualization” course
Details
Description
The course “Data and Information Visualization” presents the basic principles of Visualization and the main techniques for Data and Information Visualization. It is noted that Data Visualization usually refers to the display of scientific data (for example, scalar or vector fields on the plane or in space) whereas Information Visualization usually refers to the display of any other kind of information (for example, graphs, ontologies, other abstract but correlated data). The common aim is to exploit the graphical representation for the extraction of (qualitative) deductions that are not possible through the simple enumeration of the data.
For the support of the lab of the course, it is desirable to use existing software tools that implement the algorithms described.
Objectives
For this thesis, software tools that implement the basic data and information visualization algorithms will be researched. We mention, for instance, VTK (Visualization Toolkit) for data visualization and Prefuse for information visualization, but other available tools will be evaluated regarding their capabilities and their appropriateness for educational use. These tools may be either APIs that implement the required algorithms and facilitate the construction of related software, or end-user programs that allow the use of the algorithms through a graphical user interface, or a combination.
In the end, about 2 tools will be chosen that satisfy the chosen goals. For each tool, tutorial lessons and basic programming examples will be developed (or customized). Moreover, typical exercises appropriate for the student will be proposed.
Deliverables
- Material to be used for the lab of the course: tutorial lessons teaching the basics of the chosen software tools, accompanying programs in Java and/or C++, and types of exercises for students.
- Technical report containing the evaluation of the tools examined, more detailed description of the tools finally chosen for the course, presentation of the educational material developed.
Required background
- Object-oriented programming in Java and/or in C++.
- Principles of data and information visualization (or study of the course material before starting the work on the thesis!)
Expected duration (full time)
1 academic semester for 1 – 2 students.