Anders
Dahnielson
Timothy
M
Shead

# Plugins

## Introduction

All objects you can insert into a scene are loaded as a set of plugins. Which makes it possible to extend and enhanche &k3d;'s capabilites with new plugins. We describe here all plugins included with the &k3d; distribution.

There are basically three different kind of plugin objects: Source objects, that produce some kind of output. Filter objects, that accept some sort of input and produce a modified output. And sink objects, that utilize the input.

## Array1D

Mesh filter object that take a mesh input and multiply it along one dimension.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
count | Count [integer]
offsetx | X Offset [number]
offsety | Y Offset [number]
offsetz | Z Offset [number]
rotatex | X Rotation [number]
rotatey | Y Rotation [number]
rotatez | Z Rotation [number]

### Example

This simple spiral staircase show the power of Array1D.

It was created using a single PolyCube as footstep, the mesh was then piped through the Array1D filter which duplicated it twelve times; offsetting along the Y axis and rotating 16.36 degrees (you can just enter "180 / 11" in the rotatey box) around the Y axis for each step.

### See also

## Atom

Matrix filter object used by the PDB reader.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
radius | Radius [number]

### See also

## Axes

Object which provides a configurable set of axes to help in visualizing the 3D workspace.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
viewport_visible | Visible [boolean]
axes | Display XYZ axes [boolean]
xyplane | Display XY plane as a grid [boolean]
yzplane | Display YZ plane as a grid [boolean]
xzplane | Display XZ plane as a grid [boolean]
gridsize | The size of each grid square [number]
gridcount | Number of squares along each grid [positive integer]

## BendPoints

Mesh filter object that apply a bend transformation to a geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
angle | Bend Angle [number]
tightness | Bend Tightness [number]
position | Bend position [number]
along | Axis to bend along [enumeration]
around | Axis to bend around [enumeration]

## BevelFaces

Mesh filter object that apply a bevel using the faces of a geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
height | Height [number]
inset | Inset [number]

### See also

## BevelPoints

Mesh filter object that apply a bevel using the points in a geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
distance | Distance [number]

### See also

## BitmapAdd

Bitmap filter object which add value to each pixel.

Instead of affecting the apparent brightness of an image by multiplying, we add a constant value from each pixel. Notice that our blacks have gone to gray, or washed out, something that is often undesirable.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
value | Value [double]

### See also

, , ,

## BitmapChecker

Bitmap source object that generate a checkerboard-like bitmap.

### Properties

Name | Description
--- | ---
name | Object name [string]
output | Output bitmap [bitmap]
width | Width [number]
height | Height [number]
check_width | Check Width [number]
check_height | Check Height [number]
color1 | Color [color]
color2 | Color [color]

### See also

, .

## BitmapColorMonochrome

Bitmap filter object which make any image black and white. Good default values are weighed according to the eyes different sensitivity to red, green, and blue.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
red_weight | Red weight [double]
green_weight | Green weight [double]
blue_weight | Blue weight [double]

## BitmapFileIn

Bitmap source object that read bitmap from a file.

### Properties

Name | Description
--- | ---
name | Object name [string]
output | Output bitmap [bitmap]
file | File [string]

### See also

, , .

## BitmapGamma

Bitmap filter object which apply gamma value.

Also know as an exponential curve. A value of one means no change. The reason that the gamma operator is so useful is that it does not change the white or black point of an image. There is less chance for data loss, and images look more natural. Blacks don't change to gray and whites don't blow out or get stepped on.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
value | Value [double]

### See also

, ,

## BitmapImageAdd

Adding two images together is, very simply, the process of adding every pixel in image A to its corresponding pixel in image B. Commonly used for fire effects and adding mattes together.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageAtop

This is similar to over, except that the background matte is used; the foreground will only appear where there is background matte. Unlike inside, it will also keep the background information. Another way of putting it is that it is the equivalent of inside and then over. Use this for applying atmosphere effects to a foreground element, like putting smoke over a foreground character.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

,

## BitmapImageDivide

This operation divides one image by another.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

## BitmapImageInside

This operation places one image only inside the mask of a second image, therefore only the second image's mask is considered in the composite; the rest comes from the color of the foreground image. An extremely useful function to mask off images.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageMax

Compares two images and takes the pixel with the higher value. This is a good tool for merging alpha masks.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageMin

Compares two images and takes the pixel with the lower value. Like BitmapImageMax, this is a good tool for merging alpha masks.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageMix

The weighted, normalized addition of two images. In other words, the two images are averaged together, usually with one of the images contributing a larger percentage to the resultant image. Commonly used for cross-fades.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]
value | Value [double]

### See also

## BitmapImageMultiply

This operation multiplies one image by another. Commonly used for masking elements.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageOutside

This function places one image only outside of the mask of a second image, therefore only the second image's mask is considered in the composite; the color comes from the foreground image. This is a great tool to mask out effects.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageOver

This is the main compositing operation. The Over operator takes an image (combined with a matte) and lays it on top of the second image. Intuitively, people understand compositing with a matte channel as if the matte were a cookie-cutter which removes all excess information from the foreground image and the result is then pasted on top of the background.

We assume the foreground image already having a built-in matte channel and the foreground's color channels have already been pre-multiplied by that matte channel.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageScreen

This mimics the effect of exposing two film negatives together. Technically, it inverts both layers, multiplies the two together, and inverts the result back. It is particularly handy for doing reflections and luminescent elements, as it preserves the highlights. Commonly used for adding reflections and light elements without losing highlight detail.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

## BitmapImageSubtract

This operation subtracts one image from another. Every pixel in image A is subtracted from its corresponding pixel in image B. Subtraction is commonly used for difference matting.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

,

## BitmapImageSubstractAbs

