Author: alg
Date: Mon Apr 8 18:04:41 2013
New Revision: 1465696
URL: http://svn.apache.org/r1465696
Log:
i121932 fixed ODF CustomShape import/export
Modified:
openoffice/trunk/main/svx/source/svdraw/svdoashp.cxx
Modified: openoffice/trunk/main/svx/source/svdraw/svdoashp.cxx
URL:
http://svn.apache.org/viewvc/openoffice/trunk/main/svx/source/svdraw/svdoashp.cxx?rev=1465696&r1=1465695&r2=1465696&view=diff
==============================================================================
--- openoffice/trunk/main/svx/source/svdraw/svdoashp.cxx (original)
+++ openoffice/trunk/main/svx/source/svdraw/svdoashp.cxx Mon Apr 8 18:04:41
2013
@@ -3343,7 +3343,8 @@ void SdrObjCustomShape::TRSetBaseGeometr
if(!basegfx::fTools::equalZero(fShearX))
{
GeoStat aGeoStat;
- aGeoStat.nShearWink = FRound((atan(fShearX) / F_PI180) * 100.0);
+ // #121932# do *not* forget to invert shearX(!)
+ aGeoStat.nShearWink = FRound((atan(-fShearX) / F_PI180) *
100.0);
aGeoStat.RecalcTan();
Shear(Point(), aGeoStat.nShearWink, aGeoStat.nTan, sal_False);
}
@@ -3423,11 +3424,11 @@ sal_Bool SdrObjCustomShape::TRGetBaseGeo
}
// Polygon wenden und etwas schieben
Polygon aPol0(aPol);
- aPol[0]=aPol0[3]; // This was WRONG for vertical (!)
- aPol[1]=aPol0[2];
- aPol[2]=aPol0[1];
- aPol[3]=aPol0[0];
- aPol[4]=aPol0[3];
+ aPol[0]=aPol0[1]; // This was WRONG for vertical (!)
+ aPol[1]=aPol0[0]; // #121932# Despite my own coment
above
+ aPol[2]=aPol0[3]; // it was *not* wrong even when the
reordering
+ aPol[3]=aPol0[2]; // *seems* to be specific for
X-Mirrorings. Oh
+ aPol[4]=aPol0[1]; // will I be happy when this old
stuff is |gone| with aw080 (!)
Poly2Rect(aPol,aRectangle,aNewGeo);
}
}