home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-386-Vol-2of3.iso / b / baswiz19.zip / BW$BAS.ZIP / GN5POLY.BAS < prev    next >
BASIC Source File  |  1993-01-29  |  1KB  |  34 lines

  1. '   +----------------------------------------------------------------------+
  2. '   |                                                                      |
  3. '   |        BASWIZ  Copyright (c) 1990-1993  Thomas G. Hanlin III         |
  4. '   |                                                                      |
  5. '   |                      The BASIC Wizard's Library                      |
  6. '   |                                                                      |
  7. '   +----------------------------------------------------------------------+
  8.  
  9.    DECLARE SUB GN5GetRes (MaxX%, MaxY%)
  10.    DECLARE SUB GN5Line (BYVAL x1%, BYVAL y1%, BYVAL x2%, BYVAL y2%)
  11.  
  12.    DEFINT A-Z
  13.  
  14. SUB GN5Polygon (X, Y, Radius, Vertices, Angle!)
  15.    IF Vertices > 1 THEN
  16.       GN5GetRes MaxX, MaxY
  17.       AspectRatio! = (MaxX * 3!) / (MaxY * 4!)
  18.       ang! = 6.283185
  19.       dang! = -Angle!
  20.       r! = Radius
  21.       delta! = ang! / CSNG(Vertices)
  22.       x1 = r! * COS(ang! + dang!) * AspectRatio! + x
  23.       y1 = r! * SIN(ang! + dang!) + y
  24.       FOR DrawLine = 1 TO vertices
  25.          ang! = ang! - delta!
  26.          x2 = r! * COS(ang! + dang!) * AspectRatio! + x
  27.          y2 = r! * SIN(ang! + dang!) + y
  28.          GN5Line x1, y1, x2, y2
  29.          x1 = x2
  30.          y1 = y2
  31.       NEXT
  32.    END IF
  33. END SUB
  34.