home *** CD-ROM | disk | FTP | other *** search
- #include <stdlib.h>
- #include <stdio.h>
- #include "pgl.h"
- int polydata[12] = { 500, 200,
- 100, 400,
- 300, 800,
- 600, 600,
- 900, 700,
- 750, 300 };
-
-
- main()
-
- {
- int j, err=0, pdata[12];
- pgInitDrw( "geom.plt", 3001, 3001, &err );
- if( err != 0 )
- {
- printf( "ERROR IN INITDRW ROUTINE" );
- exit( 1 );
- }
- pgSetTextStyle( pgTRIPLEX );
- pgSetTextJustify( pgCENTER, pgBOTTOM );
- pgSetCharSpacing( 3 );
- pgSetTextScaling( 2, 1, 2, 1 );
- pgSetColor( 15 );
-
- pgRectangle( 0, 0, 3000, 3000, pgOUTLINE );
- pgLine( 0, 1000, 3000, 1000 );
- pgLine( 0, 2000, 3000, 2000 );
- pgLine( 1000, 0, 1000, 3000 );
- pgLine( 2000, 0, 2000, 3000 );
-
- /* 1 */
- pgArc( 500, 500, 300, 0, 210 );
- pgDrawTextXY( 500, 990, "ARC" );
-
- /* 2 */
- pgSetFillStyle( 2, 1 );
- pgCircle( 1500, 500, 300, pgOFILL );
- pgDrawTextXY( 1500, 990, "CIRCLE" );
-
- /* 3 */
- pgEllArc( 2500, 500, 400, 300, 0, 210 );
- pgDrawTextXY( 2500, 990, "ELLARC" );
-
- /* 4 */
- pgSetFillStyle( 3, 1 );
- pgEllipse( 500, 1500, 400, 300, pgOFILL );
- pgDrawTextXY( 500, 1990, "ELLIPSE" );
-
- /* 5 */
- pgSetFillStyle( 4, 1 );
- pgPie( 1500, 1500, 300, 0, 240, pgOFILL );
- pgDrawTextXY( 1500, 1990, "PIE" );
-
- /* 6 */
- for( j=0; j<12; j+=2 )
- {
- pdata[j] = polydata[j] + 2000;
- pdata[j+1] = polydata[j+1] + 1000;
- }
- pgSetFillStyle( 5, 1 );
- pgPolyLine( pdata, 6 );
- pgDrawTextXY( 2500, 1990, "POLYLINE" );
-
- /* 7 */
- for( j=0; j<12; j+=2 )
- {
- pdata[j] = polydata[j] + 0;
- pdata[j+1] = polydata[j+1] + 2000;
- }
- pgSetFillStyle( 6, 1 );
- pgPolygon( pdata, 6, pgOFILL );
- pgDrawTextXY( 500, 2990, "POLYGON" );
-
- /* 8 */
- pgSetFillStyle( 7, 1 );
- pgRectangle( 1500-400, 2500-300, 1500+400, 2500+300, pgOFILL );
- pgDrawTextXY( 1500, 2990, "RECTANGLE" );
-
- /* 9 */
- pgSetFillStyle( 8, 1 );
- pgSector( 2500, 2500, 400, 300, 0, 300, pgOFILL );
- pgDrawTextXY( 2500, 2990, "SECTOR" );
-
- pgEndDrw();
- }