I would like to tessellate 3D shapes (think of STL files) using arbitrarily shaped polyhedra. Is there any program that could be used for that purpose preferably an open source program?
Since STL defines surfaces with triangles, the best way to tessellate the enclosed space would be with tetrahedrons. If you want to tessellate it with hexahedrons for example, then the faces of the hexagons that coincide with the STL surface will be degenerate.
Why would you want to do it in another way than with tetrahedrons anyway? Faces of polyhedra with more than three vertices will get you into trouble: they should be flat, but will have torque in them due to numerical precision errors.
Thanks for your response. I understand the problem regarding the STL files. I mentioned STL files just an example but you could think of other general ways of defining the geometry such as NURBS. Anyways, I would like to tessellate the space using other polyhedra to design lattice (cellular) structures in a more objective way. See e.g. our paper here: http://www.sciencedirect.com/science/article/pii/S1751616114003944. I would like to have a general way for designing this type of porous structure based on any type of unit cell shape (polyhedron shape)
I don't known any open source programs. But i think, you can make each arbitrarily shaped lattice with image processing technic in Matlab software. I used from this way.
This is a good question with many possible answers.
A good place to start is
A. Abdul-Rahman, The design and implementation of a two and three-dimensional triangular irregular network based GIS, Ph.D. thesis, University of Glasgow, 2000:
See Fig. 5.6, page 83, for sample tessellations produced by the TIN software described in this thesis.
For the mathematics plus lots of good examples of 3D tessellation, consider
S. Ghosh, S. Moorthy, Three dimensional Voronoi cell finite element model for microstructures with ellipsoidal heterogeneties, Computational Mechanics 34, 2004, 510-531:
See Fig. 3, page 515, tessellated domains yielding Vononoi cell meshes for randomly distributed spheres of the same size and randomly distributed ellipsoids of different sizes.
Thanks James for your thorough response. I had a look at the references you mentioned and in both cases they refer to Voronoi tessellations that are rather irregular in most cases. Do you know of the literature regarding tessellation of space based on regular space-filling polyhedra? I would like to be able to specify a space-filling polyhedron (mathworld.wolfram.com/topics/Space-FillingPolyhedra.html) and ask the program to tessellate a specific region of space using that type of polyhedron as regularly as possible. Does something like that exist?
@Amir A. Zadpoor: Do you know of the literature regarding tessellation of space based on regular space-filling polyhedra?
Many thanks for the excellent question.
Quite a bit of work has been on tessellating 3D polyhedra.
Work has been done on Delaunay tetrahedra and Voronoi polyhedra in
L.H. Beni, Development of a 3D Kinetic Data Structure Adapted for a 3D Spatial Dynamic Field Simulaiton, Ph.D. thesis, Universite Laval Quebec, 2009:
www.theses.ulaval.ca/2009/26532/26532.pdf
See Section 4.2, starting on page 81. This section is particulary good, since it not only introduces two forms of 3D tessellation of polyhedras, it also gives a number of references to related work, starting with Aurenhammer in 1991 (notice Shewchuk, 1997 and Blessent et al., 2008, cited on page 86). Personally, I find the work on five types of skiny tetrahedra by Edelsbrunner, 2001, very interesting (see page 90 in this thesis). Of particular interested (using the suggested tessellation method) is Fig. 4-14, p. 101, for a 3D Delaunay tessellation. See, also, Fig. 5-9, for a methoods of updating the spatial relationship of a moving point in a 3D Delaunay tessellation.
Why not to use http://wias-berlin.de/software/tetgen/?
TetGen generates the Delaunay tetrahedralization, Voronoi diagram, and convex hull for three-dimensional point sets, generates the constrained Delaunay tetrahedralizations and quality tetrahedral meshes for three-dimensional domains with piecewise linear boundary.