= Welcome to !OpenMesh/D = !OpenMesh/D is a native port of of [http://www.openmesh.org OpenMesh] to the [http://www.digitalmars.com/d D programming language]. !OpenMesh is a library for manipulating polygonal meshes. The underlying data structure used is the [http://wiki.blender.org/index.php/BlenderDev/HeMesh ever]-[http://svn.boost.org/trac/boost/wiki/soc/2007/GenericGeometricLibrary popular] [http://www.cgal.org/Manual/3.3/doc_html/cgal_manual/HalfedgeDS/Chapter_main.html half edge] representation. The main drawback of this representation is that it is limited to orientable manifold meshes. Despite this, the halfedge representation is probably the most popular around, because it's relatively lean for the amount of flexibility it gives you. Lutz Kettner wrote a nice [http://www.mpi-inf.mpg.de/~kettner/pub/polyhedron_scg_98_a.html comparison of mesh data structures], comparing halfedge and quadedge and others. More information can be found in the [http://www-i8.informatik.rwth-aachen.de/OpenMesh/html/intro.html OpenMesh/C++ introduction]. == License == !OpenMesh/D is under the LGPL v2.1. This is the license used by the orignal C++ library, so there was little choice in this matter. == !OpenMesh/D Quick Links == * [http://lists.billbaxter.com/listinfo.cgi/openmesh-d-billbaxter.com/ Mailing List] -- Subscribe to the email discussion list (or [http://lists.billbaxter.com/private.cgi/openmesh-d-billbaxter.com/ view archives]) * [http://www.dsource.org/forums/viewforum.php?f=159 Forum] -- !OpenMesh/D discussion forum. * [wiki:Screenshots] - Screenshots of !OpenMesh/D viewer app. * [http://www.openmesh.org/ OpenMesh website] -- Main page of the original !OpenMesh/C++ website. * [http://www-i8.informatik.rwth-aachen.de/OpenMesh/html/libdoc/index.html C++ Documentation] -- Documentation for C++ version (D version has nearly identical API, with [PortDoc some exceptions]) * [http://www.dsource.org/projects/openmeshd/changeset/head/trunk?old_path=%2F&format=zip Download source] - Automatic zip of latest sources from SVN. * [http://www.dsource.org/projects/openmeshd/browser/trunk Browse source] - Browse the SVN repository. == About the Port == The port is based on !OpenMesh beta version 1.9.5. The port uses the Phobos library, and has been tested with DMD 1.021 on Windows. More [PortDoc detailed documentation] about differences between the port and the original is available. The authors of the original C++ version are aware of the existence of this port, but no one seems to be actively working on the original !OpenMesh these days. == Goals == The goal of porting !OpenMesh to D is just to have a decent mesh manipulation library in D. Long term, there is no intention to try to preserve any sort of source compatibility with the original !OpenMesh as the D version evolves, since I don't think there would be much point in that. In the short term, until ddoc generation is fully operational, I'd like to keep the port close to enough to the original that the C++ documentation will suffice. Compatibility of the native binary files written by !OpenMesh would be nice to preserve. I'm not going to guarantee compatibility, but I'm also not going to go and arbitrarily break it just for kicks. == About the Authors == The main kudos go to [http://www-i8.informatik.rwth-aachen.de/OpenMesh/html/contact.html the authors of the original] library. The port was done by Bill Baxter. ---- For a complete list of local wiki pages, see TitleIndex.