Michael Wand's Homepage

contact teaching group research publications software

Open Source Software

Frameworks

We are using a custom software framework in research and teaching. It provides a modular toolbox for geometry processing algorithms, with a specific focus on the analysis of real-world geometric data (point clouds from 3D scanners, meshes, volumes). We provide three versions for download below:

  • GeoXL Version 3.5 — the latest open source version of our framework.
  • GeoXL Version 3.0 — an earlier version (in version 3.5, the file format has changed and significant portions of the system have been refactored, dropping support for older modules / research projects. Therefore the previous version is provided as well).
  • GeoX — a simplified version that is useful for teaching; it provides the same object oriented toolbox but tries to avoid unnecessary complexity.
  • XGRT — the previous release of GeoXL (provided for completeness; we recommend GeoXL 3 or 3.5)

All three versions are made available under a GPL license. A new version is currently under construction; a release date is not yet planned.


Further Research Code on GitHub

We are also providing code from recent research projects for download on GitHub.

GeoXL 3.5.1

About GeoXL 3.5

GeoXL 35 logoThe GeoXL software framework is the open source version of our research platform. The latest available version is version 3.5.1 (last update: Sept 04 2015).

Remarks & Documentation

  • Prerequisites: Currently GeoXL requires Windows (although the code is 99% portable, the Linux version is not ready yet). For building from sources, Visual Studio 2010 and QT 4.x.x are required.
  • Building from sources: For building the 32bit version, the environment variable "%QTDIR%" must be set such that it points to a directory with include,lib,bin subdirectories. For a 64bit build, the environment variable "%QTDIR64%" must be define to point to the corresponding 64bit QT installation. No further preparations are required.
  • Animation Reconstruction (2009): The module "x3deformation" provides the full source code used for the results in the paper "Efficient Reconstruction of Non-rigid Shape and Motion from Real-Time 3D Scanner Data".
  • Three Parameter Matching (2014): The module "x3projects/threeParameterMatchingGMOD14" provides the full source code used for the results in the follow-up paper "A Low-Dimensional Representation for Robust Partial Isometric Correspondences Computation.".
  • Brief Introduction: There is a short tutorial available from the dynamic geometry processing lecture. It only discussions a subsection of the functionality, though. Otherwise, please refer to the XGRT documentation below (the differences to the previous version are generally small; most importantly, the visual studio projects have been cleaned up using property sheets, and the name spaces has changed to geoxl).

Disclaimer

Our code is licensed under various open source licenses (please also be aware of varying licenses for third-party modules). Details are provided along with each module (each GeoXL 3.5 module comes with a "tags.h" file that specifies copyright, developers, and license terms; the cores system uses a permissive BSD license, and individual modules might opt for different terms, most commonly GPLs. For third party software (folder "third party"), refer to the respective original code repositories and the license information provided within the subdirectories.)

In general, this program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the individual license information for more details.

GeoX

About GeoX

geox logoGeoX is a small subset of GeoXL targeted towards class room use and small-scale homework projects.

  • Download the source code (last update: April 2013).
  • GeoX can be compiled on Windows (Visual Studio 2008/10), Linux (gcc), and (with some extra configuraion, see below) on MacOS. It requires QT 4.x.x.

Documentation

Lectures that have used GeoX:

Disclaimer

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

GeoXL 3

About GeoXL 3.0

GeoXL logoWe also provide the previous version 3.0 of the GeoXL system for reference / compatibility reasons (last update: Feb 28 2013). The follow-up version (3.5), as provided above, has made significant changes to the system architecture, including a new module system and a new file format, which is not backwards compatible to earlier versions. For new development, we recommend using the latest version.

Remarks & Documentation

Lectures that have used GeoXL 3

Disclaimer

Our code is licensed under GNU GPL2 (third-party modules might use a different license, as explained in the source archive):

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

XGRT

XGRT Logo
 
About XGRT

XGRT is an object oriented software system for rapid prototyping of graphics applications that has been used in several research projects. It is implemented in C++ based on the platform independent QT4 GUI library. The software is open source (GPL) and can be downloaded below. The system consists of an object oriented base layer, which is application independend, and an interactive 3D editor. The 3D editor currently provides the following features

  • Real-time rendering and editing of arbitrarily large point clouds, size is only limited by available hard disk space (out-of-core visualization and editing).
  • Modular scene graph architecture that supports point clouds, triangle meshes, and volume data.
  • Supports the most common graphics exchange formats (VRML, OBJ, SMF, PLY, OFF, BMP, JPG, PNG, universal configurable ASCII & Binary importer, ASCII export).
  • Attribute channel architecture: Arbitrary point / vertex / face / volume attributes, run-time configurable.
  • Flexible rendering architecture: Run-time programmable hardware shaders (shader input is bindable to user attribute channels).
  • Hardware accelerated global illumination rendering: Ambient occlusion, shadow mapping, environment mapping.

The system is highly modular and extensible. The main focus is rapid prototyping of research ideas, the system has not been designed as an end user application. It comes with no support and no warrenties.

 

Download & Documentation
  • Downloads — Windows installer and source code
  • XGRT Modules — Description of the different modules for developers (object oriented kernel, math, geometric data structures, multi-resolution data structures, editor)

 

Publications

The core algorithms and architecture of the system are described in the publications below:

Out-of-core Rendering and Editing M. Wand, A. Berner, M. Bokeloh, P. Jenke, A. Fleck, M. Hoffmann, B. Maier, D. Staneker, A.Schilling, H.-P. Seidel: Processing and Interactive Editing of Huge Point Clouds from 3D Scanners. In: Computers and Graphics, 32(2), 204-220, 2008.

paper (publisher site)
Out-of-core Rendering and Editing M. Wand, A. Berner, M. Bokeloh, A. Fleck, M. Hoffmann, P. Jenke, B. Maier, D. Staneker, A.Schilling: Interactive Editing of Large Point Clouds. In: Proc. Symposium on Point-Based Graphics, 2007.

paper (3.9 MB) -- video (DivX, 46 MB)
Developers

Developers: Michael WandAlexander BernerMartin BokelohArno FleckMark HoffmannPhilipp JenkeBenjamin MaierDirk StanekerRoman Parys

The system has been developed at WSI/GRIS, University of Tübingen and MPI Informatik, Saarbrücken.

Acknowledgements: This work has been supported by the Cluster of Excellence "Multi-Modal Computing and Interaction", the Max Planck Center for Visual Computing and Communication, the DFG grant "Perceptual Graphics",  Landesstiftung Baden-Württemberg (BW-FIT Projekt „Information at your fingertips – Interaktive Visualisierung für Gigapixel Displays”), and basic funding of WSI/GRIS and MPI Informatics.

Disclaimer

Our code is licensed under GNU GPL2 (third-party modules might use a different license, as explained in the source archive):

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

screenshot screenshot
screenshot screenshot

screenshot

screenshot screenshot
screenshot screenshot

screenshot

screenshot screenshot
screenshot