home *** CD-ROM | disk | FTP | other *** search
/ Monster Disc 2: The Best of 1992 / MONSTER2.ISO / prog / djgpp / cbgrx102.a01 / CONTRIB / LIBGRX / SRC / PATFCVXP.C < prev    next >
Encoding:
C/C++ Source or Header  |  1992-08-12  |  1.5 KB  |  44 lines

  1. /**
  2.  ** PATFCVXP.C
  3.  **
  4.  **  Copyright (C) 1992, Csaba Biegl
  5.  **    820 Stirrup Dr, Nashville, TN, 37221
  6.  **    csaba@vuse.vanderbilt.edu
  7.  **
  8.  **  This file is distributed under the terms listed in the document
  9.  **  "copying.cb", available from the author at the address above.
  10.  **  A copy of "copying.cb" should accompany this file; if not, a copy
  11.  **  should be available from where this file was obtained.  This file
  12.  **  may not be distributed without a verbatim copy of "copying.cb".
  13.  **  You should also have received a copy of the GNU General Public
  14.  **  License along with this program (it is in the file "copying");
  15.  **  if not, write to the Free Software Foundation, Inc., 675 Mass Ave,
  16.  **  Cambridge, MA 02139, USA.
  17.  **
  18.  **  This program is distributed in the hope that it will be useful,
  19.  **  but WITHOUT ANY WARRANTY; without even the implied warranty of
  20.  **  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  21.  **  GNU General Public License for more details.
  22.  **/
  23.  
  24. #include "grx.h"
  25. #include "libgrx.h"
  26.  
  27. void GrPatternFilledConvexPolygon(int n,int pt[][2],GrPattern *p)
  28. {
  29.     if(n <= 0) return;
  30.     if((n > 1) && (pt[0][0] == pt[n-1][0]) && (pt[0][1] == pt[n-1][1])) n--;
  31.     switch(n) {
  32.       case 1:
  33.         GrPatternFilledPlot(pt[0][0],pt[0][1],p);
  34.         break;
  35.       case 2:
  36.         GrPatternFilledLine(pt[0][0],pt[0][1],pt[1][0],pt[1][1],p);
  37.         break;
  38.       default:
  39.         _GrScanConvexPoly(n,pt,_GrScanLinePatternFill,p);
  40.         break;
  41.     }
  42. }
  43.  
  44.