EDITBITMAP documentation D. Austin Henderson, Jr. Initially released: April 10, 1983 Last revised: April 23, 1983 <LISPUSERS>EDITBITMAP (and .DCOM) provides na interface (EDIT.BITMAP) for manipulating bitmaps. It puts up a menu of bitmap manipulation commands, one of which is HAND.EDIT which accesses EDITBM, the Interlisp-D bitmap editor. Other commands include shifting (in four directions), rotation (left and right 90 degree), inverting (horizontally, vertically, about diagonals), interchanging black and white, adding a border. A sequence of commands terminated by QUIT produces a new bitmap; the original bitmap is not effected. UNDO permits backing up. Also works on cursors (produces new cursor) and ATOMS (works on their values and resets the value with the result). Comments on both interface and functionality are welcomed. EDIT.BITMAP (BITMAP) BITMAP may be a bitmap, a cursor or an ATOM. Returns: if BITAMP is a bitmap, then a new bitmap; if a cursor, then a new cursor; if an ATOM, then the ATOM whose bvalue will have been reset with the result of calling EDIT.BITMAP on the value of that atom. The internal functions used by this package are also available for use. They are: ADD.BORDER.TO.BITMAP (BITMAP NBITS TEXTURE) Returns a new bitmap which is BITMAP extended by NBITS in all four directions, the border being filled in with TEXTURE. BIT.IN.COLUMN (BITMAP COLUMN) Returns T if any bit in column numbered COLUMN (left = 0) is not 0, NIL otherwise. BIT.IN.ROW (BITMAP ROW) Returns T if any bit in row numbered ROW (bottom = 0) is not 0, NIL otherwise. INVERT.BITMAP.B/W (BITMAP) Returns a new bitmap which is BITMAP with all its bits inverted (black for white). INVERT.BITMAP.DIAGONALLY (BITMAP) Returns a new bitmap which is BITMAP flipped about X=Y diagonal. (The resulting bitmap's width will be BITMAP's height.) INVERT.BITMAP.HORIZONTALLY (BITMAP) Returns a new bitmap which is BITMAP flipped about its vertical centerline. INVERT.BITMAP.VERTICALLY (BITMAP) Returns a new bitmap which is BITMAP flipped about its horizontal centerline. ROTATE.BITMAP.LEFT (BITMAP) Returns a new bitmap which is BITMAP rotated 90 degrees counter-clockwise. (The resulting bitmap's width will be BITMAP's height.). ROTATE.BITMAP.RIGHT (BITMAP) Returns a new bitmap which is BITMAP rotated 90 degrees clockwise. (The resulting bitmap's width will be BITMAP's height.). SHIFT.BITMAP.DOWN (BITMAP NBITS) Returns a new bitmap which is BITMAP extended by NBITS in the upward direction, the new space being filled in with white. SHIFT.BITMAP.UP (BITMAP NBITS) Returns a new bitmap which is BITMAP extended by NBITS in the downwards direction, the new space being filled in with white. SHIFT.BITMAP.LEFT (BITMAP NBITS) Returns a new bitmap which is BITMAP extended by NBITS to the right, the new space being filled in with white. SHIFT.BITMAP.RIGHT (BITMAP NBITS) Returns a new bitmap which is BITMAP extended by NBITS to the left, the new space being filled in with white. TRIM.BITMAP (BITMAP) Returns a new bitmap which is BITMAP trimmed at all four edges of all completely white (0) columns and rows.