Houdini 21.0 Nodes Copernicus nodes

Hyperbolic Tile Copernicus node

Generates hyperbolic polygon tiles for texture patterns.

On this page

This node generates tiles formed by hyperbolic regular polygons. Hyperbolic regular polygons are constructed in the Poincaré disk model . The node repeats the base regular polygon’s (the fundamental tile) pattern by reflecting and inverting it so it maps across the entire image space. The copies of the polygon accumulate to the boundary of the Poincaré disk, which is a circle, before they're mirrored to bleed outside of the circle.

Use the Polygons parameter to specify the type of base polygon, and the Iterations parameter to specify how many times that pattern repeats.

For example, use this node to create patterns for ceramics or floor tiles.

Parameters

Iterations

The number of times that the base regular polygon’s pattern repeats within the boundary of the Poincaré disk. Each copy reflects and inverts the previous copy’s pattern.

Polygons

The amount of sides to give the base regular polygon.

Rectanglize

Changes the Poincaré disk’s boundary to the image space square instead of a circle. Choose a mapping type from the dropdown menu to set how the pattern within the Poincaré disk’s boundary maps outwards to occupy the entire image space square.

Conformal

Preserves the angles of the tiles. Each corner of the square is a singularity of this mapping, so artifacts may appear near the corners.

Elliptic Grid

Uses an elliptic grid to map the Poincaré disk to the square. This creates curved radial grid lines in the square region.

Note

Though this mapping type minimizes distortion in the diagonal regions of the square, it can cause additional stretching near the corners.

Squircle

Uses squircular mapping from the Poincaré disk to the square. This stretches the radial direction uniformly in a straight manner.

Note

The diagonal regions of this mapping type have more distortion than the Elliptic Grid type. However, the overall appearance may appear more uniform because the distortion is more evenly distributed.

Equal-area

Uses a map that preserves the area up to the constant ratio. This can make the base polygon include additional sides and vertices.

Stretch to Fit

When Rectanglize is on and the size_ref has a rectangle input, this option stretches the square to fill the given rectangular region.

Flattening

The amount to flatten circular arcs in the base polygon.

When set to 0, the base polygon fits within the Poincaré disk. Higher values expand the circular arcs in the base regular polygon out towards the image’s border to flatten them. They can’t be entirely flat because straight lines must pass the center of the Poincaré disk to define the hyperbolic regular polygons.

Size

The length of straight lines in the base polygon. This parameter corresponds to the radius of the Poincaré disk when Flattening is 0.

Tile Fitting

Fills the image to tiles when the uv output is used. A value of 0 makes the image appear as a square within each tile. Increasing the value to 1 stretches the image to fill the entire tile area.

Poincaré Disk Mask

Displays only the pattern that’s within the boundary of the Poincaré disk.

This parameter doesn’t apply if Rectanglize is on.

Inputs

size_ref

A representative layer that determines the size of the output image and controls the metadata.

Outputs

tiles

The checkerboard type tiled layer.

id

The layer storing the ID values.

uv

The layer storing the UV values.

mask

An ID layer storing the ID of the UV layer and the background.

See also

Copernicus nodes