CONST g
= &HFF000088 'hnd5s and numbers sw = 800
sh = 600
s$ = "33111121131112121222132114211123113231"
hhand&
= _NEWIMAGE(360, 80, 32) ' make hour hand image and saveb = -pi / 2
LINE -(sw
/ 2 + x
, sh
/ 2 + y
), g
PAINT (sw
/ 2 + 10, sh
/ 2), g
, g
PAINT (sw
/ 2 + 60, sh
/ 2), g
, g
PAINT (sw
/ 2 + 120, sh
/ 2), g
, g
PAINT (sw
/ 2 + 160, sh
/ 2), g
, g
'check
'CLS
'RotoZoom sw / 2, sh / 2, hhand&, 1, 0
'CIRCLE (sw / 2, sh / 2), 6, &HFFFFFF00
SCREEN _NEWIMAGE(sw
, sh
, 32) ' cls screen without cls keep back transparent mhand&
= _NEWIMAGE(560, 80, 32) 'make minute handb = -pi / 2
LINE -(sw
/ 2 + x
, sh
/ 2 + y
), g
PAINT (sw
/ 2 + 20, sh
/ 2), g
, g
PAINT (sw
/ 2 + 120, sh
/ 2), g
, g
PAINT (sw
/ 2 + 160, sh
/ 2), g
, g
'check
'CLS
'RotoZoom sw / 2, sh / 2, mhand&, 1, 36
'RotoZoom sw / 2, sh / 2, hhand&, 1, 150
'CIRCLE (sw / 2, sh / 2), 6, &HFFFFFF00
fcirc sw / 2, sh / 2, 280 + 10, &HFFFF0000
fcirc sw / 2, sh / 2, 280 + 5, &HFFFFFFFF
fcirc sw / 2, sh / 2, 205, &HFFDDDDFF
x
= 100 * COS(a
) + 100 * COS(14 * a
) y
= 100 * SIN(a
) + 100 * SIN(14 * a
)
fcirc sw / 2, sh / 2, 12, &HFFFFFF00
fcirc sw / 2, sh / 2, 6, &HFF000000
CIRCLE (sw
/ 2, sh
/ 2), 210 - 5, &HFF000000 CIRCLE (sw
/ 2, sh
/ 2), 280 + 5, &HFF000000 CIRCLE (sw
/ 2, sh
/ 2), 280 + 10, &HFF000000 a = -pi / 2
i = i + 1
b
= a
- 0.05 * (VAL(c$
)) * 0.5 i = i + 1
IF VAL(c$
) > 1 THEN c
= b
+ 0.05 * 0.5 * ((k
= 0) - (k
<> 0)) ELSE c
= b
LINE (sw
/ 2 + 210 * COS(c
), sh
/ 2 + 210 * SIN(c
))-STEP(70 * COS(c
- 0.05 * 3), 70 * SIN(c
- 0.05 * 3)) LINE (sw
/ 2 + 210 * COS(c
), sh
/ 2 + 210 * SIN(c
))-STEP(70 * COS(c
+ 0.05 * 3), 70 * SIN(c
+ 0.05 * 3)) IF VAL(c$
) > 1 THEN c
= b
+ 0.05 * 0.5 * ((k
= 0) - (k
<> 0)) ELSE c
= b
LINE (sw
/ 2 + 210 * COS(c
- 0.05 * 0.8), sh
/ 2 + 210 * SIN(c
- 0.05 * 0.8))-(sw
/ 2 + 280 * COS(c
+ 0.05 * 0.8), sh
/ 2 + 280 * SIN(c
+ 0.05 * 0.8)) LINE (sw
/ 2 + 210 * COS(c
+ 0.05 * 0.8), sh
/ 2 + 210 * SIN(c
+ 0.05 * 0.8))-(sw
/ 2 + 280 * COS(c
- 0.05 * 0.8), sh
/ 2 + 280 * SIN(c
- 0.05 * 0.8)) b = b + 0.05
a = a + pi / 6
h = (h / 12 + m / 12) * 360
RotoZoom sw / 2, sh / 2, hhand&, 1, h - 90
RotoZoom sw / 2, sh / 2, mhand&, 1, m * 360 - 90
px(0) = -W& / 2: py(0) = -H& / 2: px(1) = -W& / 2: py(1) = H& / 2
px(2) = W& / 2: py(2) = H& / 2: px(3) = W& / 2: py(3) = -H& / 2
sinr!
= SIN(-Rotation
/ 57.2957795131): cosr!
= COS(-Rotation
/ 57.2957795131) x2& = (px(I&) * cosr! + sinr! * py(I&)) * Scale + X: y2& = (py(I&) * cosr! - px(I&) * sinr!) * Scale + Y
px(I&) = x2&: py(I&) = y2&
_MAPTRIANGLE (0, 0)-(0, H&
- 1)-(W&
- 1, H&
- 1), hdl
TO(px
(0), py
(0))-(px
(1), py
(1))-(px
(2), py
(2)) _MAPTRIANGLE (0, 0)-(W&
- 1, 0)-(W&
- 1, H&
- 1), hdl
TO(px
(0), py
(0))-(px
(3), py
(3))-(px
(2), py
(2))
'from Steve Gold standard
Radius
= ABS(R
): RadiusError
= -Radius: X
= Radius: Y
= 0 LINE (CX
- X
, CY
)-(CX
+ X
, CY
), C
, BF
RadiusError = RadiusError + Y * 2 + 1
LINE (CX
- Y
, CY
- X
)-(CX
+ Y
, CY
- X
), C
, BF
LINE (CX
- Y
, CY
+ X
)-(CX
+ Y
, CY
+ X
), C
, BF
X = X - 1
RadiusError = RadiusError - X * 2
Y = Y + 1
LINE (CX
- X
, CY
- Y
)-(CX
+ X
, CY
- Y
), C
, BF
LINE (CX
- X
, CY
+ Y
)-(CX
+ X
, CY
+ Y
), C
, BF