RotationBy now accepts radians, to be consistent among methods

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14087 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jérôme Duval
2005-08-30 09:57:37 +00:00
parent b4d0e9b546
commit a37ea917be
3 changed files with 5 additions and 6 deletions
@@ -280,11 +280,11 @@ Transformable::TranslateBy(BPoint offset)
// RotateBy // RotateBy
void void
Transformable::RotateBy(BPoint origin, double degrees) Transformable::RotateBy(BPoint origin, double radians)
{ {
if (degrees != 0.0) { if (radians != 0.0) {
multiply(agg::trans_affine_translation(-origin.x, -origin.y)); multiply(agg::trans_affine_translation(-origin.x, -origin.y));
multiply(agg::trans_affine_rotation(degrees * (PI / 180.0))); multiply(agg::trans_affine_rotation(radians));
multiply(agg::trans_affine_translation(origin.x, origin.y)); multiply(agg::trans_affine_translation(origin.x, origin.y));
TransformationChanged(); TransformationChanged();
} }
@@ -55,7 +55,7 @@ class Transformable : public BArchivable,
// some convenience functions // some convenience functions
virtual void TranslateBy(BPoint offset); virtual void TranslateBy(BPoint offset);
virtual void RotateBy(BPoint origin, double degrees); virtual void RotateBy(BPoint origin, double radians);
virtual void ScaleBy(BPoint origin, double xScale, double yScale); virtual void ScaleBy(BPoint origin, double xScale, double yScale);
virtual void ShearBy(BPoint origin, double xShear, double yShear); virtual void ShearBy(BPoint origin, double xShear, double yShear);
@@ -82,9 +82,8 @@ AGGTextRenderer::SetFont(const ServerFont &font)
bool success = true; bool success = true;
// construct an embedded transformation (rotate & shear) // construct an embedded transformation (rotate & shear)
Transformable transform; Transformable transform;
// TODO: check if Transformable::ShearBy should accept degrees instead of radians
transform.ShearBy(B_ORIGIN, (90.0 - font.Shear()) * PI / 180.0, 0.0); transform.ShearBy(B_ORIGIN, (90.0 - font.Shear()) * PI / 180.0, 0.0);
transform.RotateBy(B_ORIGIN, -font.Rotation()); transform.RotateBy(B_ORIGIN, -font.Rotation() * PI / 180.0);
bool load = font.GetFamilyAndStyle() != fLastFamilyAndStyle || bool load = font.GetFamilyAndStyle() != fLastFamilyAndStyle ||
transform != fEmbeddedTransformation; transform != fEmbeddedTransformation;