LibreOffice Module drawinglayer (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
drawinglayer::primitive3d::HatchTexturePrimitive3D Class Referencefinal

HatchTexturePrimitive3D class. More...

#include <hatchtextureprimitive3d.hxx>

Inheritance diagram for drawinglayer::primitive3d::HatchTexturePrimitive3D:
[legend]
Collaboration diagram for drawinglayer::primitive3d::HatchTexturePrimitive3D:
[legend]

Public Member Functions

 HatchTexturePrimitive3D (attribute::FillHatchAttribute aHatch, const Primitive3DContainer &rChildren, const basegfx::B2DVector &rTextureSize, bool bModulate, bool bFilter)
 constructor More...
 
const attribute::FillHatchAttributegetHatch () const
 data read access More...
 
virtual bool operator== (const BasePrimitive3D &rPrimitive) const override
 compare operator More...
 
virtual Primitive3DContainer get3DDecomposition (const geometry::ViewInformation3D &rViewInformation) const override
 local decomposition. More...
 
- Public Member Functions inherited from drawinglayer::primitive3d::TexturePrimitive3D
 TexturePrimitive3D (const Primitive3DContainer &rChildren, const basegfx::B2DVector &rTextureSize, bool bModulate, bool bFilter)
 constructor More...
 
const basegfx::B2DVectorgetTextureSize () const
 data read access More...
 
bool getModulate () const
 
bool getFilter () const
 
virtual bool operator== (const BasePrimitive3D &rPrimitive) const override
 compare operator More...
 
- Public Member Functions inherited from drawinglayer::primitive3d::GroupPrimitive3D
 GroupPrimitive3D (Primitive3DContainer aChildren)
 constructor More...
 
const Primitive3DContainergetChildren () const
 data read access More...
 
virtual bool operator== (const BasePrimitive3D &rPrimitive) const override
 compare operator More...
 
virtual Primitive3DContainer get3DDecomposition (const geometry::ViewInformation3D &rViewInformation) const override
 local decomposition. Implementation will just return children More...
 
- Public Member Functions inherited from drawinglayer::primitive3d::BasePrimitive3D
 BasePrimitive3D ()
 
virtual ~BasePrimitive3D () override
 
virtual bool operator== (const BasePrimitive3D &rPrimitive) const
 the ==operator is mainly needed to allow testing newly-created high level primitives against their last incarnation which buffers/holds the decompositions. More...
 
bool operator!= (const BasePrimitive3D &rPrimitive) const
 
virtual basegfx::B3DRange getB3DRange (const geometry::ViewInformation3D &rViewInformation) const
 This method is for places where using the C++ implementation directly is possible. More...
 
virtual sal_uInt32 getPrimitive3DID () const =0
 provide unique ID for fast identifying of known primitive implementations in renderers. More...
 
virtual Primitive3DContainer get3DDecomposition (const geometry::ViewInformation3D &rViewInformation) const
 The default implementation returns an empty sequence. More...
 
virtual css::uno::Sequence< ::css::uno::Reference< ::css::graphic::XPrimitive3D > > SAL_CALL getDecomposition (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) override
 The getDecomposition implementation for UNO API will use getDecomposition from this implementation. More...
 
virtual css::geometry::RealRectangle3D SAL_CALL getRange (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) override
 the getRange default implementation will use getDecomposition to create the range information from merging getRange results from the single local decomposition primitives. More...
 
- Public Member Functions inherited from comphelper::WeakComponentImplHelper< typename... Ifc >
virtual void SAL_CALL acquire () noexcept override
 
virtual void SAL_CALL release () noexcept override
 
virtual void SAL_CALL dispose () noexcept final override
 
virtual void SAL_CALL addEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) final override
 
virtual void SAL_CALL removeEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) final override
 
virtual css::uno::Any SAL_CALL queryInterface (css::uno::Type const &rType) override
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () override
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () override
 
- Public Member Functions inherited from comphelper::WeakComponentImplHelperBase
virtual ~WeakComponentImplHelperBase () override
 
virtual void SAL_CALL dispose () override
 
virtual void SAL_CALL addEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) override
 
virtual void SAL_CALL removeEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) override
 
virtual css::uno::Any SAL_CALL queryInterface (css::uno::Type const &rType) override
 
virtual void disposing (std::unique_lock< std::mutex > &)
 
- Public Member Functions inherited from comphelper::UnoImplBase
virtual ~UnoImplBase ()
 

Private Member Functions

Primitive3DContainer impCreate3DDecomposition () const
 helper: local decomposition More...
 
const Primitive3DContainergetBuffered3DDecomposition () const
 local access methods to maBufferedDecomposition More...
 

Private Attributes

attribute::FillHatchAttribute maHatch
 the hatch definition More...
 
Primitive3DContainer maBuffered3DDecomposition
 the buffered decomposed hatch More...
 

Additional Inherited Members

- Protected Member Functions inherited from comphelper::WeakComponentImplHelperBase
void throwIfDisposed (std::unique_lock< std::mutex > &)
 
