limpando regiões circulares do Canvas HTML5

Parece que a única maneira de limpar uma região de uma tela é usar o comando clearRect () - eu preciso limpar um círculo (estou mascarando áreas de uma tela preenchida, aponte as luzes neste caso específico) e apesar de todas as tentativas não parece possível.

Eu tentei desenhar um círculo com um valor alfa de 0, mas simplesmente nada apareceria a menos que o alfa fosse maior (o que é contra o ponto: P) - Eu assumo porque um context.fill () desenha como um add ao invés de substituir .

Alguma sugestão sobre como eu posso (rapidamente) limpar círculos para fins de máscara?

questionAnswers(6)

yourAnswerToTheQuestion