XDrawRectangle(3X11)

名前
XDrawRectangle, XDrawRectangles, XRectangle - 長方形の描画と、長方形を表す構造体

書式
XDrawRectangle(display, d, gc, x, y, width, height)
      Display *display;
      Drawable d;
      GC gc;
      int x, y;
      unsigned int width, height;

XDrawRectangles(display, d, gc, rectangles, nrectangles)
      Display *display;
      Drawable d;
      GC gc;
      XRectangle rectangles[];
      int nrectangles;

引き数

d   ドロウアブル(drawable)を指定。

display
    X サーバへの接続を指定。

gc  GC を指定。

nrectangles
    配列内の長方形の数を指定。

rectangles
    長方形の配列を指定。

width

height
    長方形のディメンジョンを決める幅と高さを指定。

x

y   長方形の左上隅の位置を決める座標を指定。

説明
関数 と は、各長方形に対し、次に示す5点を使った プロトコルが指定されたかのように、長方形の輪郭(1つあるいは複数)を描画 する。

    [x,y] [x+width,y] [x+width,y+height] [x,y+height] [x,y]

これらの関数は、指定した1つあるいは複数の長方形に対して、1つのピクセル を1度しか描画しない。 は、配列中の順序通りに長方形を描画する。 長方形が交わっている場合、重なっている部分のピクセルは複数回描画される。

いずれの関数も以下の GC コンポーネントを使用する。 function, plane-mask, line-width, line-style, cap-style, join-style, fill-style, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. They also use these GC mode-dependent components: foreground, background, tile, stipple, tile-stipple-x-origin, tile-stipple-y-origin, dash-offset, dash-list.

と はエラー を起こすことがある。

構造体
構造体の内容を示す。

typedef struct {
    short x, y;
    unsigned short width, height; } XRectangle;

全ての x, y メンバは符号付き整数である。 width, height メンバは16ビットの符号無し整数である。 プロトコルではこれらの値は16ビットのフィールドしか持たないので、16ビッ トの範囲を越える座標やサイズを生成しないよう注意しなければならない。

返り値

引き数 Drawable の値が、定義されている Window や Pixmap を指していない。

引き数 GContext の値が、定義されている GContext を指していない。

のウィンドウがドロウアブルとして指定された。

引き数や引き数の組は正しい型・範囲を持っているが、そのリクエストが要求する
    他の条件に適合できなかった。

関連項目
XDrawArc(3X11), XDrawLine(3X11), XDrawPoint(3X11)
Xlib - C Language X Interface