LibreOffice Module drawinglayer (master) 1
|
SdrPolyPolygonPrimitive3D class. More...
#include <sdrpolypolygonprimitive3d.hxx>
Public Member Functions | |
SdrPolyPolygonPrimitive3D (basegfx::B3DPolyPolygon aPolyPolygon3D, const basegfx::B3DHomMatrix &rTransform, const basegfx::B2DVector &rTextureSize, const attribute::SdrLineFillShadowAttribute3D &rSdrLFSAttribute, const attribute::Sdr3DObjectAttribute &rSdr3DObjectAttribute) | |
constructor More... | |
const basegfx::B3DPolyPolygon & | getPolyPolygon3D () const |
data access More... | |
virtual bool | operator== (const BasePrimitive3D &rPrimitive) const override |
compare operator More... | |
virtual basegfx::B3DRange | getB3DRange (const geometry::ViewInformation3D &rViewInformation) const override |
get range More... | |
Public Member Functions inherited from drawinglayer::primitive3d::SdrPrimitive3D | |
SdrPrimitive3D (basegfx::B3DHomMatrix aTransform, const basegfx::B2DVector &rTextureSize, attribute::SdrLineFillShadowAttribute3D aSdrLFSAttribute, const attribute::Sdr3DObjectAttribute &rSdr3DObjectAttribute) | |
constructor More... | |
const basegfx::B3DHomMatrix & | getTransform () const |
data read access More... | |
const basegfx::B2DVector & | getTextureSize () const |
const attribute::SdrLineFillShadowAttribute3D & | getSdrLFSAttribute () const |
const attribute::Sdr3DObjectAttribute & | getSdr3DObjectAttribute () const |
virtual bool | operator== (const BasePrimitive3D &rPrimitive) const override |
compare operator More... | |
Public Member Functions inherited from drawinglayer::primitive3d::BufferedDecompositionPrimitive3D | |
BufferedDecompositionPrimitive3D () | |
virtual Primitive3DContainer | get3DDecomposition (const geometry::ViewInformation3D &rViewInformation) const override |
The getDecomposition default implementation will on demand use create3DDecomposition() if maBuffered3DDecomposition is empty. 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 | |
virtual Primitive3DContainer | create3DDecomposition (const geometry::ViewInformation3D &rViewInformation) const override |
local decomposition. More... | |
Private Attributes | |
basegfx::B3DPolyPolygon | maPolyPolygon3D |
the planar polyPolygon evtl with normals and texture coordinates More... | |
Additional Inherited Members | |
Protected Member Functions inherited from drawinglayer::primitive3d::SdrPrimitive3D | |
basegfx::B3DRange | getStandard3DRange () const |
Standard implementation for primitive3D which will use maTransform as range and expand by evtl. More... | |
basegfx::B3DRange | get3DRangeFromSlices (const Slice3DVector &rSlices) const |
implementation for primitive3D which will use given Slice3Ds and expand by evtl. More... | |
Protected Member Functions inherited from drawinglayer::primitive3d::BufferedDecompositionPrimitive3D | |
const Primitive3DContainer & | getBuffered3DDecomposition () const |
access methods to maBuffered3DDecomposition. More... | |
void | setBuffered3DDecomposition (const Primitive3DContainer &rNew) |
virtual Primitive3DContainer | create3DDecomposition (const geometry::ViewInformation3D &rViewInformation) const |
method which is to be used to implement the local decomposition of a 2D primitive. More... | |
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 |
SdrPolyPolygonPrimitive3D class.
This 3D primitive defines a PolyPolgon in space which may have Line- and FillStyles and extra 3D surface attributes. It is assumed that the given 3D PolyPolgon (which may contain texture and normal information) is planar in 3D.
The decomposition will include all needed 3D data for visualisation, including FatLines and fill styles.
Definition at line 40 of file sdrpolypolygonprimitive3d.hxx.
drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D::SdrPolyPolygonPrimitive3D | ( | basegfx::B3DPolyPolygon | aPolyPolygon3D, |
const basegfx::B3DHomMatrix & | rTransform, | ||
const basegfx::B2DVector & | rTextureSize, | ||
const attribute::SdrLineFillShadowAttribute3D & | rSdrLFSAttribute, | ||
const attribute::Sdr3DObjectAttribute & | rSdr3DObjectAttribute | ||
) |
constructor
Definition at line 120 of file sdrpolypolygonprimitive3d.cxx.
|
overrideprivatevirtual |
local decomposition.
Reimplemented from drawinglayer::primitive3d::BufferedDecompositionPrimitive3D.
Definition at line 35 of file sdrpolypolygonprimitive3d.cxx.
References drawinglayer::primitive3d::Primitive3DContainer::append(), drawinglayer::primitive3d::applyNormalsInvertTo3DGeometry(), drawinglayer::primitive3d::applyNormalsKindFlatTo3DGeometry(), drawinglayer::primitive3d::applyNormalsKindSphereTo3DGeometry(), drawinglayer::primitive3d::applyTextureTo3DGeometry(), basegfx::B3DPolyPolygon::clearNormals(), basegfx::B3DPolyPolygon::clearTextureCoordinates(), count, drawinglayer::primitive3d::create3DPolyPolygonFillPrimitives(), drawinglayer::primitive3d::create3DPolyPolygonLinePrimitives(), drawinglayer::primitive3d::createHiddenGeometryPrimitives3D(), drawinglayer::primitive3d::createShadowPrimitive3D(), getPolyPolygon3D(), drawinglayer::primitive3d::getRangeFrom3DGeometry(), drawinglayer::primitive3d::SdrPrimitive3D::getSdr3DObjectAttribute(), drawinglayer::primitive3d::SdrPrimitive3D::getSdrLFSAttribute(), drawinglayer::primitive3d::SdrPrimitive3D::getTextureSize(), and drawinglayer::primitive3d::SdrPrimitive3D::getTransform().
|
overridevirtual |
get range
Reimplemented from drawinglayer::primitive3d::BasePrimitive3D.
Definition at line 143 of file sdrpolypolygonprimitive3d.cxx.
References count, basegfx::fTools::equalZero(), drawinglayer::attribute::SdrLineFillShadowAttribute3D::getLine(), getPolyPolygon3D(), basegfx::utils::getRange(), drawinglayer::primitive3d::SdrPrimitive3D::getSdrLFSAttribute(), drawinglayer::primitive3d::SdrPrimitive3D::getTransform(), drawinglayer::attribute::SdrLineAttribute::getWidth(), basegfx::B3DRange::grow(), drawinglayer::attribute::SdrLineAttribute::isDefault(), and basegfx::B3DRange::transform().
|
inline |
data access
Definition at line 59 of file sdrpolypolygonprimitive3d.hxx.
Referenced by create3DDecomposition(), getB3DRange(), and operator==().
|
overridevirtual |
compare operator
Reimplemented from drawinglayer::primitive3d::SdrPrimitive3D.
Definition at line 131 of file sdrpolypolygonprimitive3d.cxx.
References getPolyPolygon3D().
|
private |
the planar polyPolygon evtl with normals and texture coordinates
Definition at line 44 of file sdrpolypolygonprimitive3d.hxx.