{ EDWIN Transformation stack routines added } %end %of %list %constant %integer TRANSFORM STACK DEPTH = 100 %record %format TRANS FM (%real %array A (0:8)) %external %routine %spec UNITY TRANSFORM %alias "EDWIN_UNITY_TX" (%record (TRANSFM) %name T) %external %routine %spec TRANSLATE TRANSFORM %alias "EDWIN_TRANSLATE_TX" (%real X, Y, %record (TRANSFM) %name T) %external %routine %spec MIRROR X TRANSFORM %alias "EDWIN_MIRROR_X_TX" (%record (TRANSFM) %name T) %external %routine %spec MIRROR Y TRANSFORM %alias "EDWIN_MIRROR_Y_TX" (%record (TRANSFM) %name T) %external %routine %spec ROT DV TRANSFORM %alias "EDWIN_ROT_DV_TX" (%real A, B, %record (TRANSFM) %name T) %external %routine %spec ROT ANG TRANSFORM %alias "EDWIN_ROT_ANG_TX" (%real ANGL, %record (TRANSFM) %name T) %external %routine %spec COMPOSE TRANSFORM %alias "EDWIN_COMPOSE_TX" (%record (TRANSFM) %name TA, TB, TC) %external %routine %spec SCALE TRANSFORM %alias "EDWIN_SCALE_TX" (%real XS, YS, %record (TRANSFM) %name T) %external %routine %spec POP TRANSFORM %alias "EDWIN_POP_TX" %external %routine %spec PUSH TRANSFORM %alias "EDWIN_PUSH_TX" (%record (TRANSFM) %name T) %external %routine %spec INIT TRANSFORM %alias "EDWIN_INIT_TX" %external %routine %spec PRINT TRANSFORM %alias "EDWIN_PRINT_TX" (%record (TRANSFM) %name T) %external %routine %spec SET TRANSFORM %alias "EDWIN_SET_TX" (%record (TRANSFM) %name T) %external %routine %spec GET TRANSFORM %alias "EDWIN_GET_TX" (%record (TRANSFM) %name TX) %external %routine %spec POINT TRANSFORM %alias "EDWIN_POINT_TX" (%record (POINTFM) %name P, NP) %external %routine %spec VECTOR TRANSFORM %alias "EDWIN_VECTOR_TX" (%record (POINTFM) %name V, NV) %external %routine %spec BB TRANSFORM %alias "EDWIN_BB_TX" (%record (POINTFM) %name OPL, OPU, NPL, NPU) %list;%end %of %file