Building with multiple cores [or pinching and threading multiple surfaces

Hi, I’m looking for a plug-in, a component, or a definition -or a way- to basically get the brep(s) whose floorplan surface would be shared region (or product of the intersection) of multiple floor surfaces.

As well, if at a point there isn’t such intersection, I might be needing a way to determine that from that point upwards or downwards, a new elevator shaft should be defined, with the intersection with the floor of above or below.

I’ve tried many ways, intersecting, intersecting and culling, but it doesn’t seem to come up as possible, and the only place I read of someone who developed a script to do this, he/she said it was propietary code.

Rewording the issue, so that an “effective” question is asked…I’ve managed to flatten all the curves to the xy plane, and to split the 2d convex hull of all the points of all the floors (thus the surface occupied by the union of all the floor’s surfaces) by those curves. What I’m having trouble is with finding a way to logically define and pick the splitted region that is usable in N floors.

And given a splitted surface that would be usable in N floors, being N < number of floors, to find other splitted surface that would aproximate to be usable in (number of floors - N)