View.ClipAddOval | Part of View module |
Syntax | View.ClipAddOval (x, y, xradius, yradius : int)
|
Description | The View.ClipAddOval procedure adds another oval specified by
(x, y) and xradius and yradius) to the
clipping region. If no clipping region has been specified, then the
oval becomes the complete clipping region. A clipping region is the region that the output will appear in. If the rectangle is specified as the clipping region, any drawing done outside the oval will not appear. To set the initial clipping, or remove the old region and replace it with a new rectangle, use View.ClipSet. To set the clipping region back to the entire screen or window, use View.ClipOff. These commands only work in "graphics" mode.
|
Example | This program sets the clipping region to five circles and then draws
random squares. The squares will only appear (or partially appear)
in the ovals.
const c1 : int := maxy div 4 const c2 : int := 3* maxy div 4 const radius : int := maxy div 4 View.ClipAddOval (c1, c1, radius, radius) View.ClipAddOval (c1, c2, radius, radius) View.ClipAddOval (c2, c1, radius, radius) View.ClipAddOval (c2, c2, radius, radius) % Draw the random squares in the box var x, y, clr : int loop x := Rand.Int (0, maxx - 30) % Random x y := Rand.Int (0, maxy - 30) % Random y clr := Rand.Int (0, maxcolor) % Random color Draw.FillBox (x, y, x + 30, y + 30, clr) end loop |
Execute |
|
Execute | By combining animation using View.Update and
View.ClipAddOval, you can achieve a moving spotlight effect.
|
Status | Exported qualified. This means that you can only call the function by calling View.ClipAddOval, not by calling ClipAddOval.
|
See also | View.ClipSet, View.ClipAdd and View.ClipOff functions. |