<<>> <> <> <> <> <<>> DIRECTORY Geom2D; BiScrollersTransformsTypes: CEDAR DEFINITIONS = BEGIN AgeOp: TYPE = {remember, ignore}; Axis: TYPE = Geom2D.Axis; PreservationPair: TYPE = ARRAY Axis OF Preservation; Preservation: TYPE = REAL--[0.0 .. 1.0]--; <> <> ScaleOp: TYPE = RECORD [variant: SELECT op: * FROM reset => [], byArg => [arg: REAL], diff => [x, y: REAL], ENDCASE]; RotateOp: TYPE = RECORD [variant: SELECT op: * FROM reset => [], byArg => [arg: REAL--degrees--], ENDCASE]; Location: TYPE = RECORD [variant: SELECT flavor: * FROM coord => [x, y: REAL --in the appropriate coord sys--], fraction => [fx, fy: REAL --fraction of X and Y extent, in viewer coords, of either client image or viewport--], ENDCASE]; END.