canvas/source/directx/dx_canvashelper.cxx | 3 -- canvas/source/tools/canvastools.cxx | 20 ++++++--------- cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx | 4 --- cppcanvas/source/mtfrenderer/implrenderer.cxx | 10 ++----- cppcanvas/source/mtfrenderer/transparencygroupaction.cxx | 6 +--- cppcanvas/source/wrapper/implcanvas.cxx | 4 --- include/canvas/canvastools.hxx | 10 +++---- 7 files changed, 20 insertions(+), 37 deletions(-)
New commits: commit e289fdedeb326a37253be509962c6c8ba0ccee80 Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Tue Nov 19 13:55:54 2024 +0100 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Tue Nov 19 15:45:34 2024 +0100 canvas: simplify getViewStateTransform/getRenderStateTransform Change-Id: If9487aff0d80f7ee9d368cd97bc2828a856cc392 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176766 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> Tested-by: Jenkins diff --git a/canvas/source/directx/dx_canvashelper.cxx b/canvas/source/directx/dx_canvashelper.cxx index 1184886784c9..bd3523a134b9 100644 --- a/canvas/source/directx/dx_canvashelper.cxx +++ b/canvas/source/directx/dx_canvashelper.cxx @@ -728,8 +728,7 @@ namespace dxcanvas "CanvasHelper::setupGraphicsState: reference device invalid" ); // setup view transform first. Clipping e.g. depends on it - ::basegfx::B2DHomMatrix aTransform; - ::canvas::tools::getViewStateTransform(aTransform, viewState); + ::basegfx::B2DHomMatrix aTransform = ::canvas::tools::getViewStateTransform(viewState); // add output offset if( !maOutputOffset.equalZero() ) diff --git a/canvas/source/tools/canvastools.cxx b/canvas/source/tools/canvastools.cxx index b77524351b96..4b227c0b1c0d 100644 --- a/canvas/source/tools/canvastools.cxx +++ b/canvas/source/tools/canvastools.cxx @@ -91,10 +91,10 @@ namespace canvas::tools return viewState; } - ::basegfx::B2DHomMatrix& getViewStateTransform( ::basegfx::B2DHomMatrix& transform, - const rendering::ViewState& viewState ) + ::basegfx::B2DHomMatrix getViewStateTransform( const rendering::ViewState& viewState ) { - return ::basegfx::unotools::homMatrixFromAffineMatrix( transform, viewState.AffineTransform ); + ::basegfx::B2DHomMatrix aTransform; + return ::basegfx::unotools::homMatrixFromAffineMatrix( aTransform, viewState.AffineTransform ); } rendering::ViewState& setViewStateTransform( rendering::ViewState& viewState, @@ -105,10 +105,10 @@ namespace canvas::tools return viewState; } - ::basegfx::B2DHomMatrix& getRenderStateTransform( ::basegfx::B2DHomMatrix& transform, - const rendering::RenderState& renderState ) + ::basegfx::B2DHomMatrix getRenderStateTransform( const rendering::RenderState& renderState ) { - return ::basegfx::unotools::homMatrixFromAffineMatrix( transform, renderState.AffineTransform ); + ::basegfx::B2DHomMatrix aTransform; + return ::basegfx::unotools::homMatrixFromAffineMatrix( aTransform, renderState.AffineTransform ); } rendering::RenderState& setRenderStateTransform( rendering::RenderState& renderState, @@ -122,18 +122,14 @@ namespace canvas::tools rendering::RenderState& appendToRenderState( rendering::RenderState& renderState, const ::basegfx::B2DHomMatrix& rTransform ) { - ::basegfx::B2DHomMatrix transform; - - getRenderStateTransform( transform, renderState ); + ::basegfx::B2DHomMatrix transform = getRenderStateTransform( renderState ); return setRenderStateTransform( renderState, transform * rTransform ); } rendering::RenderState& prependToRenderState( rendering::RenderState& renderState, const ::basegfx::B2DHomMatrix& rTransform ) { - ::basegfx::B2DHomMatrix transform; - - getRenderStateTransform( transform, renderState ); + ::basegfx::B2DHomMatrix transform = getRenderStateTransform( renderState ); return setRenderStateTransform( renderState, rTransform * transform ); } diff --git a/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx b/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx index 99f4f95ecc9a..94cc42f77e4a 100644 --- a/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx +++ b/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx @@ -47,9 +47,7 @@ namespace cppcanvas::internal SAL_INFO( "cppcanvas.emf", "::cppcanvas::internal::CachedPrimitiveBase: 0x" << std::hex << this ); const rendering::ViewState aViewState( mpCanvas->getViewState() ); - ::basegfx::B2DHomMatrix aTotalTransform; - - ::canvas::tools::getViewStateTransform( aTotalTransform, + ::basegfx::B2DHomMatrix aTotalTransform = ::canvas::tools::getViewStateTransform( aViewState ); aTotalTransform *= rTransformation; diff --git a/cppcanvas/source/mtfrenderer/implrenderer.cxx b/cppcanvas/source/mtfrenderer/implrenderer.cxx index 4a041ee5de5a..381387080bd3 100644 --- a/cppcanvas/source/mtfrenderer/implrenderer.cxx +++ b/cppcanvas/source/mtfrenderer/implrenderer.cxx @@ -2980,9 +2980,7 @@ namespace cppcanvas::internal // render subset of actions // ======================== - ::basegfx::B2DHomMatrix aMatrix; - ::canvas::tools::getRenderStateTransform( aMatrix, - getRenderState() ); + ::basegfx::B2DHomMatrix aMatrix = ::canvas::tools::getRenderStateTransform( getRenderState() ); ActionRenderer aRenderer( aMatrix ); @@ -3024,8 +3022,7 @@ namespace cppcanvas::internal // query bounds for subset of actions // ================================== - ::basegfx::B2DHomMatrix aMatrix; - ::canvas::tools::getRenderStateTransform( aMatrix, + ::basegfx::B2DHomMatrix aMatrix = ::canvas::tools::getRenderStateTransform( getRenderState() ); AreaQuery aQuery( aMatrix ); @@ -3043,8 +3040,7 @@ namespace cppcanvas::internal { SAL_INFO( "cppcanvas.emf", "::cppcanvas::internal::ImplRenderer::draw()" ); - ::basegfx::B2DHomMatrix aMatrix; - ::canvas::tools::getRenderStateTransform( aMatrix, + ::basegfx::B2DHomMatrix aMatrix = ::canvas::tools::getRenderStateTransform( getRenderState() ); try diff --git a/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx b/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx index c3c1cfdf50f6..1f62c0bc30d9 100644 --- a/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx +++ b/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx @@ -176,12 +176,10 @@ namespace cppcanvas::internal // determine overall transformation matrix (render, view, // and passed transformation) - ::basegfx::B2DHomMatrix aTransform; - ::canvas::tools::getRenderStateTransform( aTransform, maState ); + ::basegfx::B2DHomMatrix aTransform = ::canvas::tools::getRenderStateTransform( maState ); aTransform = rTransformation * aTransform; - ::basegfx::B2DHomMatrix aTotalTransform; - ::canvas::tools::getViewStateTransform( aTotalTransform, mpCanvas->getViewState() ); + ::basegfx::B2DHomMatrix aTotalTransform = ::canvas::tools::getViewStateTransform( mpCanvas->getViewState() ); aTotalTransform = aTotalTransform * aTransform; // since pure translational changes to the transformation diff --git a/cppcanvas/source/wrapper/implcanvas.cxx b/cppcanvas/source/wrapper/implcanvas.cxx index 81b5a3759fd6..6f13f7452e65 100644 --- a/cppcanvas/source/wrapper/implcanvas.cxx +++ b/cppcanvas/source/wrapper/implcanvas.cxx @@ -55,9 +55,7 @@ namespace cppcanvas::internal ::basegfx::B2DHomMatrix ImplCanvas::getTransformation() const { - ::basegfx::B2DHomMatrix aMatrix; - return ::canvas::tools::getViewStateTransform( aMatrix, - maViewState ); + return ::canvas::tools::getViewStateTransform( maViewState ); } void ImplCanvas::setClip( const ::basegfx::B2DPolyPolygon& rClipPoly ) diff --git a/include/canvas/canvastools.hxx b/include/canvas/canvastools.hxx index cf9ca35180e6..be6f55aafebb 100644 --- a/include/canvas/canvastools.hxx +++ b/include/canvas/canvastools.hxx @@ -129,17 +129,15 @@ namespace canvas CANVASTOOLS_DLLPUBLIC css::rendering::ViewState& initViewState( css::rendering::ViewState& viewState ); - CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix& - getViewStateTransform( ::basegfx::B2DHomMatrix& transform, - const css::rendering::ViewState& viewState ); + CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix + getViewStateTransform( const css::rendering::ViewState& viewState ); CANVASTOOLS_DLLPUBLIC css::rendering::ViewState& setViewStateTransform( css::rendering::ViewState& viewState, const ::basegfx::B2DHomMatrix& transform ); - CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix& - getRenderStateTransform( ::basegfx::B2DHomMatrix& transform, - const css::rendering::RenderState& renderState ); + CANVASTOOLS_DLLPUBLIC ::basegfx::B2DHomMatrix + getRenderStateTransform( const css::rendering::RenderState& renderState ); CANVASTOOLS_DLLPUBLIC css::rendering::RenderState& setRenderStateTransform( css::rendering::RenderState& renderState,