LibreOffice Module drawinglayer (master) 1
|
MarkerArrayPrimitive2D class. More...
#include <markerarrayprimitive2d.hxx>
Public Member Functions | |
MarkerArrayPrimitive2D (std::vector< basegfx::B2DPoint > &&rPositions, const BitmapEx &rMarker) | |
constructor More... | |
const std::vector< basegfx::B2DPoint > & | getPositions () const |
data read access More... | |
const BitmapEx & | getMarker () const |
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 sal_uInt32 | getPrimitive2DID () const override |
provide unique ID More... | |
Public Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D | |
BufferedDecompositionPrimitive2D () | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override |
The getDecomposition default implementation will on demand use create2DDecomposition() if maBuffered2DDecomposition is empty. More... | |
void | setTransparenceForShadow (sal_uInt16 nTransparenceForShadow) |
sal_uInt16 | getTransparenceForShadow () const |
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 () |
Private Member Functions | |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const override |
create local decomposition More... | |
Private Attributes | |
std::vector< basegfx::B2DPoint > | maPositions |
the positions for the marker More... | |
BitmapEx | maMarker |
the marker definition to visualize More... | |
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 Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D | |
const Primitive2DContainer & | getBuffered2DDecomposition () const |
access methods to maBuffered2DDecomposition. 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 primitive. More... | |
Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE |
Protected Attributes inherited from salhelper::SimpleReferenceObject | |
oslInterlockedCount | m_nCount |
MarkerArrayPrimitive2D class.
This primitive defines an array of markers. Their size is defined in pixels and independent from the view transformation which makes this primitive highly view-dependent. It is also transformation invariant, so that the bitmap is always visualized unscaled and unrotated. It is used e.g. for grid position visualisation. The given Bitmap (with transparence) is defined to be visible centered at each of the given positions. It decomposes to the needed number of BitmapPrimitive2D's, so it would be efficient to handle it directly in a renderer.
Definition at line 45 of file markerarrayprimitive2d.hxx.
drawinglayer::primitive2d::MarkerArrayPrimitive2D::MarkerArrayPrimitive2D | ( | std::vector< basegfx::B2DPoint > && | rPositions, |
const BitmapEx & | rMarker | ||
) |
constructor
Definition at line 71 of file markerarrayprimitive2d.cxx.
|
overrideprivatevirtual |
create local decomposition
Implements drawinglayer::primitive2d::BufferedDecompositionPrimitive2D.
Definition at line 33 of file markerarrayprimitive2d.cxx.
References basegfx::Range2D< typename TYPE, typename TRAITS >::getHeight(), Size::getHeight(), drawinglayer::geometry::ViewInformation2D::getInverseObjectToViewTransformation(), getMarker(), basegfx::Range2D< typename TYPE, typename TRAITS >::getMinX(), basegfx::Range2D< typename TYPE, typename TRAITS >::getMinY(), getPositions(), basegfx::Range2D< typename TYPE, typename TRAITS >::getWidth(), Size::getWidth(), Size::Height(), basegfx::B2DHomMatrix::set(), and Size::Width().
|
overridevirtual |
get range
Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 92 of file markerarrayprimitive2d.cxx.
References basegfx::Range2D< typename TYPE, typename TRAITS >::expand(), Size::getHeight(), drawinglayer::geometry::ViewInformation2D::getInverseObjectToViewTransformation(), getMarker(), basegfx::B2DRange::getMaximum(), basegfx::B2DRange::getMinimum(), getPositions(), Size::getWidth(), Size::Height(), pos, and Size::Width().
|
inline |
Definition at line 65 of file markerarrayprimitive2d.hxx.
Referenced by create2DDecomposition(), getB2DRange(), operator==(), drawinglayer::processor2d::D2DPixelProcessor2D::processMarkerArrayPrimitive2D(), and drawinglayer::processor2d::VclProcessor2D::RenderMarkerArrayPrimitive2D().
|
inline |
data read access
Definition at line 64 of file markerarrayprimitive2d.hxx.
Referenced by create2DDecomposition(), getB2DRange(), operator==(), drawinglayer::processor2d::D2DPixelProcessor2D::processMarkerArrayPrimitive2D(), and drawinglayer::processor2d::VclProcessor2D::RenderMarkerArrayPrimitive2D().
|
overridevirtual |
provide unique ID
Implements drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 129 of file markerarrayprimitive2d.cxx.
References PRIMITIVE2D_ID_MARKERARRAYPRIMITIVE2D.
|
overridevirtual |
compare operator
Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.
Definition at line 79 of file markerarrayprimitive2d.cxx.
References getMarker(), and getPositions().
|
private |
the marker definition to visualize
Definition at line 52 of file markerarrayprimitive2d.hxx.
|
private |
the positions for the marker
Definition at line 49 of file markerarrayprimitive2d.hxx.