Abstract: Methods for processing a 3D point cloud of a building into polygons using an electronic computing device are presented, the methods including: causing the electronic computing device to receive the 3D point cloud; causing the electronic computing device to segment the 3D point cloud into a number of facades; and causing the electronic computing device to generate a number of polygons representing the number of facades. In some embodiments, the causing the electronic computing device to segment the 3D point cloud into a number of facades includes: performing voxel downsampling operation on the 3D point cloud; calculating a point normal for every point in the voxel downsampled 3D point cloud; and performing region growing to find each of the number of facades.