INTEGRATION: CWS aw049_SRC680 (1.36.36.2.4); FILE MERGED
2007/03/20 10:36:45 aw 1.36.36.2.4.1: #i75086# Also take care for negative scaled X or Y and adapt the polygon accordingly
This commit is contained in:
parent
7f2fba8911
commit
068fe5a1fd
1 changed files with 12 additions and 2 deletions
|
@ -4,9 +4,9 @@
|
|||
*
|
||||
* $RCSfile: svdopath.cxx,v $
|
||||
*
|
||||
* $Revision: 1.38 $
|
||||
* $Revision: 1.39 $
|
||||
*
|
||||
* last change: $Author: obo $ $Date: 2007-03-06 14:43:22 $
|
||||
* last change: $Author: ihi $ $Date: 2007-03-26 12:36:38 $
|
||||
*
|
||||
* The Contents of this file are made available subject to
|
||||
* the terms of GNU Lesser General Public License Version 2.1.
|
||||
|
@ -3199,6 +3199,16 @@ void SdrPathObj::TRSetBaseGeometry(const basegfx::B2DHomMatrix& rMatrix, const b
|
|||
// create transformation for polygon, set values at aGeo direct
|
||||
basegfx::B2DHomMatrix aTransform;
|
||||
|
||||
// #i75086#
|
||||
// Given polygon is already scaled (for historical reasons), but not mirrored yet.
|
||||
// Thus, when scale is negative in X or Y, apply the needed mirroring accordingly.
|
||||
if(basegfx::fTools::less(aScale.getX(), 0.0) || basegfx::fTools::less(aScale.getY(), 0.0))
|
||||
{
|
||||
aTransform.scale(
|
||||
basegfx::fTools::less(aScale.getX(), 0.0) ? -1.0 : 1.0,
|
||||
basegfx::fTools::less(aScale.getY(), 0.0) ? -1.0 : 1.0);
|
||||
}
|
||||
|
||||
if(!basegfx::fTools::equalZero(fShearX))
|
||||
{
|
||||
aTransform.shearX(tan(-atan(fShearX)));
|
||||
|
|
Loading…
Reference in a new issue