I've been thinking a lot about that issue too (there is an issue on the tracker -
issue #515). This basically requires a building that is very understandable by a computer - that is, the computer can find exactly, for example, the external envelope of the building. Then you can find all the East walls, find all their windows, and find all the inner walls connected to them.
But that means: very rigid buildings. However, exceptions can be many. What if a column gets in the way? What if some side has no wall at all? What is a wall is 45°, therefore being both West and North? What if a wall is curved? What is one wall is at the same time inner and outer? The quantity of unpredictable exceptions can be infinite. So a very "powerful" automatic dimensioning tool will also be very limited to canonical cases.
The ideal would be a system that can go "as far as possible" , but would let you adapt manually to your special cases. But so far I haven't had a clue about how to start to design such a system