How to split the intersection between two objects

I am wrapping parts around a circular object (using Grasshopper, though this question should be applicable to vanilla Rhino 5) and I need the objects to butt up against one another, with no gaps, but without intersecting either.

I am effectively wrapping flat boxes around a cylinder, but at an angle, so that they overlap like scales.

What I want to do is determine a surface that forms the middle of the intersecting volume, and use that to cut off half the volume of each box that would intersect with its neighbour.

What is the best way to do this?