public void draw(RenderContext context) { context.beginTransformation(); context.translate(offset.add(new Vector(isVerticallyMirrored ? 1 : 0, 0))); context.translate(rotationCenter); context.scale(scale.multiply(new Vector(isVerticallyMirrored ? -1 : 1, 1))); context.rotate(angle); context.translate(rotationCenter.negate()); drawable.draw(context); context.endTransformation(); }