Circular collision detection with negative masks

Circular collision detection with negative masks

I'm currently planning out a game engine which involves circular collision detection, largely because I appreciate the simplicity of it - calculate distance between objects, compare against the sum of their radii.

However, I'm seeing that there are cases where it would be useful to have negative collision masks, i.e., the intersection between them and whatever circle they are applied to does not register collisions.

Is there any reasonably simple way to do this?

In addition, it would be preferable (though not necessary) for such a method to be extendable to cover ellipses in general - I'm imagining that (not counting negative masks) checking ellipsis collisions is the same as with circles, but applying a factor to one or both radii according to their relative offset from the ellipsis/es' major axis.