<canvas width="600" height="400"></canvas>
<script>
// ------------------- Variables
var pantalla = document.querySelector('canvas');
var pincel = pantalla.getContext('2d');
pincel.fillStyle = 'grey';
pincel.fillRect(0, 0, 600, 400);
var puedoDibujar = false;
var colorrect=["red","green","blue"]
//// valores para la paleta
var largo=50;
var ancho=50;
var xrecin=0;
var yrecin=0;
// -------------- FUNCIONES ----------------------------
function dibujarRectangulo (largo,ancho,xrecin,yrecin,color){
for(var i=0;i<colorrect.length;i++)
{
pincel.fillStyle = color[i];
pincel.fillRect(xrecin,yrecin,largo,ancho);
xrecin=xrecin+ancho;
}
}
function dibujarCirculo(evento) {
let color=cambiarColor(evento);
if(puedoDibujar) {
var x = evento.pageX - pantalla.offsetLeft;
var y = evento.pageY - pantalla.offsetTop;
pincel.fillStyle = color;
pincel.beginPath();
pincel.arc(x, y, 5, 0, 2 * 3.14);
pincel.fill();
}
}
function habilitarDibujar() {
puedoDibujar = true;
}
function deshabilitarDibujar() {
puedoDibujar = false;
}
function cambiarColor (evento){
let xrecin=0;
let yrecin=0;
let yNew= yrecin + largo;
let xrecArray=[];
for(var i=0;i<(colorrect.length)+1;i++)
{
xrecArray.push(xrecin)
xrecin=xrecin+ancho;
}
let xAnalisis = evento.pageX - pantalla.offsetLeft;
let yAnalisis= evento.pageY - pantalla.offsetTop;
let count=0;
if (xAnalisis>0 && xAnalisis<xrecArray[1] && yAnalisis< yNew){
var color= colorrect[0];
}
if (xAnalisis>50 && xAnalisis<xrecArray[2] && yAnalisis< yNew){
var color= colorrect[1];
}
if (xAnalisis>100 && xAnalisis<xrecArray[3] && yAnalisis< yNew){
var color= colorrect[2];
}
console.log(xAnalisis);
console.log(yAnalisis);
console.log(color);
console.log(xrecArray);
console.log(yNew);
return color;
}
// ----------------- Declaraciones ------------
dibujarRectangulo(largo,ancho,xrecin,yrecin,colorrect);
pantalla.onmousemove = dibujarCirculo;
pantalla.onmousedown = habilitarDibujar;
pantalla.onmouseup = deshabilitarDibujar;
</script>