Patents by Inventor David McCool
David McCool has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 12646262Abstract: A computing device is configured to obtain gridline information for a three-dimensional drawing file and generate a two-dimensional view of the three-dimensional drawing file that includes (1) at least one gridline corresponding to the obtained gridline information, (2) at least one intersection between two meshes, and (3) initial dimensioning information involving (a) the at least one gridline and (b) at least one of the two meshes. Based on a user request to adjust a perspective of the two-dimensional view, the computing device adjusts the perspective of the two-dimensional view and thereby generates an updated two-dimensional view that includes updated dimensioning information corresponding to one or more meshes displayed in the updated two-dimensional view.Type: GrantFiled: September 16, 2024Date of Patent: June 2, 2026Assignee: Procore Technologies, Inc.Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20260093376Abstract: An example client device is configured to (i) display a representation of a three-dimensional, federated model of a construction project, the model including respective objects created using at least two different authoring tools, (ii) receive one or more user inputs that collectively (a) select a displayed representation of a given object within the model and (b) assign a value for a property of the given object, (iii) based on the one or more user inputs, identify a globally unique identifier (GUID) that uniquely identifies the given object within a hierarchical data structure for the model and cause the model to be updated by associating the assigned value for the property with the GUID that uniquely identifies the given object, and (iv) display a representation of the updated model including an indication of the assigned value for the property of the given object.Type: ApplicationFiled: September 26, 2025Publication date: April 2, 2026Inventors: Kevin McKee, David McCool
-
Publication number: 20250384638Abstract: A computing device is configured to determine an initial position and orientation of the computing device within a virtual 3D model of a real-world environment, (ii) capture sensor data that is representative of the real-world environment surrounding the computing device, (iii) based on an analysis of the sensor data, detect an object in the real-world environment, (iv) compare the detected object to data defining physical elements that are represented within the virtual 3D model, (v) identify a given physical element represented within the virtual 3D model that matches the detected object, (vi) update one or more of a position, an orientation, or a presentation of the virtual 3D model in order to align the given physical element with the detected object, and (vii) cause a display screen to present the aligned virtual 3D model as overlaid virtual content on a view of the real-world environment surrounding the computing device.Type: ApplicationFiled: June 20, 2025Publication date: December 18, 2025Inventors: Kevin McKee, Jon Hoover, Christopher Bindloss, David McCool, Winson Chu, Christopher Myers
-
Patent number: 12429999Abstract: An example client device is configured to (i) display a representation of a three-dimensional, federated model of a construction project, the model including respective objects created using at least two different authoring tools, (ii) receive one or more user inputs that collectively (a) select a displayed representation of a given object within the model and (b) assign a value for a property of the given object, (iii) based on the one or more user inputs, identify a globally unique identifier (GUID) that uniquely identifies the given object within a hierarchical data structure for the model and cause the model to be updated by associating the assigned value for the property with the GUID that uniquely identifies the given object, and (iv) display a representation of the updated model including an indication of the assigned value for the property of the given object.Type: GrantFiled: October 23, 2023Date of Patent: September 30, 2025Assignee: Procore Technologies, Inc.Inventors: Kevin McKee, David McCool
-
Publication number: 20250245799Abstract: Techniques for performing an automated clash detection analysis on two-dimensional (2D) drawings associated with a given location of a construction project involve obtaining a set of 2D drawings for a construction project and identifying a subset of the 2D drawings that are associated with the given location of the construction project. From the subset of 2D drawings, a first 2D drawing and a second 2D drawing are selected for inclusion in the automated clash detection analysis. Based on respective sets of key points, the first and second 2D drawings are aligned and layered to produce an overlaid view. Objects in each 2D drawing are identified, and the overlaid view is analyzed to identify clashes between objects in the first 2D drawing and objects in the second 2D drawing. Respective visual representations of identified clashes may be displayed for user interaction.Type: ApplicationFiled: January 30, 2024Publication date: July 31, 2025Inventors: Mohammad Mostafa Soltani, Joshua Alexander Newland, Jiazi Liu, Farid Mirahadi, David McCool
-
Publication number: 20250217546Abstract: An example computing system is configured to (i) receive a request to generate a cross-sectional view of a three-dimensional drawing file, where the cross-sectional view is based on a location of a cross-section line within the three-dimensional drawing file and includes an intersection of two meshes within the three-dimensional drawing file; (ii) generate the cross-sectional view of the three-dimensional drawing file; (iii) add, to the generated cross-sectional view, dimensioning information involving at least one of the two meshes; (iv) generate one or more controls for adjusting a location of the cross-section line within the three-dimensional drawing file; and (v) based on an input indicating a selection of the one or more controls, adjust the location of the cross-section line within the three-dimensional drawing file, update the cross-sectional view based on the adjusted location of the cross-section line, and update the dimensioning information to correspond to the updated cross-sectional view.Type: ApplicationFiled: December 27, 2024Publication date: July 3, 2025Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20250217547Abstract: An example computing system is configured to (i) generate a cross-sectional view of a three-dimensional drawing file; (ii) receive a first user input indicating a selection of a first mesh, wherein the selection comprises a selection point that establishes a first end point; (iii) generate a first representation indicating an alignment of the first end point with at least one corresponding geometric feature of the first mesh and a second representation indicating a set of one or more directions; (iv) receive a second user input indicating a given direction; (v) based on receiving the second user input, generate a dynamic representation of the dimensioning information along the given direction; (vi) receive a third user input indicating that the second user input is complete; (vii) based on receiving the third user input, add the dimensioning information to the cross-sectional view between the first end point and the second end point.Type: ApplicationFiled: December 27, 2024Publication date: July 3, 2025Inventors: Ritu Parekh, David McCool, Christopher Myers, Christopher Bindloss
-
Patent number: 12340478Abstract: A computing device is configured to determine an initial position and orientation of the computing device within a virtual 3D model of a real-world environment, (ii) capture sensor data that is representative of the real-world environment surrounding the computing device, (iii) based on an analysis of the sensor data, detect an object in the real-world environment, (iv) compare the detected object to data defining physical elements that are represented within the virtual 3D model, (v) identify a given physical element represented within the virtual 3D model that matches the detected object, (vi) update one or more of a position, an orientation, or a presentation of the virtual 3D model in order to align the given physical element with the detected object, and (vii) cause a display screen to present the aligned virtual 3D model as overlaid virtual content on a view of the real-world environment surrounding the computing device.Type: GrantFiled: July 17, 2023Date of Patent: June 24, 2025Assignee: Procore Technologies, Inc.Inventors: Kevin McKee, Jon Hoover, Christopher Bindloss, David McCool, Winson Chu, Christopher Myers
-
Publication number: 20250124659Abstract: A computing device is configured to obtain gridline information for a three-dimensional drawing file and generate a two-dimensional view of the three-dimensional drawing file that includes (1) at least one gridline corresponding to the obtained gridline information, (2) at least one intersection between two meshes, and (3) initial dimensioning information involving (a) the at least one gridline and (b) at least one of the two meshes. Based on a user request to adjust a perspective of the two-dimensional view, the computing device adjusts the perspective of the two-dimensional view and thereby generates an updated two-dimensional view that includes updated dimensioning information corresponding to one or more meshes displayed in the updated two-dimensional view.Type: ApplicationFiled: September 16, 2024Publication date: April 17, 2025Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20250045864Abstract: Techniques for facilitating automated two-dimensional (2D) clash detection on objects displayed within a 2D view generated from a three-dimensional (3D) model of a construction project involve (1) tracing an intersection of (i) a cross-sectional plane and (ii) two or more objects in the 3D model, (2) based on tracing the intersection, determining respective 2D boundaries of the two or more objects, (3) generating a cross-sectional 2D view that depicts the intersection and includes representations of the respective 2D boundaries of the objects in the 2D view, (4) causing an end-user device to present one or more user interface views for receiving user input indicating a clash detection scope, (5) based on data defining the clash detection scope, identifying any clashes between objects displayed in the generated 2D view, and (6) causing a respective indication of each identified clash to be displayed at the end-user device.Type: ApplicationFiled: August 3, 2023Publication date: February 6, 2025Inventors: David McCool, Ritu Parekh, Christopher Myers
-
Patent number: 12216970Abstract: An example computing system is configured to (i) generate a cross-sectional view of a three-dimensional drawing file; (ii) receive a first user input indicating a selection of a first mesh, wherein the selection comprises a selection point that establishes a first end point; (iii) generate a first representation indicating an alignment of the first end point with at least one corresponding geometric feature of the first mesh and a second representation indicating a set of one or more directions; (iv) receive a second user input indicating a given direction; (v) based on receiving the second user input, generate a dynamic representation of the dimensioning information along the given direction; (vi) receive a third user input indicating that the second user input is complete; (vii) based on receiving the third user input, add the dimensioning information to the cross-sectional view between the first end point and the second end point.Type: GrantFiled: December 4, 2023Date of Patent: February 4, 2025Assignee: Procore Technologies, Inc.Inventors: Ritu Parekh, David McCool, Christopher Myers, Christopher Bindloss
-
Patent number: 12216971Abstract: An example computing system is configured to (i) receive a request to generate a cross-sectional view of a three-dimensional drawing file, where the cross-sectional view is based on a location of a cross-section line within the three-dimensional drawing file and includes an intersection of two meshes within the three-dimensional drawing file; (ii) generate the cross-sectional view of the three-dimensional drawing file; (iii) add, to the generated cross-sectional view, dimensioning information involving at least one of the two meshes; (iv) generate one or more controls for adjusting a location of the cross-section line within the three-dimensional drawing file; and (v) based on an input indicating a selection of the one or more controls, adjust the location of the cross-section line within the three-dimensional drawing file, update the cross-sectional view based on the adjusted location of the cross-section line, and update the dimensioning information to correspond to the updated cross-sectional view.Type: GrantFiled: February 26, 2024Date of Patent: February 4, 2025Assignee: Procore Technologies, Inc.Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20240330536Abstract: A method for intelligent clash resolution involves (1) receiving, from an end-user device associated with a user, an indication of a request to identify clashes between objects within a 3D model for a construction project, (2) based on the indication of the request, identifying a clash between a first object and a second object within the 3D model for the construction project, (3) based on (i) respective object metadata for the first object and the second object and (ii) historical data from one or more other construction projects, determining a solution for resolving the identified clash that comprises relocating the first object and not the second object, (4) and causing the end-user device to present an indication of the determined solution for resolving the identified clash.Type: ApplicationFiled: March 31, 2023Publication date: October 3, 2024Inventors: David McCool, Patrick Lardin
-
Patent number: 12094062Abstract: A computing device is configured to obtain gridline information for a three-dimensional drawing file and generate a two-dimensional view of the three-dimensional drawing file that includes (1) at least one gridline corresponding to the obtained gridline information, (2) at least one intersection between two meshes, and (3) initial dimensioning information involving (a) the at least one gridline and (b) at least one of the two meshes. Based on a user request to adjust a perspective of the two-dimensional view, the computing device adjusts the perspective of the two-dimensional view and thereby generates an updated two-dimensional view that includes updated dimensioning information corresponding to one or more meshes displayed in the updated two-dimensional view.Type: GrantFiled: July 10, 2023Date of Patent: September 17, 2024Assignee: Procore Technologies, Inc.Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20240303396Abstract: An example computing system is configured to (i) receive a request to generate a cross-sectional view of a three-dimensional drawing file, where the cross-sectional view is based on a location of a cross-section line within the three-dimensional drawing file and includes an intersection of two meshes within the three-dimensional drawing file; (ii) generate the cross-sectional view of the three-dimensional drawing file; (iii) add, to the generated cross-sectional view, dimensioning information involving at least one of the two meshes; (iv) generate one or more controls for adjusting a location of the cross-section line within the three-dimensional drawing file; and (v) based on an input indicating a selection of the one or more controls, adjust the location of the cross-section line within the three-dimensional drawing file, update the cross-sectional view based on the adjusted location of the cross-section line, and update the dimensioning information to correspond to the updated cross-sectional view.Type: ApplicationFiled: February 26, 2024Publication date: September 12, 2024Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20240184955Abstract: An example computing system is configured to (i) generate a cross-sectional view of a three-dimensional drawing file; (ii) receive a first user input indicating a selection of a first mesh, wherein the selection comprises a selection point that establishes a first end point; (iii) generate a first representation indicating an alignment of the first end point with at least one corresponding geometric feature of the first mesh and a second representation indicating a set of one or more directions; (iv) receive a second user input indicating a given direction; (v) based on receiving the second user input, generate a dynamic representation of the dimensioning information along the given direction; (vi) receive a third user input indicating that the second user input is complete; (vii) based on receiving the third user input, add the dimensioning information to the cross-sectional view between the first end point and the second end point.Type: ApplicationFiled: December 4, 2023Publication date: June 6, 2024Inventors: Ritu Parekh, David McCool, Christopher Myers, Christopher Bindloss
-
Patent number: 11914935Abstract: An example computing system is configured to (i) receive a request to generate a cross-sectional view of a three-dimensional drawing file, where the cross-sectional view is based on a location of a cross-section line within the three-dimensional drawing file and includes an intersection of two meshes within the three-dimensional drawing file; (ii) generate the cross-sectional view of the three-dimensional drawing file; (iii) add, to the generated cross-sectional view, dimensioning information involving at least one of the two meshes; (iv) generate one or more controls for adjusting a location of the cross-section line within the three-dimensional drawing file; and (v) based on an input indicating a selection of the one or more controls, adjust the location of the cross-section line within the three-dimensional drawing file, update the cross-sectional view based on the adjusted location of the cross-section line, and update the dimensioning information to correspond to the updated cross-sectional view.Type: GrantFiled: August 8, 2022Date of Patent: February 27, 2024Assignee: Procore Technologies, Inc.Inventors: David McCool, Christopher Myers, Christopher Bindloss
-
Publication number: 20240053860Abstract: An example client device is configured to (i) display a representation of a three-dimensional, federated model of a construction project, the model including respective objects created using at least two different authoring tools, (ii) receive one or more user inputs that collectively (a) select a displayed representation of a given object within the model and (b) assign a value for a property of the given object, (iii) based on the one or more user inputs, identify a globally unique identifier (GUID) that uniquely identifies the given object within a hierarchical data structure for the model and cause the model to be updated by associating the assigned value for the property with the GUID that uniquely identifies the given object, and (iv) display a representation of the updated model including an indication of the assigned value for the property of the given object.Type: ApplicationFiled: October 23, 2023Publication date: February 15, 2024Inventors: Kevin McKee, David McCool
-
Publication number: 20240020931Abstract: A computing device is configured to determine an initial position and orientation of the computing device within a virtual 3D model of a real-world environment, (ii) capture sensor data that is representative of the real-world environment surrounding the computing device, (iii) based on an analysis of the sensor data, detect an object in the real-world environment, (iv) compare the detected object to data defining physical elements that are represented within the virtual 3D model, (v) identify a given physical element represented within the virtual 3D model that matches the detected object, (vi) update one or more of a position, an orientation, or a presentation of the virtual 3D model in order to align the given physical element with the detected object, and (vii) cause a display screen to present the aligned virtual 3D model as overlaid virtual content on a view of the real-world environment surrounding the computing device.Type: ApplicationFiled: July 17, 2023Publication date: January 18, 2024Inventors: Kevin McKee, Jon Hoover, Christopher Bindloss, David McCool, Winson Chu, Christopher Myers
-
Patent number: 11836422Abstract: An example computing system is configured to (i) generate a cross-sectional view of a three-dimensional drawing file; (ii) receive a first user input indicating a selection of a first mesh, wherein the selection comprises a selection point that establishes a first end point; (iii) generate a first representation indicating an alignment of the first end point with at least one corresponding geometric feature of the first mesh and a second representation indicating a set of one or more directions; (iv) receive a second user input indicating a given direction; (v) based on receiving the second user input, generate a dynamic representation of the dimensioning information along the given direction; (vi) receive a third user input indicating that the second user input is complete; (vii) based on receiving the third user input, add the dimensioning information to the cross-sectional view between the first end point and the second end point.Type: GrantFiled: November 15, 2022Date of Patent: December 5, 2023Assignee: Procore Technologies, Inc.Inventors: Ritu Parekh, David McCool, Christopher Myers, Christopher Bindloss