diff options
author | Armin Le Grand <alg@apache.org> | 2012-10-23 12:46:28 +0000 |
---|---|---|
committer | Armin Le Grand <alg@apache.org> | 2012-10-23 12:46:28 +0000 |
commit | cab10eeb7878edf224a004fd7640bd4adf8d3c51 (patch) | |
tree | ca8c7780822a571f0ade4ab1b90fc89d2c245b63 /cppcanvas/source/mtfrenderer/implrenderer.cxx | |
parent | 498926039ce717631eda046b1aa256efd24dfdf6 (diff) |
#121237# Rework/Cleanup of Region code due to missing complete support for B2DPolygon class
Notes
Notes:
merged as: e717d1dcce7f8906311c5ccdbb2326b61a702630
Diffstat (limited to 'cppcanvas/source/mtfrenderer/implrenderer.cxx')
-rw-r--r-- | cppcanvas/source/mtfrenderer/implrenderer.cxx | 16 |
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 ); } |