Package Max

zmap

Maps input range of values to output range

Description

Maps an input range of values and to an output range of values. Similar to scale, but clips values to the ranges, and does not allow inverted scaling.

Arguments

minimum-input[number]
optional

The minimum input value. If the low values is higher than the corresponding high value, the two values are reversed to preserve the high-low relationship.

maximum-input[number]
optional

The maximum input value. If the low values is higher than the corresponding high value, the two values are reversed to preserve the high-low relationship.

minimum-output[number]
optional

The minimum output value. If the low values is higher than the corresponding high value, the two values are reversed to preserve the high-low relationship. The zmap object will clip to the boundaries of the output range.

maximum-output[number]
optional

The maximum output value. If the low values is higher than the corresponding high value, the two values are reversed to preserve the high-low relationship. The zmap object will clip to the boundaries of the output range.

Attributes

Common Box Attributes

Below is a list of attributes shared by all objects. If you want to change one of these attributes for an object based on the object box, you need to place the word sendbox in front of the attribute name, or use the object's Inspector.

annotation[symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

background[int]: 0

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 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]: 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]: 0

Toggles whether an object ignores mouse clicks in a locked patcher.

jspainterfile[symbol]

You can override the default appearance of a user interface object by assigning a JavaScript file with code for painting the object. The file must be in the search path.

patching_rect[4 floats]: 0. 0. 100. 0.

Sets the position and size of the object in the patcher window.

position[2 floats]
write-only

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]: 0

Sets whether an object belongs to the patcher's presentation.

presentation_rect[4 floats]: 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]
write-only

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]
write-only

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

Perform the scaling operation on the most recently received input value. If the range values have been changed, the scaling will be based on the new range.

int

Converted to float .

Arguments:
  • input [int]

float

In left inlet: The incoming value is scaled according to the mapping provided by the arguments, or values received in the other inlets.
Note: The preservation of the high-low relationship is different from the behavior of the scale object, which lets you do reverse scaling. Also, note that the zmap object will clip to the boundaries of the output range.

Arguments:
  • input [float]

  (inlet1)

In second inlet: Sets the low input value. If the value is higher than the high input value, the two values are reversed to preserve the high-low relationship.

Arguments:
  • minimum-input [float]

  (inlet2)

In third inlet: Sets the high input value. If the value is lower than the low input value, the two values are reversed to preserve the high-low relationship.

Arguments:
  • maximum-input [float]

  (inlet3)

In fourth inlet: Sets the low output value. If the value is higher than the high output value, the two values are reversed to preserve the high-low relationship.

Arguments:
  • minimum-output [float]

  (inlet4)

In right inlet: Sets the high output value. If the value is higher than the high output value, the two values are reversed to preserve the high-low relationship.

Arguments:
  • maximum-output [float]

list

In left inlet: A list of numbers sent to the left inlet will trigger the output of a list consisting of the results of performing the specified scaling operation on each item in the input list.

Arguments:
  • input [list]

Output

float

When zmap receives a value in its leftmost inlet, that value is scaled to the indicated output range of values.

See Also

Name Description
scale Map values to an output range
expr Evaluate a mathematical expression