() | () |
̾Á°¶
XCreateGC, XCopyGC, XChangeGC, XGetGCValues, XFreeGC, XGContextFromGC, XGCValues - ¥°¥é¥Õ¥£¥Ã¥¯¥¹¥³¥ó¥Æ¥¯¥¹¥È¤ÎÀ¸À®¡¦²òÊü´Ø¿ô¤È¡¢¥°¥é¥Õ¥£¥Ã¥¯¥¹¥³¥ó¥Æ¥¯¥¹¥È¹½Â¤ÂÎ
½ñ¼°¶
GC XCreateGC(display, d, valuemask,
values)
Display *display;
Drawable d;
unsigned long valuemask;
XGCValues *values;
XCopyGC(display, src, valuemask, dest)
Display *display;
GC src, dest;
unsigned long valuemask;
XChangeGC(display, gc, valuemask,
values)
Display *display;
GC gc;
unsigned long valuemask;
XGCValues *values;
Status XGetGCValues(display, gc, valuemask,
values_return)
Display *display;
GC gc;
unsigned long valuemask;
XGCValues *values_return;
XFreeGC(display, gc)
Display *display;
GC gc;
GContext XGContextFromGC(gc)
GC gc;
°ú¤¿ô¶
- d
- ¥É¥í¥¦¥¢¥Ö¥ë¤ò»ØÄꤹ¤ë¡£
- dest
- ÂоݤȤʤë GC ¤ò»ØÄꤹ¤ë¡£
- display
- X ¥µ¡¼¥Ð¤Ø¤ÎÀܳ¤ò»ØÄꤹ¤ë¡£
- gc
- GC ¤ò»ØÄꤹ¤ë¡£
- src
- ¸µ¤Î GC ¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò»ØÄꤹ¤ë¡£
- valuemask
- GC ¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¤¦¤Á¡¢ÀßÄꡦ¥³¥Ô¡¼¡¦Êѹ¹¤µ¤ì¤ë¤â¤Î¡¢¤¢¤ë¤¤¤ÏÃͤ¬ ÊÖ¤µ¤ì¤ë¤â¤Î¤ò»ØÄꤹ¤ë¡£ ¤³¤Î°ú¤¿ô¤Ï¡¢GC ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î͸ú¤Ê¥Þ¥¹¥¯¥Ó¥Ã¥È¤Î 0 ¸Ä°Ê¾å¤ËÂФ·¤Æ¡¢ ¥Ó¥Ã¥È¤´¤È¤ÎÏÀÍýϤò¤È¤Ã¤¿¤â¤Î¤Ç¤¢¤ë¡£
- values
- °ú¤¿ô valuemask ¤Ç»ØÄꤷ¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÃͤò»ØÄꤹ¤ë¡£
- values_return
- »ØÄꤷ¤¿ XGCValues ¹½Â¤ÂÎÆâ¤Î GC Ãͤ¬ÊÖ¤µ¤ì¤ë¡£
ÀâÌÀ¶
´Ø¿ô XCreateGC ¤Ï¥°¥é¥Õ¥£¥Ã¥¯¥¹¥³¥ó¥Æ¥¯¥¹¥È¤òÀ¸À®¤·¤Æ¡¢GC ¤òÊÖ¤¹¡£ À¸À®¤µ¤ì¤¿ GC ¤Ï»ØÄꤷ¤¿¥É¥í¥¦¥¢¥Ö¥ë¤ÈƱ¤¸¥ë¡¼¥È¥¦¥£¥ó¥É¥¦¡¢¿¼¤µ¤ò»ý¤Ä Ǥ°Õ¤ÎÉÁ²èÂÐ¾Ý¤Î¥É¥í¥¦¥¢¥Ö¥ë¤È¶¦¤ËÍѤ¤¤ë¤³¤È¤¬¤Ç¤¤ë¡£ ¾¤Î¥É¥í¥¦¥¢¥Ö¥ë¤È¶¦¤Ë»È¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢¥¨¥é¡¼ BadMatch ¤È¤Ê¤ë¡£
XCreateGC ¤Ï¥¨¥é¡¼ BadAlloc, BadDrawable, BadFont, BadMatch, BadPixmap, BadValue ¤òµ¯¤³¤¹¤³¤È¤¬¤¢¤ë¡£
´Ø¿ô XCopyGC ¤Ï¥³¥Ô¡¼¸µ¤Î GC ¤Î»ØÄꤷ¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥³¥Ô¡¼Àè¤Î GC ¤Ë¥³¥Ô¡¼¤¹¤ë¡£ ¥³¥Ô¡¼¸µ¤È¥³¥Ô¡¼Àè¤Î GC ¤Ï¡¢¥ë¡¼¥È¥¦¥£¥ó¥É¥¦¤È¿¼¤µ¤¬Æ±¤¸¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê ¤¤¡£¤½¤¦¤Ç¤Ê¤±¤ì¤Ð¡¢¥¨¥é¡¼ BadMatch ¤È¤Ê¤ë¡£ valuemask ¤Ï XCreateGC ¤Î¾ì¹ç¤ÈƱ¤¸¤¯¡¢¤É¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥³¥Ô¡¼¤¹¤ë¤«¤ò»ØÄꤹ¤ë¡£
XCopyGC ¤Ï¥¨¥é¡¼ BadAlloc, BadGC, BadMatch ¤òµ¯¤³¤¹¤³¤È¤¬¤¢¤ë¡£
´Ø¿ô XChangeGC ¤Ï¡¢»ØÄꤷ¤¿GC¤Î valuemask ¤Ç»ØÄꤷ¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÊѹ¹¤¹¤ë¡£ °ú¤¿ô values ¤Ë¤ÏÀßÄꤹ¤ëÃͤòÍ¿¤¨¤ë¡£ ¤³¤Î´Ø¿ô¤ÎÃͤÈÀ©¸Â¤Ï XCreateGC ¤Î¾ì¹ç¤ÈƱ¤¸¤Ç¤¢¤ë¡£ clip-mask ¤ÎÊѹ¹¤Ï¡¢¤½¤Î¥³¥ó¥Æ¥¯¥¹¥È¤ËÂФ¹¤ë°ÊÁ°¤Î XSetClipRectangles ¤ò¾å½ñ¤¤¹¤ë¡£ dash-offset ¤ä dash-list ¤ÎÊѹ¹¤Ï¡¢¤½¤Î¥³¥ó¥Æ¥¯¥¹¥È¤ËÂФ¹¤ë°ÊÁ°¤Î XSetDashes ¤ò¾å½ñ¤¤¹¤ë¡£ ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬³Îǧ¡¢Êѹ¹¤µ¤ì¤ë½ç½ø¤Ï¡¢¥µ¡¼¥Ð¤Ë°Í¸¤¹¤ë¡£ ¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î°ìÉô¤Ï¤¹¤Ç¤ËÊѹ¹¤µ¤ì¤Æ¤¤¤ë¤«¤â¤· ¤ì¤Ê¤¤¡£
XChangeGC ¤Ï¥¨¥é¡¼ BadAlloc, BadFont, BadGC, BadMatch, BadPixmap, BadValue ¤òµ¯¤³¤¹¤³¤È¤¬¤¢¤ë¡£
´Ø¿ô XGetGCValues ¤Ï¡¢»ØÄꤷ¤¿ GC ¤Î»ØÄꤷ¤¿ valuemask ¤Ç»ØÄꤵ¤ì¤ë¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÊÖ¤¹¡£ valuemask ¤¬Àµ¤·¤¤ GC ¥Þ¥¹¥¯¥Ó¥Ã¥È¤Î½¸¹ç (GCFunction, GCPlaneMask, GCForeground, GCBackground, GCLineWidth, GCLineStyle, GCCapStyle, GCJoinStyle, GCFillStyle, GCFillRule, GCTile, GCStipple, GCTileStipXOrigin, GCTileStipYOrigin, GCFont, GCSubwindowMode, GCGraphicsExposures, GCClipXOrigin, GCCLipYOrigin, GCDashOffset, GCArcMode) ¤ò´Þ¤ó¤Ç¤ª¤ê¡¢¥¨¥é¡¼¤âµ¯¤¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢ XGetGCValues ¤Ï°ú¤¿ô values_return ¤ËÍ׵ᤵ¤ì¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÀßÄꤷ¡¢0 ¤Ç¤Ê¤¤ ¥¹¥Æ¡¼¥¿¥¹¤òÊÖ¤¹¡£ ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¤³¤Î´Ø¿ô¤Ï¥¹¥Æ¡¼¥¿¥¹¤È¤·¤Æ 0 ¤òÊÖ¤¹¡£ clip-mask ¤È dash-list(valuemask ¤Ç¤Ï¤½¤ì¤¾¤ì GCClipMask ¤È GCDashList ¥Ó¥Ã¥È)¤òÍ׵᤹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤ÅÀ¤ËÃí°Õ¤»¤è¡£ ¤Þ¤¿¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÌÀ¼¨Åª¤ËÀßÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢ GCFont, GCTile, GCStipple ¤ËÂФ·¤ÆÉÔÀµ¤Ê¥ê¥½¡¼¥¹ID¤¬ÊÖ¤µ¤ì¤ë(3¤Ä¤ÎºÇ¾å°Ì¥Ó¥Ã¥È¤Î¤¦¤Á¤Î1¤Ä°Ê¾å¤¬1 ¤ËÀßÄꤵ¤ì¤ë)ÅÀ¤Ë¤âÃí°Õ¤¹¤ë¤³¤È¡£
´Ø¿ô XFreeGC ¤Ï»ØÄꤷ¤¿ GC ¤òÇË´þ¤·¡¢Âбþ¤¹¤ë¥á¥â¥ê¤ò²òÊü¤¹¤ë¡£
XFreeGC ¤Ï¥¨¥é¡¼ BadGC ¤òµ¯¤³¤¹¤³¤È¤¬¤¢¤ë¡£
¹½Â¤Âζ
XGCValues ¹½Â¤ÂΤÎÆâÍƤò¼¨¤¹¡£
#define | GCFunction | (1L<<0) |
#define | GCPlaneMask | (1L<<1) |
#define | GCForeground | (1L<<2) |
#define | GCBackground | (1L<<3) |
#define | GCLineWidth | (1L<<4) |
#define | GCLineStyle | (1L<<5) |
#define | GCCapStyle | (1L<<6) |
#define | GCJoinStyle | (1L<<7) |
#define | GCFillStyle | (1L<<8) |
#define | GCFillRule | (1L<<9) |
#define | GCTile | (1L<<10) |
#define | GCStipple | (1L<<11) |
#define | GCTileStipXOrigin | (1L<<12) |
#define | GCTileStipYOrigin | (1L<<13) |
#define | GCFont | (1L<<14) |
#define | GCSubwindowMode | (1L<<15) |
#define | GCGraphicsExposures | (1L<<16) |
#define | GCClipXOrigin | (1L<<17) |
#define | GCClipYOrigin | (1L<<18) |
#define | GCClipMask | (1L<<19) |
#define | GCDashOffset | (1L<<20) |
#define | GCDashList | (1L<<21) |
#define | GCArcMode | (1L<<22) |
typedef struct { int function; unsigned long plane_mask; unsigned long foreground; unsigned long background; int line_width; int line_style; int cap_style; int join_style; int fill_style; int fill_rule; int arc_mode; Pixmap tile; Pixmap stipple; int ts_x_origin; int ts_y_origin; Font font; int subwindow_mode; Bool graphics_exposures; int clip_x_origin; int clip_y_origin; Pixmap clip_mask; int dash_offset; char dashes; } XGCValues;
GC ¤Î function °À¤Ï¥É¥í¥¦¥¢¥Ö¥ë(ÁàºîÂоÝ)¤Î°ìÉô¤ò¾¤Î¥É¥í¥¦¥¢¥Ö¥ë (Áàºî¸µ)¤Î¥Ó¥Ã¥È¤ò»È¤Ã¤Æ¹¹¿·¤¹¤ë¤È¤¤ËÍѤ¤¤é¤ì¤ë¡£ GC ¤Î function ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï¡¢¿·¤·¤¤ÁàºîÂоݤΥӥåȤ¬¡¢Áàºî¸µ¤Î ¥Ó¥Ã¥È¤È¸Å¤¤ÁàºîÂоݤΥӥåȤ«¤é¤É¤Î¤è¤¦¤Ë»»½Ð¤µ¤ì¤ë¤«¤òÄêµÁ¤¹¤ë¡£ GXcopy ¤Ï¥«¥é¡¼¥Ç¥£¥¹¥×¥ì¥¤¤ÇÆ°ºî¤¹¤ë¤Î¤Ç°ìÈÌŪ¤Ë¤ÏºÇ¤âÊØÍø¤Ç¤¢¤ë¤¬¡¢ÆÃÊÌ¤Ê ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¾¤Î´Ø¿ô¤ò»È¤¦¤³¤È¤â¤¢¤ë¡£ Æäˡ¢¥«¥é¡¼¥Ç¥£¥¹¥×¥ì¥¤¤ÎÆÃÄê¤Î¥×¥ì¡¼¥ó¤ò»È¤¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¤½¤¦ ¤Ç¤¢¤ë¡£ 16 ¤Î GC Áàºî´Ø¿ô¤¬ <X11/X.h> ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£
´Ø¿ô ̾Á° ÃÍ Áàºî | ||
GXclear | 0x0 | 0 |
GXand | 0x1 | src AND dst |
GXandReverse | 0x2 | src AND NOT dst |
GXcopy | 0x3 | src |
GXandInverted | 0x4 | (NOT src) AND dst |
GXnoop | 0x5 | dst |
GXxor | 0x6 | src XOR dst |
GXor | 0x7 | src OR dst |
GXnor | 0x8 | (NOT src) AND (NOT dst) |
GXequiv | 0x9 | (NOT src) XOR dst |
GXinvert | 0xa | NOT dst |
GXorReverse | 0xb | src OR (NOT dst) |
GXcopyInverted | 0xc | NOT src |
GXorInverted | 0xd | (NOT src) OR dst |
GXnand | 0xe | (NOT src) OR (NOT dst) |
GXset | 0xf | 1 |
¥°¥é¥Õ¥£¥Ã¥¯¥¹Áàºî¤Î¿¤¯¤Ï¡¢GC ¤Î¥Ô¥¯¥»¥ëÃͤä¥×¥ì¡¼¥ó¤Ë°Í¸¤¹¤ë¡£ ¥×¥ì¡¼¥ó°À¤Ï long ·¿¤Ç¡¢¥×¥ì¡¼¥ó¤´¤È¤Ë1¥Ó¥Ã¥È¤¬³ä¤êÅö¤Æ¤é¤ì¤Æ¤ª¤ê¡¢ ÉÁ²èÂоݤΤɤΥץ졼¥ó¤¬Êѹ¹¤µ¤ì¤ë¤«»ØÄꤹ¤ë¡£ ¥â¥Î¥¯¥í¤Î¥Ç¥£¥¹¥×¥ì¥¤¤Ï1¤Ä¤Î¥×¥ì¡¼¥ó¤·¤«»ý¤¿¤º¡¢¥×¥ì¡¼¥ó¥Þ¥¹¥¯¤Î ºÇ²¼°Ì¥Ó¥Ã¥È¤·¤«°ÕÌ£¤ò»ý¤¿¤Ê¤¤¡£ ¥Ç¥£¥¹¥×¥ì¥¤¤Î¥Ï¡¼¥É¥¦¥§¥¢¤Î¥×¥ì¡¼¥ó¤¬Áý¤¨¤ë¤Ë½¾¤Ã¤Æ¡¢¥×¥ì¡¼¥ó¥Þ¥¹¥¯¤Î ¤è¤ê¾å°Ì¤Î¥Ó¥Ã¥È¤¬»È¤ï¤ì¤ë¡£
¥°¥é¥Õ¥£¥Ã¥¯¥¹Áàºî¤Ç¤ÏÁàºî¸µ¤ÈÁàºîÂоݤΥԥ¯¥»¥ë¤¬Í¿¤¨¤é¤ì¤ë¤È¡¢ ¥Ô¥¯¥»¥ë¤ÎÂбþ¤¹¤ë³Æ¥Ó¥Ã¥È¤¬¥Ó¥Ã¥È¤´¤È¤Ë±é»»¤µ¤ì¤Æ¡¢·ë²Ì¤¬ÆÀ¤é¤ì¤ë¡£ ¤Ä¤Þ¤ê¡¢³Æ¥×¥ì¡¼¥ó¤Ë¤ª¤¤¤Æ¥Ö¡¼¥ê¥¢¥óÁàºî¤¬¼Â¹Ô¤µ¤ì¤ë¡£ plane_mask ¤ÏÁàºî¤ò¥×¥ì¡¼¥ó¤Î°ìÉôʬ¤ËÀ©¸Â¤¹¤ë¡£ ¥Þ¥¯¥íÄê¿ô AllPlanes ¤ò»È¤¦¤³¤È¤Ç¡¢¥¹¥¯¥ê¡¼¥ó¤ÎÁ´¤Æ¤Î¥×¥ì¡¼¥ó¤òƱ»þ¤Ë»²¾È¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£ ·ë²Ì¤Ï°Ê²¼¤Î¤è¤¦¤Ë·×»»¤µ¤ì¤ë¡£
((src FUNC dst) AND plane-mask) OR (dst AND (NOT plane-mask))
foreground, background, plane_mask ¤ÎÃͤËÂФ·¤Æ¤Ï¡¢ÈϰϤΥÁ¥§¥Ã¥¯¤Ï¹Ô ¤ï¤ì¤Ê¤¤¡£ ¤³¤ì¤é¤ÎÃͤÏñ¤ËŬÀڤʥӥåȿô¤ËÀÚ¤êµÍ¤á¤é¤ì¤ë¡£ line-width ¤Îñ°Ì¤Ï¥Ô¥¯¥»¥ë¿ô¤Ç¡¢1°Ê¾å(wide line)¤«Æüì¤Ê°ÕÌ£¤ò»ý¤ÄÃÍ 0(thin line)¤Î¤É¤Á¤é¤«¤Ç¤¢¤ë¡£
wide line ¤Ï¥°¥é¥Õ¥£¥Ã¥¯¥¹¥ê¥¯¥¨¥¹¥È¤¬¼¨¤¹µ°ÀפÎÃæ¿´¤ËÉÁ²è¤µ¤ì¤ë¡£ join-style ¤« cap-style ¤ÇÊÌÅӤ˻ØÄꤵ¤ì¤Ê¤±¤ì¤Ð¡¢Ã¼ÅÀ¤¬ [x1, y1], [x2, y2] ¤Ç¤¢¤êÉý w ¤ò»ý¤Ä wide line ¤Î¥Ð¥¦¥ó¥Ç¥£¥ó¥°¥Ü¥Ã¥¯¥¹¤Ï°Ê²¼¤Î ¼ÂºÂɸ¤ò»ý¤ÄĹÊý·Á¤È¤Ê¤ë¡£
[x1-(w*sn/2), y1+(w*cs/2)], [x1+(w*sn/2), y1-(w*cs/2)], [x2-(w*sn/2), y2+(w*cs/2)], [x2+(w*sn/2), y2-(w*cs/2)]
¤³¤³¤Ç sn ¤ÏÀþ¤Î³ÑÅ٤Υµ¥¤¥ó¤Ç¤¢¤ê¡¢cs ¤ÏÀþ¤Î³ÑÅ٤Υ³¥µ¥¤¥ó¤Ç¤¢¤ë¡£ ¥Ô¥¯¥»¥ë¤ÏÀþ¤Î°ìÉô¤Ç¤¢¤ê¡¢½¾¤Ã¤Æ¥Ô¥¯¥»¥ë¤ÎÃæ¿´¤¬´°Á´¤Ë¥Ð¥¦¥ó¥Ç¥£¥ó¥°¥Ü¥Ã ¥¯¥¹(¤³¤ì¤Ï̵¸Â¤ËºÙ¤¤ÊÕ¤ò»ý¤Ä¤È¹Í¤¨¤ë)¤ÎÆâÉô¤Ë¤¢¤ì¤Ð¡¢¤³¤Î¥Ô¥¯¥»¥ë¤ÏÉÁ ²è¤µ¤ì¤ë¡£ ¥Ô¥¯¥»¥ë¤ÎÃæ¿´¤¬¤Á¤ç¤¦¤É¥Ð¥¦¥ó¥Ç¥£¥ó¥°¥Ü¥Ã¥¯¥¹¤ÎÊդξå¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¥Ð ¥¦¥ó¥Ç¥£¥ó¥°¥Ü¥Ã¥¯¥¹¤ÎÆâÉô¤¬¥Ô¥¯¥»¥ëÃæ¿´¤Î¤¹¤°±¦(x ¤ÎÁý²ÃÊý¸þ)¤Ë¤¢¤ë»þ ¤Ë¸Â¤ê¡¢¥Ô¥¯¥»¥ë¤¬Àþ¤Î°ìÉô¤È¤Ê¤ë¡£ ¥Ô¥¯¥»¥ë¤ÎÃæ¿´¤¬¿åÊ¿¤ÊÊÕ¾å¤Ë¤¢¤ë¾ì¹ç¤ÏÆÃÊ̤ǡ¢¥Ð¥¦¥ó¥Ç¥£¥ó¥°¥Ü¥Ã¥¯¥¹Æâ Éô¤«¶³¦¤¬Ãæ¿´¤Î¤¹¤°²¼(y ¤ÎÁý²ÃÊý¸þ)¤Ë¤¢¤ê¡¢¥Ð¥¦¥ó¥Ç¥£¥ó¥°¥Ü¥Ã¥¯¥¹ÆâÉô ¤«¶³¦¤¬Ãæ¿´¤Î¤¹¤°±¦(x ¤ÎÁý²ÃÊý¸þ)¤Ë¤¢¤ë»þ¤Ë¸Â¤ê¡¢¥Ô¥¯¥»¥ë¤¬Àþ¤Î°ìÉô¤È ¤Ê¤ë¡£
line line(line-width ¤¬ 0)¤Ï1¥Ô¥¯¥»¥ëÉý¤ÎÀþ¤Ç¤¢¤ë¡£ÉÁ²è¥¢¥ë¥´¥ê¥º¥à ¤ÏÄêµÁ¤µ¤ì¤Æ¤ª¤é¤º¡¢¥Ç¥Ð¥¤¥¹¤Ë°Í¸¤¹¤ë¡£ ¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤ËÂФ·¤Æ¤Ï2¤Ä¤ÎÀ©Ìó¤·¤«¤Ê¤¤¡£
- 1.
- Àþ¤¬¥¯¥ê¥Ã¥×¤µ¤ì¤º¤Ë [x1,y1] ¤«¤é [x2,y2] ¤ØÉÁ²è¤µ¤ì¡¢Â¾¤ÎÀþ¤¬¥¯¥ê¥Ã¥× ¤µ¤ì¤º¤Ë [x1+dx,y1+dy] ¤«¤é [x2+dx,y2+dy] ¤ØÉÁ²è¤µ¤ì¤¿¾ì¹ç¡¢ÅÀ [x+dx, y+dy] ¤¬2ÈÖÌܤÎÀþ¤ÎÉÁ²è¤Ë¤è¤Ã¤ÆÅɤé¤ì¤¿¾ì¹ç¤Ë¸Â¤ê¡¢ÅÀ [x, y] ¤¬ºÇ½é¤Î Àþ¤ÎÉÁ²è¤Ë¤è¤êÅɤé¤ì¤ë¡£
- 2.
- Àþ¤ò¹½À®¤¹¤ë͸ú¤ÊÅÀ¤Ï¡¢¥¯¥ê¥Ã¥Ô¥ó¥°¤Ë¤è¤ë±Æ¶Á¤ò¼õ¤±¤Ê¤¤¡£ ÅÀ¤¬¥¯¥ê¥Ã¥×¤µ¤ì¤¿Àþ¤Ë¤è¤Ã¤ÆÅɤé¤ì¤ë¤Î¤Ï°Ê²¼¤ÎÆó¤Ä¤Î¾ò·ï¤¬Ëþ¤¿¤µ¤ì¤Æ¤¤ ¤ë¾ì¹ç¤À¤±¤È¤Ê¤ë: (1)¤½¤ÎÅÀ¤¬¥¯¥ê¥Ã¥Ô¥ó¥°Îΰè¤ÎÆâÉô¤Ë¤¢¤ë¡£ (2)Àþ¤¬¥¯¥ê¥Ã¥×¤µ¤ì¤º¤ËÉÁ¤«¤ì¤¿¾ì¹ç¤Ë¡¢¤½¤ÎÅÀ¤ÏÅɤé¤ì¤ë¡£
cap-style ¤ä join-style ¤ò¹Íθ¤ËÆþ¤ì¤Ê¤±¤ì¤Ð¡¢[x1,y1] ¤«¤é [x2,y2] ¤Ë ÉÁ¤«¤ì¤ë wide line ¤È [x2,y2] ¤«¤é [x1,y1] ¤ËÉÁ¤«¤ì¤ë wide line ¤Ï¾ï¤Ë Ʊ¤¸¥Ô¥¯¥»¥ë¤òÉÁ²è¤¹¤ë¡£ ¤³¤ì¤Ï thin line ¤Ç¤âÀ®¤êΩ¤Ä¤³¤È¤¬Ë¾¤Þ¤·¤¤¤¬¡¢É¬¿Ü¤Ç¤Ï¤Ê¤¤¡£ line-width ¤¬ 0 ¤ÎÀþ¤È line-width ¤¬ 1 ¤ÎÀþ¤Î¾ì¹ç¤Ç¤Ï¡¢°Û¤Ê¤ë¥Ô¥¯¥»¥ë ¤¬ÉÁ²è¤µ¤ì¤Æ¤â¤è¤¤¡£ ¤³¤ì¤Ë¤è¤ê¡¢¥Ï¡¼¥É¥¦¥§¥¢¤ÇÄ󶡤µ¤ì¤ëÀþ¤ÎÉÁ²èµ¡Ç½¤¬ÍøÍѤǤ¡¢Àµ³Î¤Ë»ÅÍÍ ¤¬·è¤á¤é¤ì¤Æ¤¤¤ë wide line ¤è¤ê¤º¤Ã¤È®¤¯¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
°ìÈÌŪ¤Ë¤Ï¡¢thin line ¤ÎÉÁ²è¤ÏÉý¤¬1¤Î wide line ¤è¤ê¤âÉÁ²è¤¬¤º¤Ã¤È®¤¤¡£ ¤·¤«¤·¡¢°Û¤Ê¤ëÉÁ²è¥¢¥ë¥´¥ê¥º¥à¤ò»È¤¦¤¿¤á¡¢thin line ¤È wide line ¤òº® ºß¤µ¤»¤ë¤È¸«±É¤¨¤¬Îɤ¯¤Ê¤¤¤³¤È¤¬¤¢¤ë¡£ ¥Ç¥£¥¹¥×¥ì¥¤Á´ÂΤÇÀµ³Î¤«¤Ä¶Ñ°ì¤Ê·ë²Ì¤¬µá¤á¤é¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È ¤Ï line-width ¤ò 0 ¤Ç¤Ï¤Ê¤¯ 1 ¤È¤¹¤Ù¤¤Ç¤¢¤ë¡£
line-style ¤ÏÀþ¤Î¤É¤ÎÉôʬ¤¬ÉÁ²è¤µ¤ì¤ë¤«¤òÄêµÁ¤¹¤ë¡£
LineSolid | . Àþ¤ÎÁ´¤Æ¤Îµ°Àפ¬ÉÁ²è¤µ¤ì¤ë¡£ |
LineDoubleDash | . . . . . Àþ¤ÎÁ´¤Æ¤Îµ°Àפ¬ÉÁ²è¤µ¤ì¤ë¤¬¡¢¶ö¿ôÈÖÌܤΥÀ¥Ã¥·¥å(û¤¤Àþʬ)¤È´ñ¿ôÈÖÌܤΠ¥À¥Ã¥·¥å¤Ç¤Ï°Û¤Ê¤ë¿§¤ÇÅɤé¤ì¤ë¡£¤Þ¤¿¡¢¶ö¿ôÈÖÌܤȴñ¿ôÈÖÌܤΥÀ¥Ã¥·¥å¤Î·Ñ ¤®ÌÜ¤Ï CapButt ¥¹¥¿¥¤¥ë¤ÇÉÁ²è¤µ¤ì¤ë¡£ |
LineOnOffDash | . . . . . . . ¶ö¿ôÈÖÌܤΥÀ¥Ã¥·¥å¤À¤±¤¬ÉÁ²è¤µ¤ì¡¢Àþ¤ÎÆâÉô¤Ç¤Î³Æ¥À¥Ã¥·¥å¤ÎüÅÀ¤Ç¤Ï cap-style ¤¬Å¬ÍѤµ¤ì¤ë¡£¥¹¥¿¥¤¥ë¤Ï CapNotLast ¤ò½ü¤¤¤Æ¡¢ CapButt ¤È¤·¤Æ°·¤ï¤ì¤ë¡£ |
cap-style ¤Ïµ°ÀפÎüÅÀ¤¬¤É¤Î¤è¤¦¤ËÉÁ²è¤µ¤ì¤ë¤«ÄêµÁ¤¹¤ë¡£
CapNotLast | . . . ¤³¤ì¤Ï CapButt ¤È¤Û¤ÜƱ¤¸¤Ç¤¢¤ë¤¬¡¢line-width ¤¬ 0 ¤Î¾ì¹ç¤Ë¤ÏºÇ¸å¤ÎüÅÀ¤¬ÉÁ²è¤µ¤ì¤Ê ¤¤ÅÀ¤¬°Û¤Ê¤ë¡£ |
CapButt | . . Àþ¤ÏüÅÀ¤ÎÉôʬ¤Ç¡¢Ã¼ÅÀ¤ò±Û¤¨¤Ê¤¤»Í³Ñ·Á(Àþ¤Î¸ûÇۤ˿âľ)¤Ë¤Ê¤ë¡£ |
CapRound | . . Àþ¤ÎüÅÀ¤Ï¡¢Ä¾·Â¤¬ line-width ¤ËÅù¤·¤¯¤ÆüÅÀ¤¬Ãæ¿´¤Ç¤¢¤ëȾ±ß¤È¤Ê¤ë¡£ . . . (line-width ¤¬ 0 ¤Ê¤é¤Ð CapButt ¤ÈÅù²Á¤Ç¤¢¤ë¡£) |
CapProjecting | . . Àþ¤Ïü¤Ç»Í³Ñ·Á¤Ë¤Ê¤ë¤¬¡¢µ°ÀפÏüÅÀ¤ò±Û¤¨¤Æ¤â line-width ¤ÎȾʬ¤ÎŤµÊ¬Â³¤¯¡£ . . . (line-width ¤¬ 0 ¤Ê¤é¤Ð CapButt ¤ÈÅù²Á¤Ç¤¢¤ë¡£) |
join-style ¤Ï wide line ¤Î³Ñ¤¬¤É¤Î¤è¤¦¤ËÉÁ²è¤µ¤ì¤ë¤Î¤«¤òÄêµÁ¤¹¤ë¡£
JoinMiter | . 2¤Ä¤ÎÀþ¤Î³°Â¦¤ÎÊÕ¤¬³Ñ¤Ç¸ò¤ï¤ë¤Þ¤Ç¿¤Ð¤¹¡£ . . . . ¤·¤«¤·¡¢¸ò¤ï¤ë³ÑÅÙ¤¬11Åٰʲ¼¤Ê¤é¤Ð¡¢join-style JoinBevel ¤¬Âå¤ï¤ê¤Ë»È¤ï¤ì¤ë¡£ |
JoinRound | . . ³Ñ¤Ïľ·Â¤¬ line-width ¤Ç¤¢¤ê¡¢Ãæ¿´¤¬¸òÅÀ¤Ç¤¢¤ëÀð·Á¤È¤Ê¤ë¡£ |
JoinBevel | . . . ³Ñ¤Ë¤ª¤±¤ëÀþʬ¤ÎüÅÀ¤Î¥¹¥¿¥¤¥ë¤Ï CapButt ¤Ç¤¢¤ê¡¢¤µ¤é¤Ë¡¢»°³Ñ·Á¤ò¤Ê¤¹ÀÚ¤êÌܤÎÉôʬ¤òÅɤê¤Ä¤Ö¤·¤¿¤â¤Î¤Ç¤¢¤ë¡£ |
üÅÀ¤¬°ìÃפ¹¤ëÀþ(x1=x2, y1=y2)¤ËÂФ·¤Æ¡¢cap-style ¤¬Î¾Ã¼¤Ç»ØÄꤵ¤ì ¤ë¤È¡¢¤³¤Î°ÕÌ£¤Ï line-width ¤È cap-style ¤Ë¤è¤Ã¤Æ·è¤Þ¤ë¡£
CapNotLast | thin | . . ·ë²Ì¤Ï¥Ç¥Ð¥¤¥¹°Í¸¤Ç¤¢¤ë¤¬¡¢Ë¾¤Þ¤·¤¤·ë²Ì¤Ï²¿¤âÉÁ¤«¤ì¤Ê¤¤¤³¤È¤Ç¤¢¤ë¡£ |
CapButt | thin | . . ·ë²Ì¤Ï¥Ç¥Ð¥¤¥¹°Í¸¤Ç¤¢¤ë¤¬¡¢Ë¾¤Þ¤·¤¤·ë²Ì¤Ï¥Ô¥¯¥»¥ë¤¬1¤Ä¤À¤±ÉÁ¤«¤ì¤ë¤³¤È¤Ç ¤¢¤ë¡£ |
CapRound | thin | . . ·ë²Ì¤Ï CapButt/thin ¤Î¾ì¹ç¤ÈƱ¤¸¤Ç¤¢¤ë¡£ |
CapProjecting | thin | . . ·ë²Ì¤Ï CapButt/thin ¤Î¾ì¹ç¤ÈƱ¤¸¤Ç¤¢¤ë¡£ |
CapButt | wide | . ²¿¤âÉÁ¤«¤ì¤Ê¤¤¡£ |
CapRound | wide | . . ÊĤ¸¤¿·Á¤ÏüÅÀ¤¬Ãæ¿´¤Ç¡¢Ä¾·Â¤¬ line-width ¤ËÅù¤·¤¤±ß¤Ç¤¢¤ë¡£ |
CapProjecting | wide | . . ÊĤ¸¤¿·Á¤ÏºÂɸ¼´¤ËÊ¿¹Ô¤Ç¡¢Ã¼ÅÀ¤¬Ãæ¿´¤Ç¡¢ÊÕ¤ÎŤµ¤¬ line-width ¤È¤Ê¤ëÀµ Êý·Á¤Ç¤¢¤ë¡£ |
üÅÀ¤¬°ìÃפ¹¤ëÀþ(x1=x2, y1=y2)¤Ë¤Ä¤¤¤Æ¡¢join-style ¤¬ÊÒÊý¤¢¤ë¤¤¤ÏξÊý ¤ÎüÅÀ¤ËŬÍѤµ¤ì¤¿¾ì¹ç¡¢Àþ¤¬µ°À×Á´ÂΤ«¤é¼è¤ê½ü¤«¤ì¤¿¤è¤¦¤Ê¸ú²Ì¤¬ÆÀ¤é¤ì ¤ë¡£ ¤·¤«¤·¡¢Á´ÂΤε°Àפ¬¼«Ê¬¼«¿È¤ÈÀܳ¤·¤¿Ã±ÆȤÎÅÀ¤«¤é¹½À®¤µ¤ì¤ë¡¢¤¢¤ë¤¤¤Ï ¤½¤Î¤è¤¦¤ÊÅÀ¤Ë½Ì¾®¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢cap-style ¤òξÊý¤ÎüÅÀ¤ËŬÍѤ·¤¿¤è¤¦ ¤Ê¸ú²Ì¤¬ÆÀ¤é¤ì¤ë¡£
tile/stipple¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï̵¸Â¤Ë¹¤¤2¼¡¸µÊ¿Ì̤Ǥ¢¤ê¡¢¤½¤ÎÌ̾å¤Ç ¥¿¥¤¥ë/¥¹¥Æ¥£¥×¥ë¤¬·«¤êÊÖ¤µ¤ì¤ë¡£ ¤½¤ÎÊ¿Ì̤¬¥°¥é¥Õ¥£¥Ã¥¯¥¹Áàºî¤Î¤¿¤á¤Ë¥É¥í¥¦¥¢¥Ö¥ë¤Ë½Å¤Í¤é¤ì¤ë¾ì¹ç¡¢ ¥¿¥¤¥ë/¥¹¥Æ¥£¥×¥ë¤Î²¿¤é¤«¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Îº¸¾å¶ù¤Ï¡¢¥¿¥¤¥ë/¥¹¥Æ¥£¥×¥ë ¤Î¸¶ÅÀºÂɸ¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤¿¥É¥í¥¦¥¢¥Ö¥ëÆâ¤ÎºÂɸ¤ËÇÛÃÖ¤µ¤ì¤ë¡£ ¥¿¥¤¥ë/¥¹¥Æ¥£¥×¥ë¤È¥¯¥ê¥Ã¥×¤Î¸¶ÅÀ¤Ï¡¢¥°¥é¥Õ¥£¥Ã¥¯¥¹¥ê¥¯¥¨¥¹¥È¤Ç»ØÄꤵ ¤ì¤¿Ç¤°Õ¤ÎÉÁ²èÂÐ¾Ý¥É¥í¥¦¥¢¥Ö¥ë¤Î¸¶ÅÀ¤ËÂФ¹¤ëÁêÂкÂɸ¤È¤·¤Æ°·¤ï¤ì¤ë¡£ ¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥× tile ¤Ï GC ¤ÈƱ¤¸¥ë¡¼¥È¥¦¥£¥ó¥É¥¦¤ÈƱ¤¸¿¼¤µ¤ò»ý¤Ã¤Æ¤¤¤Ê ¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£¤½¤¦¤Ç¤Ê¤±¤ì¤Ð¡¢¥¨¥é¡¼ BadMatch ¤È¤Ê¤ë¡£ ¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥× stipple ¤Ï¿¼¤µ¤¬1¤Ç GC ¤ÈƱ¤¸¥ë¡¼¥È¥¦¥£¥ó¥É¥¦¤ò»ý¤¿¤Ê¤± ¤ì¤Ð¤Ê¤é¤Ê¤¤¡£¤½¤¦¤Ç¤Ê¤±¤ì¤Ð¡¢¥¨¥é¡¼ BadMatch ¤È¤Ê¤ë¡£ fill-style ¤¬ FillStippled ¤Ç¤¢¤ë¤¬ FillOpaqueStippled ¤Ç¤Ê¤¤¥¹¥Æ¥£¥×¥ëÁàºî¤ËÂФ·¤Æ¤Ï¡¢¥¹¥Æ¥£¥×¥ë¥Ñ¥¿¡¼¥ó¤Ï1¤Ä¤ÎÊ¿Ì̤òËä¤á¤ë ¤Î¤Ë»È¤ï¤ì¡¢clip-mask ¤È AND ±é»»¤µ¤ì¤ëÄɲ寥ê¥Ã¥×¥Þ¥¹¥¯¤È¤·¤ÆÍѤ¤¤é ¤ì¤ë¡£ ¥µ¥¤¥º¤Ë¤è¤Ã¤Æ¤Ï¾¤Î¥µ¥¤¥º¤Î¤â¤Î¤è¤ê¤â½èÍý¤¬Â®¤¤¤¬¡¢Ç¤°Õ¤Î¥µ¥¤¥º¤Î ¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥×¤ò¥¿¥¤¥ë¤ä¥¹¥Æ¥£¥×¥ë¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
fill-style ¤ÏÀþÉÁ²è¡¢¥Æ¥¥¹¥ÈÉÁ²è¡¢Åɤê¤Ä¤Ö¤·¤Î¥ê¥¯¥¨¥¹¥È¤ÎÁàºî¸µ¤ÎÆâÍƤò ÄêµÁ¤¹¤ë¡£ Á´¤Æ¤Î¥Æ¥¥¹¥ÈÉÁ²è¤ÈÅɤê¤Ä¤Ö¤·¤Î¥ê¥¯¥¨¥¹¥È (Î㤨¤Ð¡¢ XDrawText, XDrawText16, XFillRectangle, XFillPolygon, XFillArc )¤È¡¢ Á´¤Æ¤Î line-style »ØÄêÉÕ¤¤ÎÀþÉÁ²è¤Î¥ê¥¯¥¨¥¹¥È (Î㤨¤Ð XDrawLine, XDrawSegments, XDrawRectangle, XDrawArc) ¤È¡¢¤µ¤é¤Ë line-style ( LineOnOffDash, LineDoubleDash )¤ò»ØÄꤹ¤ëÀþÉÁ²è¥ê¥¯¥¨¥¹¥È¤Î¶ö¿ôÈÖÌܤΥÀ¥Ã¥·¥å¤ËÂФ·¤Æ¡¢°Ê²¼¤Î¹àÌܤ¬ ŬÍѤµ¤ì¤ë¡£
FillSolid | . Á°·Ê¿§ |
FillTiled | . ¥¿¥¤¥ë |
FillOpaqueStippled | . . . ¥¹¥Æ¥£¥×¥ë¤ÈƱ¤¸Éý¤È¹â¤µ¤ò»ý¤Ä¥¿¥¤¥ë¡£¤·¤«¤·¡¢Ç¤°Õ¤Î¾ì½ê¤ÇÇطʤΠ¥¹¥Æ¥£¥×¥ë¤Ï 0 ¤Ç¤¢¤ê¡¢Ç¤°Õ¤Î¾ì½ê¤ÇÁ°·Ê¤Î¥¹¥Æ¥£¥×¥ë¤Ï1¤Ç¤¢¤ë¡£ |
FillStippled | . ¥¹¥Æ¥£¥×¥ë¤Ç¥Þ¥¹¥¯¤µ¤ì¤¿Á°·Ê |
Àþ¤¬ line-style ÉÕ¤¤ÇÉÁ²è¤µ¤ì¤ë¤È¤¡¢´ñ¿ôÈÖÌܤΥÀ¥Ã¥·¥å¤Ï°Ê²¼¤ÎÊýË¡¤Ç fill-style ¤ËÀ©¸æ¤µ¤ì¤ë¡£
FillSolid | . ÇØ·Ê¿§ |
FillTiled | . ¶ö¿ôÈÖÌܤΥÀ¥Ã¥·¥å¤ÈƱ¤¸¡£ |
FillOpaqueStippled | . ¶ö¿ôÈÖÌܤΥÀ¥Ã¥·¥å¤ÈƱ¤¸¡£ |
FillStippled | . ¥¹¥Æ¥£¥×¥ë¤Ë¥Þ¥¹¥¯¤µ¤ì¤¿ÇØ·Ê¿§ |
GC ¤Ø¤Î¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥×¤Î³ÊǼ¤Ï¥³¥Ô¡¼¤¬¹Ô¤ï¤ì¤ë¾ì¹ç¤â¤¢¤ë¤·¡¢¤½¤¦¤Ç¤Ê¤¤ ¾ì¹ç¤â¤¢¤ë¡£ ¤³¤Î¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥×¤¬¸å¤Ç¥°¥é¥Õ¥£¥Ã¥¯¥¹¥ê¥¯¥¨¥¹¥È¤ÎÉÁ²èÂоݤȤʤë¾ì¹ç¤Ë ¤Ï¡¢¤½¤ÎÊѹ¹¤Ï GC ¤ËÈ¿±Ç¤µ¤ì¤ë¤³¤È¤âÈ¿±Ç¤µ¤ì¤Ê¤¤¤³¤È¤â¤¢¤ë¡£ ¥°¥é¥Õ¥£¥Ã¥¯¥¹¥ê¥¯¥¨¥¹¥È¤Ë¤ª¤¤¤Æ¡¢¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥×¤¬ÉÁ²èÂоݤȤ·¤Æ¤â¡¢¥¿¥¤¥ë¤¢ ¤ë¤¤¤Ï¥¹¥Æ¥£¥×¥ë¤È¤·¤Æ¤â»È¤ï¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤Î·ë²Ì¤Ï̤ÄêµÁ¤Ç¤¢¤ë¡£
Àǽ¤òºÇŬ²½¤¹¤ë¤¿¤á¤Ë¤Ï¡¢¤Ç¤¤ë¤À¤±Æ±¤¸GC(¥³¥ó¥Ý¡¼¥Í¥ó¥È¤âÊѹ¹¤·¤Ê¤¤) ¤ÇÉÁ²è¤ò¹Ô¤¦¤È¤è¤¤¡£ GC ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÊѹ¹¤¹¤ë¥³¥¹¥È¤Î¡¢°Û¤Ê¤ë GC ¤òÍѤ¤¤ë¾ì¹ç¤ËÂФ¹¤ëÈæ Ψ¤Ï¡¢¥Ç¥£¥¹¥×¥ì¥¤¤Î¥Ï¡¼¥É¥¦¥§¥¢¤ä¥µ¡¼¥Ð¤Î¼ÂÁõ¤Ë¤è¤Ã¤Æ·è¤Þ¤ë¡£ GC ¾ðÊó¤Î°ìÉô¤Ï¤ª¤½¤é¤¯¥Ç¥£¥¹¥×¥ì¥¤¤Î¥Ï¡¼¥É¥¦¥§¥¢¤Ë¥¥ã¥Ã¥·¥å¤µ¤ì¤ë¤À ¤í¤¦¡£¤ÈƱ»þ¤Ë¡¢¥¥ã¥Ã¥·¥å¤Ç¤¤ë GC ¤Î¿ô¤Ï¤½¤ì¤Û¤É¿¤¯¤Ï¤Ê¤¤¤À¤í¤¦¡£
dashes ÃÍ¤Ï¼ÂºÝ¤Ë¤Ï XSetDashes ¤ÇÀßÄê¤Ç¤¤ë¡¢¤è¤ê°ìÈÌŪ¤Ê¥Ñ¥¿¡¼¥ó¤ò´Êά²½¤·¤¿·Á¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£ ÃÍ N ¤ò»ØÄꤹ¤ë¤³¤È¤Ï¡¢ XSetDashes ¤Ë2¤Ä¤ÎÍ×ÁǤò»ý¤Ä¥ê¥¹¥È[N, N] ¤ò»ØÄꤹ¤ë¤³¤È¤ÈƱ¤¸¤Ç¤¢¤ë¡£ ¤³¤ÎÃÍ¤Ï 0 °Ê³°¤ÎÃͤǤʤ¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£0 ¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¥¨¥é¡¼ BadValue ¤È¤Ê¤ë¡£
clip-mask ¤ÏÉÁ²èÂÐ¾Ý¤Î¥É¥í¥¦¥¢¥Ö¥ë¤Ø¤Î½ñ¤¹þ¤ß¤òÀ©¸Â¤¹¤ë¡£ clip-mask ¤Ë¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥×¤¬ÀßÄꤵ¤ì¤¿¾ì¹ç¡¢¤³¤Î¥Ô¥Ã¥¯¥¹¥Þ¥Ã¥×¤Ï¿¼¤µ ¤¬ 1 ¤Ç¤¢¤ê¡¢GC ¤ÈƱ¤¸¥ë¡¼¥È¥¦¥£¥ó¥É¥¦¤ò»ý¤¿¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£¤½¤¦¤Ç¤Ê ¤¤¾ì¹ç¤Ë¤Ï¥¨¥é¡¼ BadMatch ¤È¤Ê¤ë¡£ clip-mask ¤Ë None ¤¬ÀßÄꤵ¤ì¤¿¾ì¹ç¡¢¥¯¥ê¥Ã¥×¤Î¸¶ÅÀ¤Ë¤«¤«¤ï¤é¤º¥Ô¥¯¥»¥ë¤Ïɬ¤ºÉÁ²è¤µ¤ì¤ë¡£ clip-mask ¤Ï´Ø¿ô XSetClipRectangles ¤ä XSetRegion ¤ò¸Æ¤Ó½Ð¤·¤Æ¤âÀßÄê¤Ç¤¤ë¡£ clip-mask ¤Î¥Ó¥Ã¥È¤¬1¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¥Ô¥¯¥»¥ë¤À¤±¤¬ÉÁ²è¤µ¤ì¤ë¡£ clip-mask ¤¬¥«¥Ð¡¼¤·¤Æ¤¤¤ëÎΰè¤Î³°Â¦¤ä¡¢clip-mask ¤Î¥Ó¥Ã¥È¤¬0¤ËÀßÄê ¤µ¤ì¤Æ¤¤¤ëÎΰè¤Ç¤Ï¡¢¥Ô¥¯¥»¥ë¤ÏÉÁ²è¤µ¤ì¤Ê¤¤¡£ clip-mask ¤ÏÁ´¤Æ¤Î¥°¥é¥Õ¥£¥Ã¥¯¥¹¥ê¥¯¥¨¥¹¥È¤Ë±Æ¶Á¤òÍ¿¤¨¤ë¡£ clip-mask ¤ÏÉÁ²è¸µ¤Ï¥¯¥ê¥Ã¥×¤·¤Ê¤¤¡£ clip-mask ¤Î¸¶ÅÀ¤Ï¡¢¥°¥é¥Õ¥£¥Ã¥¯¥¹¥ê¥¯¥¨¥¹¥È¤Ç»ØÄꤵ¤ì¤¿Ç¤°Õ¤ÎÉÁ²èÂÐ¾Ý ¥É¥í¥¦¥¢¥Ö¥ë¤ËÂФ¹¤ëÁêÂкÂɸ¤ÇÍ¿¤¨¤é¤ì¤ë¡£
subwindow-mode ¤Ë¤Ï ClipByChildren ¤« IncludeInferiors ¤òÀßÄê¤Ç¤¤ë¡£ ClipByChildren ¤Î¾ì¹ç¤Ï¡¢ÉÁ²è¸µ¤Î¥¦¥£¥ó¥É¥¦¤âÉÁ²èÀè¤Î¥¦¥£¥ó¥É¥¦¤â¡¢É½¼¨²Äǽ¤Ê InputOutput ¤Ç¤¢¤ë»Ò¥¦¥£¥ó¥É¥¦Á´¤Æ¤Ë¤è¤Ã¤ÆÄɲÃŪ¤Ë¥¯¥ê¥Ã¥×¤µ¤ì¤ë¡£ IncludeInferiors ¤Î¾ì¹ç¤Ï¡¢ÉÁ²è¸µ¡¢ÉÁ²èÀ褤¤º¤ì¤Î¥¦¥£¥ó¥É¥¦¤ËÂФ·¤Æ¤â²¼°Ì¥¦¥£¥ó¥É¥¦¤Ë¤è ¤ë¥¯¥ê¥Ã¥×¤Ï¤Ê¤µ¤ì¤Ê¤¤¡£ ¤Ä¤Þ¤êÉÁ²è¸µ¤Î¥µ¥Ö¥¦¥£¥ó¥É¥¦¤ÎÆâÍƤ¬´Þ¤Þ¤ì¡¢ÉÁ²èÀè¤Î¥µ¥Ö¥¦¥£¥ó¥É¥¦¶³¦ ¤òÄ̤êÈ´¤±¤¿ÉÁ²è¤¬¹Ô¤ï¤ì¤ë¤³¤È¤Ë¤Ê¤ë¡£ IncludeInferiors ¤ò¡¢¤¢¤ë¿¼¤µ¤ò»ý¤Á¡¢°Û¤Ê¤ë¿¼¤µ¤Î²¼°Ì¥¦¥£¥ó¥É¥¦¤ò¥Þ¥Ã¥×¤·¤Æ¤¤¤ë¤è¤¦¤Ê¥¦¥£ ¥ó¥É¥¦¤Ç»È¤Ã¤Æ¤âÉÔÀµ¤Ç¤Ï¤Ê¤¤¤¬¡¢¤½¤Î°ÕÌ£¤Ï¥³¥¢¥×¥í¥È¥³¥ë¤Ç¤ÏÄêµÁ¤µ¤ì¤Æ ¤¤¤Ê¤¤¡£
fill-rule ¤Ï ¤É¤Î¥Ô¥¯¥»¥ë¤¬ XFillPolygon ¥ê¥¯¥¨¥¹¥È¤ÇÍ¿¤¨¤é¤ì¤¿µ°ÀפÎÆ⦤Ǥ¢¤ë(ÉÁ²è¤µ¤ì¤ë)¤«ÄêµÁ¤¹¤ë¡£¤³¤ÎÃÍ¤Ï EvenOddRule ¤« WindingRule ¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ë¡£ EvenOddRule ¤Î¾ì¹ç¤Ï¡¢¤¢¤ëÅÀ¤«¤é̵¸Â±ó¤Ø¤ÎľÀþ¤¬µ°Àפȴñ¿ô²ó¸ò¤ï¤ë¾ì¹ç¤Ë¡¢¤½¤ÎÅÀ¤ò ¿Þ·Á¤ÎÆ⦤Ȥߤʤ¹¡£ WindingRule ¤Î¾ì¹ç¤Ï¡¢¤¢¤ëÅÀ¤«¤é̵¸Â±ó¤Ø¤ÎľÀþ¤ò¹Í¤¨¤¿¤È¤¡¢¤³¤ì¤¬¿Þ·Á¤Ë°¤¹¤ë»þ·× ¼þ¤êÊý¸þ¤ÎÀþʬ¤Ë¸ò¤ï¤ë²ó¿ô¤È¡¢È¿»þ·×¼þ¤êÊý¸þ¤ÎÀþʬ¤Ë¸ò¤ï¤ë²ó¿ô¤È¤¬°Û¤Ê¤Ã ¤Æ¤¤¤ì¤Ð¡¢¤½¤ÎÅÀ¤ò¿Þ·Á¤ÎÆ⦤Ȥߤʤ¹¡£ »þ·×¼þ¤êÊý¸þ¤Î¿Þ·Á¤ÎÀþʬ¤È¤Ï¡¢ÅÀ¤«¤é¸«¤¿¾ì¹ç¤ËľÀþ¤òº¸¤«¤é±¦¤Ë²£ÀÚ¤ëÀþ ʬ¤Î¤³¤È¤Ç¤¢¤ë¡£ È¿»þ·×¼þ¤êÊý¸þ¤Î¿Þ·Á¤ÎÀþʬ¤È¤Ï¡¢ÅÀ¤«¤é¸«¤¿¾ì¹ç¤ËľÀþ¤ò±¦¤«¤éº¸¤Ë²£ÀÚ¤ë Àþʬ¤Î¤³¤È¤Ç¤¢¤ë¡£ Êý¸þÉÕ¤¤ÎÀþʬ¤¬Ä¾Àþ¤È°ìÃפ¹¤ë¾ì¹ç¤Ï¹Í¤¨¤Ê¤¯¤Æ¤â¤è¤¤¡£¤³¤Î¾ì¹ç¤Ï¡¢Ã±¤Ë Àþʬ¤È°ìÃפ·¤Ê¤¤Ê̤ÎľÀþ¤òÁª¤Ù¤Ð¤è¤¤¤«¤é¤Ç¤¢¤ë¡£
EvenOddRule, WindingRule ¤¤¤º¤ì¤Î¾ì¹ç¤â¡¢ÅÀ¤ÎÂ礤µ¤Ï̵¸Â¾®¤Ç¡¢¿Þ·Á¤Îµ°ÀפÏ̵¸Â¤ËºÙ¤¤¡£ ¤¢¤ë¥Ô¥¯¥»¥ë¤ÎÃæ¿´ÅÀ¤¬¿Þ·Á¤ÎÆ⦤ˤ¢¤ê¡¢Ãæ¿´ÅÀ¤¬¶³¦Àþ¾å¤Ë¤Ê¤¤¾ì¹ç¡¢¤½ ¤Î¥Ô¥¯¥»¥ë¤Ï¿Þ·Á¤ÎÆ⦤Ǥ¢¤ë¡£ ¥Ô¥¯¥»¥ë¤ÎÃæ¿´ÅÀ¤¬¶³¦Àþ¾å¤Ë¤¢¤ë¾ì¹ç¡¢Â¿³Ñ·Á¤ÎÆâÉô¤¬¤³¤ÎÅÀ¤Î¤¹¤°±¦(x ºÂɸ¤¬Áý²Ã¤¹¤ëÊý¸þ)¤Ë¤¢¤ë¾ì¹ç¤Ë¸Â¤ê¡¢¤½¤Î¥Ô¥¯¥»¥ë¤Ï¿Þ·Á¤ÎÆ⦤Ǥ¢¤ë¡£ Ãæ¿´¤¬¿åÊ¿¤ÊÊդξå¤Ë¤¢¤ë¥Ô¥¯¥»¥ë¤ÏÆÃÊ̤ʥ±¡¼¥¹¤Ç¤¢¤ê¡¢Â¿³Ñ·Á¤ÎÆâÉô¤¬¤³ ¤ÎÅÀ¤Î¤¹¤°²¼(yºÂɸ¤¬Áý²Ã¤¹¤ëÊý¸þ)¤Ë¤¢¤ë¾ì¹ç¤Ë¸Â¤ê¡¢¤½¤Î¥Ô¥¯¥»¥ë¤Ï¿Þ·Á ¤ÎÆ⦤Ǥ¢¤ë¡£
arc-mode ¤Ï XFillArcs ¤ÎÅɤê¤Ä¤Ö¤·¤òÀ©¸æ¤¹¤ë¡£¤³¤ÎÃÍ¤Ï ArcPieSlice, ArcChord ¤Î¤¤¤º¤ì¤«¤ËÀßÄꤵ¤ì¤ë¡£ ArcPieSlice ¤Î¾ì¹ç¤Ï¡¢±ß¸Ì¤Ï¥Ñ¥¤¤òÀڤä¿·Á¤ËÅɤê¤Ä¤Ö¤µ¤ì¤ë¡£ ArcChord ¤Î¾ì¹ç¤Ë¤Ï¡¢¸Ì¤È¸¹¤Ë°Ï¤Þ¤ì¤ëÎΰ褬Åɤê¤Ä¤Ö¤µ¤ì¤ë¡£
graphics-exposure ¥Õ¥é¥°¤Ï ¥ê¥¯¥¨¥¹¥È(¤ª¤è¤Ó³ÈÄ¥¤ÇÄêµÁ¤µ¤ì¤ëƱÍͤΥꥯ¥¨¥¹¥È)¤ËÂФ·¤Æ¤Î GraphicsExpose ¥¤¥Ù¥ó¥È¤ÎÀ¸À®¤òÀ©¸æ¤¹¤ë¡£
ÊÖ¤êÃͶ
- BadAlloc
- Í׵ᤵ¤ì¤¿¥ê¥½¡¼¥¹¤ä¥µ¡¼¥Ð¥á¥â¥ê¤Î³ä¤êÅö¤Æ¤Ë¥µ¡¼¥Ð¤¬¼ºÇÔ¤·¤¿¡£
- BadDrawable
- °ú¤¿ô Drawable ¤ÎÃͤ¬¡¢ÄêµÁ¤µ¤ì¤Æ¤¤¤ë Window ¤ä Pixmap ¤ò»Ø¤·¤Æ¤¤¤Ê¤¤¡£
- BadFont
- °ú¤¿ô Font ¤ä GContext ¤ÎÃͤ¬¡¢ÄêµÁ¤µ¤ì¤Æ¤¤¤ë Font ¤ò»Ø¤·¤Æ¤¤¤Ê¤¤¡£
- BadGC
- °ú¤¿ô GContext ¤ÎÃͤ¬¡¢ÄêµÁ¤µ¤ì¤Æ¤¤¤ë GContext ¤ò»Ø¤·¤Æ¤¤¤Ê¤¤¡£
- BadMatch
- InputOnly ¤Î¥¦¥£¥ó¥É¥¦¤¬ Drawable ¤È¤·¤ÆÍѤ¤¤é¤ì¤¿¡£
- BadMatch
- °ú¤¿ô¤ä°ú¤¿ô¤ÎÁȤÏÀµ¤·¤¤·¿¤äÈϰϤò»ý¤Ã¤Æ¤¤¤ë¤¬¡¢¤½¤Î¥ê¥¯¥¨¥¹¥È¤¬Í׵᤹¤ë ¾¤Î¾ò·ï¤ËŬ¹ç¤Ç¤¤Ê¤«¤Ã¤¿¡£
- BadPixmap
- °ú¤¿ô Pixmap ¤ÎÃͤ¬¡¢ÄêµÁ¤µ¤ì¤Æ¤¤¤ë Pixmap ¤ò»Ø¤·¤Æ¤¤¤Ê¤¤¡£
- BadValue
- »ØÄꤵ¤ì¤¿¿ôÃͤÎÃæ¤Ë¥ê¥¯¥¨¥¹¥È¤ÎµöÍÆÈϰϤòĶ¤¨¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ë¡£°ú¤¿ô¤ËÂÐ ¤·¤ÆÆÃÄê¤ÎÈϰϤ¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢°ú¤¿ô¤Î·¿¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ëÁ´¤Æ¤ÎÈÏ °Ï¤¬µö¤µ¤ì¤ë¡£ÁªÂò»è¤È¤·¤ÆÄêµÁ¤µ¤ì¤Æ¤¤¤ë°ú¤¿ô¤Ï¤³¤Î¥¨¥é¡¼¤òµ¯¤³¤¹¤³¤È¤¬ ¤¢¤ë¡£
´ØÏ¢¹àÌܶ
AllPlanes(3X11), XCopyArea(3X11), XCreateRegion(3X11),
XDrawArc(3X11), XDrawLine(3X11), XDrawRectangle(3X11), XDrawText(3X11),
XFillRectangle(3X11), XQueryBestSize(3X11), XSetArcMode(3X11),
XSetClipOrigin(3X11), XSetFillStyle(3X11), XSetFont(3X11),
XSetLineAttributes(3X11), XSetState(3X11), XSetTile(3X11)
Xlib - C Language X Interface