home *** CD-ROM | disk | FTP | other *** search
- /*
- ** Rectangle.fred
- **
- ** $VER: Rectangle.fred 1.0.0 (28.11.93)
- **
- ** This program can be run from an InvokeADPro list to place a
- ** rectangle on an image.
- **
- ** Clips Imported:
- ** FREDRectXOff - Left offset of rectangle
- ** FREDRectYOff - Top offset of rectangle
- ** FREDRectWidth - Width of rectangle
- ** FREDRectHeight - Height of rectangle
- ** FREDRectThick - Thickness of rectangle
- ** FREDRectR - Red color
- ** FREDRectG - Green color
- ** FREDRectB - Blue color
- ** FREDRectMix - Mix amount
- **
- ** NOTE: Clip names are case sensitive.
- **
- ** This script requires FRED v1.4.0 (or higher) to run. Also required is
- ** ADPro v2.5.0 (or higher).
- **
- ** Copyright © 1993 ASDG, Incorporated
- ** All Rights Reserved
- */
-
-
- ADDRESS "ADPro"
- OPTIONS RESULTS
-
- PARSE ARG FrameNum FrameFName Length LoadFlag FirstCallSeq FirstCallCell
-
- NL = '0A'X
- SQ = '27'X
- DQ = '22'X
- TRUE = 1
- FALSE = 0
-
-
- /*
- ** Get the required clips. Error if any are missing.
- */
-
- RectXOff = GETCLIP( "FREDRectXOff" )
- IF (RectXOff = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectXOff," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectYOff = GETCLIP( "FREDRectYOff" )
- IF (RectYOff = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectYOff," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectWidth = GETCLIP( "FREDRectWidth" )
- IF (RectWidth = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectWidth," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectHeight = GETCLIP( "FREDRectHeight" )
- IF (RectHeight = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectHeight," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectThick = GETCLIP( "FREDRectThick" )
- IF (RectThick = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectThick," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectR = GETCLIP( "FREDRectR" )
- IF (RectR = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectR," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectG = GETCLIP( "FREDRectG" )
- IF (RectG = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectG," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectB = GETCLIP( "FREDRectB" )
- IF (RectB = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectB," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- RectMix = GETCLIP( "FREDRectMix" )
- IF (RectMix = "") THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Required clip, FREDRectMix," || NL ||,
- "is not specified."
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
-
- /*
- ** See what type of data is loaded in ADPro/MorphPlus.
- */
-
- CALL "FREDSCRIPTS:FREDFunctions/CheckForRawImageData" TRUE
- IF (RESULT ~= 0) THEN
- EXIT 10
-
-
- /*
- ** Add the rectangle to the image.
- */
-
- OPERATOR "RECTANGLE",
- RectXOff RectYOff,
- RectWidth RectHeight,
- (RectThick),
- RectR RectG RectB,
- RectMix
- IF (RC ~= 0) THEN DO
- ADPRO_TO_FRONT
- OKAY1 "Could not add rectangle." || NL || NL ||,
- "Arguments:" || NL ||,
- "XOff YOff =" RectXOff RectYOff || NL ||,
- "Width Height =" RectWidth RectHeight || NL ||,
- "Thickness =" RectThick || NL ||,
- "RGB color =" RectR RectG RectB || NL ||,
- "Mix percentage =" RectMix
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
-
- EXIT 0
-