Commonly used for finding the difference between elements. This is identical to subtract, except that it takes the absolute value of the result. This is to see if similar images are different by subtracting one from another. If the second image is brighter, BitmapImageSubtract won't reveal anything, but BitmapImageSubtractAbs will.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageUnder

A reverse of the over operation. This function is exactly like the BitmapImageOver operation, except that it reverses the two input images. Somewhat trivial but included for completeness.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapImageXOR

This is somewhat like a combination BitmapImageInside and BitmapImageOutside. Commonly used for finding areas that are mutually exclusive.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_a | "A" input bitmap [bitmap]
input_b | "B" Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

,

## BitmapInstance

Gives bitmap a position.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
position | Position [vector3]
scale | Scale [vector3]
angle | Angle [angle]
premultiplied | Image is pre-multiplied [boolean]
color_matrix | Color matrix [matrix4]

### See also

## BitmapInvert

Bitmap filter object that invert the input bitmap.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

## BitmapMatteColorDiff

Bitmap filter object which construct an alpha value based on the color channels by using a color difference method.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
value | Threshold value [double]

### See also

## BitmapMatteInvert

Bitmap filter object that invert the alpha of the input bitmap.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]

### See also

,

## BitmapMultiply

Bitmap filter object which multiply value of each pixel.

Known as brightness when all channels except alpha is multiplied with the same value, fade when all channels including the alpha is multiplied with the same value and multiply when all channels is multiplied with different values.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
value | Value [double]

### See also

, , ,

## BitmapSequenceIn

Load sequence of bitmaps from the filesystem.

### Properties

Name | Description
--- | ---
name | Object name [string]
output | Output bitmap [bitmap]
file | File [string]
time | Input time [double]

### See also

, .

## BitmapSequenceOut

Save sequence of bitmaps to the filesystem.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
pixel_width | Output pixel width [positive integer]
pixel_height | Output pixel height [positive integer]

### See also

.

## BitmapSolid

Bitmap source object that generate a solid color bitmap.

### Properties

Name | Description
--- | ---
name | Object name [string]
output | Output bitmap [bitmap]
width | Width [number]
height | Height [number]
color | Color [color]

### See also

, .

## BitmapSubtract

Bitmap filter object which subtract value from each pixel.

Instead of a ecting the apparent brightness of an image by multiplying, we subtract a constant value from each pixel. Notice that out whites have gone gray.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
value | Value [double]

### See also

, , ,

## BitmapThreshold

This will cut off channels at a certain value, turning everything below that cutoff to zero.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
red_threshold | Red channel threshold [double]
green_threshold | Green channel threshold [double]
blue_threshold | Blue channel threshold [double]
alpha_threshold | Alpha channel threshold [double]

## BlobbyAddOperator

Blobby Add operator.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
input_mesh1 | Input mesh 1
input_mesh2 | Input mesh 2

### See also

## BlobbyEllipsoid

Creates a RenderMan Blobby Ellipsoid.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]

### See also

## BlobbyMaxOperator

Blobby Max operator.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
input_mesh1 | Input mesh 1
input_mesh2 | Input mesh 2

### See also

## BlobbyMinOperator

Blobby Min operator.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
input_mesh1 | Input mesh 1
input_mesh2 | Input mesh 2

### See also

## BlobbyMultOperator

Blobby Mult operator.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
input_mesh1 | Input mesh 1
input_mesh2 | Input mesh 2

### See also

## BlobbySegment

Creates a RenderMan Blobby Segment.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
radius | Radius [number]

### See also

## CatmullClark

Mesh filter object which takes a solid polyhedron mesh as input, and output a Catmull-Clark subdivision.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
levels | Levels [integer]

## CenterPoints

Centers mesh points around the origin.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
center_x | Center X [boolean]
center_y | Center Y [boolean]
center_z | Center Z [boolean]

### See also

## CoarsenPolyhedra

Coarsens polygonal surfaces.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
cost_function | Cost function [enumeration]
midvertex_function | Mid-vertex function [enumeration]
stop_function | Stop function [enumeration]
max_fold_angle | Maximum fold angle [number]
edge_number | Final edge number [integer]
max_edge_cost | Maximum edge cost [number]
volume_weight | Weight used for volume optimization [number]
boundary_weight | Weight used for boundary optimization [number]
shape_weight | Weight used for shape optimization [number]

### See also

## ColorBezierChannel

Object which provide a animation channel representing a color value that can change over time. Many &k3d; objects have various color properties you can change to achieve different effects. And by connecting the ColorBezierChannel output to these properties you can animate anything in a &k3d; scene!

Cursor X: | Display the cursors X value.
Cursor Y: | Display the cursors Y value.
Cursor Value: | Display the cursors value
Channel Straighten: | Equal to linear interpolation, affect whole channel.
Channel Mirror X: | Mirror along the X axis, affect whole channel.
Channel Mirror Y: | Mirror along the Y axis, affect whole channel.
Selection Straighten: | Equal to linear interpolation, affect only selected nodes.
Selection Delete: | Delete selected nodes.
View Fit: | Fit the view to whole graph.
View Close: | Close the Channel Properties window.

There are several things to note here - filling most of the Channel Properties is the Curve Graph, which displays a visual representation of the Channel's value over time - just as in school, the graph X axis represents time while the graph Y axis represents value.

The vertical green line that is moving across the Curve Graph during playback is displaying the current View Time, and is always updated as the Document View Time changes. The vertical red line is the Cursor, which can be placed with the mouse to "sample" the Channel value at specific points in the curve.

Notice the yellow dot, along with a black line passing through it. The dot is a Key Frame, and the black line represents the interpolated value of this Channel for the duration of the animation. We can animate the value of this Channel by creating additional Key Frames by double-clicking with the left mouse button in the graph. We can select Key Frames by click on them with the left mouse button and deselect all with the right mouse button.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Output Value [double]
output | Output Value [double]

