Pregunta

Parece que alguien mencionó este error a los foros de Chromium, pero no hubo resolución, así que me pregunto si alguien simplemente conoce una solución.

El problema es tratar de renderizar un medio círculo en sentido antihorario en Chrome, utilizando el elemento de lona. En cambio, esto hace que un círculo completo:

var ctx = document.getElementById('can').getContext('2d');
ctx.beginPath();
ctx.arc(50,50,50,0,Math.PI*3,true);
ctx.fill();
ctx.closePath();

Aquí hay un violín, ver en no cromo, luego en Chrome: violín

¿Fue útil?

Solución

El error probablemente proviene de esta parte de la especificación:

Si el argumento antihoras se omite o se falsa y el estatemo endangle es igual o mayor que 2π, o, si el argumento antihorario es verdadero y el endangle de inicio es igual o mayor que 2π, entonces el arco es toda la circunferencia de este círculo .

Chrome no parece respetar la segunda parte de esa declaración (es decir, cuando anticlockwise es true).

¿Por qué no normalizar su punto final?

var end = 3 * Math.PI;
while (end > 2 * Math.PI) {
    end -= 2 * Math.PI;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top