mirror of
https://github.com/Azornes/Comfyui-LayerForge.git
synced 2026-03-24 14:02:11 -03:00
Add addMask method to MaskTool for overlaying masks
Introduces the addMask method to MaskTool in both JS and TS implementations, allowing new masks to be overlaid without clearing existing ones. Updates CanvasView to use addMask instead of setMask when applying SAM detector results.
This commit is contained in:
@@ -336,4 +336,19 @@ export class MaskTool {
|
||||
this.canvasInstance.render();
|
||||
log.info(`MaskTool updated with a new mask image at correct canvas position (${destX}, ${destY}).`);
|
||||
}
|
||||
|
||||
addMask(image: HTMLImageElement): void {
|
||||
const destX = -this.x;
|
||||
const destY = -this.y;
|
||||
|
||||
// Don't clear existing mask - just add to it
|
||||
this.maskCtx.globalCompositeOperation = 'source-over';
|
||||
this.maskCtx.drawImage(image, destX, destY);
|
||||
|
||||
if (this.onStateChange) {
|
||||
this.onStateChange();
|
||||
}
|
||||
this.canvasInstance.render();
|
||||
log.info(`MaskTool added mask overlay at correct canvas position (${destX}, ${destY}) without clearing existing mask.`);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user