### See also

## ColorProperty

Using this you could have two Material objects "share" one color, but have different shaders or (more likely) subtly-different shader parameters - particularly useful if you wanted to animate the color for both.

### Properties

Name | Description
--- | ---
name | Object name [string]
value | The value exposed by this property

### See also

## Cone

Source object for a cone quadric.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
radius | radius [distance]
height | height [distance]
thetamax | thetamax [angle]

### See also

,

## Cylinder

Source object for cylinder quadric.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
radius | radius [distance]
zmax | zmax [distance]
zmin | zmin [distance]
thetamax | thetamax [angle]

### See also

,

## CylindricalWavePoints

Mesh filter object which applies a cylindrical (radial) "wave" deformation to geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
along | Along [enumeration]
amplitude | Amplitude [number]
wavelength | Wavelength [number]
phase | Phase [number]

## DeleteSelected

Mesh filter object that delete selected geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]

## Disk

Source object for a disk quadric.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
radius | radius [distance]
height | height [distance]
thetamax | thetamax [angle]

### See also

## EdgesToBlobby

Converts input edges to a max of segment blobbies.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
radius | Segments radius [number]
type | Operation [enumeration]

### See also

## FormatScalar

Converts a scalar to a string using printf() style formatting.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input [double]
format | Format [string]
output | Output [string]

### See also

## FormatTime

Converts a scalar to a string using strftime()-style formatting.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input [double]
format | Format [string]
output | Output [string]

### See also

## FrozenMesh

Mesh filter object that "freezes" its input in a persistent form that can be edited manually.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]

## GTSBoolean

Merges polygonal surfaces using boolean operations.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
type | Operation [enumeration]
input1 | Input mesh 1
input2 | Input mesh 2

### See also

## GraphVizEngine

Object which provide support for the GraphViz render engine.

This is a full-fledged render engine, but unlike the RenderMan and Yafray engines, it doesn't produce a 3D rendering of your document; instead, it uses the GraphViz tools to produce a nice rendering of the document DAG. For those unfamiliar, the GraphViz tools are a set of command-line tools for visualizing graphs (that's graph in the formal mathematical sense of nodes and edges).

This is important for several reasons: 1) It's a test-bed where we can rapidly experiment with different approaches to visualizing the DAG. 2) It's a short-term stopgap to get you productive with the DAG right now. 3) It's a good teaching tool for generating diagrams for DAG-related documentation. 4) It's a neat demo of how a radically-different sort of "render engine" can easily be integrated into K-3D.

### Properties

Name | Description
--- | ---
name | Object name [string]
render_engine | Render Engine [string]

### See also

, .

## Hyperboloid

Source object for hyperboloid.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
x1 | x1 [distance]
y1 | y1 [distance]
z1 | z1 [distance]
x2 | x2 [distance]
y2 | y2 [distance]
z2 | z2 [distance]
thetamax | thetamax [angle]

## KnotCurve

Mesh source object that generate a knot curve.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
edgecount | Edge count [integer]
meridianwraps | Meridian wraps [integer]
longitudinalwraps | Longitudinal wraps [integer]
scale | Scale [number]
width | Width [number]
closed | Closed Curve [boolean]

## Lawn

Mesh source object that generate a lawn.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
blade_count | Blade count [unsigned integer]
blade_width | Blade width [number]
blade_height | Blade height [number]

## Lightning

Mesh source object that generate a lightning.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
segments | Segments [integer]
width | Width [number]
radius | Radius [number]

## LinearPointNoise

Applies a linear noise offset to mesh points.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
use_x | Use X [boolean]
use_y | Use Y [boolean]
use_z | Use Z [boolean]
move_x | Move X [boolean]
move_y | Move Y [boolean]
move_z | Move Z [boolean]
frequency_x | X Frequency [number]
frequency_y | Y Frequency [number]
frequency_z | Z Frequency [number]
offset_x | X Offset [number]
offset_y | Y Offset [number]
offset_z | Z Offset [number]
amplitude_x | X Amplitude [number]
amplitude_y | Y Amplitude [number]
amplitude_z | Z Amplitude [number]

### See also

## LinearWavePoints

Mesh filter object which applies a linear "wave" deformation to geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
axis | Axis [enumeration]
along | Along [enumeration]
amplitude | Amplitude [number]
wavelength | Wavelength [number]
phase | Phase [number]

## LissajousCurve

Mesh source object that generate a geometry composed of Lissajous curves.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
edgecount | Edge count [integer]
mamp | Modulation amplitude [number]
mfreq | Modulation frequency [number]
mphase | Modulation phase [number]
xamp | X amplitude [number]
xfreq | X frequency [number]
xphase | X phase [number]
yamp | Y amplitude [number]
yfreq | Y frequencey [number]
yphase | Y phase [number]
zamp | Z amplitude [number]
zfreq | Z frequency [number]
zphase | Z phase [number]
width | Width [number]
closed | Closed Curve [boolean]

## LookAt

Matrix filter object.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
target_matrix | Target matrix [matrix4]
output_matrix | Output matrix [matrix4]

## MakePath

Mesh filter object.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
input_matrix | Input matrix [matrix4]
start_time | Start Time [number]
time | Time [number]
end_time | End Time [number]
output_matrix | Output matrix [matrix4]

## MakeSDS

Mesh filter object which converts any polyhedron into a Catmull-Clark subdivision mesh surface.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]

## MergeMesh

Mesh filter object that combines two input meshes into one output mesh.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
input_mesh1 | Input mesh 1
input_mesh2 | Input mesh 2

## MeshInstance

Object that renders an instance of a geometric mesh.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
color | Color [color]

## Molecule

Matrix filter object used by the PDB reader.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
drawStyle | Draw Style [enum]

### See also

## Newell

