summaryrefslogtreecommitdiff
path: root/vcl/opengl
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2015-09-03 11:30:52 +0900
committerTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2015-09-03 11:38:26 +0900
commit796b2d6b20e3e9d6ca7f095a49d9b3a54f58645f (patch)
tree59e3efaa68f9092a96560ae3d9fecfe8a65e5111 /vcl/opengl
parent1249262e97c1c3b1c91720f7acebb29abeb77b67 (diff)
opengl: let OutputDevice do the bezier subdivision
Change-Id: I0620cd29695d792320c6e3209dff84822485d883
Diffstat (limited to 'vcl/opengl')
-rw-r--r--vcl/opengl/gdiimpl.cxx30
1 files changed, 8 insertions, 22 deletions
diff --git a/vcl/opengl/gdiimpl.cxx b/vcl/opengl/gdiimpl.cxx
index a1508f37cd9b..9a2d72e447b2 100644
--- a/vcl/opengl/gdiimpl.cxx
+++ b/vcl/opengl/gdiimpl.cxx
@@ -1424,33 +1424,19 @@ bool OpenGLSalGraphicsImpl::drawPolyLine(
return false;
}
- // #i11575#desc5#b adjust B2D tesselation result to raster positions
- basegfx::B2DPolygon aPolygon = rPolygon;
- const double fHalfWidth = 0.5 * rLineWidth.getX();
-
// shortcut for hairline drawing to improve performance
if (bIsHairline)
{
- PreDraw();
- if (UseSolidAA(mnLineColor, fTransparency))
- {
- tools::Polygon aToolsPolygon(aPolygon);
- sal_uInt32 nPoints = aToolsPolygon.GetSize();
- if (aToolsPolygon.HasFlags())
- {
- aToolsPolygon = tools::Polygon::SubdivideBezier(aToolsPolygon);
- nPoints = aToolsPolygon.GetSize();
- }
- for (sal_uInt32 i = 0; i < nPoints - 1; ++i)
- {
- DrawLineAA(aToolsPolygon[i].X(), aToolsPolygon[i].Y(),
- aToolsPolygon[i + 1].X(), aToolsPolygon[i + 1].Y());
- }
- }
- PostDraw();
- return true;
+ // Let's just leave it to OutputDevice to do the bezier subdivision,
+ // drawPolyLine(sal_uInt32 nPoints, const SalPoint* pPtAry) will be
+ // called with the result.
+ return false;
}
+ // #i11575#desc5#b adjust B2D tesselation result to raster positions
+ basegfx::B2DPolygon aPolygon = rPolygon;
+ const double fHalfWidth = 0.5 * rLineWidth.getX();
+
// get the area polygon for the line polygon
if( (rLineWidth.getX() != rLineWidth.getY())
&& !basegfx::fTools::equalZero( rLineWidth.getY() ) )