SPDINTERP(OPCSDEFS) Optical Printer Control System SPDINTERP(OPCSDEFS) NAME spdinterp - configure exposure speed interpolations SYNOPSIS spdinterp [slavechan] [masterchan] [lowpos] [highpos] [total] [samples] EXAMPLES spdinterp c e -1000 1000 2 0.5 1.5 - - ---------- - ------- | | | | | | | | | The exposure compansation values. | | | | | | | # of exposure compenation values. | | | | | The extreme positions for the 'e' (zoom) channel. | | | 'e' (zoom) is the master channel. | 'c' (camera) exposure speed slaved to [masterchan] DESCRIPTION SPDINTERP allows a channel's normal running speed to be affected by the position of some other channel. Slewing speeds are NOT affected. [slavechan] is the channel whose exposure speed will be affected. This is usually always the 'c' (camera) channel. [masterchan] is channel whose position will dictate the exposure speed of the [slavechan]. Normally, this is the zoom channel, so that moving the zoom will auto-compensate the exposure. [lowpos] [highpos] are the low and high positions the [masterchan]; the extreme positions which define the range over which the interpolation will take place. [total] The total number of exposure compensation sample values. NOTE: If [total] is '0', this will cancel any previous SPDINTERP(OPCSDEFS) specifications for the [slavechan] channel. [samples] are the compensation values, which will be multiplied to [chan]'s current exposure speed, to create the actual, 'compensated' exposure speed. A value of 2.0 will effectively double the exposure speed, 0.5 will cut the exposure speed by half, 1.0 will leave the exposure unmodified, etc. Each sample position should be separated by white space (tabs, spaces, CRLFs) and there should be as many samples as specified by [total]. OVERVIEW When an SPDINTERP is set up on a slave channel, it is like defining a look up table through which positions on the master channel affects the exposure speed of the slave channel. ♀ Requests that fall between values in the lookup table are computed as a linear interpolation between the two neighboring lookup values. The resulting interpolation results in a 'compensator value' that is simply multiplied to the current camera speed, to get the compensated 'actual speed'. HOW SPDINTERP WORKS =============================================================== = spdinterp c e -1000 1000 3 .5 1.0 2.0 = = | | | | | = = | | | | Last sample position = = | | | First sample position = = | | Total samples = = | High = = Low = =============================================================== Figure A. ====================================================================== = Zoom Clip Interped Compensated = = Posns Window Samples Compensator Actual Speed = = Values (SPD=0.5) = = | = = -2000 ----> | ----- 0.50 ----> 0.25 = = -1500 ----> | LOW = -1000 /------ 0.50 ----> 0.25 = = -1000 ----------------------> 0.5 -------- 0.50 ----> 0.25 = = -500 ----------------------> -------- 0.75 ----> 0.38 = = 0 ----------------------> 1.0 -------- 1.00 ----> 0.50 = = 500 ----------------------> -------- 1.50 ----> 0.75 = = 1000 ----------------------> 2.0 -------- 2.00 ----> 1.00 = = 1500 ----> | HIGH = 1000 \------ 2.00 ----> 1.00 = = 2000 ----> | ----- 2.00 ----> 1.00 = = | = ====================================================================== Figure B. Whenever the zoom moves to a new position, it is clipped through the 'clipping window' between the [low] and [high]. This creates a lookup into the sample list using a linear interpolation. Results in an 'Interped Compensator Value', which is then multiplied by the current speed of the camera (SPD=0.5), resulting in 'Compensated Actual Speed'. Note when zoom is 0 (exactly between the LO and HIGH values) the actual speed is the same as the camera speed; the compensator value becomes 1.0, which multiplied against the camera speed yields no change. This is because the 'zero' position on the zoom is usually 1:1, which is where exposure speeds should match the actual speed. For this reason, it is best if the extreme zoom positions are totally opposite (2:1 vs 1:2, or 10:1 vs 1:10, etc), and the 'middle value' in the samples is 1.0. This way if zoom is 1:1, exposure is unchanged. SEE ALSO FEED(OPCS) - feed new positions to motors every camera frame INTERP(OPCSDEFS) - set up interpolation points ORIGIN Version K1.12e+ Gregory Ercolano, Venice California 04/12/98