diff options
author | Armin Le Grand <alg@apache.org> | 2013-05-10 08:48:11 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-06-19 09:23:28 +0100 |
commit | 02da9f7a917ffc68dfe7a44c8d03b272cb5bfc18 (patch) | |
tree | 017bc3354966e7e2d64266e2fec6dd0ce1ed3c09 /drawinglayer/source/processor2d/vclprocessor2d.cxx | |
parent | 5e5f3671f8448ee21b00f0d2a08b214e61f7f744 (diff) |
Resolves: #i110384# added better fat line rendering where possible
(cherry picked from commit 144eb666b72516ef78c15424087800dff1be5cfd)
Conflicts:
drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx
drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx
vcl/inc/vcl/outdev.hxx
Change-Id: I89f378a4d7a8311b8922f10acff66b000a20a4b7
Diffstat (limited to 'drawinglayer/source/processor2d/vclprocessor2d.cxx')
-rw-r--r-- | drawinglayer/source/processor2d/vclprocessor2d.cxx | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx index d0fc7b3f074a..d1b85ff9618f 100644 --- a/drawinglayer/source/processor2d/vclprocessor2d.cxx +++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx @@ -782,86 +782,6 @@ namespace drawinglayer } } - // direct draw of PolyPolygon with color - void VclProcessor2D::RenderPolyPolygonColorPrimitive2D(const primitive2d::PolyPolygonColorPrimitive2D& rPolygonCandidate) - { - const basegfx::BColor aPolygonColor(maBColorModifierStack.getModifiedColor(rPolygonCandidate.getBColor())); - mpOutputDevice->SetFillColor(Color(aPolygonColor)); - mpOutputDevice->SetLineColor(); - - basegfx::B2DPolyPolygon aLocalPolyPolygon(rPolygonCandidate.getB2DPolyPolygon()); - aLocalPolyPolygon.transform(maCurrentTransformation); - - static bool bCheckTrapezoidDecomposition(false); - static bool bShowOutlinesThere(false); - if(bCheckTrapezoidDecomposition) - { - // clip against discrete ViewPort - const basegfx::B2DRange& rDiscreteViewport = getViewInformation2D().getDiscreteViewport(); - aLocalPolyPolygon = basegfx::tools::clipPolyPolygonOnRange( - aLocalPolyPolygon, rDiscreteViewport, true, false); - - if(aLocalPolyPolygon.count()) - { - // subdivide - aLocalPolyPolygon = basegfx::tools::adaptiveSubdivideByDistance( - aLocalPolyPolygon, 0.5); - - // trapezoidize - basegfx::B2DTrapezoidVector aB2DTrapezoidVector; - basegfx::tools::trapezoidSubdivide(aB2DTrapezoidVector, aLocalPolyPolygon); - - const sal_uInt32 nCount(aB2DTrapezoidVector.size()); - - if(nCount) - { - basegfx::BColor aInvPolygonColor(aPolygonColor); - aInvPolygonColor.invert(); - - for(sal_uInt32 a(0); a < nCount; a++) - { - const basegfx::B2DPolygon aTempPolygon(aB2DTrapezoidVector[a].getB2DPolygon()); - - if(bShowOutlinesThere) - { - mpOutputDevice->SetFillColor(Color(aPolygonColor)); - mpOutputDevice->SetLineColor(); - } - - mpOutputDevice->DrawPolygon(aTempPolygon); - - if(bShowOutlinesThere) - { - mpOutputDevice->SetFillColor(); - mpOutputDevice->SetLineColor(Color(aInvPolygonColor)); - mpOutputDevice->DrawPolyLine(aTempPolygon, 0.0); - } - } - } - } - } - else - { - mpOutputDevice->DrawPolyPolygon(aLocalPolyPolygon); - - if(mnPolygonStrokePrimitive2D - && getOptionsDrawinglayer().IsAntiAliasing() - && (mpOutputDevice->GetAntialiasing() & ANTIALIASING_ENABLE_B2DDRAW)) - { - // when AA is on and this filled polygons are the result of stroked line geometry, - // draw the geometry once extra as lines to avoid AA 'gaps' between partial polygons - mpOutputDevice->SetFillColor(); - mpOutputDevice->SetLineColor(Color(aPolygonColor)); - const sal_uInt32 nCount(aLocalPolyPolygon.count()); - - for(sal_uInt32 a(0); a < nCount; a++) - { - mpOutputDevice->DrawPolyLine(aLocalPolyPolygon.getB2DPolygon(a), 0.0); - } - } - } - } - // mask group. Force output to VDev and create mask from given mask void VclProcessor2D::RenderMaskPrimitive2DPixel(const primitive2d::MaskPrimitive2D& rMaskCandidate) { |