Mesh source object that generate Newell primitives.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
size | Size [number]
type | Primitive type [enumeration]

### See also

## NurbsCircle

Mesh source object that generate a NURBS circle.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
radius | Radius [number]
thetamax | End angle [number]
u_segments | Segments [integer]

## NurbsCone

Mesh source object that generate a NURBS cone.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
radius | Radius [number]
height | Height [number]
thetamax | End angle [number]
u_segments | Radial Segments [integer]
v_segments | Radial Segments [integer]

### See also

,

## NurbsCylinder

Mesh source object that generate a NURBS cylinder.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
radius | Radius [number]
zmax | ZMax [number]
zmin | ZMin [number]
thetamax | End angle [number]
u_segments | Radial Segments [integer]
v_segments | Radial Segments [integer]

### See also

,

## NurbsDisk

Mesh source object that generate a NURBS disk.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
radius | Radius [number]
height | Height [number]
thetamax | End angle [number]
u_segments | Radial Segments [integer]
v_segments | Radial Segments [integer]

### See also

## NurbsGrid

Mesh source object that generate a NURBS grid.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
columns | Columns [integer]
rows | Rows [integer]
width | Width [number]
height | Height [number]

### See also

## NurbsHyperboloid

Mesh source object that generate a NURBS hyperboloid.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
x1 | x1 [distance]
y1 | y1 [distance]
z1 | z1 [distance]
x2 | x2 [distance]
y2 | y2 [distance]
z2 | z2 [distance]
thetamax | thetamax [angle]

## NurbsPolygon

Mesh source object that generate a NURBS polygon.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
u_segments | Sides [integer]
radius | Radius [number]

## NurbsSphere

Mesh source object that generate a NURBS sphere.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
radius | Radius [number]
zmax | ZMax [number]
zmin | ZMin [number]
thetamax | thetamax [number]
u_segments | Radial Segments [integer]
v_segments | Radial Segments [integer]

### See also

,

## NurbsTorus

Mesh source object that generate a NURBS torus.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
majorradius | Major Radius [distance]
minorradius | Minor Radius [distance]
phimin | Phi Minimum [angle]
phimax | Phi Maximum [angle]
thetamax | Theta Maximum [angle]
u_segments | U Segments [integer]
v_segments | V Segments [integer]

### See also

,

## Orientation

Matrix filter object that modify orientation.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
x | X [angle]
y | Y [angle]
z | Z [angle]
output_matrix | Output matrix [matrix4]

### See also

, .

## Paraboloid

Source object for paraboloid.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
radius | radius [distance]
zmin | zmin [distance]
zmax | zmax [distance]
thetamax | thetamax [angle]

## PlanarMap

Object which maps values to geometry using a planar projection map

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
s0 | S0 [number]
s1 | S1 [number]
t0 | T0 [number]
t1 | T1 [number]
default_s | Default S [number]
default_t | Default T [number]
tag_points | Tag Points [boolean]
tag_point_groups | Tag Point Groups [boolean]
tag_edges | Tag Edges [boolean]
tag_faces | Tag Faces [boolean]
tag_polyhedra | Tag Polyhedra [boolean]
tag_linear_curve_groups | Tag Linear Groups [boolean]
tag_cubic_curve_groups | Tag Cubic Curve Groups [boolean]
tag_bilinear_patches | Tag Bilinear Patches [boolean]
tag_bicubic_patches | Tag Bicubic Patches [boolean]

## PointsToBlobby

Converts input points to a parametric surface.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]

### See also

## PolyCone

Mesh source object that generate a polygon cone.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
u_segments | Columns [integer]
v_segments | Rows [integer]
bottom | Cap cone bottom [boolean]
radius | Radius [number]
height | Z Max [number]
u_power | Radial Power [number]
v_power | Length Power [number]

### See also

, .

## PolyCube

Mesh source object that generate a polygon cube.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
width | Width [number]
height | Height [number]
depth | Depth [number]

## PolyCushion

Mesh source object that generate a polygon cushion.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
length_segments |
radial_segments |
diameter |
width |
height |
depth |

## PolyCylinder

Mesh source object that generate a polygon cylinder.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
u_segments | Columns [integer]
v_segments | Rows [integer]
top | Cap cylinder top [boolean]
bottom | Cap cylinder bottom [boolean]
radius | Radius [number]
zmax | Z Max [number]
zmin | Z Min [number]
u_power | Radial Power [number]

### See also

,

## PolyGrid

Mesh source object that generate a polygon grid.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
columns | Columns [integer]
rows | Rows [integer]
width | Width [number]
height | Height [number]

### See also

## PolySphere

Mesh source object that generate a polygon sphere.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
u_segments | Columns [integer]
v_segments | Rows [integer]
radius | Radius [number]
u_power | Radial Power [number]
v_power | Length Power [number]

### See also

,

## PolySphereTessellation

Generates a polygonal sphere by recursive subdivision of an isocahedron.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
tessellation_level | Columns [integer]
radius | Radius [number]

### See also

## PollyTerrainFFT

Generates an FFT-based fractal terrain.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
iterations | Iterations [integer]
dimension | Fractal dimension [number]
randomseed | Random seed [integer]

### See also

## PolyTerrainHfBM

Generates an HfBM-based fractal terrain.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
iterations | Iterations [integer]
dimension | Fractal dimension [number]
lacunarity | Lacunarity [number]
octaves | Octaves [number]
offset | Offset [number]
frequency | Frequency [number]
noiseoffset | Noise Offset [number]

### See also

## PolyText

Mesh source object that generate a polygon text.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
font | Font path [string]
text | Text [string]
curve_divisions | Curve edge count [integer]
height | Font height [number]

## PolyTorus

