In the union function, does it happen automatically from the origin or do we have to specify the orientation of each object that we are combining together for that operation ?
Not sure why the origin would come into play here, but yes, if you provide only a description of the boundary of each shape you would technically also need to pick an orientation. Usually this choice is easy: pick the orientation that makes the set compact (e.g., the inside rather than outside of a sphere). Also, these shapes are sometimes defined by a function that is negative inside the shape and positive outside; in this case the orientation is well-defined.
This method seems to be easily understood by humans but needs extra mathematical calculation? Does it perform well in checking inside/outside as algebraic surfaces do?
@echo Yes, CSG is just as easy---we did a small example in class, but the basic idea is to (i) test each "leaf" shape independently, and then (ii) combine the results of these leaf tests with logical statements (and, not, or, etc.) to get a test that represents the desired shape.
For instance, assuming you already know the truth values of A and B (e.g., A=true/false, B=true/false according to whether a point is inside/outside each of these shapes), how would you combine these boolean values to do a test for the shape "A minus B"?