fpic

Display a picture from a graphics file

Description

Note: The fpic object requires that QuickTime be installed on your system to open any files other than PICT files. If you are using Max on Windows, we recommend that you install QuickTime and choose a complete install of all optional components.

Arguments

None.

Messages

(drag) When a image file is dragged from the Max 5 File Browser to an fpic object, the image will be loaded.
noscale The word noscale disables image scaling.
matrix nine floats [list] The word matrix, followed by nine floating point numbers, reloads the current file into RAM after performing a transformation matrix operation on the image. This transformation is the same one used for the mapping in QuickTime of points from one coordinate space (i.e, the original image) into another coordinate space (a scaled, rotated, or translated version of the original image).

The transform matrix operation consists of nine matrix elements
a b u
c d v
t_x t_y w

if u and v are 0., and w is 1., we have the following translation formula:
x' = a*x + c*y + t_x;
y' = b*x + d*y + t_y;

The following formulas are used for scaling/rotation:
a=xscale*cos (theta)
b=yscale*sin (theta)
c=xscale*(-sin (theta))
d=yscale*cos (theta)

For more on the transformation matrix, consult the Apple QuickTime Developer documentation found at:
http://developer.apple.com/techpubs/quicktime/qtdevdocs/INMAC/QT/iqMovieToolbox.c .htm#18006
(mouse) In an unlocked patcher, you can change the offset of the picture by holding down the Shift and Command keys on Macintosh or Shift and Control keys on Windows and dragging on fpic; the current offset of the picture is shown in the Assistance portion of the patcher window as you drag.
pict filename [list] The word pict, followed by the name of a graphics file in Max's search path, opens the file and displays the picture, replacing whatever picture was previously displayed. The fpic object accepts PICT files and, if QuickTime Version 3.0 or later is installed, other picture file formats that are listed in the QuickTime appendix.
offset horizontal-pixels [int]vertical-pixels [int] The word offset, followed by two numbers, specifies the number of pixels by which the left upper corner of the picture is to be offset horizontally and vertically from the left upper corner of the fpic box. By default the left upper corner of the picture is located at the left upper corner of fpic (that is, with an offset of 0,0). With successive slightly different offset messages, a picture can be moved inside fpic, and fpic can window different portions of a large picture. (In order to give the appearance of smooth transitions when moving an image, the old image is not erased when using the offset message. This may cause an undesired appearance if your picture contains a blank background that doesn't cover up what's beneath it.)
read filename [list] The word read, followed by a symbol which specifies a filename, looks for a QuickTime graphic file with that name in Max's file search path, and opens it if it exists, displaying it in a graphic window. If the filename contains any spaces or special characters, the name should be enclosed in double quotes or each special character should be preceded by a backslash (\). The word read by itself puts up a standard Open Document dialog box and displays the common graphics files supported by QuickTime.
readany filename [list] The word readany, followed by a symbol which specifies a filename, functions in the same manner as the read message, except that the Open Document dialog box does not filter its display by the currently supported filetypes.
rect horizontal [int]vertical [int]width [int]height [int] The word rect, followed by four numbers that specify the size of scaling rectangle to apply to fit the input image within, loads the graphics file from disc into RAM and displays it. The first two numbers specify the placement in the graphic window as offset values, and the second two numbers specify the width and height, in pixels, of the rectangle.
scalemode mode-selection (0 through 3) [int] The word scalemode, followed by number in the range 0-3, sets the scaling mode used by the fpic object.

If the fpic object is set to scaling mode 0, no scaling is performed; the image is displayed as read into memory.

If the fpic object is set to scaling mode 1, scaling is performed using the QuickTime transformation matrix (see the matrix message for more information); the image will be scaled and rotated according to the current or default settings of the transformation matrix. The matrix variables can be changed using the fpic object's Inspector or by using the matrix message.

If the fpic object is set to scaling mode 2, rectangular scaling is performed (see the rect message for more information). The image will be loaded and displayed according to the current or default settings of the rect message.

If the fpic object is set to scaling mode 3, the image is autosized; the fpic object scales the graphic to fit in the window currently displayed.

Attributes

Name Type g/s Description
autofit int Toggles the ability to automatically scale a loaded image file to fit the fpic object's display area.
def.:0
destrect float Specifies the left-top and bottom-right positions of the loaded graphic image. If these values do not correspond to the size of the graphic image, the image will be scaled to fit the current fpic window size.
embed int Toggles the ability to embed the graphic you are using and save it as part of the main patch. The default behavior is 0 (don't save the image with the patcher file).
def.:0
pic symbol Designates the pathname of the graphic file for the fpic to use.
def.:<none>
xoffset float Specifies the number of pixels by which the upper left corner of the subpatch is to be offset horizontally within the fpic object's viewing window.
def.:0.
yoffset float Specifies the number of pixels by which the upper left corner of the subpatch is to be offset vertically within the fpic object's viewing window.
def.:0.

Information for box attributes common to all objects

Examples

Place a picture in a patch (for the sheer beauty of it)... ...or make it functional by placing ubutton objects over it... Make a slide show by changing pictures or move a picture by changing its offset

See Also

Name Description
imovie Play a QuickTime movie in a patcher window
lcd Draw graphics in a patcher window
matrixctrl Matrix-style switch control
panel Colored background area
pictctrl Picture-based control
pictslider Picture-based slider
ubutton Transparent button, sends a bang