Mesh source object that generate a polygon torus.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
u_segments | Columns [integer]
v_segments | Rows [integer]
majorradius | Major Radius [number]
minorradius | Minor Radius [number]
u_power | Major Power [number]
v_power | Minor Power [number]

### See also

,

## PolygoneBlobbies

Polygonizes blobbies implicit surfaces.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
voxelsize | Voxel size [number]

### See also

## Polyhedron

Mesh source object that generate a polyhedron.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
number | Polyhedron Number [number]
dual |
size | Size [number]

## Position

Matrix filter object that modify position.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
x | X [number]
y | Y [number]
z | Z [number]
output_matrix | Output matrix [matrix4]

### See also

, .

## RenderManArray1D

Matrix filter object.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
instance | Instance [object]
count | Count [integer]
offsetx | X Offset [number]
offsety | Y Offset [number]
offsetz | Z Offset [number]
rotatex | X Rotation [number]
rotatey | Y Rotation [number]
rotatez | Z Rotation [number]

### See also

,

## RenderManArray2D

Marix filter object.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
instance | Instance [object]
ucount | U Axis Count [integer]
uoffsetx | U Axis X Offset [number]
uoffsety | U Axis Y Offset [number]
uoffsetz | U Axis Z Offset [number]
urotatex | U Axis X Rotation [number]
urotatey | U Axis Y Rotation [number]
urotatez | U Axis Z Rotation [number]
vcount | V Axis Count [integer]
voffsetx | V Axis X Offset [number]
voffsety | V Axis Y Offset [number]
voffsetz | V Axis Z Offset [number]
vrotatex | V Axis X Rotation [number]
vrotatey | V Axis Y Rotation [number]
vrotatez | V Axis Z Rotation [number]

### See also

## RenderManBackgroundPlane

Object for putting a shader onto a plane (good for lens flares, incorporating live shots, etc). The "distance" parameter ranges from 0.0 (nearplane) to 1.0 (farplane), so you can stack multiple objects in-front-of, in-between, or behind your scene, in any order you choose.

### Properties

Name | Description
--- | ---
name | Object name [string]
material | Surface material [object]
distance | Distance [scalar]

### See also

## RenderManBackgroundSphere

Object for putting a shader onto a sphere. The "distance" parameter ranges from 0.0 (nearplane) to 1.0 (farplane), so you can stack multiple objects in-front-of, in-between, or behind your scene, in any order you choose.

### Properties

Name | Description
--- | ---
name | Object name [string]
material | Surface material [object]
distance | Distance [scalar]

### See also

## RenderManCSGOperator

Object which controls how solid primitives will be combined within CSG trees.

### Properties

Name | Description
--- | ---
name | Object name [string]
type | Operation [enumeration]
instance1 | Instance1 [object]
instance2 | Instance2 [object]

### See also

## RenderManCSGSolid

Object which defines a solid primitive for use within a CSG tree.

### Properties

Name | Description
--- | ---
name | Object name [string]
instance | Instance [object]

### See also

## RenderManDisplacementShader

Source object for displacement shaders.

### Properties

Name | Description
--- | ---
name | Object name [string]
shader_name | Shader Name [string]

## RenderManEngine

Object which provide support for RenderMan renderers, and control the position, orientation, and display of the RenderMan camera view within the 3D workspace.

&k3d; currently supports Aqsis, BMRT (no longer available), PRMan, NetPRMan, 3Delight, RenderDotC and Pixie; note that Aqsis and Pixie is the only free (as is freedom) renderers.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
viewport_visible | Visible [boolean]
render_engine | Render Engine [string]
pixel_width | Output pixel width [positive integer]
pixel_height | Output pixel height [positive integer]
pixel_aspect_ratio | Output pixel aspect ratio [positive real]
default_atmosphere_shader | Default atmosphere shader [object]
default_interior_shader | Default interior shader [object]
default_exterior_shader | Default exterior shader [object]
imager_shader | Imager shader [object]
orthographic | Orthographic [boolean]
left | Left [number]
right | Right [number]
top | Top [number]
bottom | Bottom [number]
near | Near plane distance [number]
far | Far plane distance [number]
bucket_width | Bucket Width [positive integer]
bucket_height | Bucket Height [positive integer]
grid_size | Grid Size [positive integer]
eye_splits | Eye Splits [positive integer]
texture_memory | Texture Memory [positive integer]
render_alpha | Render Alpha [boolean]
pixel_xsamples | Pixel X Samples [positive real]
pixel_ysamples | Pixel Y Samples [positive real]
pixel_filter | Pixel Filter [string]
pixel_filter_width | Pixel Filter Width [positive real]
pixel_filter_height | Pixel Filter Height [positive real]
exposure | Exposure [real]
gamma | Gamma [real]
dof | Depth of Field [boolean]
fstop | f-stop [real]
focal_length | Focal Length [distance]
focus_plane | Focus Plane [distance]
shading_rate | Shading Rate [real]
shading_interpolation | Shading Interpolation [string]
two_sided | Two Sided [boolean]
crop_window_left | Crop Window Left [real]
crop_window_right | Crop Window Right [real]
crop_window_top | Crop Window Top [real]
crop_window_bottom | Crop Window Bottom [real]
motion_blur | Motion Blur [boolean]

### See also

, .

## RenderManImagerShader

Source object for imager shaders.

### Properties

Name | Description
--- | ---
name | Object name [string]
shader_name | Shader Name [string]

## RenderManLatLongEnvironmentMap

Bitmap sink object. Converts a bitmap into a RenderMan LatLong Environment Map that allows you to use an image for simulating things like reflections with the appropriate shaders, e.g. k3d_shiny, k3d_shiny_metal, etc. Note that this is a "LatLong" map where the image is treated like a "Mercator Projection", and is commonly used with hand-generated maps, video footage, etc.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
filter | Filter [string]
swidth | Filter S Width [positive real]
twidth | Filter T Width [positive real]

