00001
00002
00003
00004
00005
00006
00007
00008 #ifndef _CIRC_H
00009 #define _CIRC_H
00010
00033
00034
00035
00036
00037
00038 #include <stdio.h>
00039
00040
00041
00042
00043
00044
00047 typedef struct _circ Circ;
00048
00049
00050
00051
00052
00053
00054
00055
00056
00067 Circ *circCreate( void );
00068
00069
00077 void circDelete( Circ *circ );
00078
00079
00090 void circRead( Circ *circ, FILE *fd );
00091
00092
00103 void circWrite( Circ *circ, FILE *fd );
00104
00105
00133 int circGetNPts( Circ *circ );
00134
00135
00149 void circSetCoords( Circ *circ, int id, double x, double y );
00150
00151
00168 void circGetCoords( Circ *circ, int id, double *x, double *y );
00169
00170
00185 void circSet1stPt( Circ *circ, double x, double y );
00186
00187
00204 void circSet2ndPt( Circ *circ, double x, double y );
00205
00206
00222 int circPickArea( Circ *circ, double x, double y );
00223
00224
00255 int circPickVertex( Circ *circ, double x, double y, double tol,
00256 int *id );
00257
00258
00266 int circPickSide( Circ *circ, double x, double y, double tol,
00267 int *id );
00268
00269
00280 void circTranslate( Circ *circ, double dx, double dy );
00281
00282
00317 void circTranslateVertex( Circ *circ, int id, double dx, double dy );
00318
00319
00324 void circTranslateSide( Circ *circ, int id, double dx, double dy );
00325
00326
00340 void circGetBox( Circ *circ, double *xmin, double *xmax,
00341 double *ymin, double *ymax );
00342
00343
00372 void circDisplayBoundary( Circ *circ );
00373
00374
00390 void circDisplayInterior( Circ *circ );
00391
00392
00405 void circDisplaySolid( Circ *circ, double height );
00406
00407
00420 void circHighltSolid( Circ *circ, double height );
00421
00422
00433 void circDisplayZbuffer( Circ *circ, double height, long int color );
00434
00435
00438 #endif
00439 displayed.
00440 ** The solid version is a prism that has the 2D primitive as
00441 ** its base and height equal to the primitive height.
00442 **
00443 ** @param circ - pointer to target circle primitive (in)
00444 ** @param height - primitive height (in)
00445 ** @param color - primitive coded color (in)
00446 */
00447 void circDisplayZbuffer( Circ *circ, double height, long int color );
00448
00449
00452 #endif