ContactSheet

Assembles multiple input images into a tiled grid, with customisable layout, labels and borders.

user

Container for user-defined plugs. Nodes should never make their own plugs here, so users are free to do as they wish.

in

The images to be included in the contact sheet.

out

The output image generated by this node.

format

The format of the output image.

mode

Defines how contact sheet tiles are generated from the source images :

  • Standard : Each source generates a tile in the contact sheet.

  • Sequence : Each frame in frames generates a tile in the contact sheet. Repeated for each source in order.

  • Layers : Each layer generates a tile in the contact sheet. Repeated for each source in order.

  • Views : Each view generates a tile in the contact sheet. Repeated for each source in order.

  • Collect : Each context defined by tileNames and tileNameVariable generates a tile in the contact sheet. Repeated for each source in order.

frames

The frames to use when in Sequence mode. Example syntax :

  • 1-100x10

  • 1-10, 15, 20, 21

divisionsMode

The method used to define the number of grid tiles in the contact sheet :

  • Automatic : Defines a grid with enough tiles to show every source image, while filling as much of the output format as possible. Assumes that all source images have the same aspect ratio as the first one.

  • Custom : Defines a fixed grid via the divisions plug. If there are more sources images than tiles, they will be omitted.

tileNames

The values to use for the tileNameVariable when in Collect mode. Each value defines a tile in the contact sheet. Use the tile variables in upstream nodes to vary the source images.

tileNameVariable

Name of the context variable that takes values from tileNames in Collect mode. May be used upstream to vary the source images per tile.

tileIndexVariable

Name of the context variable that contains the index of the contact sheet tile when in Collect mode. May be used upstream to define the vary the content of the source images.

divisions

The number of divisions in the grid when in Custom mode.

verticalAlignment

Determines how tiles are aligned vertically when they do not consume all the space available in the layout :

  • Top : The empty space is placed at the bottom of the layout, so that the tiles are aligned to the top, and spacing.y is maintained.

  • Bottom : The empty space is placed at the top of the layout, so that the tiles are aligned to the bottom, and spacing.y is maintained.

  • Center : The empty space is distributed evenly between the top and bottom of the layout, so that the tiles are aligned to the center, and spacing.y is maintained.

  • Justified : The extra space is distributed evenly into the gaps between tiles, in addiition to spacing.y. This aligns the top tile to the top of the layout and the bottom tile to the bottom of the layout.

Note

When there is no empty space in the layout, the choice of alignment has no effect.

outDivisions

The number of divisions calculated by the Automatic mode.

spacing

The size of the gaps between tiles in the grid, measured in pixels.

horizontalAlignment

Determines how tiles are aligned horizontally when they do not consume all the space available in the layout :

  • Left : The empty space is placed at the right of the layout, so that the tiles are aligned to the left, and spacing.x is maintained.

  • Right : The empty space is placed at the left of the layout, so that the tiles are aligned to the right, and spacing.x is maintained.

  • Center : The empty space is distributed evenly between the left and right of the layout, so that the tiles are aligned to the center, and spacing.x is maintained.

  • Justified : The extra space is distributed evenly into the gaps between tiles, in addiition to spacing.x. This aligns the left tile to the left of the layout and the right tile to the right of the layout.

Note

When there is no empty space in the layout, the choice of alignment has no effect.

labelsEnabled

Enables labels for each tile.

labelColor

The colour of the label text.

labelShadow

Enables the rendering of a label drop shadow which can be coloured, offset and blurred.

labelShadowColor

The colour of the label shadow.

labelShadowOffset

The offset of the shadow, measured relative to the label size.

labelShadowBlur

A blur applied to the shadow, measured relative to the label size.

marginTop

The size of the space at the top of the layout, measured in pixels.

marginBottom

The size of the space at the bottom of the layout, measured in pixels.

marginLeft

The size of the space on the left of the layout, measured in pixels.

marginRight

The size of the space on the right of the layout, measured in pixels.

labelHorizontalAlignment

Aligns the label horizontally within the tile.

labelVerticalAlignment

Aligns the label vertically within the tile, or places the label outside the tile in modes Above and Below. When placed outside the tile, spacing.y must provide enough space for the label.

labelScale

An additional scaling applied to the label. The label is already automatically scaled to remain in proportion with either the tile size or the tile spacing (when aligned above or below).

labelFormat

Defines the content of the label, using the following substitutions :

  • {label} : A label identifiying the source image, depending on the mode used. For instance, in Sequence mode the label is the frame number, and in Layers mode the label is the layer name.

  • {input} : The index of the source input.

  • {metadataName} : The name of any image metadata.

bordersEnabled

Enables a border for each image tile.

borderWidth

The width of the border, measured in pixels.

borderColorMode

Determines how a color is chosen for each border :

  • Constant : Uses the same fixed colour for every tile.

  • Error Check : Uses an error colour to highlight images which fail certain quality checks.

  • Metadata : Uses image metadata to define the color.

borderColor

The border color for Constant mode, and for tiles which pass all checks in Error Check mode.

borderColorMetadata

The name of the metadata to provide the border color in Metadata mode. Supported metadata types :

  • Color4f

  • Color3f

  • Float

borderErrorColor

The border color for tiles that fail any checks in Error Check mode.

borderCheckNaN

Applies the error color to images which contain any pixels with a NaN value.

borderCheckFileValid

Highlights images where the ImageReader has applied Black or Hold mode for missing frames. Works by checking for fileValid metadata with a value of False.

borderMin

The minimum value allowed for pixels when using borderCheckMin.

borderCheckMin

Applies the error color to images which contain any pixels with values below borderMin.

borderCheckMax

Applies the error color to images which contain any pixels with values above borderMax.

borderMax

The maximum value allowed for pixels when using borderCheckMin.

filter

The pixel filter used when resizing the input images. Each filter provides different tradeoffs between sharpness and the danger of aliasing or ringing.