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
andtileNameVariable
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.