LibreOffice Module drawinglayer (master) 1
|
#include <softedgeprimitive2d.hxx>
Public Member Functions | |
SoftEdgePrimitive2D (double fRadius, Primitive2DContainer &&aChildren) | |
constructor More... | |
double | getRadius () const |
data read access More... | |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const override |
compare operator More... | |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const override |
get range More... | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override |
The default implementation will return an empty sequence. More... | |
virtual sal_uInt32 | getPrimitive2DID () const override |
provide unique ID More... | |
Public Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D | |
BufferedDecompositionGroupPrimitive2D (Primitive2DContainer &&aChildren) | |
constructor/destructor. For GroupPrimitive2D we need the child parameter, too. More... | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override |
identical to BufferedDecompositionPrimitive2D, see there please More... | |
Public Member Functions inherited from drawinglayer::primitive2d::GroupPrimitive2D | |
GroupPrimitive2D (Primitive2DContainer &&aChildren) | |
constructor More... | |
const Primitive2DContainer & | getChildren () const |
data read access More... | |
void | getChildren (Primitive2DDecompositionVisitor &rVisitor) const |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const override |
compare operator More... | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override |
local decomposition. Implementation will just return children More... | |
virtual sal_uInt32 | getPrimitive2DID () const override |
provide unique ID More... | |
virtual sal_Int64 | estimateUsage () override |
Public Member Functions inherited from drawinglayer::primitive2d::BasePrimitive2D | |
BasePrimitive2D () | |
virtual | ~BasePrimitive2D () override |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const |
the ==operator is mainly needed to allow testing newly-created primitives against their last incarnation which buffers/holds the made decompositions. More... | |
bool | operator!= (const BasePrimitive2D &rPrimitive) const |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const |
The default implementation will use getDecomposition results to create the range. More... | |
virtual sal_uInt32 | getPrimitive2DID () const =0 |
provide unique ID for fast identifying of known primitive implementations in renderers. More... | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const |
The default implementation will return an empty sequence. More... | |
Primitive2DContainer | getDecomposition (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) |
The getDecomposition implementation for UNO API will use getDecomposition from this implementation. More... | |
css::geometry::RealRectangle2D | getRange (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) |
The getRange implementation for UNO API will use getRange from this implementation. More... | |
virtual sal_Int64 | estimateUsage () |
Public Member Functions inherited from salhelper::SimpleReferenceObject | |
SimpleReferenceObject () | |
void | acquire () |
void | release () |
Protected Member Functions | |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const override |
method which is to be used to implement the local decomposition of a 2D primitive. More... | |
Protected Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D | |
const Primitive2DContainer & | getBuffered2DDecomposition () const |
identical to BufferedDecompositionPrimitive2D, see there please More... | |
void | setBuffered2DDecomposition (Primitive2DContainer &&rNew) |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const =0 |
method which is to be used to implement the local decomposition of a 2D group primitive. More... | |
Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE |
Private Member Functions | |
bool | prepareValuesAndcheckValidity (basegfx::B2DRange &rSoftRange, basegfx::B2DRange &rClippedRange, basegfx::B2DVector &rDiscreteSoftSize, double &rfDiscreteSoftRadius, const geometry::ViewInformation2D &rViewInformation) const |
helpers More... | |
Private Attributes | |
double | mfRadius |
Soft edge size, in logical units (100ths of mm) More... | |
double | mfLastDiscreteSoftRadius |
last used DiscreteSoftRadius and ClippedRange More... | |
basegfx::B2DRange | maLastClippedRange |
Additional Inherited Members | |
Static Public Member Functions inherited from salhelper::SimpleReferenceObject | |
static void * | operator new (std::size_t nSize) |
static void * | operator new (std::size_t nSize, std::nothrow_t const &rNothrow) |
static void | operator delete (void *pPtr) |
static void | operator delete (void *pPtr, std::nothrow_t const &rNothrow) |
Protected Attributes inherited from salhelper::SimpleReferenceObject | |
oslInterlockedCount | m_nCount |
Definition at line 27 of file softedgeprimitive2d.hxx.
drawinglayer::primitive2d::SoftEdgePrimitive2D::SoftEdgePrimitive2D | ( | double | fRadius, |
Primitive2DContainer && | aChildren | ||
) |
constructor
Definition at line 36 of file softedgeprimitive2d.cxx.
|
overrideprotectedvirtual |
method which is to be used to implement the local decomposition of a 2D primitive.
Implements drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D.
Definition at line 124 of file softedgeprimitive2d.cxx.
References AlphaMask::BlendWith(), drawinglayer::convertToBitmapEx(), basegfx::utils::createScaleTranslateB2DHomMatrix(), basegfx::utils::createTranslateB2DHomMatrix(), BitmapEx::GetAlphaMask(), BitmapEx::GetBitmap(), drawinglayer::primitive2d::GroupPrimitive2D::getChildren(), basegfx::Range2D< typename TYPE, typename TRAITS >::getHeight(), basegfx::Range2D< typename TYPE, typename TRAITS >::getMinX(), basegfx::Range2D< typename TYPE, typename TRAITS >::getMinY(), drawinglayer::geometry::ViewInformation2D::getObjectToViewTransformation(), basegfx::B2DRange::getRange(), BitmapEx::GetSizePixel(), basegfx::Range2D< typename TYPE, typename TRAITS >::getWidth(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), Size::Height(), AlphaMask::IsEmpty(), BitmapEx::IsEmpty(), prepareValuesAndcheckValidity(), drawinglayer::primitive2d::ProcessAndBlurAlphaMask(), result, basegfx::B2DHomMatrix::scale(), Size::Width(), and vcl::PngImageWriter::write().
|
overridevirtual |
The default implementation will return an empty sequence.
Reimplemented from drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D.
Definition at line 246 of file softedgeprimitive2d.cxx.
References drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D::get2DDecomposition(), drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D::getBuffered2DDecomposition(), drawinglayer::primitive2d::GroupPrimitive2D::getChildren(), drawinglayer::geometry::ViewInformation2D::getInverseObjectToViewTransformation(), drawinglayer::geometry::ViewInformation2D::getObjectToViewTransformation(), basegfx::Range2D< typename TYPE, typename TRAITS >::grow(), basegfx::Range2D< typename TYPE, typename TRAITS >::isEmpty(), basegfx::B2DHomMatrix::isIdentity(), basegfx::Range2D< typename TYPE, typename TRAITS >::isInside(), maLastClippedRange, mfLastDiscreteSoftRadius, prepareValuesAndcheckValidity(), drawinglayer::primitive2d::BufferedDecompositionGroupPrimitive2D::setBuffered2DDecomposition(), and drawinglayer::primitive2d::Primitive2DDecompositionVisitor::visit().
|
overridevirtual |
get range
Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 337 of file softedgeprimitive2d.cxx.
References drawinglayer::primitive2d::Primitive2DContainer::getB2DRange(), and drawinglayer::primitive2d::GroupPrimitive2D::getChildren().
|
overridevirtual |
provide unique ID
Reimplemented from drawinglayer::primitive2d::GroupPrimitive2D.
Definition at line 346 of file softedgeprimitive2d.cxx.
References PRIMITIVE2D_ID_SOFTEDGEPRIMITIVE2D.
|
inline |
data read access
Definition at line 56 of file softedgeprimitive2d.hxx.
Referenced by drawinglayer::Primitive2dXmlDump::decomposeAndWrite(), operator==(), and prepareValuesAndcheckValidity().
|
overridevirtual |
compare operator
Reimplemented from drawinglayer::primitive2d::GroupPrimitive2D.
Definition at line 44 of file softedgeprimitive2d.cxx.
References getRadius().
|
private |
helpers
Definition at line 55 of file softedgeprimitive2d.cxx.
References drawinglayer::primitive2d::Primitive2DContainer::getB2DRange(), drawinglayer::primitive2d::GroupPrimitive2D::getChildren(), drawinglayer::geometry::ViewInformation2D::getInverseObjectToViewTransformation(), getLength(), drawinglayer::geometry::ViewInformation2D::getObjectToViewTransformation(), getRadius(), basegfx::B2DRange::getRange(), drawinglayer::geometry::ViewInformation2D::getViewport(), drawinglayer::geometry::ViewInformation2D::getViewTransformation(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), basegfx::Range2D< typename TYPE, typename TRAITS >::grow(), basegfx::Range2D< typename TYPE, typename TRAITS >::intersect(), basegfx::Range2D< typename TYPE, typename TRAITS >::isEmpty(), basegfx::B2DHomMatrix::isIdentity(), and basegfx::B2DRange::transform().
Referenced by create2DDecomposition(), and get2DDecomposition().
|
private |
Definition at line 36 of file softedgeprimitive2d.hxx.
Referenced by get2DDecomposition().
|
private |
last used DiscreteSoftRadius and ClippedRange
Definition at line 35 of file softedgeprimitive2d.hxx.
Referenced by get2DDecomposition().
|
private |
Soft edge size, in logical units (100ths of mm)
Definition at line 32 of file softedgeprimitive2d.hxx.