hi glv,
I got the problem solved.
and needle (pointer) of the meter now turns beautifully well.
Your reference code helped.
I saw what i was doing wrong which made the needle (pointer) to rotate at random position.
It was a case of image(needle, 0, 0);
After translating to the new axis and rotating. I need to draw the image of the needle(pointer) by adjusting to image(needle, -23, 21);
Thanks to all who gave advice.