summaryrefslogtreecommitdiffstats
path: root/basegfx/source/polygon/b2dpolygontools.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'basegfx/source/polygon/b2dpolygontools.cxx')
-rw-r--r--basegfx/source/polygon/b2dpolygontools.cxx42
1 files changed, 18 insertions, 24 deletions
diff --git a/basegfx/source/polygon/b2dpolygontools.cxx b/basegfx/source/polygon/b2dpolygontools.cxx
index 482d35d4df1d..89c8eea90111 100644
--- a/basegfx/source/polygon/b2dpolygontools.cxx
+++ b/basegfx/source/polygon/b2dpolygontools.cxx
@@ -3250,12 +3250,10 @@ namespace basegfx::utils
if(nLength)
{
aRetval.reserve(nLength);
- const css::awt::Point* pArray = rPointSequenceSource.getConstArray();
- const css::awt::Point* pArrayEnd = pArray + rPointSequenceSource.getLength();
- for(;pArray != pArrayEnd; pArray++)
+ for(auto& point : rPointSequenceSource)
{
- aRetval.append(B2DPoint(pArray->X, pArray->Y));
+ aRetval.append(B2DPoint(point.X, point.Y));
}
// check for closed state flag
@@ -3301,7 +3299,7 @@ namespace basegfx::utils
// copy first point if closed
if(bIsClosed)
{
- *pSequence = *rPointSequenceRetval.getConstArray();
+ *pSequence = rPointSequenceRetval[0];
}
}
else
@@ -3317,8 +3315,8 @@ namespace basegfx::utils
const css::drawing::PointSequence& rPointSequenceSource,
const css::drawing::FlagSequence& rFlagSequenceSource)
{
- const sal_uInt32 nCount(static_cast<sal_uInt32>(rPointSequenceSource.getLength()));
- OSL_ENSURE(nCount == static_cast<sal_uInt32>(rFlagSequenceSource.getLength()),
+ const sal_Int32 nCount(rPointSequenceSource.getLength());
+ OSL_ENSURE(nCount == rFlagSequenceSource.getLength(),
"UnoPolygonBezierCoordsToB2DPolygon: Unequal count of Points and Flags (!)");
// prepare new polygon
@@ -3328,32 +3326,28 @@ namespace basegfx::utils
{
aRetval.reserve(nCount);
- const css::awt::Point* pPointSequence = rPointSequenceSource.getConstArray();
- const css::drawing::PolygonFlags* pFlagSequence = rFlagSequenceSource.getConstArray();
-
// get first point and flag
- B2DPoint aNewCoordinatePair(pPointSequence->X, pPointSequence->Y); pPointSequence++;
- css::drawing::PolygonFlags ePolygonFlag(*pFlagSequence); pFlagSequence++;
+ B2DPoint aNewCoordinatePair(rPointSequenceSource[0].X, rPointSequenceSource[0].Y);
B2DPoint aControlA;
B2DPoint aControlB;
// first point is not allowed to be a control point
- OSL_ENSURE(ePolygonFlag != css::drawing::PolygonFlags_CONTROL,
+ OSL_ENSURE(rFlagSequenceSource[0] != css::drawing::PolygonFlags_CONTROL,
"UnoPolygonBezierCoordsToB2DPolygon: Start point is a control point, illegal input polygon (!)");
// add first point as start point
aRetval.append(aNewCoordinatePair);
- for(sal_uInt32 b(1); b < nCount;)
+ for(sal_Int32 b(1); b < nCount;)
{
// prepare loop
bool bControlA(false);
bool bControlB(false);
// get next point and flag
- aNewCoordinatePair = B2DPoint(pPointSequence->X, pPointSequence->Y);
- ePolygonFlag = *pFlagSequence;
- pPointSequence++; pFlagSequence++; b++;
+ aNewCoordinatePair = B2DPoint(rPointSequenceSource[b].X, rPointSequenceSource[b].Y);
+ css::drawing::PolygonFlags ePolygonFlag = rFlagSequenceSource[b];
+ b++;
if(b < nCount && ePolygonFlag == css::drawing::PolygonFlags_CONTROL)
{
@@ -3361,9 +3355,9 @@ namespace basegfx::utils
bControlA = true;
// get next point and flag
- aNewCoordinatePair = B2DPoint(pPointSequence->X, pPointSequence->Y);
- ePolygonFlag = *pFlagSequence;
- pPointSequence++; pFlagSequence++; b++;
+ aNewCoordinatePair = B2DPoint(rPointSequenceSource[b].X, rPointSequenceSource[b].Y);
+ ePolygonFlag = rFlagSequenceSource[b];
+ b++;
}
if(b < nCount && ePolygonFlag == css::drawing::PolygonFlags_CONTROL)
@@ -3372,9 +3366,9 @@ namespace basegfx::utils
bControlB = true;
// get next point and flag
- aNewCoordinatePair = B2DPoint(pPointSequence->X, pPointSequence->Y);
- ePolygonFlag = *pFlagSequence;
- pPointSequence++; pFlagSequence++; b++;
+ aNewCoordinatePair = B2DPoint(rPointSequenceSource[b].X, rPointSequenceSource[b].Y);
+ ePolygonFlag = rFlagSequenceSource[b];
+ b++;
}
// two or no control points are consumed, another one would be an error.
@@ -3559,7 +3553,7 @@ namespace basegfx::utils
if(bClosed)
{
// add first point as closing point
- *pPointSequence = *rPointSequenceRetval.getConstArray();
+ *pPointSequence = rPointSequenceRetval[0];
*pFlagSequence = css::drawing::PolygonFlags_NORMAL;
}
}