A system for generating a three-dimensional geometric model of a structure, the system including: a) a portable sensing device that can be transported through the structure, wherein the sensing device includes one or more sensors that generate sensor data at least partially indicative of a position of the sensing device relative to at least part of the structure; b) at least one electronic processing device that: i) determines a captured map of at least part of the structure using the sensor data; ii) determines at least part of a path traversed by the sensing device using the sensor data; iii) identifies one or more model features indicative of structural features and/or objects within the structure using the part of the path and the captured map; and, iv) generates a three-dimensional geometric model of the structure using the model features characterised in that the at least one electronic processing device identifies one or more model features at least in part using a volume growing process, by: generating a number of seed volumes along the path; at least one of growing and combining the seed volumes to determine empty volumes; and, using the empty volumes at least in part to identify model features. a) a portable sensing device that can be transported through the structure, wherein the sensing device includes one or more sensors that generate sensor data at least partially indicative of a position of the sensing device relative to at least part of the structure; b) at least one electronic processing device that: i) determines a captured map of at least part of the structure using the sensor data; ii) determines at least part of a path traversed by the sensing device using the sensor data; iii) identifies one or more model features indicative of structural features and/or objects within the structure using the part of the path and the captured map; and, iv) generates a three-dimensional geometric model of the structure using the model features characterised in that the at least one electronic processing device identifies one or more model features at least in part using a volume growing process, by: generating a number of seed volumes along the path; at least one of growing and combining the seed volumes to determine empty volumes; and, using the empty volumes at least in part to identify model features. i) determines a captured map of at least part of the structure using the sensor data; ii) determines at least part of a path traversed by the sensing device using the sensor data; iii) identifies one or more model features indicative of structural features and/or objects within the structure using the part of the path and the captured map; and, iv) generates a three-dimensional geometric model of the structure using the model features characterised in that the at least one electronic processing device identifies one or more model features at least in part using a volume growing process, by: generating a number of seed volumes along the path; at least one of growing and combining the seed volumes to determine empty volumes; and, using the empty volumes at least in part to identify model features. generating a number of seed volumes along the path; at least one of growing and combining the seed volumes to determine empty volumes; and, using the empty volumes at least in part to identify model features.