train~
Description
train~ generates a pulse signal whose period is specifiable in terms of milliseconds (see <~ for a method of making a pulse wave at a specified frequency). It also sends out a when going from 0 to 1, so it can be used as a metronome with a floating-point interval.
Examples
Discussion
The signal output can be used as a control input for sah~ as shown in the example below, or at very small intervals, it is audible.
Arguments
inter-pulse-interval [number]
Sets the initial value for the inter-pulse interval in milliseconds. The default is 1000 ms. If a signal object is connected to this inlet, the corresponding initial argument value is ignored.
pulse-width [number]
Sets the initial value for the pulse width. The default is 0.5. If a signal object is connected to this inlet, the corresponding initial argument value is ignored.
phase [number]
Sets the initial value for the pulse phase. The default is 0. If a signal object is connected to this inlet, the corresponding initial argument value is ignored.
Attributes
interval [float]
Specifies the period (time interval between pulse cycles), in milliseconds, of a pulse train sent out the left outlet. Signal inputs override this attribute value.
phase [float]
Sets the phase of the onset of the "on" portion of the pulse. A value of 0 places the "on" portion at the beginning of the interval, while other values (up to 1, which is the same as 0) delay the "on" portion by a fraction of the total inter-pulse interval. Signal inputs override this attribute value.
resetmode [int]
When resetmode is set to 1, train~ will defer an interval change. If the interval is 2000 and you change it 400, train~ will wait until it completes the current cycle to change the interval to 400. When resetmode is set to 0 (the default), the interval is changed immediately.
width [float]
Controls the pulse width or duty cycle. A value of 0 has the smallest "on" pulse size, while a value of 1 has the largest. A value of 0.5 makes a pulse with half the time at 1 and half the time at 0. Signal inputs override this attribute value.
Common Box Attributes
annotation [symbol]
Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.
background [int] (default: 0)
Adds or removes the object from the patcher's background layer.
adds the object to the background layer, removes it. Objects in the background layer are shown behind all objects in the default foreground layer.color [4 floats]
Sets the color for the object box outline.
fontface [int]
Sets the type style used by the object. The options are:
plain
bold
italic
bold italic
Possible values:
0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'
fontname [symbol]
Sets the object's font.
fontsize [float]
Sets the object's font size (in points).
Possible values:
'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'
hidden [int] (default: 0)
Toggles whether an object is hidden when the patcher is locked.
hint [symbol]
Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.
ignoreclick [int] (default: 0)
Toggles whether an object ignores mouse clicks in a locked patcher.
jspainterfile [symbol]
JS Painter File
patching_rect [4 floats] (default: 0. 0. 100. 0.)
Sets the position and size of the object in the patcher window.
position [2 floats]
Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.
presentation [int] (default: 0)
Sets whether an object belongs to the patcher's presentation.
presentation_rect [4 floats] (default: 0. 0. 0. 0.)
Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.
rect [4 floats]
Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).
size [2 floats]
Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.
textcolor [4 floats]
Sets the color for the object's text in RGBA format.
textjustification [int]
Sets the justification for the object's text.
Possible values:
0 = 'left'
1 = 'center'
2 = 'right'
varname [symbol]
Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.
Messages
bang
int
Arguments
float
Arguments
resetmode
Arguments
signal
In middle inlet: Controls the pulse width or duty cycle. The signal values represent a fraction of the pulse interval that will be devoted to the "on" part of the pulse (signal value of 1). A value of 0 has the smallest "on" pulse size (usually a single sample), while a value of 1 has the largest (usually the entire interval except a single sample). A value of 0.5 makes a pulse with half the time at 1 and half the time at 0.
In right inlet: Sets the phase of the onset of the "on" portion of the pulse. A value of 0 places the "on" portion at the beginning of the interval, while other values (up to 1, which is the same as 0) delay the "on" portion by a fraction of the total inter-pulse interval.
Output
bang
Out right outlet: When the "on" portion of the pulse begins, a train~ as a signal-synchronized metronome with an interval specifiable as a floating-point (or ) value. However, there is an unpredictable delay between the "on" portion of the pulse and the actual output of the message, which depends in part on the current Max scheduler interval. The delay is guaranteed to be a millisecond or less if the scheduler interval is set to 1 millisecond.
is sent out the right outlet. Using this outlet, you can usesignal
Out left outlet: A pulse (square) wave train having the specified interval, width, and phase.
See Also
Name | Description |
---|---|
<~ | Is less than, comparison of two signals |
>~ | Is greater than, comparison of two signals |
clip~ | Limit signal amplitude |
phasor~ | Generate sawtooth signals |