나는이 기능 (How to draw an oval in html5 canvas?)를 사용하여 HTML5 캔버스에 타원을 그리기 해요 :입방체 베 지어 곡선으로 그려진 타원형의 부분을 그리려면 어떻게해야합니까?
function drawEllipse(ctx, x, y, w, h) {
var kappa = .5522848,
ox = (w/2) * kappa, // control point offset horizontal
oy = (h/2) * kappa, // control point offset vertical
xe = x + w, // x-end
ye = y + h, // y-end
xm = x + w/2, // x-middle
ym = y + h/2; // y-middle
ctx.beginPath();
ctx.moveTo(x, ym);
ctx.bezierCurveTo(x, ym - oy, xm - ox, y, xm, y);
ctx.bezierCurveTo(xm + ox, y, xe, ym - oy, xe, ym);
ctx.bezierCurveTo(xe, ym + oy, xm + ox, ye, xm, ye);
ctx.bezierCurveTo(xm - ox, ye, x, ym + oy, x, ym);
ctx.closePath();
ctx.stroke();
}
을 그럼,이 모든 값을 받고 내 안드로이드 애플 리케이션로 전송하고있다. Path 클래스의 cubicTo 메소드를 사용하여 동일한 타원을 그립니다. 이를 위해 위의 함수와 동일한 매개 변수 만 사용하고 매력처럼 작동했습니다.
하지만 이제이 타원의 일부만 그려야하고 Google에서 나를 찾지 못했습니다. 내가 뭘하려는 첫 번째 타원을 가지고있다 :
나는이 이미지를 그릴 수 있도록하고 싶습니다 :
을
어떻게 이런 일을 할 수 있습니까?
은 웹에서 사용할 수없는 Android에서 사용할 수있는 API를 지적 할 수있는 게시물을 편집 할 가치가 있습니다 (canvas2d에는 타원형 drawArc atm이 없습니다. 예 : 원형 만 해당). –