I have developed a DC concept which may be built up to suit your requirements, the idea is to nest the floors lower in the model, grouped so by selecting the level in outliner, one can explode twice and select the component for redraw for facearea() to correctly determine the floor areas. The method may seem a bit clunky to begin with, but once a work flow is established, a ruby script will make it but a button or key press.
Open the file and Right click and save the DC to a component folder.
Now, alter the building via the options, … then select the sub group “explode twice” via outliner…right click menu and do that
once twice exploded, right click the component and via Dynamic components select redraw
now the area and footprint is calculated,
You can set short cut keys to these commands to make it a bit quicker, however a script to be developed can do this operation and lock the options to read only
Now if you want to alter this building, via the right click menu, DC, swap with the previously saved
floor areas.skp (70.0 KB)