Footprint decomposition combined with point cloud segmentation for producing valid 3D models