/*
 * Perspective.ifx.pre
 * Written by Thomas Krehbiel
 *
 * Perspective Rotation.
 *
 * Inputs:
 *    Word(Arg(1),1) = Sequence number (?)
 *    Word(Arg(1),2) = Total number of frames (N)
 *
 * Returns:
 *    0 if successful, non-zero on failure
 *
 */

OPTIONS RESULTS

base  = 'Autofx_Perspective_'

x1    = GETCLIP(base||'x1')
y1    = GETCLIP(base||'y1')
z1    = GETCLIP(base||'z1')
x2    = GETCLIP(base||'x2')
y2    = GETCLIP(base||'y2')
z2    = GETCLIP(base||'z2')

IF x1 = "" THEN x1 = 0
IF y1 = "" THEN y1 = 0
IF z1 = "" THEN z1 = 0
IF x2 = "" THEN x2 = 45
IF y2 = "" THEN y2 = 45
IF z2 = "" THEN z2 = 0

Gadget.1 = 'INTEGER 200  5 50 14 "Starting Rotation X:"' x1
Gadget.2 = 'INTEGER 280  5 50 14 "Y:"' y1
Gadget.3 = 'INTEGER 360  5 50 14 "Z:"' z1
Gadget.4 = 'INTEGER 200 20 50 14 "Ending Rotation X:"' x2
Gadget.5 = 'INTEGER 280 20 50 14 "Y:"' y2
Gadget.6 = 'INTEGER 360 20 50 14 "Z:"' z2
Gadget.7 = 'END'

NewComplexRequest '"Perspective Rotation"' Gadget 430 50
IF rc ~= 0 THEN EXIT rc

CALL SETCLIP(base||'x1', result.1)
CALL SETCLIP(base||'y1', result.2)
CALL SETCLIP(base||'z1', result.3)
CALL SETCLIP(base||'x2', result.4)
CALL SETCLIP(base||'y2', result.5)
CALL SETCLIP(base||'z2', result.6)

EXIT
