Proposition and implementation of a new spatial representation of voxelized objects by combination and modification of known techniques, such as truncated distance fields and run-length encoding. Incorporation of the new volume representation into the f3d library.
Modelling of various solids in this representation, with focus on those with sharp surface details, such as edges and vertices. Development of new advanced voxelization techniques which take into account object representability conditions to avoid rendering artifacts typical for previous methods.
Exploitation of the above mentioned representation for simulations of physical phenomena associated with the solids changing their shape during the time. Representative examples of such processes are melting, sublimation, weathering, etc.
The bulk of the work on the first and the second part of this project has been done. Some results have been published at the international level and the next publishing is in progress. The third part is in the phase of studying literature.
A new volume represenation using modified version of run-length encoding has been proposed and implemented. The modification of the RL compression comes from the observation that the information about an object is stored just in voxels located in the surface vicinity if truncated distance fields are used. The typical row in the grid consists of several long sequences of outside or inside voxels separate with short sequences of transitional voxels. Therefor, our idea is to divide the row into segments of three types: outside, inside and transitional. For coding of an outside or inside segment we need to store just its length and flag (OUT, IN). In addition the transitional segment also stores a pointer at a list of voxels which form the segment. Whole the grid is stored as two dimensional array of compressed rows.
The typical feature of discrete volume data is that the representation of fine details is limited by the Nyquist law. One goal of this project is to solve the problem of solids containing sharp details the characteristic dimension of which is under the Nyquist level and so they are not representable in the discrete volume representation. The main idea of our solution is to round these sharp details during the voxelization process in order to decrease surface curvature in the critical areas to a value corresponding with the Nyquist law. It means that objects are modified in a way to be representable in a grid with the given resolution.
We have solved this problem for two categories of objects: