On Mar 5, 3:25 am, Bart <bvandep...@gmail.com> wrote: > Hi, I'd like to display a given String in a circle (so bend the string > so that the end of the string touches the beginning of the string). > And Then I'd like to let the user rotate the circle by grabbing and > dragging it clockwise or counterclockwise. > Do you guys know what would be the best (simplest, smoothest) way to > do this? I already saw that using drawOnPath i can draw text in a > circle. Do you have any tips on how to proceed with dragging and > rotating the textcircle?
I've done this, and as mentioned, Canvas.translate and canvas.rotate are the way to go. If you are just using a hold and drag, you wouldn't have to worry so much about angular velocity. Code like this would work: @Override public boolean onTouchEvent(MotionEvent e) { float x = e.getX(); float y = e.getY(); switch (e.getAction()) { case MotionEvent.ACTION_MOVE: //find an approximate angle between them. float dx = x-cx; float dy = y-cy; double a=Math.atan2(dy,dx); float dpx= mPreviousX-cx; float dpy= mPreviousY-cy; double b=Math.atan2(dpy, dpx); double diff = a-b; this.bearing -= Math.toDegrees(diff); this.invalidate(); } mPreviousX = x; mPreviousY = y; return true; } Nathan -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en