The Volume Resize operation resizes the volume bounds keeping all voxel values intact. This avoids any filtering or blurring processes.
This is similar to cropping an image in COPs.
SDF volumes that are resized outwards will produce streaked rather than the SDF boundary conditions.
This node currently only works with standard Houdini volumes. It does not work with VDBs.
The volume primitives to be resized.
Extract a single sub-tile from the volume.
Number of tiles to split the volume apart in along each dimension.
Number of tile tile to extract. This iterates through each of the X/Y/Z tile counts.
Tile Lower Overlap
When extracting tiles, they will overlap their neighbours in the negative direction by this many voxels.
Tile Upper Overlap
When extracting tiles, they will overlap their neighbours in the positive direction by this many voxels.
Controls how the old bounding box of the volume is combined with the new reference bounds.
Creates new bounds that always includes the new reference.
Includes only voxels inside of both bounds.
Grows the original bounds to include the reference.
How big of a bounding box to use if there is no second input. If a second input is provided, the bounds of that object is used instead.
The center of the bounding box when there is no second input. If there is a second input, that geometry’s bounds are used instead.
After computing the new bounds of the reference, this will be grown this number of voxels in each direction. This is useful to ensure there is a padding around the edge of the new volume. This is specified in voxels, not world-space distances.
Use Point Bounds
Computing the bounds of the second input can be done either by the bounds of the primitives or the bounds of the points. For example, primitive sphere will only enlarge the bounds with its center point when in point mode. On the other hand, if the volume is rotating away from the axes, the point mode will produce a tighter fit.
If there is a
pscale attribute on the points, each point will be grown by its
pscale attribute when bounds are computed.
Normally the original volume values will be copied into the correct locations. However, if you plan on overwriting the data, you can save memory and time by turning off Keep Data and thereby just creating an empty volume of the desired bounds.
Clip by Plane
When resizing camera frustum volumes or other tapered volumes, there is the risk that the reference bounding box will cross the near clipping plane. If it does, it passes a mathematical singularity and the volume resolution grows to an infinite size.
To avoid this, you can specify a clipping plane to snap all points to. This should be the near plane of your camera.
The center of the near plane to clip the reference volume to.
The normal of the clipping plane.
The maximum resolution of the resized volume will be clipped to these values. This avoids accidental wiring operations from triggering massive memory allocations.
The maximum resolution of the resized volume on each axis.
Autodetect 2d Volumes
2D volumes are kept in their original plane and not resized along their thin axis. Sometimes, however, one may have a 3d volume that has collapsed to 2d, so want it to still resize in the third dimension.