Я пытаюсь нарисовать прямоугольник с закругленными углами. У меня есть путь javascript, который делает это, но метод javascript arcTo принимает прямоугольник (чтобы определить его овал), а затем один параметр, который устанавливает развертку.
Однако в версии Android есть три параметра. прямоугольник овал (который, я думаю, я правильно определил), а затем startAngle и sweepAngle (который я не понимаю), но мои дуги не выглядят ничем, как то, что я ожидаю, когда я лапшу с тем, как я Думаю, они должны работать.
Кто-нибудь знает хороший учебник по этому поводу?
В частности, я пытаюсь понять, как выглядят два параметра, если я попытаюсь нарисовать дугу (на циферблате) с 12 до 3, а затем предположим, что у меня была строка, которая бежала вниз от 3 и затем необходимо за углом от 3 до 6 и так далее.
Здесь мой код (не обращайте на него цифры дуги сейчас... что только последняя итерация моего угадывания о том, как это может работать, провалившись на предыдущие, более разумные попытки):
Path ctx = new Path();
ctx.moveTo(X+5,Y); //A
ctx.lineTo(X+W-5,Y);//B
ctx.arcTo(new RectF(X+W, Y, X+W, Y+5), -180, 90); //B arc
ctx.lineTo(X+W,Y+H-5); //C
ctx.arcTo(new RectF(X+W,Y+H,X+W-5,Y+H),90,180); //C arc
ctx.lineTo(X+W/2 +6,Y+H);
ctx.lineTo(X+W/2,Y+H+8);
ctx.lineTo(X+W/2-6,Y+H);
ctx.lineTo(X+5,Y+H);
ctx.arcTo(new RectF(X,Y+H,X,Y+H-5),180,270);
ctx.lineTo(X,Y+5);
ctx.arcTo(new RectF(X,Y,X+5,Y),270,0);
Paint p = new Paint();
p.setColor(0xffff00ff);
canvas.drawPath(ctx, p);
очень обязан.