home *** CD-ROM | disk | FTP | other *** search
- /*
- * A simple looping demo of some of the features of ImageFX.
- *
- * Written by Thomas Krehbiel
- *
- */
-
- SIGNAL ON BREAK_C
- OPTIONS RESULTS
-
- CR = '0a'x
-
- text = 'Welcome to the ImageFX demo Arexx script.' || CR || CR
- text = text || 'Warning: This only shows a small part of' || CR
- text = text || 'the powerful capabilities of this software.' || CR || CR
- text = text || '(Please fasten your seat belts.)'
- DemoText 3 '"IMAGEFX DEMO"' text
-
- LoadBuffer "pix/Demo.JPG" Force Smooth
- IF rc ~= 0 THEN EXIT
-
- GetMain ; IF result = "" THEN EXIT
- PARSE VAR result '"'name'"' width height depth
-
- Undo Off
-
- DO FOREVER
-
- RANDOM(0,1,TIME('Seconds')) /* seed random numbers */
-
- Menu Toolbox
-
- text = 'ImageFX includes a wide variety' || CR
- text = text || 'of image processing tools. Each effect' || CR
- text = text || 'can be limited to a region of the image,' || CR
- text = text || 'or even to the current brush.'
- DemoText 5 '"Image Processing"' text
-
- Redraw Off
- SwapAlpha
- CopyFromAlpha
- Scale width%4-1 height%4-1
- Swap
- CreateBuffer width height Force
- Redraw On
-
- col = 0 ; row = 0
- HidePanel
- CALL Patch("Negative")
- CALL Patch("Solarize", 1, 0)
- CALL Patch("Posterize 3", 2, 0)
- CALL Patch("Halftone 1", 3, 0)
- CALL Patch("Sharpen 200", 0, 1)
- CALL Patch("Blur 16", 1, 1)
- CALL Patch("ReliefMap", 2, 1)
- CALL Patch("EdgeDetect 1", 3, 1)
- CALL Patch("Gamma 100", 0, 2)
- CALL Patch("Contrast 100", 1, 2)
- CALL Patch("Disperse 1", 2, 2)
- CALL Patch("Roughen 50", 3, 2)
- CALL Patch("Red '-30'", 0, 3)
- CALL Patch("Hue 20", 1, 3);
- CALL Patch("Rotate 180", 2, 3);
- CALL Patch("DynamicRange 70 180", 3, 3);
- KillBrush Force
- CALL Pause 3
-
- Redraw Off
- KillSwap Force
- KillBuffer Force
- SwapAlpha
- ShowPanel
- Redraw On
-
- Buffer2Swap
-
- text = 'ImageFX has a sophisticated collection of painting' || CR
- text = text || 'and touchup tools included, ranging from simple lines' || CR
- text = text || 'and boxes to advanced airbrush and smearing tools.' || CR
- text = text || 'There are over a dozen drawing modes to choose from,' || CR
- text = text || 'including darken, lighten, colorize, and rub through.' || CR
- DemoText 5 '"Painting Tools"' text
-
- HidePanel
- index = 1
- DO i = 1 TO 20
- CALL Primitive
- END
- Pen 0 1 ; Blend 100 ; EdgeMode Normal ; DrawMode Normal ; FillMode Normal
- CALL RandomPoly
- CALL HappyFace
- CALL Pause 3
- ShowPanel
-
- Menu Render
-
- text = 'ImageFX has some of the most advanced image' || CR
- text = text || 'rendering available for the Amiga. 24-Bit' || CR
- text = text || 'images can be rendered to any Amiga display' || CR
- text = text || 'format, including HAM, Extra Halfbright, and' || CR
- text = text || 'all AGA display modes (HAM8, Super72, etc.).'
- DemoText 5 '"Image Rendering"' text
-
- Render Mode HAM NoLace
- Render Dither 0 0 0
- Render Colors 64
- Render Go
- CALL Pause 4
- Render Close
-
- Swap ; Buffer2Swap
-
- END
-
- ERROR:
- BREAK_C:
- Undo On
- EXIT
-
-
- Pause:
- PARSE ARG seconds
-
- ADDRESS COMMAND 'Wait' seconds
-
- RETURN 0
-
-
- Patch:
- PROCEDURE EXPOSE width height row col
- PARSE ARG effect
-
- PickupSwap
- INTERPRET effect
- BrushHandle 0 0
- Point col*width%4 row*height%4
-
- col = col + 1
- IF col > 3 THEN DO
- row = row + 1
- col = 0
- END
-
- RETURN 0
-
-
- Primitive:
- PROCEDURE EXPOSE index width height
-
- ActiveColor RANDOM(4,15)
-
- x0 = RANDOM(0,width-1)
- y0 = RANDOM(0,height-81)
- x1 = RANDOM(0,width-1)
- y1 = RANDOM(0,height-81)
- w = RANDOM(0,width%3)
- h = RANDOM(0,height%3)
-
- Blend RANDOM(60,100)
- EdgeMode FeatherIn RANDOM(0,6)
- Pen RANDOM(0,4) RANDOM(1,8)
-
- IF RANDOM(0,6) = 0 THEN DO
- DrawMode Colorize
- END
- ELSE DO
- DrawMode Normal
- END
-
- SELECT
- WHEN index = 1 THEN DO
- Line x0 y0 x1 y1
- END
- WHEN index = 2 THEN DO
- Box x0 y0 w h
- END
- WHEN index = 3 THEN DO
- FilledBox x0 y0 w h
- END
- WHEN index = 4 THEN DO
- Oval x0 y0 w h
- END
- WHEN index = 5 THEN DO
- FilledOval x0 y0 w h
- END
- OTHERWISE NOP
- END
-
- index = index + 1
- IF index > 5 THEN index = 1
-
- RETURN 0
-
-
- RandomPoly:
- Blend 100
- ActiveColor RANDOM(4,15)
-
- NewArea
- DO i = 1 TO 10
- AddArea RANDOM(0,width-1) RANDOM(0,height-1)
- END
- FilledPoly
-
- RETURN 0
-
-
- HappyFace:
- Blend 90
-
- ActiveColor 1 /* white */
- NewArea
- AddArea 168 53
- AddArea 167 53
- AddArea 166 53
- AddArea 165 53
- AddArea 161 53
- AddArea 160 52
- AddArea 157 52
- AddArea 154 52
- AddArea 152 52
- AddArea 149 52
- AddArea 147 52
- AddArea 146 52
- AddArea 145 52
- AddArea 142 51
- AddArea 140 51
- AddArea 137 51
- AddArea 132 51
- AddArea 129 52
- AddArea 125 52
- AddArea 122 52
- AddArea 120 52
- AddArea 118 53
- AddArea 116 53
- AddArea 115 54
- AddArea 113 55
- AddArea 112 55
- AddArea 110 56
- AddArea 109 57
- AddArea 108 58
- AddArea 106 59
- AddArea 105 59
- AddArea 104 60
- AddArea 103 61
- AddArea 102 62
- AddArea 102 63
- AddArea 101 64
- AddArea 100 65
- AddArea 99 65
- AddArea 99 67
- AddArea 98 68
- AddArea 97 69
- AddArea 97 70
- AddArea 96 72
- AddArea 96 73
- AddArea 95 74
- AddArea 95 76
- AddArea 94 79
- AddArea 93 82
- AddArea 93 83
- AddArea 93 84
- AddArea 93 87
- AddArea 93 89
- AddArea 93 93
- AddArea 93 99
- AddArea 93 103
- AddArea 93 108
- AddArea 94 114
- AddArea 94 120
- AddArea 94 124
- AddArea 94 129
- AddArea 94 130
- AddArea 95 131
- AddArea 95 132
- AddArea 95 133
- AddArea 96 136
- AddArea 97 138
- AddArea 98 139
- AddArea 99 139
- AddArea 100 140
- AddArea 102 141
- AddArea 105 143
- AddArea 108 144
- AddArea 111 145
- AddArea 115 146
- AddArea 118 147
- AddArea 121 149
- AddArea 122 149
- AddArea 128 150
- AddArea 131 151
- AddArea 134 152
- AddArea 137 152
- AddArea 141 153
- AddArea 144 154
- AddArea 149 154
- AddArea 154 154
- AddArea 158 154
- AddArea 162 155
- AddArea 168 155
- AddArea 172 155
- AddArea 178 154
- AddArea 181 154
- AddArea 185 154
- AddArea 189 154
- AddArea 193 153
- AddArea 196 152
- AddArea 199 152
- AddArea 202 151
- AddArea 204 150
- AddArea 207 149
- AddArea 209 147
- AddArea 210 144
- AddArea 212 143
- AddArea 212 139
- AddArea 213 136
- AddArea 215 132
- AddArea 216 127
- AddArea 216 122
- AddArea 217 119
- AddArea 217 112
- AddArea 217 108
- AddArea 217 105
- AddArea 216 100
- AddArea 216 98
- AddArea 216 95
- AddArea 215 92
- AddArea 214 89
- AddArea 213 85
- AddArea 212 80
- AddArea 212 76
- AddArea 211 72
- AddArea 210 69
- AddArea 208 66
- AddArea 207 63
- AddArea 206 62
- AddArea 204 60
- AddArea 203 59
- AddArea 202 59
- AddArea 200 58
- AddArea 198 58
- AddArea 194 57
- AddArea 191 56
- AddArea 189 56
- AddArea 188 55
- AddArea 185 55
- AddArea 184 55
- AddArea 182 54
- AddArea 179 53
- AddArea 175 53
- AddArea 172 52
- AddArea 167 52
- AddArea 166 52
- AddArea 165 51
- Airbrush
-
- ActiveColor 4 /* blue */
- NewArea
- AddArea 135 80
- AddArea 132 80
- AddArea 132 81
- AddArea 132 82
- AddArea 132 83
- AddArea 131 83
- AddArea 131 82
- AddArea 132 82
- AddArea 132 81
- AddArea 133 81
- AddArea 134 80
- AddArea 135 80
- AddArea 136 80
- AddArea 137 80
- AddArea 138 80
- AddArea 139 81
- AddArea 143 81
- AddArea 144 81
- AddArea 145 81
- AddArea 146 81
- AddArea 147 82
- AddArea 148 83
- AddArea 148 84
- AddArea 149 86
- AddArea 149 89
- AddArea 149 91
- AddArea 149 93
- AddArea 149 94
- AddArea 148 94
- AddArea 148 95
- AddArea 147 95
- AddArea 146 96
- AddArea 145 96
- AddArea 144 96
- AddArea 143 96
- AddArea 142 96
- AddArea 141 96
- AddArea 139 96
- AddArea 138 95
- AddArea 137 95
- AddArea 136 94
- AddArea 135 94
- AddArea 134 94
- AddArea 133 93
- AddArea 132 92
- AddArea 132 91
- AddArea 131 91
- AddArea 130 89
- AddArea 130 86
- AddArea 130 82
- AddArea 130 80
- AddArea 129 80
- Airbrush
-
- NewArea
- AddArea 172 81
- AddArea 173 81
- AddArea 174 80
- AddArea 176 80
- AddArea 177 80
- AddArea 178 80
- AddArea 179 80
- AddArea 180 80
- AddArea 181 81
- AddArea 182 81
- AddArea 183 82
- AddArea 184 83
- AddArea 185 84
- AddArea 186 84
- AddArea 186 85
- AddArea 186 86
- AddArea 187 87
- AddArea 187 88
- AddArea 188 89
- AddArea 188 90
- AddArea 188 91
- AddArea 187 91
- AddArea 187 92
- AddArea 186 93
- AddArea 186 94
- AddArea 185 95
- AddArea 185 96
- AddArea 184 97
- AddArea 183 97
- AddArea 182 97
- AddArea 181 97
- AddArea 180 97
- AddArea 179 97
- AddArea 178 97
- AddArea 177 97
- AddArea 176 97
- AddArea 175 97
- AddArea 174 97
- AddArea 173 97
- AddArea 172 96
- AddArea 171 95
- AddArea 170 94
- AddArea 169 93
- AddArea 168 93
- AddArea 168 92
- AddArea 167 91
- AddArea 167 90
- AddArea 167 89
- AddArea 168 88
- AddArea 168 87
- AddArea 169 86
- AddArea 170 86
- AddArea 171 85
- AddArea 172 85
- Airbrush
-
- ActiveColor 2 /* red */
- NewArea
- AddArea 118 115
- AddArea 118 116
- AddArea 119 116
- AddArea 119 117
- AddArea 119 118
- AddArea 120 119
- AddArea 121 119
- AddArea 122 122
- AddArea 124 123
- AddArea 125 124
- AddArea 126 125
- AddArea 128 126
- AddArea 129 127
- AddArea 131 128
- AddArea 132 129
- AddArea 132 130
- AddArea 134 130
- AddArea 135 131
- AddArea 137 131
- AddArea 138 132
- AddArea 142 132
- AddArea 143 132
- AddArea 145 133
- AddArea 146 133
- AddArea 149 133
- AddArea 152 133
- AddArea 154 134
- AddArea 155 134
- AddArea 156 134
- AddArea 158 134
- AddArea 159 135
- AddArea 161 135
- AddArea 162 135
- AddArea 164 135
- AddArea 165 135
- AddArea 167 135
- AddArea 168 135
- AddArea 170 135
- AddArea 171 134
- AddArea 172 134
- AddArea 175 134
- AddArea 178 133
- AddArea 182 133
- AddArea 185 133
- AddArea 186 133
- AddArea 187 132
- AddArea 188 131
- AddArea 189 131
- AddArea 190 130
- AddArea 191 129
- AddArea 191 128
- AddArea 192 127
- AddArea 192 126
- AddArea 192 125
- AddArea 193 124
- AddArea 193 123
- AddArea 194 122
- AddArea 194 121
- AddArea 194 120
- AddArea 195 119
- AddArea 195 118
- AddArea 195 117
- AddArea 195 116
- AddArea 195 115
- AddArea 195 114
- AddArea 194 114
- AddArea 193 114
- AddArea 191 115
- AddArea 190 115
- AddArea 186 115
- AddArea 184 116
- AddArea 180 117
- AddArea 177 118
- AddArea 175 118
- AddArea 174 118
- AddArea 172 119
- AddArea 170 119
- AddArea 169 119
- AddArea 168 120
- AddArea 166 120
- AddArea 165 120
- AddArea 163 120
- AddArea 162 120
- AddArea 159 120
- AddArea 158 120
- AddArea 156 120
- AddArea 153 120
- AddArea 149 120
- AddArea 146 120
- AddArea 143 120
- AddArea 142 120
- AddArea 138 120
- AddArea 137 119
- AddArea 135 119
- AddArea 134 119
- AddArea 133 119
- AddArea 132 119
- AddArea 131 119
- AddArea 130 118
- AddArea 129 118
- AddArea 128 118
- AddArea 128 117
- AddArea 127 117
- AddArea 126 117
- AddArea 125 117
- AddArea 124 116
- AddArea 123 115
- AddArea 122 115
- AddArea 121 115
- AddArea 120 115
- AddArea 120 114
- AddArea 119 114
- Airbrush
-
- Blend 100
-
- RETURN 0
-