Latest update?
This page collects some of the code I wrote long time ago and the contents will not be updated. For the recent development and the maintained code, please refer to my GitHub page.
Easy3D |
|
Easy3D is an open-source library for 3D modeling, geometry processing, and rendering. It is implemented in C++ and designed with an emphasis on simplicity and efficiency. Key features include:
Source code, executable files, and documentation can be found from the GitHub page.
News: Aug. 2022, Easy3D received the Excellent Graphics Open Source Software Award at CAD & CG 2022. Find more here.
PolyFit |
|
PolyFit implements the hypothesis and selection based surface
reconstruction method described in the following paper:
Liangliang Nan, Peter Wonka. "PolyFit: Polygonal Surface Reconstruction from Point Clouds". ICCV 2017.
This method is dedicated for reconstructing simplified polygonal surfaces from point clouds.
Source code, executable files, and test data can be downloaded from PolyFit project page.
News: Since Aug.5, 2019, PolyFit is also officially part of CGAL. Find more here.
MVStudio |
|
MVStudio is intended to be a lightweight, easy to use, and integrated SfM (Structure from Motion) and MVS (Multi-View Stereo) solution. You can obtain MVStudio by building it from the source code or downloading the prebuilt binary files.
Source code, executable files, and more information can be found on the GitHub page.
Mapple |
Mapple is free software for processing and visualizing point clouds and polygonal models. Key
features include:
An outdated Windows executable can be downloaded here.
A completely new design of Mapple is available as part of
Easy3D. Prebuilt binaries for
macOS, Linux, and Windows are provided
here.
PcdViewer |
As requested by many students, I made public a simple prototype software PcdViewer for rendering point clouds. It also provides some interactive operations for processing point clouds, e.g, selection of points by sketching a rectangle, or by using a lasso tool. Of course, you can incorporate your own functionalities into it. The source code (with a prebuilt binary) can be downloaded here.
You can find more details about supported file formats in 'file_io.cpp'.
TaucsSolver |
TaucsSolver is a wrapper class for TAUCS, a powerfull linear system solver. You can download the source code (with examples) here. It contains the following three functions:
How to use it? Quite easy! See the examples in "example/test.cpp" :-)
Segmentation |
Segmentation is a program originally designed for segmenting STL models with sharp features (test data can be found here) . But finally we added 2D straight skeleton and offset (test polygon data can be found here) using CGAL to generate tool path for Rapid Prototyping when I was in SIA. The source code can be downloaded here.
NCSimu |
NCSimu is a simulation program for Numerical Control manufacturing mystem. You can download the source code here and a test data here.
OpenGL for MFC |
This is a piece of very old code! Using OpenGL in MFC is quite troublesome (at least it bothered me a lot when I started using OpenGL with MFC). So I wrote an OpenGLView class for MFC. You can download the source code here.
Steps to use it:
Copyright @Liangliang Nan