XUnionRegion(sra, srb, dr_return) 
      Region sra, srb, dr_return;
 
XUnionRectWithRegion(rectangle, src_region, dest_region_return) 
     XRectangle *rectangle;
 
     Region src_region;
 
     Region dest_region_return;
 
XSubtractRegion(sra, srb, dr_return) 
      Region sra, srb, dr_return;
 
XXorRegion(sra, srb, dr_return) 
      Region sra, srb, dr_return;
 
XOffsetRegion(r, dx, dy) 
      Region r;
 
      int dx, dy;
 
XShrinkRegion(r, dx, dy) 
      Region r;
 
      int dx, dy;
 
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.