/************************************************************************ * This file has been generated automatically from * * * * src/core/qgsclipper.h * * * * Do not edit manually ! Edit header and run scripts/sipify.py again * ************************************************************************/ %Feature ARM // Some parts are not available in sip bindings on ARM because of qreal double vs. float issues class QgsClipper { %Docstring(signature="appended") A class to trim lines and polygons to within a rectangular region. The functions in this class are likely to be called from within a render loop and hence need to as CPU efficient as possible. The main purpose of the functions in this class are to trim lines and polygons to lie within a rectangular region. This is necessary for drawing items to an X11 display which have a limit on the magnitude of the screen coordinates (+/- 32768, i.e. 16 bit integer). %End %TypeHeaderCode #include "qgsclipper.h" %End public: static const double MAX_X; static const double MIN_X; static const double MAX_Y; static const double MIN_Y; enum Boundary { XMax, XMin, YMax, YMin, ZMax, ZMin, }; static void trimFeature( QVector &x, QVector &y, bool shapeOpen ); %Docstring Trims the given feature to a rectangular box. Returns the trimmed feature in x and y. The shapeOpen parameter determines whether the function treats the points as a closed shape (polygon), or as an open shape (linestring). .. note:: not available in Python bindings on android %End static void trimPolygon( QPolygonF &pts, const QgsRectangle &clipRect ); %Docstring Trims the given polygon to a rectangular box, by modifying the given polygon in place. :param pts: polygon as 2D coordinates :param clipRect: clipping rectangle %End static QPolygonF clippedLine( const QgsCurve &curve, const QgsRectangle &clipExtent ); %Docstring Takes a linestring and clips it to clipExtent :param curve: the linestring :param clipExtent: clipping bounds :return: clipped line coordinates %End static QPolygonF clippedLine( const QPolygonF &curve, const QgsRectangle &clipExtent ); %Docstring Takes a 2D ``curve`` and clips it to clipExtent. :param curve: the linestring :param clipExtent: clipping bounds :return: clipped line coordinates .. versionadded:: 3.16 %End static bool clipLineSegment( double left, double right, double bottom, double top, double &x0 /In,Out/, double &y0 /In,Out/, double &x1 /In,Out/, double &y1 /In,Out/ ); %Docstring Clips a line segment to a rectangle. An implementation of the 'Fast clipping' algorithm (Sobkow et al. 1987, Computers & Graphics Vol.11, 4, p.459-467). :param left: x-coordinate of left side of rectangle :param right: x-coordinate of right side of rectangle :param bottom: y-coordinate of bottom side of rectangle :param top: y-coordinate of top side of rectangle :param x0: x-coordinate of start of line :param y0: y-coordinate of start of line :param x1: x-coordinate of end of line :param y1: y-coordinate of end of line :return: ``True`` if line was clipped. .. versionadded:: 3.26 %End }; /************************************************************************ * This file has been generated automatically from * * * * src/core/qgsclipper.h * * * * Do not edit manually ! Edit header and run scripts/sipify.py again * ************************************************************************/