Crystal Space: csBoxClipper Class Reference (Crystal Space Public API Reference)

| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# csBoxClipper Class Reference
[Geometry utilities]

The csBoxClipper class is able to clip convex polygons to a rectangle (such as the screen). More...

`#include <csgeom/polyclip.h>`

Inheritance diagram for csBoxClipper:

[legend]
List of all members.

## Public Member Functions
virtual int | ClassifyBox (const csBox2 &box)
| Classify some bounding box against this clipper.
virtual uint8 | Clip (csVector2 *InPolygon, size_t InCount, csVector2 *OutPolygon, size_t &OutCount, csVertexStatus *OutStatus)
| Clip and return additional information about each vertex.
virtual uint8 | Clip (csVector2 *InPolygon, size_t InCount, csVector2 *OutPolygon, size_t &OutCount, csBox2 &BoundingBox)
| Clip and compute the bounding box.
virtual uint8 | Clip (csVector2 *InPolygon, size_t InCount, csVector2 *OutPolygon, size_t &OutCount)
| Simple clipping.
| csBoxClipper (float x1, float y1, float x2, float y2)
| Initializes the clipper object to a rectangle with the given coords.
| csBoxClipper (const csBox2 &b)
| Initializes the clipper object to the given bounding region.
virtual ClipperType | GetClipperType () const
| Retrieve the type of this clipper.
virtual csVector2 * | GetClipPoly ()
| Return a pointer to the array of csVector2's.
virtual size_t | GetVertexCount ()
| Return number of vertices for this clipper polygon.
virtual bool | IsInside (const csVector2 &v)
| Return true if given point is inside (or on bound) of clipper polygon.

## Detailed Description

The csBoxClipper class is able to clip convex polygons to a rectangle (such as the screen).

Definition at line 78 of file polyclip.h.

## Constructor & Destructor Documentation

csBoxClipper::csBoxClipper | ( | const csBox2 & | b | ) | `[inline]`

Initializes the clipper object to the given bounding region.

Definition at line 96 of file polyclip.h.

csBoxClipper::csBoxClipper | ( | float | x1,
|  | float | y1,
|  | float | x2,
|  | float | y2 |
| ) |  |  | `[inline]`

Initializes the clipper object to a rectangle with the given coords.

Definition at line 99 of file polyclip.h.

## Member Function Documentation

virtual int csBoxClipper::ClassifyBox | ( | const csBox2 & | box | ) | `[virtual]`

Classify some bounding box against this clipper.

Implements iClipper2D.

virtual uint8 csBoxClipper::Clip | ( | csVector2 * | InPolygon,
|  | size_t | InCount,
|  | csVector2 * | OutPolygon,
|  | size_t & | OutCount,
|  | csVertexStatus * | OutStatus |
| ) |  |  | `[virtual]`

Clip and return additional information about each vertex.

Implements iClipper2D.

virtual uint8 csBoxClipper::Clip | ( | csVector2 * | InPolygon,
|  | size_t | InCount,
|  | csVector2 * | OutPolygon,
|  | size_t & | OutCount,
|  | csBox2 & | BoundingBox |
| ) |  |  | `[virtual]`

Clip and compute the bounding box.

Implements iClipper2D.

virtual uint8 csBoxClipper::Clip | ( | csVector2 * | InPolygon,
|  | size_t | InCount,
|  | csVector2 * | OutPolygon,
|  | size_t & | OutCount |
| ) |  |  | `[virtual]`

Simple clipping.

Implements iClipper2D.

virtual ClipperType csBoxClipper::GetClipperType | ( |  | ) | const`[inline, virtual]`

Retrieve the type of this clipper.

Implements iClipper2D.

Definition at line 129 of file polyclip.h.

virtual csVector2* csBoxClipper::GetClipPoly | ( |  | ) | `[inline, virtual]`

Return a pointer to the array of csVector2's.

Implements iClipper2D.

Definition at line 126 of file polyclip.h.

virtual size_t csBoxClipper::GetVertexCount | ( |  | ) | `[inline, virtual]`

Return number of vertices for this clipper polygon.

Implements iClipper2D.

Definition at line 122 of file polyclip.h.

virtual bool csBoxClipper::IsInside | ( | const csVector2 & | v | ) | `[inline, virtual]`

Return true if given point is inside (or on bound) of clipper polygon.

Implements iClipper2D.

Definition at line 118 of file polyclip.h.

References csVector2::x, and csVector2::y.

The documentation for this class was generated from the following file:

- csgeom/polyclip.h