## RenderManLight

A lightsource object.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
viewport_visible | Visible [boolean]
shader | Light shader [object]
raytraced-shadows | Render raytraced shadows from this light [boolean]

## RenderManLightShader

Source object for light shaders.

### Properties

Name | Description
--- | ---
name | Object name [string]
shader_name | Shader Name [string]

## RenderManMaterial

Object which provide a grouping of shaders and parameter settings that control what a geometry will appear to be made of.

### Properties

Name | Description
--- | ---
name | Object name [string]
surface_shader | Surface shader [object]
displacement_shader | Displacement shader [object]
atmosphere_shader | Atmosphere shader [object]
interior_shader | Interior shader [object]
exterior_shader | Exterior shader [object]
truedisplacement | Enable true displacement during rendering (BMRT specific) [boolean]
truedisplacementbounds | Displacement bounds [number]
matte | Render geometry as a matte [boolean]
camerarays | Render camera rays (BMRT specific) [boolean]
reflectionrays | Render reflection rays (BMRT specific) [boolean]
color | Color [object]
opacity | Opacity [object]

## RenderManScript

This is a transformable object that you place in your scene and move around as you please. It has a single "script" property which is executed with RenderMan context anytime the document is rendered, so you can generate anything and everything you want. Typically, the script will make calls to the RenderMan API to generate geometry.

The script environment is maintained between script execution, so a script can initialize data structures that will be available the next time it is executed. At execution time, the script will have ApplicationContext, DocumentContext, ObjectContext, and RenderManContext. Currently, RenderManScript is hard-coded to use the JavaScript which is the only engine that has a RenderMan object model

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
script | Script

## RenderManShadowMap

Object that automatically generate RenderMan shadow maps for fast rendering.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
viewport_visible | Visible [boolean]
create | Create shadow map during rendering [boolean]
view | View shadow map creation during rendering [boolean]
pixel_width | Output pixel width [positive integer]
pixel_height | Output pixel height [positive integer]
pixel_aspect_ratio | Output pixel aspect ratio [positive real]
orthographic | Orthographic [boolean]
left | Left [number]
right | Right [number]
top | Top [number]
bottom | Bottom [number]
near | Near plane distance [number]
far | Far plane distance [number]

## RenderManSurfaceShader

Source object for surface shaders.

### Properties

Name | Description
--- | ---
name | Object name [string]
shader_name | Shader Name [string]

## RenderManTextureMap

Bitmap sink object which converts a bitmap into a RenderMan Texture Map

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input bitmap [bitmap]
output | Output bitmap [bitmap]
swrap | S Wrap [string]
twrap | T Wrap [string]
filter | Filter [string]
swidth | Filter S Width [positive real]
twidth | Filter T Width [positive real]

## RenderManVolumeShader

Source object for volume shaders.

### Properties

Name | Description
--- | ---
name | Object name [string]
shader_name | Shader Name [string]

## RotatePoints

Matrix filter object for rotation.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
x | X rotate [number]
y | Y rotate [number]
z | Z rotate [number]

### See also

## ScalarAdd

Object which add two scalar inputs and produce their sum as output.

### Properties

Name | Description
--- | ---
name | Object name [string]
input1 | First input [double]
input2 | Second input [double]
output | Sum of inputs [double]

## ScalarBezierChannel

Object which provide a animation channel representing a scalar value that can change over time. All &k3d; objects have various scalar value properties you can change to achieve different effects. And by connecting the ScalarBezierChannel output to these properties you can animate pretty much anything in a &k3d; scene - let it be an angle, a distance, or a shader parameter!

Cursor X: | Display the cursors X value.
Cursor Y: | Display the cursors Y value.
Cursor Value: | Display the cursors value
Channel Straighten: | Equal to linear interpolation, affect whole channel.
Channel Mirror X: | Mirror along the X axis, affect whole channel.
Channel Mirror Y: | Mirror along the Y axis, affect whole channel.
Selection Straighten: | Equal to linear interpolation, affect only selected nodes.
Selection Delete: | Delete selected nodes.
View Fit: | Fit the view to whole graph.
View Close: | Close the Channel Properties window.

There are several things to note here - filling most of the Channel Properties is the Curve Graph, which displays a visual representation of the Channel's value over time - just as in school, the graph X axis represents time while the graph Y axis represents value.

The vertical green line that is moving across the Curve Graph during playback is displaying the current View Time, and is always updated as the Document View Time changes. The vertical red line is the Cursor, which can be placed with the mouse to "sample" the Channel value at specific points in the curve.

Notice the yellow dot, along with a black line passing through it. The dot is a Key Frame, and the black line represents the interpolated value of this Channel for the duration of the animation. We can animate the value of this Channel by creating additional Key Frames by double-clicking with the left mouse button in the graph. We can select Key Frames by click on them with the left mouse button and deselect all with the right mouse button.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input Value [double]
output | Output Value [double]

### See also

## ScalarDivide

Object which divide two scalar inputs and produce their quotient as output.

### Properties

Name | Description
--- | ---
name | Object name [string]
input1 | First input [double]
input2 | Second input [double]
output | Quotient of inputs [double]

## ScalarModulo

Object which modulo two scalar inputs and produce their remainder as output.

### Properties

Name | Description
--- | ---
name | Object name [string]
input1 | First input [double]
input2 | Second input [double]
output | Remainder of inputs [double]

## ScalarMultiply

Object which multiply two scalar inputs and produce their product as output.

### Properties

Name | Description
--- | ---
name | Object name [string]
input1 | First input [double]
input2 | Second input [double]
output | Product of inputs [double]

## ScalarProperty

Object that exposes a single scalar value as a property, to act as a "data source" for other objects.

### Properties

Name | Description
--- | ---
name | Object name [string]
value | The value exposed by this property

### See also

