# Card3D node¶

This documentation is for version 1.0 of Card3D (net.sf.openfx.Card3D).

## Description¶

Card3D.

This effect applies a transform that corresponds to projection the source image onto a 3D card in space. The 3D card is positioned with relative to the Axis position, and the Camera position may also be given. The Axis may be used to apply the same global motion to several cards.

This plugin concatenates transforms.

http://opticalenquiry.com/nuke/index.php?title=Card3D

## Inputs¶

Input Description Optional
Source   No

## Controls¶

Parameter / script name Type Default Function
Import Format / axisImportFormat Choice chan
The format of the file to import.
chan: Chan format, each line is FRAME TX TY TZ RX RY RZ VFOV. Can be created using Natron, Nuke, 3D-Equalizer, Maya and other 3D tracking software. Be careful that the rotation order must be exactly the same when exporting and importing the chan file.
Boujou (boujou): Boujou text export. In Boujou, after finishing the track and solving, go to Export > Export Camera Solve (Or press F12) > choose where to save the data and give it a name, click he drop down Export Type and make sure it will save as a .txt, then click Save. Each camera line is R(0,0) R(0,1) R(0,2) R(1,0) R(1,1) R(1,2) R(2,0) R(2,1) R(2,2) Tx Ty Tz F(mm).
Import / axisImportFile N/A   Import a chan file created using 3D tracking software, or a txt file created using Boujou.
Export / axisExportChan N/A   Export a .chan file which can be used in Natron, Nuke or 3D tracking software, such as 3D-Equalizer, Maya, or Boujou. Be careful that the rotation order must be exactly the same when exporting and importing the chan file.
Transform Order / axisXformOrder Choice SRT
Order in which scale (S), rotation (R) and translation (T) are applied.
SRT (srt): Scale, Rotation, Translation.
STR (str): Scale, Translation, Rotation.
RST (rst): Rotation, Scale, Translation.
RTS (rts): Rotation, Translation, Scale.
TSR (tsr): Translation, Scale, Rotation.
TRS (trs): Translation, Rotation, Scale.
Rotation Order / axisRotOrder Choice ZXY
Order in which Euler angles are applied in the rotation.
XYZ (xyz): Rotation over X axis, then Y and Z.
XZY (xzy): Rotation over X axis, then Z and Y.
YXZ (yxz): Rotation over Y axis, then X and Z.
YZX (yzx): Rotation over Y axis, then Z and X.
ZXY (zxy): Rotation over Z axis, then X and Y.
ZYX (zyx): Rotation over Z axis, then Y and X.
Translate / axisTranslate Double x: 0 y: 0 z: 0 Translation component.
Rotate / axisRotate Double x: 0 y: 0 z: 0 Euler angles (in degrees).
Scale / axisScaling Double x: 1 y: 1 z: 1 Scale factor over each axis.
Uniform Scale / axisUniformScale Double 1 Scale factor over all axis. It is multiplied by the scale factor over each axis.
Skew / axisSkew Double x: 0 y: 0 z: 0 Skew over each axis, in degrees.
Pivot / axisPivot Double x: 0 y: 0 z: 0 The position of the origin for position, scaling, skewing, and rotation.
Specify Matrix / axisUseMatrix Boolean Off Check to specify manually all the values for the position matrix.
/ axisMatrix11 Double 1 Matrix coefficient.
/ axisMatrix12 Double 0 Matrix coefficient.
/ axisMatrix13 Double 0 Matrix coefficient.
/ axisMatrix14 Double 0 Matrix coefficient.
/ axisMatrix21 Double 0 Matrix coefficient.
/ axisMatrix22 Double 1 Matrix coefficient.
/ axisMatrix23 Double 0 Matrix coefficient.
/ axisMatrix24 Double 0 Matrix coefficient.
/ axisMatrix31 Double 0 Matrix coefficient.
/ axisMatrix32 Double 0 Matrix coefficient.
/ axisMatrix33 Double 1 Matrix coefficient.
/ axisMatrix34 Double -1 Matrix coefficient.
/ axisMatrix41 Double 0 Matrix coefficient.
/ axisMatrix42 Double 0 Matrix coefficient.
/ axisMatrix43 Double 0 Matrix coefficient.
/ axisMatrix44 Double 1 Matrix coefficient.
Enable Camera / camEnable Boolean Off Enable the camera projection parameters.
Import Format / camImportFormat Choice chan
The format of the file to import.
chan: Chan format, each line is FRAME TX TY TZ RX RY RZ VFOV. Can be created using Natron, Nuke, 3D-Equalizer, Maya and other 3D tracking software. Be careful that the rotation order must be exactly the same when exporting and importing the chan file.
Boujou (boujou): Boujou text export. In Boujou, after finishing the track and solving, go to Export > Export Camera Solve (Or press F12) > choose where to save the data and give it a name, click he drop down Export Type and make sure it will save as a .txt, then click Save. Each camera line is R(0,0) R(0,1) R(0,2) R(1,0) R(1,1) R(1,2) R(2,0) R(2,1) R(2,2) Tx Ty Tz F(mm).
Import / camImportFile N/A   Import a chan file created using 3D tracking software, or a txt file created using Boujou.
Export / camExportChan N/A   Export a .chan file which can be used in Natron, Nuke or 3D tracking software, such as 3D-Equalizer, Maya, or Boujou. Be careful that the rotation order must be exactly the same when exporting and importing the chan file.
Transform Order / camXformOrder Choice SRT
Order in which scale (S), rotation (R) and translation (T) are applied.
SRT (srt): Scale, Rotation, Translation.
STR (str): Scale, Translation, Rotation.
RST (rst): Rotation, Scale, Translation.
RTS (rts): Rotation, Translation, Scale.
TSR (tsr): Translation, Scale, Rotation.
TRS (trs): Translation, Rotation, Scale.
Rotation Order / camRotOrder Choice ZXY
Order in which Euler angles are applied in the rotation.
XYZ (xyz): Rotation over X axis, then Y and Z.
XZY (xzy): Rotation over X axis, then Z and Y.
YXZ (yxz): Rotation over Y axis, then X and Z.
YZX (yzx): Rotation over Y axis, then Z and X.
ZXY (zxy): Rotation over Z axis, then X and Y.
ZYX (zyx): Rotation over Z axis, then Y and X.
Translate / camTranslate Double x: 0 y: 0 z: 0 Translation component.
Rotate / camRotate Double x: 0 y: 0 z: 0 Euler angles (in degrees).
Scale / camScaling Double x: 1 y: 1 z: 1 Scale factor over each axis.
Uniform Scale / camUniformScale Double 1 Scale factor over all axis. It is multiplied by the scale factor over each axis.
Skew / camSkew Double x: 0 y: 0 z: 0 Skew over each axis, in degrees.
Pivot / camPivot Double x: 0 y: 0 z: 0 The position of the origin for position, scaling, skewing, and rotation.
Specify Matrix / camUseMatrix Boolean Off Check to specify manually all the values for the position matrix.
/ camMatrix11 Double 1 Matrix coefficient.
/ camMatrix12 Double 0 Matrix coefficient.
/ camMatrix13 Double 0 Matrix coefficient.
/ camMatrix14 Double 0 Matrix coefficient.
/ camMatrix21 Double 0 Matrix coefficient.
/ camMatrix22 Double 1 Matrix coefficient.
/ camMatrix23 Double 0 Matrix coefficient.
/ camMatrix24 Double 0 Matrix coefficient.
/ camMatrix31 Double 0 Matrix coefficient.
/ camMatrix32 Double 0 Matrix coefficient.
/ camMatrix33 Double 1 Matrix coefficient.
/ camMatrix34 Double -1 Matrix coefficient.
/ camMatrix41 Double 0 Matrix coefficient.
/ camMatrix42 Double 0 Matrix coefficient.
/ camMatrix43 Double 0 Matrix coefficient.
/ camMatrix44 Double 1 Matrix coefficient.
Projection / camprojection_mode Choice Perspective

