home *** CD-ROM | disk | FTP | other *** search
AMOS Source Code | 1991-06-22 | 1.4 KB | 50 lines |
- Screen Open 1,640,250,16,Hires
- Cls 0
- Ink 4
- Circle 320,100,83
- CLOCK_HANDS["hi",80,12,33,320,100]
- '
- '
- ' Format of procedure CLOCK_HANDS: Version 2!!!
- '
- 'CLOCK_HANDS[Resolution,Size of hands,Minutes,Hours,Centre X pt,Centre Y pt]
- '
- ' where Resolution = "hi" or "lo"
- ' Minutes = 0 to 59
- ' Hours = 0 to 59 (eg. 15 will point to 3 on clock)
- '
- '
- Procedure CLOCK_HANDS[RES$,SIZE,M1NUTES,HOURS,MIDX,MIDY]
- Dim X(4),Y(4)
- WIDTH=1
- Degree
- If Upper$(RES$)="HI" Then WIDTH=2
- '
- ' colour of minute hand
- '
- Ink 1
- '
- ANGLE=M1NUTES*6
- '
- ' draw minute hand
- '
- X(1)=MIDX+WIDTH*2*Cos(ANGLE) : Y(1)=MIDY+2*Sin(ANGLE)
- X(2)=MIDX+WIDTH*2*Cos(ANGLE-180) : Y(2)=MIDY+2*Sin(ANGLE-180)
- X(3)=X(2)+WIDTH*SIZE*Cos(ANGLE-90) : Y(3)=Y(2)+SIZE*Sin(ANGLE-90)
- X(4)=X(1)+WIDTH*SIZE*Cos(ANGLE-90) : Y(4)=Y(1)+SIZE*Sin(ANGLE-90)
- Polygon X(1),Y(1) To X(2),Y(2) To X(3),Y(3) To X(4),Y(4) To X(1),Y(1)
- '
- ' colour of hour hand
- '
- Ink 2
- '
- ANGLE=HOURS*6 : R#=0.65
- '
- ' draw hour hand
- '
- X(1)=MIDX+WIDTH*2*Cos(ANGLE) : Y(1)=MIDY+2*Sin(ANGLE)
- X(2)=MIDX+WIDTH*2*Cos(ANGLE-180) : Y(2)=MIDY+2*Sin(ANGLE-180)
- X(3)=X(2)+WIDTH*R#*SIZE*Cos(ANGLE-90) : Y(3)=Y(2)+SIZE*R#*Sin(ANGLE-90)
- X(4)=X(1)+WIDTH*R#*SIZE*Cos(ANGLE-90) : Y(4)=Y(1)+SIZE*R#*Sin(ANGLE-90)
- Polygon X(1),Y(1) To X(2),Y(2) To X(3),Y(3) To X(4),Y(4) To X(1),Y(1)
- End Proc