## ScalarPseudoRand

Object which produce pseudo-random output.

### Properties

Name | Description
--- | ---
name | Object name [string]
seed | seed [double]
output | pseudo-random output [double]

## ScalarSine

Object which applies a sine function to its input.

### Properties

Name | Description
--- | ---
name | Object name [string]
input | Input [double]
output | Sine wave [double]

## ScalarSubtract

Object which subtract two scalar inputs and produce their difference as output.

### Properties

Name | Description
--- | ---
name | Object name [string]
input1 | First input [double]
input2 | Second input [double]
output | Difference of inputs [double]

## Scale

Matrix filter object for scaling.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
x | X [number]
y | Y [number]
z | Z [number]
output_matrix | Output matrix [matrix4]

### See also

, .

## ScalePoints

Mesh filter object that scale points in geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
x | X scale [number]
y | Y scale [number]
z | Z scale [number]

### See also

## SetMaterial

Object which sets geometry materials.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
material | Surface material [object]

## ShearPoints

Mesh filter object that shear points in geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
direction | Direction [enumeration]
axis | Axis [enumeration]
shear_factor | Shear Factor [number]

## SmoothPoints

Mesh filter object that smooth points in geometry by averaging point locations.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
smoothing | Smoothing [number]

## SoftObject

Mesh source object for implicit "soft objects".

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
radius | Radius [number]
hardness | Hardness [number]
skeletontype | Skeleton Type [enumeration]
potentialtype | Potential Type [enumeration]

## Sphere

Source object for a sphere quadric.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
radius | radius [distance]
zmax | zmax [distance]
zmin | zmin [distance]
thetamax | thetamax [angle]

### See also

,

## SphereizePoints

Mesh filter object which "sphereizes" meshes by making them conform to the surface of a sphere.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
sphere_factor | Sphere Factor [number]

## Starfield

Mesh source object that generate a startfield.

### Properties

Name | Description
--- | ---
name | Object name [string]
output_mesh | Output mesh [mesh]
material | Surface material [object]
width | Width [number]
count | Count [integer]
radius | Radius [number]

## TagColor

Filter object for working with tags.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
new_color | New Color [color]
default_color | Default Color [color]
tag_points | Tag Points [boolean]
tag_point_groups | Tag Point Groups [boolean]
tag_edges | Tag Edges [boolean]
tag_faces | Tag Faces [boolean]
tag_polyhedra | Tag Polyhedra [boolean]
tag_linear_curve_groups | Tag Linear Groups [boolean]
tag_cubic_curve_groups | Tag Cubic Curve Groups [boolean]
tag_bilinear_patches | Tag Bilinear Patches [boolean]
tag_bicubic_patches | Tag Bicubic Patches [boolean]

## TaperPoints

Mesh filter object which applies a "taper" transformation to geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
axis | Axis [enumeration]
taper_fator | Taper Factor [number]
displace_x | Displace X [boolean]
displace_y | Displace Y [boolean]
displace_z | Displace Z [boolean]

## Teapot

Source object for teapot quadric.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]

### See also

## TimeSource

Source object for time output.

Although multiple TimeSource objects are not explicitly forbidden, they probably aren't ever what you really want, anyway. What you really want to do is to take the output of your one TimeSource, and "split" it so you can modify the branches in some way. To do that insert a ScalarMultiply object, that takes two doubles as input and produces their product as an output, you could connect the TimeSource to one input, set the other input to 2, and connect the output to whatever channels or other objects used "time" as an input, and those objects would then be moving at twice the normal rate, but still under the control of a single TimeSource.

### Properties

Name | Description
--- | ---
name | Object name [string]
start_time | Start Time [seconds]
end_time | End Time [seconds]
frame_rate | Frame Rate [frames per second]
time | Time [seconds]

### See also

, , ,

## Torus

Source object for a torus quadric.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
render_final | Visible in the final rendered image [boolean]
render_shadows | Cast shadows [boolean]
motion_blur | Enable motion blur for this object [boolean]
viewport_visible | Visible [boolean]
material | Surface material [object]
majorradius | Major Radius [distance]
minorradius | Minor Radius [distance]
phimin | Phi Minimum [angle]
phimax | Phi Maximum [angle]
thetamax | Theta Maximum [angle]

### See also

,

## Transform

Matrix filter object for transformation.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]

### See also

, , .

## TranslatePoints

Mesh filter object which translate points in geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
x | X translate [number]
y | Y translate [number]
z | Z translate [number]

### See also

## TriangulateFaces

Mesh filter object which triangulates geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]

## TwistPoints

Mesh filter object which applies a "twist" transformation to points in geometry.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_mesh | Input mesh [mesh]
output_mesh | Output mesh [mesh]
axis | Axis [enumeration]
angle | Angle [number]

## Viewport

Object which controls the position, orientation, and display of a camera view within the 3D workspace.

This section is not fully updated.

Of course, &k3d; wouldn't be a 3D program without some way of seeing your virtual world! Each Document in &k3d; can contain an unlimited number of Cameras, each Camera representing a virtual view into your document through a Camera Viewport. By dragging your mouse through the Camera Viewport, you can interactively pan, tilt, and dolly the virtual camera, select geometry and even move, orient, and scale whole objects.

### Navigation / Manipulation

The following is not just limited to camera navigation but apply to the manipulation of all objects in the scene that has a position and orientation.

#### Rotate / Pan & Tilt

Hold down the right mouse button to pan and tilt.

#### Cant / Dutch Tilt

Hold press the Ctrl key and hold down the right mouse button to dutch tilt.

#### Scale / Zoom

Hold down the middle mouse button.

#### Translate / Dolly

You can dolly by pressing the Shif key while holding down the right mouse button. The behaviour is dependent on what active axis is selected. With the Y axis active, mouse movement dolly the Camera along the X and Z axes.