Perspective (perspective): Perspective projection.
Orthographic (orthographic): Orthographic projection
Focal Length / camfocal Double 50 The camera focal length, in arbitrary units (usually either millimeters or 35 mm equivalent focal length). haperture and vaperture must be expressed in the same units.
Horiz. Aperture / camhaperture Double 24.576 The camera horizontal aperture (or film back width), in the same units as the focal length. In the case of scanned film, this can be obtained as image_width * scanner_pitch.
Vert. Aperture / camvaperture Double 18.672 The camera vertical aperture (or film back height), in the same units as the focal length. This does not affect the projection (which is computed from haperture and the image aspect ratio), but it is used to compute the focal length from vertical FOV when importing chan files, using the formula: focal = 0.5 * vaperture / tan(vfov/2). It is thus best set as: haperture = vaperture * image_width/image_height. In the case of scanned film, this can be obtained as image_height * scanner_pitch.
Window Translate / camwin_translate Double x: 0 y: 0 The camera window (or film back) is translated by this fraction of the horizontal aperture, without changing the position of the camera center. This can be used to model tilt-shift or perspective-control lens.
Window Scale / camwin_scale Double x: 1 y: 1 Scale the camera window (or film back).
Window Roll / camwinroll Double 0 Rotation (in degrees) of the camera window (or film back) around the z axis.
Import Format / cardImportFormat Choice chan
The format of the file to import.
chan: Chan format, each line is FRAME TX TY TZ RX RY RZ VFOV. Can be created using Natron, Nuke, 3D-Equalizer, Maya and other 3D tracking software. Be careful that the rotation order must be exactly the same when exporting and importing the chan file.
Boujou (boujou): Boujou text export. In Boujou, after finishing the track and solving, go to Export > Export Camera Solve (Or press F12) > choose where to save the data and give it a name, click he drop down Export Type and make sure it will save as a .txt, then click Save. Each camera line is R(0,0) R(0,1) R(0,2) R(1,0) R(1,1) R(1,2) R(2,0) R(2,1) R(2,2) Tx Ty Tz F(mm).
Import / cardImportFile N/A   Import a chan file created using 3D tracking software, or a txt file created using Boujou.
Export / cardExportChan N/A   Export a .chan file which can be used in Natron, Nuke or 3D tracking software, such as 3D-Equalizer, Maya, or Boujou. Be careful that the rotation order must be exactly the same when exporting and importing the chan file.
Transform Order / cardXformOrder Choice SRT
Order in which scale (S), rotation (R) and translation (T) are applied.
SRT (srt): Scale, Rotation, Translation.
STR (str): Scale, Translation, Rotation.
RST (rst): Rotation, Scale, Translation.
RTS (rts): Rotation, Translation, Scale.
TSR (tsr): Translation, Scale, Rotation.
TRS (trs): Translation, Rotation, Scale.
Rotation Order / cardRotOrder Choice ZXY
Order in which Euler angles are applied in the rotation.
XYZ (xyz): Rotation over X axis, then Y and Z.
XZY (xzy): Rotation over X axis, then Z and Y.
YXZ (yxz): Rotation over Y axis, then X and Z.
YZX (yzx): Rotation over Y axis, then Z and X.
ZXY (zxy): Rotation over Z axis, then X and Y.
ZYX (zyx): Rotation over Z axis, then Y and X.
Translate / cardTranslate Double x: 0 y: 0 z: -1 Translation component.
Rotate / cardRotate Double x: 0 y: 0 z: 0 Euler angles (in degrees).
Scale / cardScaling Double x: 1 y: 1 z: 1 Scale factor over each axis.
Uniform Scale / cardUniformScale Double 1 Scale factor over all axis. It is multiplied by the scale factor over each axis.
Skew / cardSkew Double x: 0 y: 0 z: 0 Skew over each axis, in degrees.
Pivot / cardPivot Double x: 0 y: 0 z: 0 The position of the origin for position, scaling, skewing, and rotation.
Specify Matrix / cardUseMatrix Boolean Off Check to specify manually all the values for the position matrix.
/ cardMatrix11 Double 1 Matrix coefficient.
/ cardMatrix12 Double 0 Matrix coefficient.
/ cardMatrix13 Double 0 Matrix coefficient.
/ cardMatrix14 Double 0 Matrix coefficient.
/ cardMatrix21 Double 0 Matrix coefficient.
/ cardMatrix22 Double 1 Matrix coefficient.
/ cardMatrix23 Double 0 Matrix coefficient.
/ cardMatrix24 Double 0 Matrix coefficient.
/ cardMatrix31 Double 0 Matrix coefficient.
/ cardMatrix32 Double 0 Matrix coefficient.
/ cardMatrix33 Double 1 Matrix coefficient.
/ cardMatrix34 Double -1 Matrix coefficient.
/ cardMatrix41 Double 0 Matrix coefficient.
/ cardMatrix42 Double 0 Matrix coefficient.
/ cardMatrix43 Double 0 Matrix coefficient.
/ cardMatrix44 Double 1 Matrix coefficient.
Lens-In Focal / lensInFocal Double 1 The focal length of the camera that took the picture on the card. The card is scaled so that at distance 1 (which is the default card Z) it occupies the field of view corresponding to lensInFocal and lensInHAperture.
Lens-In H.Aperture / lensInHAperture Double 1 The horizontal aperture (or sensor/film back width) of the camera that took the picture on the card. The card is scaled so that at distance 1 (which is the default card Z) it occupies the field of view corresponding to lensInFocal and lensInHAperture.
Output Format / format Choice Project
Desired format for the output sequence.
Format (format): Use a pre-defined image format.
Size (size): Use a specific extent (size and offset).
Project (project): Use the project extent (size and offset).
Center / recenter Button   Centers the region of definition to the input region of definition. If there is no input, then the region of definition is centered to the project window.
Format / NatronParamFormatChoice Choice HD 1920x1080
The output format
PC_Video 640x480 (PC_Video)
NTSC 720x486 0.91 (NTSC)
PAL 720x576 1.09 (PAL)
NTSC_16:9 720x486 1.21 (NTSC_16:9)
PAL_16:9 720x576 1.46 (PAL_16:9)
HD_720 1280x720 (HD_720)
HD 1920x1080 (HD)
UHD_4K 3840x2160 (UHD_4K)
1K_Super_35(full-ap) 1024x778 (1K_Super_35(full-ap))
1K_Cinemascope 914x778 2.00 (1K_Cinemascope)
2K_Super_35(full-ap) 2048x1556 (2K_Super_35(full-ap))
2K_Cinemascope 1828x1556 2.00 (2K_Cinemascope)
2K_DCP 2048x1080 (2K_DCP)
4K_Super_35(full-ap) 4096x3112 (4K_Super_35(full-ap))
4K_Cinemascope 3656x3112 2.00 (4K_Cinemascope)
4K_DCP 4096x2160 (4K_DCP)
square_256 256x256 (square_256)
square_512 512x512 (square_512)
square_1K 1024x1024 (square_1K)
square_2K 2048x2048 (square_2K)
Bottom Left / bottomLeft Double x: 0 y: 0 Coordinates of the bottom left corner of the size rectangle.
Size / size Double w: 1 h: 1 Width and height of the size rectangle.
Invert / invert Boolean Off Invert the transform.
Filter / filter Choice Cubic
Filtering algorithm - some filters may produce values outside of the initial range (*) or modify the values even if there is no movement (+).
Impulse (impulse): (nearest neighbor / box) Use original values.
Box (box): Integrate the source image over the bounding box of the back-transformed pixel.
Bilinear (bilinear): (tent / triangle) Bilinear interpolation between original values.
Cubic (cubic): (cubic spline) Some smoothing.
Keys (keys): (Catmull-Rom / Hermite spline) Some smoothing, plus minor sharpening (*).
Simon (simon): Some smoothing, plus medium sharpening (*).
Rifman (rifman): Some smoothing, plus significant sharpening (*).
Mitchell (mitchell): Some smoothing, plus blurring to hide pixelation (*)(+).
Parzen (parzen): (cubic B-spline) Greatest smoothing of all filters (+).
Notch (notch): Flat smoothing (which tends to hide moire’ patterns) (+).
Clamp / clamp Boolean Off Clamp filter output within the original range - useful to avoid negative values in mattes
Black outside / black_outside Boolean On Fill the area outside the source image with black
Motion Blur / motionBlur Double 0 Quality of motion blur rendering. 0 disables motion blur, 1 is a good value. Increasing this slows down rendering.
Directional Blur Mode / directionalBlur Boolean Off Motion blur is computed from the original image to the transformed image, each parameter being interpolated linearly. The motionBlur parameter must be set to a nonzero value, and the blackOutside parameter may have an important effect on the result.
Shutter / shutter Double 0.5 Controls how long (in frames) the shutter should remain open.
Shutter Offset / shutterOffset Choice Start
Controls when the shutter should be open/closed. Ignored if there is no motion blur (i.e. shutter=0 or motionBlur=0).
Centered (centered): Centers the shutter around the frame (from t-shutter/2 to t+shutter/2)
Start (start): Open the shutter at the frame (from t to t+shutter)
End (end): Close the shutter at the frame (from t-shutter to t)
Custom (custom): Open the shutter at t+shuttercustomoffset (from t+shuttercustomoffset to t+shuttercustomoffset+shutter)
Custom Offset / shutterCustomOffset Double 0 When custom is selected, the shutter is open at current time plus this offset (in frames). Ignored if there is no motion blur (i.e. shutter=0 or motionBlur=0).
Interactive Update / interactive Boolean Off If checked, update the parameter values during interaction with the image viewer, else update the values when pen is released.