Search Tips

Search is based on keyword.

`Ex: "Procedures"`

Do not search with natural language

`Ex: "How do I write a new procedure?"`

Give Feedback Support Portal

# ImageTransform2D

ImageTransform2D lets you not only translate elements, but also rotate, scale, and shear them.

Connection Type | Connection Name | Function
Input | input | The image sequence you want to transform.
out_mask | An optional image to use as a mask. By default, the merge is limited to the non-black areas of the mask.

Control (UI) | Default Value | Function
[2D node controls] | N/A | Set the controls for the stereo view. For more information, refer to the Common 2D Nodes Widget Type in Common Parameter Widgets.
transform
order | trsx | Sets the operation order for translate (t), rotate (r), scale (s), and shear (x).
translate x, y | 0, 0 | Translates the image along the x and y axes.
rotate | 0 | Rotates the image around the pivot x y coordinates.
aspectRatio | 1 | Sets the pixel aspect ratio. This allows you to maintain aspect ratio when rotating anamorphic images.
scale x, y | 1, 1 | Scales the image width and height around the pivot x y coordinates.
shear x, y | 0, 0 | Shears the image around the pivot x y coordinates.
pivot x, y | (getDisplayWindow().x1+ getDisplayWindow().x0)/2, (getDisplayWindow().y1+ getDisplayWindow().y0)/2 | Sets the center of rotation, scale, and shear on the x and y axes.
invert | disabled | When enabled, any transform you applied using the translate, rotate, scale, shear, or pivot controls is inverted.
filtering
downFilter | Lanczos3 | The filter kernel to use for downsampling: • Gaussian • Triangle • Box • Bell • BSpline • Sinc • Lanczos2 • Lanczos3 • Lanczos5 • Mitchell - remapped pixels receive some smoothing, plus blurring to hide pixelation. • Bilinear - gives good results, but can produce square artifacts at extreme zoom. • Bicubic - provides more rounded results, slightly blurrier but without the square artifacts. • Nearest - preserves edge detail, but gives quite "blocky" textures.
upFilter | Lanczos3 | The filter kernel to use for upsampling: • Gaussian • Triangle • Box • Bell • BSpline • Sinc • Lanczos2 • Lanczos3 • Lanczos5 • Mitchell - remapped pixels receive some smoothing, plus blurring to hide pixelation. • Bilinear - gives good results, but can produce square artifacts at extreme zoom. • Bicubic - provides more rounded results, slightly blurrier but without the square artifacts. • Nearest - preserves edge detail, but gives quite "blocky" textures.
highlightCompensation | enabled | When enabled, Katana adaptively compresses pixel values prior to transform filtering and re-expands them afterward. This helps to reduce the ringing in high-contrast areas that can be a problem in linear floating point images (as we have in Katana).
clampOutput | enabled | Filtering can introduce negative values and send values above 1.0. When clampOutput is enabled, Katana clamps the RGB channels low at 0 and the alpha channel between 1 and 0 after the image is filtered. This is recommended for transforms on color/alpha images. When clampOutput is disabled, no clamping is done and values below 0 and above 1 are allowed. This is recommended for transforms applied to images that contain data that may (correctly) range more widely.
onlyApplyMotion | disabled | When enabled, Katana does not apply the node's full transform. Instead, it only applies the motion-vector component of the transform to the incoming image. If you apply onlyApplyMotion to the incoming image, and then transform the result by the node (with motion blur disabled), the results are similar (except for sampling differences).
motionBlur
enable | globals.compDefaults. motionBlur.enable | When enabled, you can add motion blur to the transform.
linearParamSubframeInterp | enabled | When enabled, use a fast sampling of the parameters using slerped end points for each sub-frame of motion blur. This is preferable in all cases except where lengthy blur strokes undergo subframe acceleration.
shutter | globals.compDefaults. motionBlur.shutter.i0, globals.compDefaults. motionBlur.shutter.i1 | Sets the open and close time of the shutter when motion blurring, relative to the current frame. Changing the second number is the primary way to control the amount of motion blur applied. For example, a value of 0.5 corresponds to half a frame. Increasing the value produces more blur, and decreasing the value less.
numSamples | globals.compDefaults. motionBlur.numSamples | Sets the number of motion blur samples to compute and merge. Increase the value to produce more samples for higher quality, or decrease it to shorten the processing time. The higher the value, the smoother the result.