1. A method of constructing a virtual 3D model of one or more objects within a scene, said virtual 3D model containing one or more flat faces on at least one of the objects constructed, said method comprising: receiving, through a data interface, data describing a set of measurements of observed portions of the one or more objects in the scene; selecting a set of one or more candidate shapes; specifying a virtual spatial region of interest; generating virtual primitive geometries; calculating candidate positionings of candidate shapes; and calculating a score for each combination of shape parameters and positioning and creating a virtual 3D model of an object based on the combination of shape and positioning with the best score.