LibreOffice
LibreOffice 24.2 SDK API Reference
|
This is a specialized interface for a 2D poly-polygon containing straight line and Bezier segments. More...
import"XBezierPolyPolygon2D.idl";
Public Member Functions | |
sequence< sequence< ::com::sun::star::geometry::RealBezierSegment2D > > | getBezierSegments ([in] long nPolygonIndex, [in] long nNumberOfPolygons, [in] long nPointIndex, [in] long nNumberOfPoints) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Query subset of this poly-polygon. More... | |
void | setBezierSegments ([in] sequence< sequence< ::com::sun::star::geometry::RealBezierSegment2D > > points, [in] long nPolygonIndex) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Set the specified sequence of Bezier segments to the poly-polygon. More... | |
::com::sun::star::geometry::RealBezierSegment2D | getBezierSegment ([in] long nPolygonIndex, [in] long nPointIndex) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Get a single point from the poly-polygon. More... | |
void | setBezierSegment ([in] ::com::sun::star::geometry::RealBezierSegment2D point, [in] long nPolygonIndex, [in] long nPointIndex) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Set a single point on the poly-polygon. More... | |
Public Member Functions inherited from XPolyPolygon2D | |
void | addPolyPolygon ([in] ::com::sun::star::geometry::RealPoint2D position, [in] XPolyPolygon2D polyPolygon) raises (com::sun::star::lang::IllegalArgumentException) |
Add the specified poly-polygon at the given position. More... | |
long | getNumberOfPolygons () |
Query number of polygons inside this poly-polygon. More... | |
long | getNumberOfPolygonPoints ([in] long polygon) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Query number of points inside given polygon. More... | |
FillRule | getFillRule () |
Query the rule used to determine inside and outside of the poly-polygon. More... | |
void | setFillRule ([in] FillRule fillRule) |
Set the rule used to determine inside and outside of the poly-polygon. More... | |
boolean | isClosed ([in] long index) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Query whether the specified polygon outline is closed. More... | |
void | setClosed ([in] long index, [in] boolean closedState) raises (com::sun::star::lang::IndexOutOfBoundsException) |
Set the close state of the specified polygon outline. More... | |
Public Member Functions inherited from XInterface | |
any | queryInterface ([in] type aType) |
queries for a new interface to an existing UNO object. More... | |
void | acquire () |
increases the reference counter by one. More... | |
void | release () |
decreases the reference counter by one. More... | |
This is a specialized interface for a 2D poly-polygon containing straight line and Bezier segments.
This poly-polygon can contain polygons consisting of a mixture of cubic Bezier curves and straight lines. As the straight line is a special case of a cubic Bezier curve (control points collinear with the line through start and end point), this can be expressed uniformly with a sequence of RealBezierSegment2Ds.
By convention, a RealBezierSegment2D is a straight line segment, if all three contained points are strictly equal.
::com::sun::star::geometry::RealBezierSegment2D getBezierSegment | ( | [in] long | nPolygonIndex, |
[in] long | nPointIndex | ||
) | |||
raises | ( | com::sun::star::lang::IndexOutOfBoundsException | |
) |
Get a single point from the poly-polygon.
nPolygonIndex | The index of the polygon where the point to be extract is contained within. This index must be in the range [0,numPolygons-1]. |
nPointIndex | The index of the point in the polygon specified by nPolygonIndex, which is to be retrieved. This value must not exceed the number of points in this polygon minus one. |
com::sun::star::lang::IndexOutOfBoundsException | if one of the given values exceed the permissible range. |
sequence< sequence < ::com::sun::star::geometry::RealBezierSegment2D > > getBezierSegments | ( | [in] long | nPolygonIndex, |
[in] long | nNumberOfPolygons, | ||
[in] long | nPointIndex, | ||
[in] long | nNumberOfPoints | ||
) | |||
raises | ( | com::sun::star::lang::IndexOutOfBoundsException | |
) |
Query subset of this poly-polygon.
Query subset of this poly-polygon, starting at the given polygon and the given point within that polygon, and containing the specified number of polygons and points in the last polygon.
nPolygonIndex | The index of the polygon to start point retrieval with. This index must be in the range [0,numPolygons-1]. |
nNumberOfPolygons | The number of polygons to extract. This value must not exceed numPolygons-nPolygonIndex. |
nPointIndex | The index of the first point in the first polygon to extract. This value must not exceed the number of points in this polygon minus one. |
nNumberOfPoints | The number of points to extract from the last polygon. This value must not exceed the number of points in this last polygon minus one. |
com::sun::star::lang::IndexOutOfBoundsException | if one of the given values exceed the permissible range. |
void setBezierSegment | ( | [in] ::com::sun::star::geometry::RealBezierSegment2D | point, |
[in] long | nPolygonIndex, | ||
[in] long | nPointIndex | ||
) | |||
raises | ( | com::sun::star::lang::IndexOutOfBoundsException | |
) |
Set a single point on the poly-polygon.
The remaining points of the poly-polygon will not be changed by this method. Use XBezierPolyPolygon2D::getNumberOfPolygons() or XBezierPolyPolygon2D::getNumberOfPolygonPoints() to append points or polygons, respectively.
point | The point to be set at the poly-polygon. |
nPolygonIndex | The index of the polygon to insert the point in. This index must be in the range [0,numPolygons]. |
nPointIndex | The index of the point in the polygon specified by nPolygonIndex, which is to be set. This value must not exceed the number of points in this polygon. |
com::sun::star::lang::IndexOutOfBoundsException | if one of the given values exceed the permissible range. |
void setBezierSegments | ( | [in] sequence< sequence< ::com::sun::star::geometry::RealBezierSegment2D > > | points, |
[in] long | nPolygonIndex | ||
) | |||
raises | ( | com::sun::star::lang::IndexOutOfBoundsException | |
) |
Set the specified sequence of Bezier segments to the poly-polygon.
This method can either set the whole poly-polygon to the new data, or insert the segments at the given index
points | the points. |
nPolygonIndex | The index of the polygon to start segment insertion with. This index must be in the range [0,numPolygons], and the insertion will take place before this position (i.e. when specifying 0 here, the given Bezier sequence will precede all existing polygons already within the poly-polygon). To append to a poly-polygon, call setPoints() with XBezierPolyPolygon2D::getNumberOfPolygons() as the polygon index. If nPolygonIndex is -1, the given Bezier sequence replaces the poly-polygon content, such that after this method completes, it contains exactly the specified Bezier segment data. |
com::sun::star::lang::IndexOutOfBoundsException | if one of the given values exceed the permissible range. |