line~

Linear ramp generator

Description

The line~ object generates a signal ramp or envelope. It uses the Max time format syntax; envelope times can be either single valued fixed or tempo-relative.

Arguments

Name Type Opt Description
initial-value float or int opt Sets an initial value for the signal output. The default value is 0.

Messages

int target-value/delta-time (milliseconds) [int]
In left inlet: The number is the target value, to be arrived at in the time specified by the number in the right inlet. If no time has been specified since the last target value, the time is considered to be 0 and the output signal jumps immediately to the target value.
float target-value/delta-time (milliseconds) [float]
In left inlet: The number is the target value, to be arrived at in the time specified by the number in the right inlet. If no time has been specified since the last target value, the time is considered to be 0 and the output signal jumps immediately to the target value.

In right inlet: The number is the time, in milliseconds, in which the output signal will arrive at the target value.
list target-value and delta-time (milliseconds) [list]
In left inlet: The first number specifies a target value and the second number specifies a total amount of time (in milliseconds) in which line~ should reach the target value. In the specified amount of time, line~ generates a ramp signal from its current value to the target value.
line~ accepts up to 128 target-time pairs in a list, to generate compound ramps. (An example would be 0 1000 1 1000, which would go from the current value to 0 in a second, then to 1 in a second.) Once one of the ramps has reached its target value, the next one starts. A subsequent list, float, or int in the left inlet clears all ramps yet to be generated.
anything object-parameters [list]
Equivalent to list.
pause In left inlet: Pauses the internal ramp but does not change the target value nor clear pending target-time pairs. line~ will continue outputting whatever value was its current value when the pause message was received, until either it receives a resume message or until a new ramp is input.
stop In left inlet: Stops the internal ramp and clears pending target-time pairs. line~ will continue outputting whatever value was its current value when the stop message was received, resetting its target value to that value.
resume In left inlet: Resumes the internal ramp and subsequent pending target-time pairs if the line~ object was paused as a result of the pause message.

Information for box attributes common to all objects

Output

bang: Out right outlet: When line~ has finished generating all of its ramps, bang is sent out.
signal: Out left outlet: The current target value, or a ramp moving toward the target value according to the currently stored value and the target time.

Examples

Linearly changing signal or a function made up of several line segments

See Also

Name Description
adsr~ ADSR envelope generator
click~ Create an impulse
curve~ Exponential ramp generator
transport Control a master clock and report time values.
MSP Tutorial 2: Adjustable Oscillator MSP Tutorial 2: Adjustable Oscillator