Shift+Control while holding down the right mouse button dolly along the active axis. When a given axis is active, mouse movement alters an object around the other two axes; holding down CTRL constrains the change to the Active Axis.

### Select / Deselect

You can use the mouse to select and deselect geometry interactivly. Selected geometry will be highlighted as white. When selecting in &k3d;, it's important to keep in mind that there are three "levels" of selection: 1) Objects 2) Polygons 3) Points.

#### Objects

The first type of selection is the easiest: selecting an entire Object. You can do this in one of two ways: through the Hierarchy (clicking on the second square in front of the object) or by clicking on the Object with SHIFT and the Left Mouse Button.

#### Polygons

Next, you might want to select polygons using a rectangular Rubber Band Box. Just drag the mouse with the Left Mouse Button down. An important thing to keep in mind is that every polygon that fits completely within the Rubber Band Box will be selected, whether it's visible or not. You may want to disable solid rendering for the Viewport while making selections, to avoid selecting unseen polygons by mistake.

Next, we'll select polygons using an arbitrarily-shaped Lasso. Hold down SHIFT while dragging the mouse with the Left Mouse Button down. Again, any polygon contained in the Lasso will be selected. When selecting with Rubber Band Boxes or Lassos, you will often need to move the Camera so you have a "clear shot" at the polygons you want to select.

You can select individual polygons by clicking within them with the Left Mouse Button. Again, any polygon under the mouse pointer is a candidate for selection.

#### Points

We've covered Objects and Polygons so far, but what about Points? Actually, we've already been selecting Points, albeit indirectly - whenever you select a Polygon, you're selecting all its Points. This applies at the Object level, too - selecting an Object selects all its Polygons and Points. It's useful, though, to be able to select individual Points. To do this, we switch our Document to Point Edit Mode. We can now select individual Points using the same Rubber Band Box and Lasso techniques used earlier to select Polygons. You can use SHIFT click to select individual polygons while in Point Edit Mode.

#### Deselection

You can deselect everything in your entire Document by clicking the Right Mouse Button in any Camera Viewport. Your Document can contain any combination of selected and unselected Objects, Polygons, and Points, and you'll need to keep track of what's selected, so you don't make inadvertent alterations. Use an Right Mouse Button click between selections to avoid leaving something selected by mistake. To deselect selectively, simply hold down CTRL while using any of the previously mentioned selection techniques.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
point_size | Point size [integer]
background_color | Background color [color]
fog | Fog [boolean]
fog_near | Fog near distance [number]
fog_far | Fog far distance [number]
orthographic | Orthographic [boolean]
left | Left [number]
right | Right [number]
top | Top [number]
bottom | Bottom [number]
near | Near plane distance [number]
far | Far plane distance [number]
headlight | Headlight [boolean]
show_lights | Show Lights [boolean]
draw_points | Draw Points [boolean]
draw_edges | Draw Edges [boolean]
draw_faces | Draw Faces [boolean]
draw_linear_curves | Draw Linear Curves [boolean]
draw_cubic_curves | Draw Cubic Curves [boolean]
draw_nucurves | Draw NURBS Curves [boolean]
draw_bilinear_patches | Draw Bilinear Patches [boolean]
draw_bicubic_patches | Draw Bicubic Patches [boolean]
draw_nupatches | Draw NURBS Patches [boolean]
draw_face_orientations | Draw Face Orientations [boolean]
draw_two_sided | Draw Two Sided [boolean]
draw_safe_zone | Draw Safe Zone [boolean]
viewport_host | Viewport Host [object]

## YafRayEngine

Object which provide support for the YafRay renderer, and control the position, orientation, and display of the YafRay camera view within the 3D workspace.

YafRay is a fun and free (as in freedom) little radiosity renderer capable of producing some very nice images.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
viewport_visible | Visible [boolean]
pixel_width | Output pixel width [positive integer]
pixel_height | Output pixel height [positive integer]

### See also

, .

## YafRayHemilight

A hemilight source for the YafRay render.

### Properties

Name | Description
--- | ---
name | Object name [string]
emit | Emit Light [boolean]
color | Light color [object]
power | Power [number]
samples | Samples [positive integer]

## YafRayMaterial

A material for the YafRay render.

### Properties

Name | Description
--- | ---
name | Object name [string]
color | Color
specular_color | Specular Color
reflected_color | Reflected Color
transmitted_color | Transmitted Color
hardness | Hardness
index_of_refraction | Index of Refraction
minimum_reflection | Minimum Reflection

## YafRayPointLight

A pointlight source for the YafRay render.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
emit | Emit Light [boolean]
color | Light color [object]
cast_shadows | Cast shadows [boolean]
viewport_visible | Visible [boolean]
power | Power [number]

## YafRaySoftLight

A softlight source for the YafRay render.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
emit | Emit Light [boolean]
color | Light color [object]
viewport_visible | Visible [boolean]
power | Power [number]
radius | Softness [number]
resolution | Shadowmap resolution [positive integer]
bias | Shadowmap bias [number]

## YafRaySpotLight

A spotlight source for the YafRay render.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
emit | Emit Light [boolean]
color | Light color [object]
viewport_visible | Visible [boolean]
power | Power [number]
size | Angle [number]
nblend | Edge softness [number]
beam_falloff | Beam falloff [number]

## YafRaySunLight

A sunlight source for the YafRay render.

### Properties

Name | Description
--- | ---
name | Object name [string]
input_matrix | Input matrix [matrix4]
position | Position [vector3]
orientation | Orientation [angle_axis]
scale | Scale Matrix [vector3]
output_matrix | Output matrix [matrix4]
emit | Emit Light [boolean]
color | Light color [object]
cast_shadows | Cast shadows [boolean]
viewport_visible | Visible [boolean]
power | Power [number]