ctx.drawImage(pic1, 0, 0)
        ctx.drawImage(pic2, 0, 0)
        ctx.globalCompositeOperation = 'destination-out'  
        ctx.drawImage(pic3, 75, 0)
 
ctx.globalCompositeOperation = 'destination-out'
оставляет все что находится вне круга, область внутри круга делает прозрачной
задача: маскировать кругом 
только синий квадрат - вывести ту часть где они пересекаются, черный квадрат не должен маскироваться
 
этот скрин сделал во флеше с помощью слоев