MIDIPoet - Composer - Image events

Image events modify the attributes of one or various image areas.

An image area's modifyable attributes are:

-- Image: Image content of the area. This is the name of an image already included in the piece's image bank. See the images section.
-- Mirror X, Mirror Y: Display the X or Y reflection of the image.
-- Style: Drawing style used to draw the image on the screen. (see the drawing styles section)
-- Position X: X coordinate of the image area's position. It is expressed in pixels, and ranges from 0 (left) to the value of the piece's area width.
-- Position Y: Y coordinate of the image area's position. It is expressed in pixels, and ranges from 0 (top) to the value of the piece's area height.

The following attributes refer to the copying and pasting of the drawing area. By default, images are drawn on the screen using their original measures. If the copying and pasting parameters are changed, the size and proportion of the image will change accordingly. For example, suppose the following image measures 640x480 pixels:

If we change the copying area of the image to a rectangle whose upper left corner's corrdinates are 100,100 (X1, Y1), and whose width and height are 300 pixels, we will have the following copying area:

If we change the pasting measures to 640 (width) and 100 (height), this is the way the image will appear on the screen:

-- Copy X1: X1 coordinate of the image's copying rectangle (0 by default)
-- Copy Y1: Y1 coordinate of the image's copying rectangle (0 by default)
-- Copy width: Width of the image's copying rectangle (by default it's equal to the image's width)
-- Copy height: Height of the image's copying rectangle (by default it's equal to the image's height)
-- Paste width: Width of the image's pasting rectangle (by default it's equal to the image's width)
-- Paste height: Height of the image's pasting rectangle (by default it's equal to the image's height)

The attributes of an image area are expressed using numeric values (position, copying and pasting values) or textual values (image and style).

The attributes' values can be modified using the following commands:

Valid for all attributes:
-- Fixed value: A unique value, numeric or textual.
-- Random: A random value chosen from a range of values or from a data list.
-- Loop: A value that increases from a starting point to an ending point, and then starts again. The values can be taken from a numeric range or a data list.
-- Bidirectional loop: A value that increases/decreases inside a range. When it reaches the range's upper or lower limit, it changes direction. The values can be taken from a numeric range or a data list.
-- Travel: A value that increases from a starting point to an ending point, and then stops. The values can be taken from a numeric range or a data list.
-- Drunk: A value resulting from a random walk between the starting and ending points of a range. The values can be taken from a numeric range or a data list.
-- MIDI Table: A value taken from a MIDI table. If the event is activated by a MIDI trigger, this value will correspond to the triggering message's specific note or velocity values.

The Loop, Bidirectional loop, Travel and Drunk commands need, besides a range of values, an increment value, which can be numeric or a resulting value of a MIDI table. For example, a bidirectional loop with a range of 0-255 and with an increment value of 2 will go from 0 to 255 and back, stepping 2 positions every time. Another example: a loop that goes through the values of the data list "data 1", and with an increment value of "vel table 1", will loop through the elements in the list "data 1", skipping "n" positions, where "n" is a resulting value coming from the MIDI table "vel table 1".

Valid for numeric attributes:
-- Increase: Increases the value of the attribute by the specified quantity
-- Decrease: Decreases the value of the attribute by the specified quantity.
-- MIDI Range: A value coming from a MIDI range. If the event is activated by a MIDI trigger, this value will correspond to the triggering message's specific note or velocity values.

Valid for textual attributes:
-- Next: The value will be the next element of a data list.
-- Previous: The value will be the previous element of a data list.
These commands use an internal index to keep track of the current element in the specified list.

<--