XSetClipOrigin(3X11)

名前
XSetClipOrigin, XSetClipMask, XSetClipRectangles - GC 簡易関数

書式
XSetClipOrigin(display, gc, clip_x_origin, clip_y_origin)
      Display *display;
      GC gc;
      int clip_x_origin, clip_y_origin;

XSetClipMask(display, gc, pixmap)
      Display *display;
      GC gc;
      Pixmap pixmap;

XSetClipRectangles(display, gc, clip_x_origin, clip_y_origin, rectangles, n, ordering)
      Display *display;
      GC gc;
      int clip_x_origin, clip_y_origin;
      XRectangle rectangles[];
      int n;
      int ordering;

引き数

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

clip_x_origin

clip_y_origin
    クリップマスク原点の x, y 座標を指定。

gc  GC を指定。

n   長方形の数を指定。

ordering
    長方形の順序の関係を指定。 のいずれかを指定する。

pixmap
    ピックスマップか を指定する。

rectangles
    クリップマスクを指定する長方形の配列を指定。

説明
関数 は指定した GC にクリップの原点を指定する。 クリップマスクの原点はグラフィックスリクエストで指定された描画対象のド ロウアブルに対する相対座標として解釈される。

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

関数 は、指定したGC のクリップマスクを指定したピックスマップにセットする。 クリップマスクに がセットされている場合、ピクセルは常に描画される(クリップの頂点には無 関係である)。

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

関数 は指定した GC のクリップマスクを指定した長方形のリストに変更し、クリッ プの原点をセットする。 出力はリスト中の長方形に含まれる部分にクリップされる。 クリップの原点はグラフィックスリクエストで指定される任意の描画対象ドロ ウアブルの原点に対する相対座標として解釈される。 長方形の座標はクリップの原点に対する相対座標として解釈される。 長方形は干渉してはならない。そうでなければ、グラフィックスリクエストの 結果は未定義である。 長方形のリストは空でも良いが、この場合は実際には出力が無効になる。 これは のクリップマスクでは、 を指定することと反対の意味である。

クライアントが分かっていれば、長方形の順序関係は引き数 ordering で指定す ることができる。 これにより、サーバによる操作が速くなることがある。 間違った順序を指定した場合、X サーバはエラー を起こすこともあるが、サーバの実装としてエラーを起こすことが必要なわけ ではない。 エラーが起きなかった場合、グラフィックス操作の結果は未定義である。 は長方形の順序が任意であることを示す。 は長方形の順序は、長方形の原点の Y 座標について昇順(同一Y座標も許す)で あることを示す。 は の順序に加え、原点のY座標が同じ長方形は全て原点のX座標について昇順(同 一X座標も許す)に並ぶ制約を追加したものである。 は に次の制約を加えたものである。 その制約とは、全ての可能なYスキャンラインに対して、そのスキャンライン を含む長方形全ては同じY座標とY方向の大きさを持つことである。

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

返り値

サーバが、要求されたリソースやサーバメモリのアロケートに失敗した。

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

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

指定された数値に、リクエストの許容範囲を越えているものがある。引き数に対
    して特定の範囲が指定されていなければ、引き数の型で定義されている全ての範 囲が許される。選択肢として定義されている引き数はこのエラーを起こすことが ある。

関連項目
XCreateGC(3X11), XDrawRectangle(3X11), XQueryBestSize(3X11), XSetArcMode(3X11), XSetFillStyle(3X11), XSetFont(3X11), XSetLineAttributes(3X11), XSetState(3X11), XSetTile(3X11)
Xlib - C Language X Interface