summaryrefslogtreecommitdiff
path: root/cppcanvas/source/mtfrenderer/implrenderer.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'cppcanvas/source/mtfrenderer/implrenderer.cxx')
-rw-r--r--cppcanvas/source/mtfrenderer/implrenderer.cxx16
1 files changed, 10 insertions, 6 deletions
diff --git a/cppcanvas/source/mtfrenderer/implrenderer.cxx b/cppcanvas/source/mtfrenderer/implrenderer.cxx
index 2a8e3dbd0950..a3a27174afb8 100644
--- a/cppcanvas/source/mtfrenderer/implrenderer.cxx
+++ b/cppcanvas/source/mtfrenderer/implrenderer.cxx
@@ -1396,7 +1396,7 @@ namespace cppcanvas
}
else
{
- if( !pClipAction->GetRegion().HasPolyPolygon() )
+ if( !pClipAction->GetRegion().HasPolyPolygonOrB2DPolyPolygon() )
{
VERBOSE_TRACE( "ImplRenderer::createActions(): non-polygonal clip "
"region encountered, falling back to bounding box!" );
@@ -1418,9 +1418,11 @@ namespace cppcanvas
// with old one, just set it)
// #121806# explicitely kept integer
+ basegfx::B2DPolyPolygon aPolyPolygon(pClipAction->GetRegion().GetAsB2DPolyPolygon());
+
+ aPolyPolygon.transform(rVDev.GetViewTransformation());
updateClipping(
- rVDev.LogicToPixel(
- pClipAction->GetRegion().GetPolyPolygon() ).getB2DPolyPolygon(),
+ aPolyPolygon,
rFactoryParms,
false );
}
@@ -1450,7 +1452,7 @@ namespace cppcanvas
{
MetaISectRegionClipRegionAction* pClipAction = static_cast<MetaISectRegionClipRegionAction*>(pCurrAct);
- if( !pClipAction->GetRegion().HasPolyPolygon() )
+ if( !pClipAction->GetRegion().HasPolyPolygonOrB2DPolyPolygon() )
{
VERBOSE_TRACE( "ImplRenderer::createActions(): non-polygonal clip "
"region encountered, falling back to bounding box!" );
@@ -1470,9 +1472,11 @@ namespace cppcanvas
// intersect current clip with given clip polygon
// #121806# explicitely kept integer
+ basegfx::B2DPolyPolygon aPolyPolygon(pClipAction->GetRegion().GetAsB2DPolyPolygon());
+
+ aPolyPolygon.transform(rVDev.GetViewTransformation());
updateClipping(
- rVDev.LogicToPixel(
- pClipAction->GetRegion().GetPolyPolygon() ).getB2DPolyPolygon(),
+ aPolyPolygon,
rFactoryParms,
true );
}