A computer implemented method of fitting a plane of a three-dimensional model of a real world subject, the model comprising vertices interconnected by line segments, the plane and model being represented by data in computer memory, the method comprising: receiving a collection of digital photos, the photos being taken from different positions relative to the real world subject; analyzing the photos to extract features of the real world subject in the photos; identifying features common to overlapping photos; using the features common to overlapping photos to determine virtual cameras for the respective photos, wherein the virtual camera of a photo lies on a line normal to the photo and at a distance corresponding to the respective focal length; using the photos and the determined virtual cameras to generate a point cloud of features, wherein the points are an estimation of the location of the respective features of the subject in three-dimensional space; accessing the digital photos, the point cloud and the virtual cameras; displaying a first photo of the collection of photos in two dimensions including re-projected points of the point cloud that fall on the first photo; selecting, based on user selection of a region of the first photo corresponding to the plane to be fitted, from the point cloud a set of points including the re-projected points which are contained in the selected region of the first photo; analyzing the first photo to identify lines of the real-world subject that are parallel and converge on a vanishing point relative to the first photo; deriving, from the parallel lines and the three-dimensional orientation of the first photo as determined by the position of the related virtual camera, a three-dimensional direction of the vanishing point, the three-dimensional direction of the vanishing point representing a vanishing direction; fitting the plane of the three-dimensional model to the vanishing direction and two points in the set of points, or fitting the plane of the three-dimensional model to the vanishing direction, one point in the set of points and an additional vanishing direction derived from a second photo in the collection of photos; and displaying a rendering of the model according to the fitted plane. receiving a collection of digital photos, the photos being taken from different positions relative to the real world subject; analyzing the photos to extract features of the real world subject in the photos; identifying features common to overlapping photos; using the features common to overlapping photos to determine virtual cameras for the respective photos, wherein the virtual camera of a photo lies on a line normal to the photo and at a distance corresponding to the respective focal length; using the photos and the determined virtual cameras to generate a point cloud of features, wherein the points are an estimation of the location of the respective features of the subject in three-dimensional space; accessing the digital photos, the point cloud and the virtual cameras; displaying a first photo of the collection of photos in two dimensions including re-projected points of the point cloud that fall on the first photo; selecting, based on user selection of a region of the first photo corresponding to the plane to be fitted, from the point cloud a set of points including the re-projected points which are contained in the selected region of the first photo; analyzing the first photo to identify lines of the real-world subject that are parallel and converge on a vanishing point relative to the first photo; deriving, from the parallel lines and the three-dimensional orientation of the first photo as determined by the position of the related virtual camera, a three-dimensional direction of the vanishing point, the three-dimensional direction of the vanishing point representing a vanishing direction; fitting the plane of the three-dimensional model to the vanishing direction and two points in the set of points, or fitting the plane of the three-dimensional model to the vanishing direction, one point in the set of points and an additional vanishing direction derived from a second photo in the collection of photos; and displaying a rendering of the model according to the fitted plane.