# ClipSubRegion

## Types

uint32_t | `Operation`
uint32_t | `Space`

## Fields

| `Keep`
| `Remove`
| `World`
| `Window`
`PolyPolygonKeys` | `polypolygons`
MatrixKey | `matrix`
`Operation` | `operation`
`Space` | `space`

## Functions

| `ClipSubRegion`
| `ClipSubRegion`
bool | `operator==`
bool | `operator!=`

## Detailed Description

class ClipSubRegion

  The ClipSubRegion class is used to define a ClipRegionKey.

  Public Types

  enum Operation

    Values:

    enumerator Keep

      The geometry inside the clip region is drawn. Everything outside of it is clipped.

    enumerator Remove

      The geometry outside the clip region is drawn. Everything inside of it is clipped.

  enum Space

    Values:

    enumerator World

      The clip region is specified in world coordinates.

    enumerator Window

      The clip region is specified in window coordinates. -1 to 1.

  Public Functions

  inline ClipSubRegion()
  inline ClipSubRegion(MatrixKey matrix, Operation operation, Space space)
  inline bool operator==(ClipSubRegion const &that) const
  inline bool operator!=(ClipSubRegion const &that) const

  Public Members

  PolyPolygonKeys polypolygons

    The polypolygons that define this ClipSubRegion.

  MatrixKey matrix

    The transformation matrix for this ClipSubRegion (optional).

  Operation operation

    The ClipSubRegion::Operation to use; defaults to Keep.

  Space space

    The ClipSubRegion::Space coordinate type to use for defining this ClipSubRegion; defaults to World space.