• No results found

2.4 Object Representations in 3D Space

2.4.2 Volumetric (solid) representations

Surface representation techniques are not enough for various visualization and animation purposes since they do not capture the volumetric properties of the materials and they do not allow big geometric changes. In contrast, volumetric representations model the interior regions of the objects, which make them suitable for capturing the model’s internal material structures.

2.4.2.1 Volumetric data structures

Different volumetric data structures have been proposed and used for different applica- tions:

1. Voxels: In this structure, voxels, which are obtained by subdividing the space into tiny rectilinear solids, are arranged in a rectilinear grid to represent the volume. Each voxel can store material information such as color and opacity. One example of this data structure is medical data acquired from imaging devices, such as CT. This data can be stored at different pixel resolutions with different spacing between slices, and it can be rendered using volume rendering techniques. The advantages of this method are that voxel values can store any number of subvalues, and they can be accessed and manipulated easily. In addition, this representation has the same complexity for all objects. However, due to memory constraints it is hard to store high resolution volumes using this representation.

Voxels can be displayed using isosurface rendering, slicing, and ray casting. Most of these rendering techniques are expensive to achieve. In addition, there are many problems that can be noticed in the rendering from voxels. For instance, there is the blurring problem due to averaging across each voxel. There is also the aliasing problem due to the discreteness of the representation and the sharp edges and corners in the voxel elements.

An additional problem with voxels is that they do not contain shape relevant information.

2. Quadtrees and Octrees: Instead of using uniform sized voxels as in the voxel representation, here the resolution of the voxels is defined hierarchically. This rep- resentation is more concise and efficient for non-uniform representation of objects.

3. Slabs: This data structure is a surface-aligned volume data structure confined to a narrow region around the boundary of the object. In this method voxels are positioned and aligned locally with the surface. It has the advantage of combining a voxel-based representation with a surface-only representation (Dorsey et al. (1999), Agarwala (1999)). It has the advantage of converting distance functions from

O(n3) to O(n2) memory space. The thickness of the slabs can be specified. For

thick slabs, more voxels are placed around the surface. The main advantages of this model are that it does not have scalability problem as in voxel-based models but it can still capture important volumetric information. However, for thin objects or objects with long skinny regions, this approach is not appropriate. In addition, alignment of the slabs to the surface is a complicated problem by itself. Note that the term slabs used by Dorsey et al. (1999), Agarwala (1999) refers to a different structure than what we used for slab in m-reps.

4. Tetrahedral Meshes: These meshes are generated from different surface models (e.g., meshes, medial models) or volumetric models (e.g., voxels) by decomposing them into a series of tetrahedra. They are mostly used for simulation purposes, such as finite element methods. The placement, size, and shape of the tetrahedra are the important aspects of this approach for obtaining physically plausible simu- lations. In Cutler et al. (2004), creating tetrahedral models of complex objects for the simulation and modeling purposes are investigated. In addition, in Takayama et al. (2008b) rendering of tetrahedral meshes with solid textures is presented. In this approach cubic solid textures are mapped on the interior of the model by assigning texture coordinates to each vertex of each tetrahedron inside the model.

2.4.2.2 User-guided volumetric modeling

The volumetric data structures summarized in Section 2.4 are used for representing the interior of the object. Assigning a value to each entity in a volume representation can be used to specify region fields (e.g., layers) or orientation fields inside a model. This can be used for visualization and simulation purposes.

Many user-guided approaches are proposed for specifying different regions inside the model:

generating layered solid models. In this approach, internal structures of the volume are specified by the user using a simple scripting language. This scripting language also provides sculpting and simulation operators for shaping and modifying the model.

2. Sketch-based approach: Owada et al. (2008) proposed a a sketch-based interface for designing volumetric data from scratch. In this approach voxels are painted by distributing colored particles along guided surfaces.

3. Diffusion surface approach: Takayama et al. (2010) proposed a representation called diffusion surfaces (DSs). This representation consists of 3D surfaces with colors defined on both sides. These colors inside the volume are computed by diffusing colors from nearby surfaces locally at user-defined cross sections using a modified version of the positive mean value coordinates algorithm. In their work they also present a simple sketch-based interface which enables the user to model objects with rotational symmetries, such as the inside of tomatoes. In this way, they model different objects which have smoothly changing global features inside the object.

There are also approaches proposed for assigning orientation information to each entity in the parameterized volume. For example, in (Takayama et al. (2008b)) an interface for designing volumetric tensor fields over tetrahedral meshes is proposed. This interface is used later for putting solid texture patches on the specified regions along the tensor fields.