- Protected Attributes inherited from comphelper::WeakComponentImplHelperBase
comphelper::OInterfaceContainerHelper4< css::lang::XEventListener > maEventListeners
 
- Protected Attributes inherited from comphelper::UnoImplBase
std::mutex m_aMutex
 
bool m_bDisposed
 

Detailed Description

HatchTexturePrimitive3D class.

HatchTexturePrimitive3D is derived from GroupPrimitive3D, but implements a decomposition which is complicated enough for buffering. Since the group primitive has no default buffering, it is necessary here to add a local buffering mechanism for the decomposition

Definition at line 35 of file hatchtextureprimitive3d.hxx.

Constructor & Destructor Documentation

◆ HatchTexturePrimitive3D()

drawinglayer::primitive3d::HatchTexturePrimitive3D::HatchTexturePrimitive3D ( attribute::FillHatchAttribute  aHatch,
const Primitive3DContainer rChildren,
const basegfx::B2DVector rTextureSize,
bool  bModulate,
bool  bFilter 
)

constructor

Definition at line 270 of file hatchtextureprimitive3d.cxx.

Member Function Documentation

◆ get3DDecomposition()

Primitive3DContainer drawinglayer::primitive3d::HatchTexturePrimitive3D::get3DDecomposition ( const geometry::ViewInformation3D rViewInformation) const
overridevirtual

◆ getBuffered3DDecomposition()

const Primitive3DContainer & drawinglayer::primitive3d::HatchTexturePrimitive3D::getBuffered3DDecomposition ( ) const
inlineprivate

local access methods to maBufferedDecomposition

Definition at line 47 of file hatchtextureprimitive3d.hxx.

References maBuffered3DDecomposition.

Referenced by get3DDecomposition().

◆ getHatch()

const attribute::FillHatchAttribute & drawinglayer::primitive3d::HatchTexturePrimitive3D::getHatch ( ) const
inline

◆ impCreate3DDecomposition()

Primitive3DContainer drawinglayer::primitive3d::HatchTexturePrimitive3D::impCreate3DDecomposition ( ) const
private

helper: local decomposition

Definition at line 40 of file hatchtextureprimitive3d.cxx.

References a, basegfx::B2DPolyPolygon::append(), basegfx::B2DPolygon::append(), drawinglayer::texture::GeoTexSvxHatch::appendTransformations(), basegfx::B3DPolyPolygon::areTextureCoordinatesUsed(), basegfx::utils::clipPolyPolygonOnPolyPolygon(), basegfx::B2DPolyPolygon::count(), basegfx::B3DPolygon::count(), basegfx::B3DPolyPolygon::count(), basegfx::utils::createB3DPolyPolygonFromB2DPolyPolygon(), basegfx::B2DVector::cross(), d, drawinglayer::attribute::Double, basegfx::Tuple2D< typename TYPE >::equal(), basegfx::fTools::equalZero(), basegfx::B3DPolygon::getB3DPoint(), basegfx::B3DPolyPolygon::getB3DPolygon(), drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D::getB3DPolyPolygon(), drawinglayer::primitive3d::GroupPrimitive3D::getChildren(), getHatch(), drawinglayer::primitive3d::BasePrimitive3D::getPrimitive3DID(), basegfx::utils::getRange(), basegfx::B3DPolygon::getTextureCoordinate(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple3D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), basegfx::Tuple3D< typename TYPE >::getY(), basegfx::Tuple3D< typename TYPE >::getZ(), basegfx::B2DHomMatrix::invert(), drawinglayer::attribute::FillHatchAttribute::isFillBackground(), maHatch, PRIMITIVE3D_ID_POLYPOLYGONMATERIALPRIMITIVE3D, basegfx::B2DHomMatrix::set(), basegfx::B3DHomMatrix::set(), basegfx::B2DPolygon::setClosed(), drawinglayer::attribute::Single, basegfx::B2DPolygon::transform(), basegfx::B2DPolyPolygon::transform(), basegfx::B3DPolyPolygon::transform(), and drawinglayer::attribute::Triple.

Referenced by get3DDecomposition().

◆ operator==()

bool drawinglayer::primitive3d::HatchTexturePrimitive3D::operator== ( const BasePrimitive3D rPrimitive) const
overridevirtual

compare operator

Reimplemented from drawinglayer::primitive3d::TexturePrimitive3D.

Definition at line 281 of file hatchtextureprimitive3d.cxx.

References getHatch().

Member Data Documentation

◆ maBuffered3DDecomposition

Primitive3DContainer drawinglayer::primitive3d::HatchTexturePrimitive3D::maBuffered3DDecomposition
private

the buffered decomposed hatch

Definition at line 41 of file hatchtextureprimitive3d.hxx.

Referenced by get3DDecomposition(), and getBuffered3DDecomposition().

◆ maHatch

attribute::FillHatchAttribute drawinglayer::primitive3d::HatchTexturePrimitive3D::maHatch
private

the hatch definition

Definition at line 38 of file hatchtextureprimitive3d.hxx.

Referenced by getHatch(), and impCreate3DDecomposition().


The documentation for this class was generated from the following files: