EASE(TOOLS)            Optical Printer Control Systems             EASE(TOOLS)

NAME
    ease - create ease in / out positions

SYNOPSIS
    ease file chans sfrm efrm spos epos eifrm eofrm [etype]

	file  - the name of the position file
	chans - channels to effect. A channel can be any letter a thru l.
	        Can be a range like 'a-d', or can be comma separated lists,
		like 'a,d,e' or combinations like 'a,d-j'.
	sfrm  - starting frame of move
	efrm  - ending frame of move
	spos  - starting position
	epos  - ending position
	eifrm - ease in # frames
	eofrm - ease out # frames
	etype - 1.0=linear ease, .25=hard ease(.75=default)

EXAMPLE
    ease foo.pos f    1 50 1000 2000 10 10
         ------- ---- ---- --------- -----
         File    Chan Frms Positions Ease

DESCRIPTION
    ease creates moves (columns of numbers) in ascii OPCS position files.
    Given a range of frames and positions, ease(OPCS) will create
    smooth moves between two points. 
    
    The move created between the positions has 3 parts:
					        
				        .....o
				    ..''     |
				  .'         |
				 '           |
				'|           |
			       ' |           |
			      '  |           |
			     '   |           |
			    '    |           |
		           '     |           |
		          '      |           |
		         '       |           |
		       .'        |           |
	           ..'' |        |           |
	    o...'''     |        |           |
	    |<--------->|<------>|<--------->|
	       EaseIn     Linear    EaseOut
	       Frames     Frames    Frames

    Exponential curves are used to achieve the ease-in and ease-outs. 
    The linear section is a straight linear interpolation is created
    between the two ease curves. 
    
    If the easein/easeout values are *zero*, then no ease curves are 
    created, and an accurate straight linear move is made between the 
    start and end positions. eg:
	                                               o
	                                           ,,''|
	                                       ,,''    |
	                                   ,,''        |
	                               ,,''            |
	                           ,,''                |
	                       ,,''                    |
	                   ,,''                        |
	               ,,''                            |
	           ,,''                                |
	       ,,''                                    |
	    o''                                        |
	    |<---------------------------------------->|
                              Linear                   
 (EaseIn=0)                   Frames                    (EaseOut=0)

POSITION FILES
    Postion files are ASCII files that contain 12 positions per line.
    Each line represents a single frame of positions. Each vertical
    column of numbers represent a single channel. The left most column
    is the 'a' channel, the right most column is the 'l' channel.

    A position file:

         > May contain comment lines that start with '#' or ';'

         > Will be limited to 12 channels in width

         > Can only contain values that are long integers

	 > Each column of numbers must be separated by white space

	 > Blank lines are ignored

         > Can be any length. Position files are never loaded entirely
	   into memory, so they can be exteremely long files.

DEBUG
    To enable debugging, 'set EASEDEBUG=1' before running ease.

AUTHOR
    Greg Ercolano, Venice California 1998

© Copyright 1997 Greg Ercolano. All rights reserved.