diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2009-03-15 14:43:10 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2009-03-15 14:43:10 +0000 |
commit | d75a74bf2a45c3ee051fa424b0e7350f5b77c518 (patch) | |
tree | b3450fc9c64c09aaf4d15b351c4757fe85372ec1 /drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx | |
parent | 1bad9334e8d2683dec2218ac9c632f658d46d8e0 (diff) |
CWS-TOOLING: integrate CWS aw064
2009-02-10 17:39:02 +0100 aw r267569 : #i98314# adapted texture size to object size
2009-02-05 15:26:16 +0100 aw r267427 : #i98532# added mirroring of redline info when RTL is on
2009-02-04 16:31:27 +0100 aw r267392 : #i98314# corrected texturing for E3dPolygonObj's primitive creation
2009-02-02 17:58:49 +0100 aw r267285 : #i98295# corrected orientation of E3dPolygonObj's polygon definition on it's way to prmitives
2009-02-02 17:57:32 +0100 aw r267283 : #i98295# optimized SdrPolyPolygonPrimitive3D::createLocalDecomposition data flow
Diffstat (limited to 'drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx')
-rw-r--r-- | drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx b/drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx index e27b8b43fe93..a0813d3202a8 100644 --- a/drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx +++ b/drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx @@ -62,6 +62,38 @@ namespace drawinglayer ::std::vector< basegfx::B3DPolyPolygon > aFill; aFill.push_back(getPolyPolygon3D()); + // get full range + const basegfx::B3DRange aRange(getRangeFrom3DGeometry(aFill)); + + // #i98295# normal creation + if(getSdrLFSAttribute().getFill()) + { + if(::com::sun::star::drawing::NormalsKind_SPHERE == getSdr3DObjectAttribute().getNormalsKind()) + { + applyNormalsKindSphereTo3DGeometry(aFill, aRange); + } + else if(::com::sun::star::drawing::NormalsKind_FLAT == getSdr3DObjectAttribute().getNormalsKind()) + { + applyNormalsKindFlatTo3DGeometry(aFill); + } + + if(getSdr3DObjectAttribute().getNormalsInvert()) + { + applyNormalsInvertTo3DGeometry(aFill); + } + } + + // #i98314# texture coordinates + if(getSdrLFSAttribute().getFill()) + { + applyTextureTo3DGeometry( + getSdr3DObjectAttribute().getTextureProjectionX(), + getSdr3DObjectAttribute().getTextureProjectionY(), + aFill, + aRange, + getTextureSize()); + } + if(getSdrLFSAttribute().getFill()) { // add fill |