US 12,223,231 B2
Method of transforming a human-readable dataset defining architectural features into usable instructions that can be interpreted by a second more sophisticated architectural CAD software
Henry Alexander Marroquin, Melbourne, FL (US); and Mark Elton Myers, Melbourne, FL (US)
Assigned to BRPH PLLC, Melbourne, FL (US)
Filed by BRPH Architects Engineers, Inc., Melbourne, FL (US)
Filed on May 26, 2021, as Appl. No. 17/303,289.
Prior Publication US 2022/0382924 A1, Dec. 1, 2022
Int. Cl. G06F 30/12 (2020.01); G06F 30/13 (2020.01); G06F 40/205 (2020.01)
CPC G06F 30/12 (2020.01) [G06F 30/13 (2020.01); G06F 40/205 (2020.01)] 19 Claims
OG exemplary drawing
 
19. A method for generating computer-readable instructions to automatically generate a three-dimensional architectural model comprising:
receiving a human-readable text file comprising a description of functional elements of a structure;
parsing the text file to identify keywords comprised by the text file, defining identified key words;
generating a plurality of datasets responsive to the identified key words, the plurality of datasets comprising:
a dataset of a list of rooms comprised by the architectural model;
a dataset of a geometric center point provided in (X, Y, Z) coordinates for each room comprised by the architectural model, defining a center point list; and
a dataset of geometric dimensions for each room provided in (X, Y, Z) coordinates comprised by the architectural model, defining a dimensions list;
generating machine-readable instructions to create one or more level objects responsive to the plurality of datasets by:
generating a dataset comprising a list of the Z-coordinate for each room, defining a Z-coordinate list;
identifying each unique Z-coordinate comprised by the Z-coordinate list;
assigning a level number to each unique Z-coordinate; and
generating a dataset comprising a list of the level numbers, defining a level list;
generating machine-readable instructions to create one or more floor objects responsive to the plurality of datasets and the one or more level objects;
generating a composite block model comprising:
generating a block center point at the geometric center point for each room, resulting in a plurality of block center points;
generating a block having dimensions equal to the geometric dimensions of each room, the block being centered at the block center point, resulting in a plurality of blocks;
merging the plurality of blocks into a single contiguous multifaceted mass, defining the composite block model;
generating a maximum dimension block model being dimensioned and positioned such that its outer dimensions are coextensive with a maximum and a minimum (X, Y, Z) coordinates of the composite block model, comprising:
identifying a plurality of faces comprised by the composite block model; and
removing the horizontal faces of the plurality of faces comprised by the composite block model;
generating a plurality of interim floor markers having (X, Y) dimensions that are coextensive with the (X, Y) dimensions of the maximum dimension block model, where each interim floor marker has a Z value equal to the Z value for each level object;
identifying intersections between the maximum dimension block model and the plurality of interim floor markers, defining interim floor marker intersections; and
generating a plurality of floor model objects, each floor model object having a Z value equal to the Z value for one of the plurality of interim floor markers and a boundary defined by the interim floor marker intersections;
generating machine-readable instructions to create a plurality of exterior wall objects responsive to the plurality of datasets and the one or more level objects, comprising:
generating a plurality of exterior wall objects based on the interim floor marker intersections;
defining a base height value for each exterior wall object, the base height value being equal to the Z value for the level object associated with each exterior wall;
defining a top height value for each exterior wall object, the top height value being equal to the Z value for the level object having a level number that is the next greater level number than the level number of the level object associated with the exterior wall;
receiving an indication of an exterior wall type from a user for each exterior wall object, defining received exterior wall type indications; and
defining an exterior wall type for each exterior wall object responsive to the received exterior wall type indications
generating machine-readable instructions to create a plurality of interior wall objects responsive to the plurality of datasets and the one or more level objects, comprising:
identifying each face of the plurality of blocks, defining a plurality of block faces, each block face comprising boundary coordinates;
identifying each face of the maximum dimension block model, defining a plurality of exterior faces;
identifying each block face that at least partially overlaps an exterior face of the plurality of exterior faces, defining a first plurality of excluded faces;
identifying each block face that is parallel to the level objects, defining a second plurality of excluded faces;
generating a list of interior faces, comprising removing each of the first plurality of excluded faces and the second plurality of excluded faces from the plurality of block faces;
identifying intersections between the interior faces comprised by the list of interior faces and the interim floor markers, defining a plurality of intersection segments;
generating an interior wall object for each intersection segment of the plurality of intersection segments;
defining a base height value for each interior wall object, the base height value being a Z value of a lower level object the interior wall object intersects with; and
defining a top height value for each interior wall object, the top height value being one of a Z value of an upper level object the interior wall object intersects with, a height value received from a user, a default height value, and a maximum height of the architectural model;
generating machine-readable instructions to create a plurality of room objects responsive to the plurality of datasets, the one or more level objects, the plurality of exterior wall objects, and the plurality of interior wall objects; and
providing each of the machine-readable instructions to create one or more level objects, instructions to create one or more floor objects, instructions to create a plurality of exterior wall objects, instructions to create a plurality of interior wall objects, and instructions to create a plurality of room objects to architectural modeling software.