Tengo un lienzo que tiene algunas líneas dibujadas por el movimiento del mouse. Quiero que la línea solo dure unos segundos antes de eliminarse. Un poco como girar una cinta alrededor de donde tiene una longitud determinada. Estoy usando lineTo para dibujar las líneas en el lienzo. Hice referencia a un poco del código desde aquí.Limpiar líneas de canvas de javascript con líneas que se intersectan
El problema
puedo borrar la línea mediante el uso de clearRect() pero esto borra literalmente todo y el problema es que si se cruza la línea que salga del área de intersección también. aquí es mi violín clic y arrastre dentro del cuadrante inferior derecho:
rect clara me daría esto:
En resumen
clearRect simplemente borra todo, me quiere "dibujar" dinámicamente la línea para que tenga una vida útil. Y no puedo por la vida de mí encontrar algo para hacerlo ...
¡Cualquier ayuda sería increíble!
para el registro: nunca debe hacer algo como esto: 'cepillo = eval (" nuevo "+ CEPILLOS [0] +" (contexto) ");' eval es en general malo, no hay casi nada que no se puede hacer sin usar eval. el ejemplo anterior es equivalente a 'brush = BRUSHES [0] (context)' – zaphod1984
Sí, hice referencia a la fuente desde algún lugar, donde había muchos pinceles diferentes. Hay una gran cantidad de limpieza de código y reescritura que estoy haciendo. Eval ha salvado mi tocino unas cuantas veces. Tengo que decir ... – Alex