33 const ::basegfx::B2DVector& rDirection,
34 const ::basegfx::B2DSize& rSlideSize,
35 int nNumStrips,
int nOffset )
42 for(
int i=nOffset;
i<nNumStrips;
i+=2 )
45 ::basegfx::utils::createPolygonFromRect(
47 double(i+1)/nNumStrips, 1.0) ) );
53 const ::basegfx::B2DVector aUpVec(0.0, 1.0);
57 aMatrix.scale(rSlideSize.getWidth(), rSlideSize.getHeight());
67 std::optional<SlideSharedPtr>
const & leavingSlide,
73 const ::basegfx::B2DVector& rPushDirection,
74 sal_Int32 nNumStripes )
76 rViewContainer, rScreenUpdater, rEventMultiplexer,
79 maPushDirectionUnit( rPushDirection ),
80 mnNumStripes( nNumStripes )
90 if( !pEnteringBitmap || !pCanvas_ )
114 const basegfx::B2DVector enteringSizePixel(aSlideSizePixel.getWidth(), aSlideSizePixel.getHeight());
131 pLeavingBitmap->clip( aClipPolygon1 );
135 pLeavingBitmap->draw( pCanvas );
138 pLeavingBitmap->clip( aClipPolygon2 );
142 pLeavingBitmap->draw( pCanvas );
149 pEnteringBitmap->clip( aClipPolygon1 );
153 pEnteringBitmap->draw( pCanvas );
156 pEnteringBitmap->clip( aClipPolygon2 );
160 pEnteringBitmap->draw( pCanvas );
168 {
return this->
renderComb( t, rViewEntry ); } );
void append(const B2DPolygon &rPolygon, sal_uInt32 nCount=1)
void transform(const basegfx::B2DHomMatrix &rMatrix)
CombTransition(::std::optional< SlideSharedPtr > const &leavingSlide, const SlideSharedPtr &pEnteringSlide, const SoundPlayerSharedPtr &pSoundPlayer, const UnoViewContainer &rViewContainer, ScreenUpdater &rScreenUpdater, EventMultiplexer &rEventMultiplexer, const ::basegfx::B2DVector &rPushDirection, sal_Int32 nNumStripes)
Create the comb transition effect.
virtual bool operator()(double x) override
Set the animation to value x.
const ::basegfx::B2DVector maPushDirectionUnit
void renderComb(double t, const ViewEntry &rViewEntry) const
This class multiplexes user-activated and slide-show global events.
void notifyUpdate()
Notify screen update.
Base class for all slide change effects.
ViewsVecT::const_iterator endViews()
::basegfx::B2ISize getEnteringSlideSizePixel(const UnoViewSharedPtr &pView) const
SlideBitmapSharedPtr getEnteringBitmap(const ViewEntry &rViewEntry) const
ScreenUpdater & getScreenUpdater() const
SlideBitmapSharedPtr getLeavingBitmap(const ViewEntry &rViewEntry) const
ViewsVecT::const_iterator beginViews()
B2DHomMatrix createRotateAroundPoint(double fPointX, double fPointY, double fRadiant)
B2DHomMatrix createTranslateB2DHomMatrix(double fTranslateX, double fTranslateY)
std::shared_ptr< Canvas > CanvasSharedPtr
::std::shared_ptr< SoundPlayer > SoundPlayerSharedPtr
::std::shared_ptr< SlideBitmap > SlideBitmapSharedPtr
::std::shared_ptr< Slide > SlideSharedPtr
Info on a per-view basis.
UnoViewSharedPtr mpView
The view this entry is for.