mapping
A Pure Data abstraction library for conditioning and mapping control or sensor data, with tools for range conversion, nonlinear response curves, coordinate conversion, filtering, and related transformations.
- Repository Source code
Contributors
People who contribute to this project.
Objects
- breakpoint
breakpointcurves a 0-to-1 input range into a 0-to-1 output range using a double-linear mapping. - breakpoint_smooth
breakpoint_smoothcurves a control input in the 0-to-1 range using a double-linear mapping, producing a curved float output. - bytemask
bytemaskgenerates a bitmask byte from values received through its eight float inlets and outputs the result as a float. - cartesian2spherical
cartesian2sphericalis a control abstraction that the help patch describes as converting spherical coordinates(r, phi, theta)to Cartesian coordinates(x, y, z), despite its contradictory name. - center_point
center_pointconverts normalized 0-to-1 control data, such as joystick input, into data organized around a center point. - circular
circularcurves a float input using a double-circular mapping, producing a float output in the range 0 to 1. - circular_seat
circular_seatcurves an input range using a double-circular mapping, producing a float output in the range 0 to 1. - circular_sigmoid
circular_sigmoidcurves a control input using a double-circular mapping, producing an output in the range 0 to 1. - correlation
correlationmeasures the correlation between two float streams, with one stream supplied to each inlet. - cubic_seat
cubic_seatcurves a control input using cubic curves, mapping the result to an output range of 0 to 1. - curve_draw
curve_drawis a GUI control abstraction for drawing an input-to-output mapping curve, with both input and output ranging from 0 to 1. - curve_exp
curve_expmaps a float input range to an exponential curve, with an output range from 0 to 1. - curve_fade
curve_fadeapplies a non-linear transformation to control values for smooth, natural fades with continuity. - curve_graph
curve_graphis a GUI control abstraction for drawing an arbitrary curve and using it for curve mapping. - curve_log
curve_logmaps a float input in the 0-to-1 range onto a logarithmic curve, producing a float output in the same 0-to-1 range. - debytemask
debytemaskdecodes a bitmask byte received as a float into eight float outlets, providing the inverse operation ofbytemask. - degrees2mapping
degrees2mappingconverts degree values into the mapping range for use with mapping controls and abstractions. - delay_n The help patch places
delay_nafterresample, suggesting that it is intended to delay a resampled control-value stream. - desegment
desegmentis a control abstraction with a list inlet, a float inlet, and a float outlet; the example usesdesegment 4and sends indexed value pairs such as “0 $1” through “3 $1”. - diff_n
diff_ndifferentiates a float input, providing a control-rate measure of its change. - disjoin
disjoinis a control abstraction that splits a range into two, producing float values through two outlets. - distance2d
distance2dcalculates the 2D distance between a point and a stream of points, outputting the result as a float. - distance_n
distance_ncalculates the distance between a point and a stream of points in n-dimensional space, outputting the result as a float. - downsample
downsampleis a control-rate filter abstraction that outputs one out of every n incoming data items, passing values of any type through its outlet. - elliptic
ellipticcurves an input range using two ellipses, mapping the output to the range 0–1. - elliptic_seat
elliptic_seatcurves a control input using a double-linear mapping, producing output in the range 0 to 1. - elliptic_sigmoid
elliptic_sigmoidcurves a control input using a double-linear mapping, producing output in the range 0 to 1. - env+
env+is a control abstraction that acts as a positive envelope follower, producing a float output from float input. - env-
env-is a control abstraction that acts as a negative envelope follower, taking float values through its first inlet and outputting floats. - exponential_curve
exponential_curvecurves an input range using a double-exponential function, producing a mapped output in the 0-to-1 range. - exponential_seat
exponential_seatcurves an input in the 0-to-1 range using a double-exponential function, producing a control value in the 0-to-1 output range. - exponential_sigmoid
exponential_sigmoidcurves a control input using a double-exponential function, mapping its output to the range 0 to 1. - fir
firis a control-rate finite impulse response filter that processes incoming floats using a list of coefficients. - gaussian
gaussiangenerates a Gaussian curve from float control input. - hysteresis
hysteresisadds hysteresis to floating-point input data for control-rate mapping. - iir
iircomputes an infinite impulse response low-pass filter for control data. - listto
listtoseparates a list into a stream of individual atoms and outputs a bang when it reaches the end of the list. - local_max
local_maxfilters a stream of floats and outputs the value of each local maximum when one occurs. - local_min
local_minoutputs the value of each local minimum in an incoming stream of floats. - logistic_sigmoid
logistic_sigmoidcurves a float input using a double-exponential, producing a float output mapped from 0 to 1. - lop
lopis a control abstraction intended to filter float data independently of the data-flow frequency. - mapping2degrees
mapping2degreesconverts a float from the mapping range (0 to 1) into degrees. - mapping2midi
mapping2midiconverts numbers from the mapping range into MIDI values. - mapping2radians
mapping2radiansconverts numbers from the mapping range into radians. - mean_n
mean_ncomputes a finite impulse response (FIR) low-pass mean filter of order n for float input. - median_3
median_3outputs the median value of the three most recent float samples. - median_5
median_5is a control abstraction that outputs the median value of the last five float samples. - median_7
median_7is a control abstraction that outputs the median value of the last seven float samples. - median_n
median_ncalculates the median of the last n numbers in a float stream, making it useful as a control filter for discarding unrealistic values. - midi2mapping
midi2mappingis a control-rate conversion abstraction with one float inlet and one float outlet. - multi_slider
multi_slideris a control/GUI abstraction intended to work with multiple slider values, as suggested by its use alongside severalvslobjects. - nl
nlis a control abstraction that produces an XY relation for a non-linearity operation, taking float input through two inlets and outputting a float. - one2four
one2fouris a control abstraction that performs a simple one-to-four mapping, producing four float outputs. - one2three
one2threeis a control abstraction for simple one-to-three mapping, taking float input and providing three float outputs. - one2two
one2twois a control abstraction that provides simple one-to-two mapping, taking float input and producing two float outputs. - oscillo
oscillois a control-rate GUI abstraction that returns the amplitude covered by the last values, displayed on a scale from 0 to 1. - pmattractor_2d
pmattractor_2dis a control abstraction for applying two-dimensional attraction or force behavior and outputs a list of values. - pmattractor_3d
pmattractor_3dis a control abstraction for working with a three-dimensional attractor, outputting its state as a list. - pmcloud_1d
pmcloud_1dis a control abstraction that outputs a list containing the positions of masses in a one-dimensional mass cloud. - pmcloud_2d
pmcloud_2dis a control abstraction that models a two-dimensional cloud of masses and outputs their positions as a list. - pmcloud_3d
pmcloud_3dis a control abstraction that models a three-dimensional cloud of masses and outputs their positions as lists. - pmcube_3d
pmcube_3dis a control abstraction for manipulating a three-dimensional cube using grab coordinates or force vectors. - pmfilter
pmfilteris a control abstraction that accepts floats through four inlets and produces two float outputs. - pmfilter_2d
pmfilter_2dis a second-order physical-modeling filter for two-dimensional control data. - pmfilter_3d
pmfilter_3dis a control abstraction intended to filter three-dimensional data represented as a three-float list, as suggested by the surroundingpackandunpackobjects. - pmmulti_stable_2d
pmmulti_stable_2dis a control abstraction for a two-dimensional mass system with multiple stable points, outputting the masses’ positions as a list. - pmopen_string_1d
pmopen_string_1dimplements a simple physical string model intended to generate multiple correlated outputs from a small number of controls. - pmrepulsor_1d
pmrepulsor_1dis a control abstraction with a float output that acceptsbang,force,grab, andgrab_onmessages, plus float inputs on its other two inlets. - pmrepulsor_2d
pmrepulsor_2dis a control abstraction with two float outputs, demonstrated with two-dimensionalforceandgrabmessages. - pmrepulsor_3d
pmrepulsor_3dis a control abstraction demonstrated with three-dimensionalforceandgrabmessages. - pmrigid_open_string_2d
pmrigid_open_string_2dimplements a simple two-dimensional physical model of an open string, producing the positions of its moving masses as a list and supporting correlated outputs from few inputs. - pmrigid_string_2d
pmrigid_string_2dis a simple two-dimensional physical model of a string, producing a list of mass positions that can serve as correlated outputs. - pmsquare_2d
pmsquare_2dis a simple two-dimensional physical model of a “string” that outputs a list. - pmstring_1d
pmstring_1dis a simple physical model of a string made from moving masses, intended to create multiple correlated control outputs from a few inputs. - polar
polarconverts Cartesian coordinates (x, y) to polar coordinates. - polar2cartesian
polar2cartesianconverts 2D polar or 3D cylindrical coordinates(r, phi, z)into Cartesian coordinates(x, y, z). - quadratic
quadraticcurves an input range using a quadratic Bézier, producing a mapped output in the range 0 to 1. - quartic
quarticcurves a control input using a quartic function, mapping the output to the range 0 to 1. - radians2mapping
radians2mappingconverts a float in the range −π to π from radians into the mapping representation. - rec_play
rec_playrecords and plays back a stream of floats, with support for writing to and loading from a wave file. - resample
resampleis a control abstraction with an anything inlet, a float inlet, and a list outlet. - rnd-stat The help patch does not provide enough information to determine the precise purpose or behavior of
rnd-stat. - segment The
segmentcontrol abstraction takes a float and outputs a list for routing a value among a configured number of segments. - sigmoide The help patch identifies
sigmoideas a control abstraction with two float inlets and one float outlet, apparently intended for sigmoid-style mapping. - simplified_cubic_seat
simplified_cubic_seatcurves a control input using a simple cubic function, mapping the output to the range 0–1. - simplified_quadratic
simplified_quadraticcurves a raw input range using a simplified quadratic mapping, producing a curved control output. - sinusoid
sinusoidmaps an input range to a sinusoidal curve, producing output in the range 0 to 1. - smooth_double
smooth_doubleperforms double exponential smoothing (DES) on float control values, producing two float outputs. - smooth_triple
smooth_tripleperforms triple exponential smoothing on control-rate float data, producing outputs for the smoothed signal, periodicity, and trend. - speedlimiter
speedlimiteris a control-rate filter that limits negative variation in a float signal at each sample. - speedlimiter+
speedlimiter+is a control-rate filter abstraction that limits positive variation in an incoming float to its argument for each sample. - speedlimiter-
speedlimiter-is a control-rate filter abstraction that limits negative variation in a float signal. - spherical2cartesian
spherical2cartesianconverts spherical coordinates(r, phi, theta)into Cartesian coordinates(x, y, z). - spiral
spiralconverts Cartesian x/y coordinates to polar radius and angle values while allowing the angle to continue increasing or decreasing across rotations. - split_n
split_nis a control abstraction with a float inlet, a list inlet, and a list outlet. - stepper
stepperis a control abstraction for mapping values to a stepped output in the 0-to-1 range. - stream_check
stream_checkchecks for the presence of a data stream, accepting anything at its inlet and producing a float at its outlet. - test_n
test_noutputs1when the last n input values all equal a specified value. - threshold
thresholdis a control abstraction that outputs a new value only when a difference passes a threshold, helping reduce the flow of events controlling Pd. - threshold_max
threshold_maxis a control abstraction that applies a threshold relative to its input value and produces a float output. - timeroll
timerollis a GUI control abstraction that displays a changing value over time. - tolist
tolistbuilds a list from a stream of incoming data. - track_max
track_maxtracks the maximum float value it receives and outputs a float. - track_min
track_mintracks the minimum value received. - upsample
upsampleis a control abstraction that increases the sampling rate of incoming data. - variance
variancecomputes the variance of incoming float values, presumably for control-data analysis. - vector
vectorconverts Cartesian coordinates (x, y) to polar coordinates. - wave
waveis a control abstraction that outputs a list representing wave amplitudes. - wave_loop
wave_loopis a control abstraction with four float inlets and one list outlet, apparently intended to produce a vector for display bymulti_slider.