const NUM_OF_SIDES := 3
const C := 120
const C2 := 2
const CB := 7
const C3 := 10
var X : array 1 .. NUM_OF_SIDES of int
var Y : array 1 .. NUM_OF_SIDES of int
var X2 : array 1 .. NUM_OF_SIDES of int
var Y2 : array 1 .. NUM_OF_SIDES of int
var DIS : int
var Dy : array 1 .. NUM_OF_SIDES of int
var Dx : array 1 .. NUM_OF_SIDES of int
var Xm, Ym, Click : int
var Length : real4
var SlopeX, SlopeY : int
setscreen ("graphics:max,max,nobuttonbar,offscreenonly")
for Index : 1 .. NUM_OF_SIDES
randint (X (Index), 1, maxx)
randint (Y (Index), 1, maxy)
randint (DIS, 50, 150)
X2 (Index) := X (Index) - DIS
Y2 (Index) := Y (Index) - DIS
loop
randint (Dx (Index), -2, 2)
exit when Dx (Index) not= 0
end loop
loop
randint (Dy (Index), -2, 2)
exit when Dy (Index) not= 0
end loop
end for
colorback (CB)
loop
cls
for Index : 1 .. NUM_OF_SIDES
X (Index) := X (Index) + Dx (Index)
Y (Index) := Y (Index) + Dy (Index)
X2 (Index) := X (Index) - DIS
Y2 (Index) := Y (Index) - DIS
if X (Index) > maxx or X (Index) < 1
then
Dx (Index) := - (Dx (Index))
end if
if Y (Index) > maxy or Y (Index) < 1
then
Dy (Index) := - (Dy (Index))
end if
drawpolygon (X, Y, NUM_OF_SIDES, C)
drawpolygon (X2, Y2, NUM_OF_SIDES, C2)
%drawfillpolygon (X2, Y, NUM_OF_SIDES, 10)
drawline (X (Index), Y (Index), X2 (Index), Y2 (Index), C3)
drawoval (X (Index), Y (Index), 10, 10, C2)
drawoval (X2 (Index), Y2 (Index), 10, 10, C3)
end for
View.Update
end loop
|