Interesting. I’ve been playing around with an idea for something similar. I was even calling it a cookie cutter, though I haven’t gotten vary far with the actual coding due to lack of time. However, in my idea, the cutter would be a mesh, with thinkness, and only parts where it intersected would be cut. That way cutting into a sphere, and only wanting to cut one side is easy to manage. Then with that working I was planning to use it as a base for new non-sucky boolean operators.
hmm…though if yours works in just one standard axis, I think I have a good idea without looking at your code how you did it – you’re doing it using the intersection of two lines. I’d have to use the intection of a line and a plane, then test if the point is in both the limits of the line and the plane. Which I don’t think should be all that complicated.
However, I may be better off continuing fron scratch rather than contributing enhancements to your script. In addition the added ability of limiting the cutting to mes surfaces, to make it usable for boolean operations, it needs to not only cut the edges of the cookie where the edges intersect with the cutter’s planes, but it also has to add new points where the edges of the cutter object interset with the faces of the cookie object.