# androidx.ink.brush.behavior

*** ** * ** ***

## Classes

|---|---|
| `https://developer.android.com/reference/androidx/ink/brush/behavior/BinaryOpNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that combines two other values with a binary operation. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/BinaryOpNode.BinaryOp` | A binary operation for combining two values in a `https://developer.android.com/reference/androidx/ink/brush/behavior/BinaryOpNode`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/ConstantNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that produces a constant output value. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/DampingNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that applies damping to an input value, smoothing out rapid changes by causing the output value to asymptotically decay towards the input value over a specified time or distance. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction` | An `EasingFunction` defines a curve between input x and output y "progress values" similar to the CSS easing function: https://www.w3.org/TR/css-easing-1/#easing-functions |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction.CubicBezier` | Parameters for a custom cubic Bezier easing function. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction.Linear` | Parameters for a custom piecewise-linear easing function. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction.Predefined` | Predefined easing functions. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction.StepPosition` | Setting to determine the desired output value of the first and last step of \[0, 1) for `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction.Steps`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/EasingFunction.Steps` | Parameters for a custom step easing function. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/IntegralNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that integrates an input value over time or distance. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/InterpolationNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that interpolates between two inputs based on a parameter input. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/InterpolationNode.Interpolation` | Interpolation functions for use in an `https://developer.android.com/reference/androidx/ink/brush/behavior/InterpolationNode`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/Node` | Represents one node in a `https://developer.android.com/reference/androidx/ink/brush/BrushBehavior`'s expression graph. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/NoiseNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that produces a smooth random function. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/OutOfRange` | The desired behavior when an input value is outside the range defined by `https://developer.android.com/reference/androidx/ink/brush/behavior/SourceNode#sourceValueRangeStart()` and `https://developer.android.com/reference/androidx/ink/brush/behavior/SourceNode#sourceValueRangeEnd()`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/PolarTargetNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/TerminalNode` that consumes two inputs, an angle and a magnitude, to affect a vector brush tip property. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/PolarTargetNode.PolarTarget` | List of vector tip properties that can be modified by a `https://developer.android.com/reference/androidx/ink/brush/BrushBehavior`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/ProgressDomain` | Dimensions and units for measuring distance/time along the length/duration of a stroke. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/ResponseNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that maps an input value through a response curve. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/SourceNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` that gets data from the stroke input batch. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/SourceNode.Source` | List of input properties along with their units that can act as sources for a `https://developer.android.com/reference/androidx/ink/brush/BrushBehavior`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/TargetNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/TerminalNode` that consumes a single input to affect a scalar brush tip property. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/TargetNode.Target` | List of scalar tip properties that can be modified by a `https://developer.android.com/reference/androidx/ink/brush/BrushBehavior`. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/TerminalNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/TerminalNode` is a terminal node in the graph; it does not produce a value and cannot be used as an input to other `https://developer.android.com/reference/androidx/ink/brush/behavior/Node`s, but instead applies a modification to the brush tip state. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/ToolTypeFilterNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` for filtering out a branch of a behavior graph unless this stroke's tool type is in the specified set. |
| `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` | A `https://developer.android.com/reference/androidx/ink/brush/behavior/ValueNode` is a non-terminal node in the graph; it produces a value to be consumed as an input by other `https://developer.android.com/reference/androidx/ink/brush/behavior/Node`s, and may itself depend on zero or more inputs. |