title: Issue with Canvas.rotate() in Android .How does it exactly work?
body: <p>Please find the code of my onDraw method below(.I'm trying to rotate the canvas(//Rotate call -b) by 25 degrees after drawing the arc .But i find that the arc is still drawn from 0 to 50 degrees.I was expecting it to move by another 25 degrees.</p>
  
  <pre><code>public class CustomView extends View {
  
      public CustomView(Context context) {
          super(context);
  
      }
  
      public CustomView(Context context, AttributeSet attrs) {
          super(context, attrs);
  
      }
      protected void onDraw(Canvas canvas) {
              super.onDraw(canvas);
  
              Paint paint = new Paint();
              paint.setColor(Color.RED);
              int px = getMeasuredWidth() / 2;
              int py = getMeasuredHeight() / 2;
  
              // radius - min 
              int radius = 130;
  
              // Defining bounds for the oval for the arc to be drawn
              int left = px - radius;
              int top = py - radius;
              int right = left + (radius * 2);
              int bottom = top + (radius * 2);
  
              RectF rectF = new RectF(left, top, right, bottom);
              paint.setColor(Color.RED);
              paint.setStyle(Style.FILL);
  
                  //canvas.rotate(25,px,py);//Rotate call -a
  
          canvas.drawArc(rectF, 0, 50, true, paint);
  
              canvas.rotate(25,px,py);//Rotate call  -b
  
          }
  }
  </code></pre>
  
  <p>But if i place the rotate call(//Rotate call  -a) before drawing the arc i see that the arc drawn is shifted by 25 degrees more .What exactly is happening here? Can someone explain to me?</p>
  
  <p>Thanks</p>