Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Minha solução foi um tanto diferente, numa situação real, ela faria sentido?

<canvas width="600" height="400"></canvas>

<script>

    var tela = document.querySelector('canvas');
    var pincel = tela.getContext('2d');

/*
    pincel.fillStyle = 'black'
    pincel.beginPath();
    pincel.moveTo(50, 50);
    pincel.lineTo(50, 400);
    pincel.lineTo(400,400);
    pincel.fill();

    pincel.fillStyle = 'white'
    pincel.beginPath();
    pincel.moveTo(100, 175);
    pincel.lineTo(100, 350);
    pincel.lineTo(275, 350);
    pincel.fill();
*/

    function desenhaEsquadro(xa, ya, xc, yc, cor) {
        pincel.fillStyle = cor
        pincel.beginPath();
        pincel.moveTo(xa, ya);
        pincel.lineTo(xa, yc);
        pincel.lineTo(xc, yc);
        pincel.fill();

        pincel.fillStyle = 'white'
        pincel.beginPath();
        pincel.moveTo(xa * 2, ya * 3.5);
        pincel.lineTo(xa * 2, yc - xa);
        pincel.lineTo(xa * 5.5, yc - xa);
        pincel.fill();

}

    desenhaEsquadro(50, 50, 400, 400, 'black');
1 resposta
solução!

No seu caso, você transformou seu código em uma função permitindo o seu re-uso.

Numa situação real isso é muito útil, pois permite você, nesse exemplo, desenhar vários esquadros alterando apenas as informações e tamanhos relevantes.