SoSurfaceUnfoldingProcessing3d engine More...
#include <ImageViz/Engines/ImageSegmentation/ComputationalGeometry/SoSurfaceUnfoldingProcessing3d.h>
Public Types | |
enum | InterpolationType { NEAREST = 0, LINEAR } |
Public Member Functions | |
SoSurfaceUnfoldingProcessing3d () | |
Public Attributes | |
SoSFImageDataAdapter | inImage |
SoSFStructuredQuadrilateralMesh | inSurface |
SoSFDouble | thickness |
SoSFVec3i32 | size |
SoMFVec3f | directions |
SoSFDouble | paddingValue |
SoSFEnum | interpolationType |
SoImageVizEngineOutput < SoSFImageDataAdapter, SoImageDataAdapter * > | outImage |
The SoSurfaceUnfoldingProcessing3d engine computes a 3D image starting from an input 3D image and an input 3D surface.
The input 3D surface is unfolded in order to appear as a flat layer of the output 3D image. Actually the surface unfolded is a thick surface defined by the thickness field.
Thus the result of this engine is also a 3D image that corresponds to the region in the input 3D image around the input surface. The number of voxels of the output image 3D must be defined by the field size. This size is independent from the number of voxels in the input image, and independent from the number of vertices in the input surface.
Creating a human dental panoramic image is a typical use case of this engine, where:
inImage | NULL |
inSurface | NULL |
thickness | 0.0 |
size | 1024 1024 256 |
directions | NULL |
paddingValue | 0.0 |
interpolationType | LINEAR |
outImage |
SoPolylineExtrusionApproximation3d, SoSurfaceFittingApproximation3d
SoSurfaceUnfoldingProcessing3d::SoSurfaceUnfoldingProcessing3d | ( | ) |
Constructor.
Optional direction vectors used to unfold the surface.
By default this field does not contain any data, which means that this engine will compute direction vectors as the normal vector to each vertex of the input surface inSurface. If this field is set, it must contain as many vectors as the number of vertices in inSurface. The field's value is ignored if it does not contain as many vectors as the number of vertices in the surface.
The input 3D image.
Default value is NULL.
The input surface as a starting point for the process.
Default value is NULL.
The type of interpolation used.
Default value is LINEAR. Use enum InterpolationType
SoImageVizEngineOutput<SoSFImageDataAdapter,SoImageDataAdapter*> SoSurfaceUnfoldingProcessing3d::outImage |
The output image.
Default value is NULL.
The default output value.
This value is used to fill output regions having no correspondence in the input image. Default is 0.
Size of the new image.
Default value is SbVec3i32(1024,1024,256)
Distance in the input image defining the output image thickness.
Default is 0.