chart2/source/view/charttypes/BubbleChart.cxx | 6 ++++++ 1 file changed, 6 insertions(+)
New commits: commit 12b9c12eac34e4bd383c27c52355910cdd813424 Author: Kurt Nordback <kurt.nordb...@protonmail.com> AuthorDate: Tue Aug 20 07:20:18 2024 -0600 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Fri Nov 15 14:57:40 2024 +0100 tdf#79450 - Other: Bubbles too near disappear in a Calc chart An existing optimization avoids rendering a bubble chart bubble if it is nearly the same size and position as the preceding bubble. This results in incorrect rendering in the case of transparent fill. Skip the optimization in this case. Change-Id: Ie21235a66c4d22ac2ce793264ef5bb7b6434117e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172115 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/chart2/source/view/charttypes/BubbleChart.cxx b/chart2/source/view/charttypes/BubbleChart.cxx index 88f39b3a5235..32593df5d036 100644 --- a/chart2/source/view/charttypes/BubbleChart.cxx +++ b/chart2/source/view/charttypes/BubbleChart.cxx @@ -261,9 +261,15 @@ void BubbleChart::createShapes() rPosHelper.transformLogicToScene(fLogicX, fLogicY, fLogicZ, false)); //better performance for big data + uno::Reference< beans::XPropertySet > xProps(pSeries->getPropertiesOfPoint( nIndex )); + sal_Int16 nFillTransparency(0); + xProps->getPropertyValue(u"FillTransparence"_ustr) >>= nFillTransparency; + const bool bIsTransparent(nFillTransparency != 0); + FormerPoint aFormerPoint( aSeriesFormerPointMap[pSeries.get()] ); rPosHelper.setCoordinateSystemResolution(m_aCoordinateSystemResolution); if (!pSeries->isAttributedDataPoint(nIndex) + && !bIsTransparent // don't short-cut if there's transparency && rPosHelper.isSameForGivenResolution( aFormerPoint.m_fX, aFormerPoint.m_fY, aFormerPoint.m_fZ, aScaledLogicPosition.PositionX, aScaledLogicPosition.PositionY,