selectle.icn: Program to select tile from an image

May 2, 2001; Ralph E. Griswold
Requires: Version 9 graphics, UNIX (for "pick" feature)
This file is in the public domain.
This program is designed to assist in locating areas within an image
that, when tiled, produce a desired effect.  For example, a background
may consist of a tiled image; this program can be used to find the
smallest tile for the repeat (by "eye-balling").

Another interesting use of this program is to produce striped patterns by
selecting a row or column of an image to get a tile that is one character
wide.  Sometimes a few rows or columns give an interesting "fabric"
effect.

The following features are provided through keyboard shortcuts,
the File menu, and in some cases, on-board buttons:

     @D      user-drawn selection rectangle
     @O      open new source image
     @P      pick a source image from GIF files in the current directory
     @Q      quit application
     @S      save current selection as an image
     @T      tile selection into source image window

Buttons provide for setting and adjusting the selection in various
ways.

In the drawing mode, the mouse can be used to make a selection by
dragging from one corner to another.  When the mouse is released,
the action depends on the user keypress:

     "r"     return the selection
     "n"     try again
     "q"     exit drawing mode

Typing "q" is the only way to get out of the drawing mode.  It can be
done whether or not there is a selection.

Notes:

     The selection starts as a single pixel in the upper-left corner.
     The repeat window can be resized by the user.
____________________________________________________________

Features to add/improve:

     show current selection
     file-system navigation
     chained selection dialogs for large numbers of files
       *or* scrolling line dialog
     add flips, rotations, and other transformations (using external
       utilities)
     allow images of types other than GIF

Bugs:
     width and height setting should take into account the current
       origin
     edit in system menu is bogus (bug is in interact.icn)

Source code | Program Library Page | Icon Home Page