diff options
Diffstat (limited to 'include/drawinglayer/texture/texture.hxx')
-rw-r--r-- | include/drawinglayer/texture/texture.hxx | 52 |
1 files changed, 34 insertions, 18 deletions
diff --git a/include/drawinglayer/texture/texture.hxx b/include/drawinglayer/texture/texture.hxx index 0fa666d19411..daa0348103a3 100644 --- a/include/drawinglayer/texture/texture.hxx +++ b/include/drawinglayer/texture/texture.hxx @@ -76,14 +76,14 @@ namespace drawinglayer { protected: basegfx::ODFGradientInfo maGradientInfo; - basegfx::B2DRange maTargetRange; + basegfx::B2DRange maDefinitionRange; basegfx::BColor maStart; basegfx::BColor maEnd; double mfBorder; public: GeoTexSvxGradient( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -96,7 +96,7 @@ namespace drawinglayer // virtual base methods virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) = 0; + basegfx::BColor& rOuterColor) = 0; // data access const basegfx::BColor& getStart() const { return maStart; } @@ -113,9 +113,15 @@ namespace drawinglayer { class DRAWINGLAYER_DLLPUBLIC GeoTexSvxGradientLinear : public GeoTexSvxGradient { + protected: + double mfUnitMinX; + double mfUnitWidth; + double mfUnitMaxY; + public: GeoTexSvxGradientLinear( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, + const basegfx::B2DRange& rOutputRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -125,7 +131,7 @@ namespace drawinglayer virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) SAL_OVERRIDE; + basegfx::BColor& rOuterColor) SAL_OVERRIDE; virtual void modifyBColor(const basegfx::B2DPoint& rUV, basegfx::BColor& rBColor, double& rfOpacity) const SAL_OVERRIDE; }; } // end of namespace texture @@ -139,9 +145,14 @@ namespace drawinglayer { class DRAWINGLAYER_DLLPUBLIC GeoTexSvxGradientAxial : public GeoTexSvxGradient { + protected: + double mfUnitMinX; + double mfUnitWidth; + public: GeoTexSvxGradientAxial( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, + const basegfx::B2DRange& rOutputRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -151,7 +162,7 @@ namespace drawinglayer virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) SAL_OVERRIDE; + basegfx::BColor& rOuterColor) SAL_OVERRIDE; virtual void modifyBColor(const basegfx::B2DPoint& rUV, basegfx::BColor& rBColor, double& rfOpacity) const SAL_OVERRIDE; }; } // end of namespace texture @@ -167,7 +178,7 @@ namespace drawinglayer { public: GeoTexSvxGradientRadial( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -178,7 +189,7 @@ namespace drawinglayer virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) SAL_OVERRIDE; + basegfx::BColor& rOuterColor) SAL_OVERRIDE; virtual void modifyBColor(const basegfx::B2DPoint& rUV, basegfx::BColor& rBColor, double& rfOpacity) const SAL_OVERRIDE; }; } // end of namespace texture @@ -194,7 +205,7 @@ namespace drawinglayer { public: GeoTexSvxGradientElliptical( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -206,7 +217,7 @@ namespace drawinglayer virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) SAL_OVERRIDE; + basegfx::BColor& rOuterColor) SAL_OVERRIDE; virtual void modifyBColor(const basegfx::B2DPoint& rUV, basegfx::BColor& rBColor, double& rfOpacity) const SAL_OVERRIDE; }; } // end of namespace texture @@ -222,7 +233,7 @@ namespace drawinglayer { public: GeoTexSvxGradientSquare( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -234,7 +245,7 @@ namespace drawinglayer virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) SAL_OVERRIDE; + basegfx::BColor& rOuterColor) SAL_OVERRIDE; virtual void modifyBColor(const basegfx::B2DPoint& rUV, basegfx::BColor& rBColor, double& rfOpacity) const SAL_OVERRIDE; }; } // end of namespace texture @@ -250,7 +261,7 @@ namespace drawinglayer { public: GeoTexSvxGradientRect( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, const basegfx::BColor& rStart, const basegfx::BColor& rEnd, sal_uInt32 nSteps, @@ -262,7 +273,7 @@ namespace drawinglayer virtual void appendTransformationsAndColors( std::vector< B2DHomMatrixAndBColor >& rEntries, - basegfx::BColor& rOutmostColor) SAL_OVERRIDE; + basegfx::BColor& rOuterColor) SAL_OVERRIDE; virtual void modifyBColor(const basegfx::B2DPoint& rUV, basegfx::BColor& rBColor, double& rfOpacity) const SAL_OVERRIDE; }; } // end of namespace texture @@ -277,15 +288,20 @@ namespace drawinglayer class DRAWINGLAYER_DLLPUBLIC GeoTexSvxHatch : public GeoTexSvx { protected: + basegfx::B2DRange maOutputRange; basegfx::B2DHomMatrix maTextureTransform; basegfx::B2DHomMatrix maBackTextureTransform; double mfDistance; double mfAngle; sal_uInt32 mnSteps; + /// bitfield + bool mbDefinitionRangeEqualsOutputRange : 1; + public: GeoTexSvxHatch( - const basegfx::B2DRange& rTargetRange, + const basegfx::B2DRange& rDefinitionRange, + const basegfx::B2DRange& rOutputRange, double fDistance, double fAngle); virtual ~GeoTexSvxHatch(); @@ -293,7 +309,7 @@ namespace drawinglayer // compare operator virtual bool operator==(const GeoTexSvx& rGeoTexSvx) const SAL_OVERRIDE; - virtual void appendTransformations(::std::vector< basegfx::B2DHomMatrix >& rMatrices); + void appendTransformations(::std::vector< basegfx::B2DHomMatrix >& rMatrices); double getDistanceToHatch(const basegfx::B2DPoint& rUV) const; const basegfx::B2DHomMatrix& getBackTextureTransform() const; }; @@ -332,7 +348,7 @@ namespace drawinglayer // compare operator virtual bool operator==(const GeoTexSvx& rGeoTexSvx) const SAL_OVERRIDE; - virtual void appendTransformations(::std::vector< basegfx::B2DHomMatrix >& rMatrices); + void appendTransformations(::std::vector< basegfx::B2DHomMatrix >& rMatrices); }; } // end of namespace texture } // end of namespace drawinglayer |