NAME
XFillArcs − fill multiple arcs.
Synopsis
XFillArcs(display, drawable, gc, arcs, narcs)
Display *display;
Drawable drawable;
GC gc;
XArc *arcs;
int narcs;
Arguments
displaySpecifies a connection to an X server; returned from XOpenDisplay().
drawableSpecifies the drawable.
gcSpecifies the graphics context.
arcsSpecifies a pointer to an array of arc definitions.
narcsSpecifies the number of arcs in the array.
Description
For each arc, XFillArcs() fills the region closed by the specified arc and one or two line segments, depending on the arc_mode specified in the GC. It does not draw the complete outlines of the arcs, but some pixels may overlap. The arc forms one boundary of the area to be filled. The other boundary is determined by the arc_mode in the GC. If the arc_mode in the GC is ArcChord, the single line segment joining the endpoints of the arc is used. If ArcPieSlice, the two line segments joining the endpoints of the arc with the center point are used. The arcs are filled in the order listed in the array. For any given arc, no pixel is drawn more than once. If filled arcs intersect, pixels will be drawn multiple times. In R4 and earlier there is a limit to the number of rectangles that can be drawn in a single call, based on the maximum request size, which varies according to the server. In R5, Xlib chops your call into as many protocol requests as required. To determine how many rectangles you can draw in a single call in R4, you find out your server’s maximum request size using XMaxRequestSize(). Subtract 3 and divide by three, and this is the maximum number of arcs you can fill in a single XFillArcs() call. XFillArcs() use these graphics context components: function, plane_mask, fill_style, arc_mode, subwindow_mode, clip_x_origin, clip_y_origin, and clip_mask. This function also uses these graphics context mode-dependent components: foreground, background, tile, stipple, ts_x_origin, and ts_y_ origin. For more information, see Volume One, Chapter 6, Drawing Graphics and Text, and Chapter 5, The Graphics Context.
Structures
typedef struct {
short x, y;
unsigned short width, height;
short angle1, angle2;/* 64ths of Degrees */
} XArc;
Errors
BadDrawable
BadGC
BadMatch
See Also
XClearArea(), XClearWindow(), XCopyArea(), XCopyPlane(), XDraw, XDrawArc(), XDrawArcs(), XDrawFilled(), XDrawLine(), XDrawLines(), XDrawPoint(), XDrawPoints(), XDrawRectangle(), XDrawRectangles(), XDrawSegments(), XFillArc(), XFillPolygon(), XFillRectangle(), XFillRectangles().
Copyright O’Reilly & Assoc. —