XIntersectRegion(3) XLIB FUNCTIONS XIntersectRegion(3)

# [NAME](#NAME)

XIntersectRegion, XUnionRegion, XUnionRectWithRegion, XSubtractRegion, XXorRegion, XOffsetRegion, XShrinkRegion - region arithmetic

# [SYNTAX](#SYNTAX)

int XIntersectRegion(Region *sra*, Region *srb*, Region *dr\_return*);

int XUnionRegion(Region *sra*, Region *srb*, Region *dr\_return*);

int XUnionRectWithRegion(XRectangle \**rectangle*, Region *src\_region*, Region *dest\_region\_return*);

int XSubtractRegion(Region *sra*, Region *srb*, Region *dr\_return*);

int XXorRegion(Region *sra*, Region *srb*, Region *dr\_return*);

int XOffsetRegion(Region *r*, int *dx*, int *dy*);

int XShrinkRegion(Region *r*, int *dx*, int *dy*);

# [ARGUMENTS](#ARGUMENTS)

[*dest\_region\_return*](#dest_region_return)

Returns the destination region.

[*dr\_return*](#dr_return)

Returns the result of the computation.

[*dx*](#dx)

[*dy*](#dy)

Specify the x and y coordinates, which define the amount you want to move or shrink the specified region.

[*r*](#r)

Specifies the region.

[*rectangle*](#rectangle)

Specifies the rectangle.

[*sra*](#sra)

[*srb*](#srb)

Specify the two regions with which you want to perform the computation.

[*src\_region*](#src_region)

Specifies the source region to be used.

# [DESCRIPTION](#DESCRIPTION)

The **XIntersectRegion** function computes the intersection of two regions.

The **XUnionRegion** function computes the union of two regions.

The **XUnionRectWithRegion** function updates the destination region from a union of the specified rectangle and the specified source region.

The **XSubtractRegion** function subtracts srb from sra and stores the results in dr\_return.

The **XXorRegion** function calculates the difference between the union and intersection of two regions.

The **XOffsetRegion** function moves the specified region by a specified amount.

The **XShrinkRegion** function reduces the specified region by a specified amount. Positive values shrink the size of the region, and negative values expand the region.

# [SEE ALSO](#SEE_ALSO)

[**XCreateRegion**(3)](/man/os/libx11/XCreateRegion.3), [**XDrawRectangle**(3)](/man/os/libx11/XDrawRectangle.3), [**XEmptyRegion**(3)](/man/os/libx11/XEmptyRegion.3)  
*Xlib - C Language X Interface*

libX11 1.8.14 X Version 11

---

Document: XSubtractRegion(3) from libx11 1.8.14-r1 (Chainguard OS)
Source: https://gitlab.freedesktop.org/xorg/lib/libx11.git
