An example computing platform is configured to detect a request on behalf of a given user, the request comprising a parameter of a given type; determine that the parameter requires a permission verification; apply to the request a verification status indicator that indicates whether or not a permission verification has been successfully performed for the given user with respect to the parameter; perform a permission verification for the given user with respect to the parameter; either (i) leave the verification status indicator set to a first value if the given user does not have permission to embed scripts into the given type of parameter, or (ii) update the verification status indicator from the first value to a second value if the given user has permission to embed scripts into the given type of parameter; and grant or deny the request based at least in part on the verification status indicator.
A computing system is configured to: (i) apply a machine-learning process to a training dataset to train a machine-learning model that is configured to (a) receive a first set of metric-level input values for a construction project of interest and a respective set of metric-level input values for each of a universe of reference construction projects, and (b) output a prediction of a party's performance on the construction project of interest and (ii) utilizing the machine-learning model to produce a prediction of a given party's performance on a given construction project of interest by inputting first and respective sets of metric-level input values into the machine-learning model and thereby causing the machine-learning model to (i) evaluate the sets of metric-level input values, and (ii) based on the evaluation of the sets of metric-level input values, output a prediction of the given party's performance on the given construction project of interest.
A computing system is configured to: (i) create a data science model that is configured to (a) receive a value for a metric that provides insight regarding a party's usage of a software tool of a construction management software application on a construction project and (b) based on an evaluation of the received value for the metric, output a prediction of the party's performance on the construction project and, (ii) after creating the data science model, utilize the data science model to produce a prediction of a given party's performance on a given construction project by inputting a given value for the metric into the data science model and thereby causing the data science model to (a) evaluate the given value of the metric, and (b) based on the evaluation, output the prediction of performance on the given construction project.
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.
G06T 19/00 - Manipulating 3D models or images for computer graphics
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
An example computing platform is configured to: determine, via a first machine-learning model, a relationship between a data asset associated with a construction project and a first location entity associated with the construction project; update the data asset to include an indication of the relationship; receive an indication of a target status dimension and a request to generate a heat map for the construction project; determine, for the first location entity, a first value for the target status dimension based the relationship; generate data indicating the heat map, the heat map comprising a visual representation of the first location entity displayed in a first color along a color scale that represents the first value for the target status dimension; and transmit, to an end-user device, the data indicating the heat map and thereby cause the heat map to be displayed via the second end-user device.
A computing platform configured to perform functionality that involves (i) receiving an indication of a request for media content related to a given construction project, (ii) utilizing a planner agent to generate a sequence of tasks to be performed by other agents to generate the requested media content, (iii) utilizing a knowledge agent to perform a first subset of the sequence of tasks to obtain a set of project data for use in generating the requested media content, (iv) utilizing a production agent to perform a second subset of the sequence of tasks to generate the requested media content, and (v) causing the generated media content to be presented via a client device.
A computing platform configured to (i) receive, via a user interface, a command to activate a bulk association mode for bulk associating an attribute value with one or more line items, (ii) based on the command, activate the bulk association mode and thereby display, via the user interface, a bulk association view comprising a target region for receiving an indication of one or more line items that are to be bulk associated with one or more given attribute values, (iii) receive first user input selecting at least two given attribute values for bulk association, (iv) receive second user input indicating one or more given line items that are to be bulk associated with the two given attribute values, and (v) after receiving the second user input, cause each given line item to be associated with the two given attribute values.
A computing platform configured to: (i) receive, from a primary collaborator, a request to create an invitation for a secondary collaborator to collaborate on a construction project, wherein the primary collaborator has created a project workspace for the construction project within software application, the request including a first set of collaboration information comprising (a) an identification of the secondary collaborator and (b) an identification of permission templates, (ii) based on the request, cause the invitation to be presented to the secondary collaborator, (iii) receive, from the secondary collaborator, a response to the invitation including a second set of collaboration information comprising an identification of users associated with the secondary collaborator to be granted access to the project workspace, and (iv) based on the first and second sets of collaboration information, enable each identified user to access the project workspace in accordance with a respective permission template.
An example computing platform is configured to: (i) detect a trigger event for determining a value of a given project attribute for a given construction project having a stored set of project attribute data; (ii) in response to detecting the trigger event, execute an attribute-specific set of one or more predictive analytics pipelines for predicting one or more values of the given project attribute based on respective sets of source data for the one or more predictive analytics pipelines; and (iii) update the stored set of project attribute data for the given construction project based on the one or more values of the given project attribute that are predicted for the given construction project.
Disclosed herein is an improved AR technology for aligning virtual content with a real-world environment. In one aspect, the disclosed process may involve a first computing device receiving an indication that a second computing device detected a given QR pattern on a given strip of QR tape installed in a real-world environment. In response to receiving the indication, the first computing device may obtain installation information regarding a layout of the given strip of QR tape. Based at least on an identifier of the given QR pattern and the information regarding the layout of the given strip of QR tape, the first computing device may then determine a position and orientation of the second computing device, align virtual content on the real-world environment, and instruct the second computing device to present a view of the real-world environment that has the aligned virtual content superimposed onto the real-world environment.
G06K 19/06 - Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
G06K 7/14 - Methods or arrangements for sensing record carriers by electromagnetic radiation, e.g. optical sensingMethods or arrangements for sensing record carriers by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
G06T 19/00 - Manipulating 3D models or images for computer graphics
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
G06V 20/20 - ScenesScene-specific elements in augmented reality scenes
11.
COMPUTING SYSTEM AND METHOD FOR PROGRESS TRACKING USING A LARGE LANGUAGE MODEL
A computing platform is configured to (i) load source data comprising (a) a set of log entries of a construction project and (b) a schedule of the construction project, (ii) preprocess the source data, (iii) provide the preprocessed source data as input to a large-language model (LLM) that is configured to generate insights related to progress tracking and thereby determine one or more insights related to progress tracking for the construction project, and (iv) cause the one or more insights to be presented to one or more individuals involved in the construction project.
A computing platform is configured to (i) load source data comprising (a) a set of log entries of a construction project and (b) a schedule of the construction project, (ii) preprocess the source data, (iii) provide the preprocessed source data as input to a large-language model (LLM) that is configured to generate insights related to progress tracking and thereby determine one or more insights related to progress tracking for the construction project, and (iv) cause the one or more insights to be presented to one or more individuals involved in the construction project.
The present disclosure is directed to a software tool that facilitates coordination between various parties that are involved in the process of rectifying a problem identified in a combined three-dimensional model file. In one implementation, the software tool may cause a computing device to (a) receive an indication requesting creation of a coordination issue that relates to a portion of a rendered three-dimensional view of a construction project, (b) in response to the receipt of the indication, create a data set defining the coordination issue, the data set including (i) a representation of the portion of the rendered three-dimensional view, and (ii) data indicating an assignee of the coordination issue, and (c) cause an indication of the coordination issue to be presented to a client station associated with the assignee.
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
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.
G06Q 10/06 - Resources, workflows, human or project managementEnterprise or organisation planningEnterprise or organisation modelling
G06F 30/18 - Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
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.
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 7/33 - Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
G06T 7/73 - Determining position or orientation of objects or cameras using feature-based methods
A computing platform is configured to: for each construction project in a pool of construction projects, (i) obtain a set of data objects related to the construction project; (ii) evaluate the obtained set of data objects related to the construction project and thereby identify two or more theme-specific subsets of data objects, wherein each respective theme-specific subset of data objects corresponds to a respective one of two or more construction-related themes; (iii) for each respective one of the two or more construction-related themes, evaluate the respective theme-specific subset of data objects and thereby identify a respective theme-specific group of one or more construction-related problems that correspond to the respective one of two or more construction-related themes; and (iv) based at least on the theme-specific groups of one or more construction-related problems that respectively correspond to the two or more construction-related themes, generate a project-specific themes dataset for the construction project.
A computing platform that enables creation and management of data records may be configured to (i) cause a client station of a user to display an initial view of an interface for selecting, from a hierarchical list of possible values for a given data field of a data record, one or more values to assign to the given data field, (ii) receive, from the client station, a first indication that the user has selected a first value from the hierarchical list to assign to the given data field, and (iii) in response to receiving the first indication, (a) identify a second set of one or more values from a second level of the hierarchical list that are related to the first value, and (b) cause the client station to display an updated view of the interface in which the recommendation pane presents the second set of one or more values.
A computing platform configured to: (i) add a partition for a building information model (BIM) model including BIM data objects to a set of partitions, (ii) for each partition of one or more partitions that each satisfies a threshold, generate a respective partition file by, while the set includes a partition that does not satisfy the threshold: (a) retrieving a partition from the set, (b) if the partition does not satisfy the threshold, (1) determining a center of gravity for the partition, (2) splitting the partition into a first partition and a second partition on opposing sides of the determined center of gravity, and (3) adding the first and second partitions to the set, and (c) if the partition satisfies the threshold, generating a file for the partition, and (iii) generate an index file mapping each of the BIM data objects to a corresponding file.
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
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.
G06F 30/23 - Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
20.
Presence and Collaboration Tools for Building Information Models
Facilitating collaboration on a 3D model of a construction project involves obtaining presence information that identifies each individual concurrently interacting with a respective rendered 3D model of the construction project via a respective client station and indicates a respective position and orientation at which the respective rendered 3D model is being rendered. Based on the presence information, a first client station presents a view of a first rendered 3D model including a visual representation of a second individual concurrently interacting with a second rendered 3D model and indicating the position and orientation of the second rendered 3D model. Based on a change in one or both of the position or orientation of the second rendered 3D model, the presence information is updated. The first client station updates the view of the first rendered 3D model to reflect the change in the position or orientation of the second rendered 3D model.
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 17/10 - Volume description, e.g. cylinders, cubes or using CSG [Constructive Solid Geometry]
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
21.
Neural Network-Based Recognition of Trade Workers Present on Industrial Sites
An example computing platform comprising is configured to (i) receive, via one or more cameras positioned on a construction site, a plurality of images, (ii) detect, within the plurality of images, a plurality of objects being worn by respective workers on the construction site, (iii) select, from the plurality of images, a set of images depicting a particular worker, and (iv) based on the selected set of images depicting the particular worker, determine a plurality of trade probabilities for the particular worker, each trade probability in the plurality of trade probabilities indicating a likelihood that the particular worker belongs to a particular trade from among a plurality of trades.
G06V 10/24 - Aligning, centring, orientation detection or correction of the image
G06V 10/44 - Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersectionsConnectivity analysis, e.g. of connected components
G06V 10/764 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
G06V 20/52 - Surveillance or monitoring of activities, e.g. for recognising suspicious objects
G06V 40/20 - Movements or behaviour, e.g. gesture recognition
A computing platform configured to: (i) add a partition for a building information model (BIM) model including BIM data objects to a set of partitions, (ii) for each partition of one or more partitions that each satisfies a threshold, generate a respective partition file by, while the set includes a partition that does not satisfy the threshold: (a) retrieving a partition from the set, (b) if the partition does not satisfy the threshold, (1) determining a center of gravity for the partition, (2) splitting the partition into a first partition and a second partition on opposing sides of the determined center of gravity, and (3) adding the first and second partitions to the set, and (c) if the partition satisfies the threshold, generating a file for the partition, and (iii) generate an index file mapping each of the BIM data objects to a corresponding file.
G06F 30/20 - Design optimisation, verification or simulation
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 19/00 - Manipulating 3D models or images for computer graphics
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.
G06F 30/23 - Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06F 111/02 - CAD in a network environment, e.g. collaborative CAD or distributed simulation
G06T 15/00 - 3D [Three Dimensional] image rendering
G06T 17/10 - Volume description, e.g. cylinders, cubes or using CSG [Constructive Solid Geometry]
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
24.
Machine-Learning-Based Identification of Drawing Attributes
An example computing system is configured to: (i) access a drawing associated with a construction project; (ii) identify, in the drawing, a set of candidate textual elements that potentially represent a title of the drawing; (iii) for each candidate textual element, (a) determine a respective dataset comprising values for a set of data variables that are potentially predictive of whether the candidate textual element is the title of the drawing, and (b) input the respective dataset into a machine-learning model that functions to (1) evaluate the respective dataset and (2) output, based on the evaluation, a respective score indicating a likelihood that the candidate textual element represents the title of the drawing; and (iv) based on the respective scores for the candidate textual elements that are output by the machine-learning model, select one given candidate textual element as the title of the drawing.
An example computing platform is configured to (i) receive a two-dimensional (2D) image file comprising a construction drawing, (ii) generate, via semantic segmentation, a first set of polygons corresponding to respective areas of the 2D image file, (iii) generate, via instance segmentation, a second set of polygons corresponding to respective areas of the 2D image file, (iv) generate, via unsupervised image processing, a third set of polygons corresponding to respective areas of the 2D image file, (v) based on (a) overlap between polygons in the first, second, and third sets of polygons and (b) respective confidence scores for each of the overlapping polygons, determine a set of merged polygons corresponding to respective areas of the 2D image file, and (vi) cause a client station to display a visual representation of the 2D image file where each merged polygon is overlaid as a respective selectable region of the 2D image file.
An example computing device is configured to (i) generate a cross-sectional view of a three-dimensional drawing file, the cross-sectional view including an object corresponding to a given mesh of the three-dimensional drawing file, the object including a void contained within the object, (ii) determine a plurality of two-dimensional line segments that collectively define a boundary of the void, (iii) for each line segment, determine nearby line segments based on a distance between an end point of the line segment and an end point of the one or more nearby line segments being within a threshold distance, (iv) determine one or more fully-connected sub-objects by connecting respective sets of nearby line segments in series, (v) determine, from the fully-connected sub-objects, a final sub-object to be used as a new boundary of the void, and (vi) add the final sub-object to the cross-sectional view as the new boundary of the void.
An example client device is configured to: (i) access a building information model (BIM) file for a construction project, (ii) obtain an initial list of BIM data objects included in the BIM file, (iii) present, to a user, a visualization of the initial list of BIM data objects, (iv) receive a search query for the list of BIM data objects, (v) after receiving the search query, present, to the user, a visualization of a filtered list of BIM data objects comprising a given subset of BIM data objects that are identified based on the search query, (vi) receive, from the user, a request for an action to be taken for at least one BIM data object that is selected from the filtered list of BIM objects, and (vii) based on the received request, cause the requested action to be taken for the at least one BIM data object.
A computing platform is configured to: (i) train a machine-learning model by carrying out a machine learning process on a training data set that includes that includes construction-based data objects including indications of a plurality of building elements and indications of respective logical relationships between pairs of the building elements, (ii) receive a request to generate a building elements graph for a given construction project, (iii) input construction project data associated with the given construction project into the machine-learning model, thereby (a) identifying building elements of the given construction project, (b) determining a set of respective physical relationships between pairs of the building elements and a given set of respective logical relationships between pairs of the building elements, and (c) based on the given set of respective physical relationships and the given set of respective logical relationships, generating a building elements graph for the given construction project.
G06F 30/27 - Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
Improved software technology and techniques for enabling creation and management of a customized work breakdown structure (“WBS”) for a specific project may comprise various phases. For instance, a first phase may involve defining an organization-level WBS comprising a first set of customized, multi-dimensional WBS codes that serve as a starting point for the WBS codes to use for projects being handled by the organization, a second phase may involve defining a project-level WBS comprising a second set of customized, multi-dimensional WBS codes to use for a particular project being handled by the organization, and a third phase may involve using the defined project-level WBS to manage certain aspects of the particular project. Further, access to customize WBS variables may be regulated based on user access permissions information indicated by an organization and/or project-level WBS.
A computing platform is configured to: (i) receive, from a first client station, (a) data related to the first client station and (b) a first image associated with a target location; (ii) based on the received data related to the first client station, determine a location signature associated with the first image; (iii) determine that the location signature associated with the first image has a threshold level of similarity to a location signature associated with a second image that is associated with the target location; (iv) evaluate at least the first image to determine progression of a construction-related activity at the target location; (v) based on the evaluation of at least the first image, determine that the construction-related activity at the target location has progressed a threshold amount; and (vi) transmit, to a second client station, a communication related to progression of the construction-related activity.
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.
A computing platform is configured to: (i) train a machine-learning model by carrying out a machine learning process on a training data set that includes historical construction-based data objects, (ii) receive a request to generate a construction-based data object associated with an ongoing construction project, (iii) receive data values for data fields of the construction-based data object, (iv) input one or more data values for data fields of the construction-based data object into the machine-learning model, as the input data values, and thereby generate an updated data value for the data fields, (v) cause a client device to present a visual interface, the visual interface usable for viewing an indication of the construction-based data object and an indication of the updated data value, and (vi) update the data fields of the construction-based data object, based on the updated data value.
Disclosed herein is a software application for tracking the impact of a change event on a budget for a project. In one aspect, a computing system may receive user input defining a given change event that comprises a line item, and setting an estimated revenue for the line item to a dynamic amount that is to track a most-firm cost for the first line item. Based on the received user input and the estimated revenue for the line item, the computing system may create a data record that represents the given change event, detect a more-firm cost available for the line item, and based on detecting the more-firm cost available for the line item, (i) determine an updated most-firm cost for the line item and (ii) determine an updated estimated revenue for the line item to track the updated most-firm cost for the line item.
A computing platform is configured to: (i) obtain a set of data objects related to construction projects, (ii) evaluate the set to identify a substitution-request-specific subset, wherein each data object of the subset corresponds to a respective substitution request, (iii) for each data object of the subset, evaluate the data object to identify one or more topics associated with the data object, (iv) based on the one or more topics, determine a supply-related issues, (v) identify a given construction project that has a likelihood of being impacted by one or more of the supply-related issues, (vi) determine one or more insights for the given construction project based on the one or more supply-related issues, and (vii) transmit, to a client station, data defining the one or more insights and thereby cause an indication of the one or more insights to be presented at a user interface of the client station.
The present disclosure is directed to a software tool that facilitates the presentation of a three-dimensional view of a construction project as well as the generation of various types of two-dimensional technical drawings based on this three-dimensional view. In one implementation, the software tool causes a computing device to engage in the following operations. The computing device may receive a user input identifying at least one first mesh and at least one second mesh, determine portions of each identified mesh that intersect with a two-dimensional plane, and generate a two-dimensional drawing including a display of relevant dimensioning information based on the determined portions.
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06F 30/20 - Design optimisation, verification or simulation
G06T 11/20 - Drawing from basic elements, e.g. lines or circles
G06T 11/60 - Editing figures and textCombining figures or text
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
36.
Generating Technical Drawings From Building Information Models
The present disclosure is directed to a software tool that facilitates the presentation of a three-dimensional view of a construction project as well as the generation of various types of two-dimensional technical drawings based on this three-dimensional view. In one implementation, the software tool causes a computing device to engage in the following operations. The computing device may receive an indication of a desired clip height of a three-dimensional view at which to generate a two-dimensional technical drawing; identify a subset of meshes that intersect with a two-dimensional plane at the desired clip height; determine respective portions of each mesh that intersect the two-dimensional plane at the desired clip height; compile a dataset that defines the two-dimensional drawing; and render the two-dimensional drawing using the compiled dataset.
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 7/33 - Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
G06T 11/20 - Drawing from basic elements, e.g. lines or circles
G06T 11/60 - Editing figures and textCombining figures or text
Techniques for dynamic pull planning involve (i) determining an update to a master schedule for a construction project that comprises tasks having respective scheduled start dates, (ii) executing a machine learning model that has been trained with historical construction project schedule data and thereby identifying candidate tasks each available for commencement earlier than its scheduled start date, (iii) causing a client station to display each identified task, its scheduled start date, a respective new start date, and an impact on the master schedule if the task is commenced on the respective new start date, (iv) receiving user input indicating selection of a given task that is to be commenced earlier than its scheduled start date, (v) and causing transmission of a notification to a party responsible for completing the given task indicating that the given task has been nominated for earlier commencement and requesting approval for the earlier commencement.
Disclosed herein is new software technology for creating and managing a lookahead schedule for a construction project. In one aspect, disclosed herein is a method that involves (1) receiving, from a client station, a request to create an initial lookahead schedule for a project, where the request comprises timeline information for the initial lookahead schedule, (2) after receiving the request, creating the initial lookahead schedule based on the timeline information and a previously-created master schedule for the project, and (3) causing the client station to present a user-interface view that provides a representation of the initial lookahead schedule.
A computing platform is configured to: (i) train a large language model (LLM) by carrying out a first machine learning process on a first training data set that includes first construction-based data associated with one or more of a user, a plurality of reference construction projects, a construction-based application of the computing platform, or combinations thereof, (ii) receive a request to generate a construction activity summary, which includes a context-based prompt, (iii) generate the construction activity summary by inputting the request into the LLM, the construction activity summary including a contextual response, and (iv) retrain the LLM by carrying out a second machine learning process on a second training data set that includes the first training data set and one or more of the context-based prompt, the construction project data, an evaluation, the contextual response, the construction activity summary, a given timeframe, the request, input, or combinations thereof.
A computing platform is configured to: (i) train a large language model (LLM) by carrying out a first machine learning process on a first training data set that includes first construction-based data associated with one or more of a user, a plurality of reference construction projects, a construction-based application of the computing platform, or combinations thereof, (ii) receive a request to generate a construction activity summary, which includes a context-based prompt, (iii) generate the construction activity summary by inputting the request into the LLM, the construction activity summary including a contextual response, and (iv) retrain the LLM by carrying out a second machine learning process on a second training data set that includes the first training data set and one or more of the context-based prompt, the construction project data, an evaluation, the contextual response, the construction activity summary, a given timeframe, the request, input, or combinations thereof.
A computing system is configured to: (i) receive input for creating a new data object related to a construction project, wherein the input is captured via a client-side interface, (ii) pre-process the received input for creating the new data object, (iii) analyze the pre-processed input for creating the new data object utilizing an artificial intelligence (AI) model that functions to predict a type of the new data object to be created, (iv) based on the predicted type of the new data object to be created, identify a schema to use for the new data object, and (v) create the new data object in accordance with the identified schema.
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.
G06V 10/764 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
43.
Limited Communications Threads Associated with Construction Based Data Objects
A computing platform is configured to: (i) generate a data object; (ii) initialize a public conversation thread associated with the data object, the public conversation thread is accessible by each of a first group of users; (iii) cause a client device to present an interface for creating one or more limited conversation threads associated with the data object; (iv) after causing the client device to present the interface, receive, from the client device, a request to create a limited conversation thread associated with the data object that is accessible by each of a second group of users, wherein the second group of users is a first subset of the first group of users; and (v) based on the second request, generate the limited conversation thread associated with the data object, wherein the limited conversation thread is accessible by the second group of users.
H04L 12/18 - Arrangements for providing special services to substations for broadcast or conference
H04L 51/52 - User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
A computing platform is configured to: (i) receive, from a first client station, a data file; (ii) obtain metadata associated with the data file; (iii) determine, based on at least a first set of metadata from the obtained metadata associated with the data file, a naming structure to use for the data file; (iv) generate, based on the determined naming structure and at least a second set of metadata from the obtained metadata, a proposed name for the data file; and (v) transmit, to a second client station, a communication identifying the proposed name and thereby cause an indication of the proposed name for the data file to be presented at a user interface of the second client station.
An example computing system is configured to (i) present a three-dimensional (3D) visualization of a 3D model of a construction project; (ii) while presenting the 3D visualization of the 3D model of the construction project, present (a) a sectioning plane that defines a view of the 3D visualization of the 3D model of the construction project and (b) a sectioning control tool comprising an idealized 3D model, the sectioning control tool configured to set a location of the sectioning plane; (iii) receive user input indicating an interaction with the idealized 3D model; and (iv) based on the user input, adjust the location of the sectioning plane relative to the 3D visualization model of the 3D model of the construction project and thereby adjust the view of the 3D visualization of the 3D model of the construction project.
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
A pattern attaching technique involves (1) obtaining a first collection of data libraries associated with a first set of intersection points among a first set of lines in a first two-dimensional (2D) drawing and a second collection of data libraries associated with a second set of intersection points among a second set of lines in a second 2D drawing and (2) comparing the first collection of data libraries and the second collection of data libraries in order to determine whether the first 2D drawing and the second 2D drawing represent a same portion of a real-world environment. Each data library associated with a given set of intersection points includes location information that describes a respective location of each respective intersection point in the given set of intersection points relative to each other intersection point in the given set of intersection points.
G06F 16/21 - Design, administration or maintenance of databases
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 3/40 - Scaling of whole images or parts thereof, e.g. expanding or contracting
G06T 3/60 - Rotation of whole images or parts thereof
G06T 7/33 - Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
G06V 10/44 - Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersectionsConnectivity analysis, e.g. of connected components
G06V 10/75 - Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video featuresCoarse-fine approaches, e.g. multi-scale approachesImage or video pattern matchingProximity measures in feature spaces using context analysisSelection of dictionaries
A computer-implemented method for monitoring productivity, health and safety risks posed by activities and objects, and other signals present at industrial sites comprises: receiving data inputs from input devices at an industrial site; selecting a data model that is programmed to detect activities or objects associated with workers or equipment present at the industrial sites; applying the data inputs to the data model to receive output data specifying whether the activities or objects associated with workers or equipment are present at the industrial site; and if they are present: based the output data, determining characteristics of the activities or objects; based on the characteristics, determining whether that the activities or objects cause any productivity, health or safety risks at the industrial site; and if so, generating notifications indicating the health or safety risks at the industrial site.
G05B 19/406 - Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
G05B 19/4065 - Monitoring tool breakage, life or condition
G06V 10/764 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
G06V 20/52 - Surveillance or monitoring of activities, e.g. for recognising suspicious objects
48.
Machine-Learning-Based Prediction of Construction Project Parameters
A computing platform is configured to: (i) at a first time, input data values for a first set of data variables associated with a given construction project into a first machine-learning model that functions to output a prediction of a first set of reference projects that are similar to the given construction project, (ii) based on historical data for the first set of reference projects, determine a predicted value for a parameter of the given construction project, (iii) at a second time, input data values for a second set of data variables associated with the given construction project into a second machine-learning model that functions to output a prediction of a second set of reference projects that are similar to the given construction project, and (iv) based on historical data for the second set of reference projects, determine an updated predicted value for the parameter of the given construction project.
G06Q 10/0631 - Resource planning, allocation, distributing or scheduling for enterprises or organisations
G06F 18/214 - Generating training patternsBootstrap methods, e.g. bagging or boosting
G06F 18/23213 - Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
An example computing platform is configured to (i) receive, from a first end-user device, a prime configuration for at least one type of data object related to a construction project, (ii) cause all data objects of the at least one type to be created in accordance with at least the prime configuration, (iii) receive, from a second end-user device, an extension to the prime configuration for the at least one type of data object, and (iv) after receiving the extension to the prime configuration, (a) cause a given data object of the at least one type to be displayed via the second end-user device in accordance with the prime configuration and the extension to the prime configuration, and (b) cause the given data object to be displayed via the first end-user device in accordance with the prime configuration but not the extension to the prime configuration.
An example computing platform is configured to (i) receive, from a first end-user device, a prime configuration for at least one type of data object related to a construction project, (ii) cause all data objects of the at least one type to be created in accordance with at least the prime configuration, (iii) receive, from a second end-user device, an extension to the prime configuration for the at least one type of data object, and (iv) after receiving the extension to the prime configuration, (a) cause a given data object of the at least one type to be displayed via the second end-user device in accordance with the prime configuration and the extension to the prime configuration, and (b) cause the given data object to be displayed via the first end-user device in accordance with the prime configuration but not the extension to the prime configuration.
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.
G06F 30/20 - Design optimisation, verification or simulation
G06F 30/18 - Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
G06Q 10/0631 - Resource planning, allocation, distributing or scheduling for enterprises or organisations
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.
G06F 30/23 - Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 15/00 - 3D [Three Dimensional] image rendering
G06T 17/10 - Volume description, e.g. cylinders, cubes or using CSG [Constructive Solid Geometry]
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
G06F 111/02 - CAD in a network environment, e.g. collaborative CAD or distributed simulation
A computing platform is configured to: (i) obtain a plurality of data files; (ii) for each respective data file of the plurality of obtained data files, obtain contents associated with the respective data file and evaluate the contents associated with the respective data file to determine a respective data structure for the respective data file; (iii) compare the determined respective data structures and thereby identify one or more data structure differences among the determined respective data structures for the data files; (iv) based on the identified one or more data structure differences among the determined respective data structures for the data files, determine a revision history for the plurality of data files; and (v) transmit, to a client station, a communication related to the revision history and thereby cause an indication of the revision history to be presented at a user interface of the client station.
An example computing platform comprising is configured to (i) receive, via one or more cameras positioned on a construction site, a plurality of images, (ii) detect, within the plurality of images, a plurality of objects being worn by respective workers on the construction site, (iii) select, from the plurality of images, a set of images depicting a particular worker, and (iv) based on the selected set of images depicting the particular worker, determine a plurality of trade probabilities for the particular worker, each trade probability in the plurality of trade probabilities indicating a likelihood that the particular worker belongs to a particular trade from among a plurality of trades.
G06V 10/44 - Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersectionsConnectivity analysis, e.g. of connected components
G06V 10/764 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
G06V 20/52 - Surveillance or monitoring of activities, e.g. for recognising suspicious objects
G06V 40/10 - Human or animal bodies, e.g. vehicle occupants or pedestriansBody parts, e.g. hands
G06V 40/20 - Movements or behaviour, e.g. gesture recognition
G06V 10/24 - Aligning, centring, orientation detection or correction of the image
55.
Phase-Based Access Permissions for Multi-Phase Projects
A computing platform configured to: (i) store first setting and second settings for a role on a project that defines an extent to which users having the role can access project data during a first and second phase of the project, respectively, (ii) during the first phase, receive, from a first user having the role, a first request to access data, (iii) based on the first user having the role and the project being in the first phase, process the first request in accordance with the first setting, (iv) determine that the project has transitioned to the second phase, (v) during the second phase, receive, from a second user having the role, a second request to access data, and (vi) based on the second user having the role and the determination that the project has transitioned to the second phase, process the second request in accordance with the second setting.
A computing platform is configured to: (i) generate a data object; (ii) initialize a public conversation thread associated with the data object, the public conversation thread is accessible by each of a first group of users; (iii) cause a client device to present an interface for creating one or more limited conversation threads associated with the data object; (iv) after causing the client device to present the interface, receive, from the client device, a request to create a limited conversation thread associated with the data object that is accessible by each of a second group of users, wherein the second group of users is a first subset of the first group of users; and (v) based on the second request, generate the limited conversation thread associated with the data object, wherein the limited conversation thread is accessible by the second group of users.
G06F 15/16 - Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
H04L 12/18 - Arrangements for providing special services to substations for broadcast or conference
H04L 51/52 - User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
57.
Creating, Assigning, and Interacting with Action Items Related to Collaborative Tasks
Techniques for interacting with action items identifying collaborative tasks involve (i) facilitating creation of an action item via a first software module presented at a first client station of a first user, (ii) embedding in the action item a link to a second software module selected by the first user for enabling creation of a new data entity of a given type in order to complete the action item, (iii) assigning the action item to a second user, and (iv) upon selection of the embedded link, causing a second client station of the second user to launch the second software module and thereby enable the second user to create the new data entity of the given type via the second front-end software module in order to complete the action item, wherein one or more data fields of the new data entity are pre-populated with embedded data from the action item.
G06F 3/0484 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
G06F 3/0482 - Interaction with lists of selectable items, e.g. menus
G06F 40/18 - Editing, e.g. inserting or deleting of tablesEditing, e.g. inserting or deleting using ruled lines of spreadsheets
H04L 67/10 - Protocols in which an application is distributed across nodes in the network
58.
Presence and collaboration tools for building information models
Facilitating collaboration on a 3D model of a construction project involves obtaining presence information that identifies each individual concurrently interacting with a respective rendered 3D model of the construction project via a respective client station and indicates a respective position and orientation at which the respective rendered 3D model is being rendered. Based on the presence information, a first client station presents a view of a first rendered 3D model including a visual representation of a second individual concurrently interacting with a second rendered 3D model and indicating the position and orientation of the second rendered 3D model. Based on a change in one or both of the position or orientation of the second rendered 3D model, the presence information is updated. The first client station updates the view of the first rendered 3D model to reflect the change in the position or orientation of the second rendered 3D model.
G06T 17/10 - Volume description, e.g. cylinders, cubes or using CSG [Constructive Solid Geometry]
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
A punch item management tool may be provided that coordinates and guides the process of taking a punch item from creation to completion. As one possibility, the punch item management tool may coordinate and guide the interactions between a creator of a punch item, a punch item manager for the punch item, and one or more assignees that are expected to perform work on the punch item. As another possibility, the punch item management tool may coordinate and guide the interactions between an individual serving the dual role of creator and punch item manager for a punch item and one or more assignees that are expected to perform work on the punch item. In either case, the punch item management tool may provide a user interface including various views through which these individuals may interact with one or more punch items.
An example computing device is configured to (i) generate a cross-sectional view of a three-dimensional drawing file, the cross-sectional view including an object corresponding to a given mesh of the three-dimensional drawing file, the object including a void contained within the object, (ii) determine a plurality of two-dimensional line segments that collectively define a boundary of the void, (iii) for each line segment, determine nearby line segments based on a distance between an end point of the line segment and an end point of the one or more nearby line segments being within a threshold distance, (iv) determine one or more fully-connected sub-objects by connecting respective sets of nearby line segments in series, (v) determine, from the fully-connected sub-objects, a final sub-object to be used as a new boundary of the void, and (vi) add the final sub-object to the cross-sectional view as the new boundary of the void.
An example computing platform is configured to (i) receive a two-dimensional (2D) image file comprising a construction drawing, (ii) generate, via semantic segmentation, a first set of polygons corresponding to respective areas of the 2D image file, (iii) generate, via instance segmentation, a second set of polygons corresponding to respective areas of the 2D image file, (iv) generate, via unsupervised image processing, a third set of polygons corresponding to respective areas of the 2D image file, (v) based on (a) overlap between polygons in the first, second, and third sets of polygons and (b) respective confidence scores for each of the overlapping polygons, determine a set of merged polygons corresponding to respective areas of the 2D image file, and (vi) cause a client station to display a visual representation of the 2D image file where each merged polygon is overlaid as a respective selectable region of the 2D image file.
An example computing system is configured to (i) present a three-dimensional (3D) visualization of a 3D model of a construction project; (ii) while presenting the 3D visualization of the 3D model of the construction project, present (a) a sectioning plane that defines a view of the 3D visualization of the 3D model of the construction project and (b) a sectioning control tool comprising an idealized 3D model, the sectioning control tool configured to set a location of the sectioning plane; (iii) receive user input indicating an interaction with the idealized 3D model; and (iv) based on the user input, adjust the location of the sectioning plane relative to the 3D visualization model of the 3D model of the construction project and thereby adjust the view of the 3D visualization of the 3D model of the construction project.
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
63.
Computer system and method for managing coordination issues in construction projects
The present disclosure is directed to a software tool that facilitates coordination between various parties that are involved in the process of rectifying a problem identified in a combined three-dimensional model file. In one implementation, the software tool may cause a computing device to (a) receive an indication requesting creation of a coordination issue that relates to a portion of a rendered three-dimensional view of a construction project, (b) in response to the receipt of the indication, create a data set defining the coordination issue, the data set including (i) a representation of the portion of the rendered three-dimensional view, and (ii) data indicating an assignee of the coordination issue, and (c) cause an indication of the coordination issue to be presented to a client station associated with the assignee.
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
An example computing platform is configured to detect a request on behalf of a given user, the request comprising a parameter of a given type; determine that the parameter requires a permission verification; apply to the request a verification status indicator that indicates whether or not a permission verification has been successfully performed for the given user with respect to the parameter; perform a permission verification for the given user with respect to the parameter; either (i) leave the verification status indicator set to a first value if the given user does not have permission to embed scripts into the given type of parameter, or (ii) update the verification status indicator from the first value to a second value if the given user has permission to embed scripts into the given type of parameter; and grant or deny the request based at least in part on the verification status indicator.
Disclosed herein is an improved AR technology for aligning virtual content with a real-world environment. In one aspect, the disclosed process may involve a first computing device receiving an indication that a second computing device detected a given QR pattern on a given strip of QR tape installed in a real-world environment. In response to receiving the indication, the first computing device may obtain installation information regarding a layout of the given strip of QR tape. Based at least on an identifier of the given QR pattern and the information regarding the layout of the given strip of QR tape, the first computing device may then determine a position and orientation of the second computing device, align virtual content on the real-world environment, and instruct the second computing device to present a view of the real-world environment that has the aligned virtual content superimposed onto the real-world environment.
G06K 19/06 - Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
G06K 7/14 - Methods or arrangements for sensing record carriers by electromagnetic radiation, e.g. optical sensingMethods or arrangements for sensing record carriers by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
G06T 19/00 - Manipulating 3D models or images for computer graphics
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
G06V 20/20 - ScenesScene-specific elements in augmented reality scenes
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.
G06F 30/23 - Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
G06T 19/20 - Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
67.
Computer System and Methods for Managing Data, Data Access, and Data Retention
Techniques for managing data and data connections for a construction project involve (1) establishing respective data connections between (i) each party-entity data record and a project-entity data record for the construction project, and (ii) each party-entity data record and each respective object-entity data record for the construction project, (2) determining each party's permissions for retaining access to (i) the project-entity data record and (ii) each object-entity data record after a trigger event occurs, and (3) generating (i) respective connection data encoding the party's permissions for retaining access to the project-entity data record to be stored in association with the respective data connection between the party-entity data record and the project-entity data record and (ii) respective connection data encoding the party's permissions for retaining access to each respective object-entity data record in association with the respective data connection between the party-entity data record and the respective object-entity data record.
A computing system that defines a first zone of a multi-zone computing platform is configured to (1) receive a request to access at least one given data object that is stored within the multi-zone computing platform, (2) obtain, from a global representation of available data that is stored within the multi-zone computing platform, a routing address that includes information indicating where the at least one given data object is stored, (3) validate the request to access the at least one given data object, (4) determine that the request is valid and should be allowed, (5) determine whether the at least one given data object is stored at the first zone, and (6) based on the determination, either retrieve the at least one given data object from the first zone or issue a request to retrieve the at least one given data object from a second zone.
G06F 16/27 - Replication, distribution or synchronisation of data between databases or within a distributed database systemDistributed database system architectures therefor
H04L 67/1097 - Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
09 - Scientific and electric apparatus and instruments
42 - Scientific, technological and industrial services, research and design
Goods & Services
Downloadable software for use in the field of construction project management, namely, for use in accounting, bidding, material tracking, labor cost tracking, contract and document management, and quality and safety management Consulting services in the field of software as a service (SAAS) featuring software in the field of construction project management
70.
Determination of Insights for Construction Projects Using Budget-Code Classification
A computing platform is configured to: obtain a set of data objects representing construction-project-related action items; evaluate the obtained set of data objects and thereby identify two or more budget-code-specific subsets of data objects, where each respective budget-code-specific subset of data objects corresponds to a respective one of two or more budget codes; for each respective one of the two or more budget codes, evaluate the respective budget-code-specific subset of data objects and thereby identify one or more budget-code-specific metrics for the respective one of the two or more budget codes; based at least on the identified budget-code-specific metrics for the two or more budget codes, determine one or more construction-related insights; and transmit, to a client station, data defining the one or more construction-related insights and thereby cause an indication of the one or more construction-related insights to be presented at a user interface of the client station.
A computing system configured to: (1) render, via a graphical user interface (GUI) displayed by a client station, a three-dimensional view of a construction project using a three-dimensional model file that defines a set of meshes representing physical objects of the construction project, wherein each mesh comprises a set of triangular faces, and wherein the GUI includes a measurement tool for obtaining a shortest distance between a first mesh and a second mesh; (2) receive a request to obtain the shortest distance between the first mesh and the second mesh; (3) calculate a set of distances potentially comprising the shortest distance between the first mesh and the second mesh by first reducing one or both of: (i) the number of faces between which distances are calculated and (ii) the number of distances that are calculated; and (4) determine the shortest distance between the first mesh and the second mesh.
G06T 17/20 - Wire-frame description, e.g. polygonalisation or tessellation
G06F 3/0481 - Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
G06T 7/90 - Determination of colour characteristics
72.
Navigating and interacting with hierarchical lists
A computing platform that enables creation and management of data records may be configured to (i) cause a client station of a user to display an initial view of an interface for selecting, from a hierarchical list of possible values for a given data field of a data record, one or more values to assign to the given data field, (ii) receive, from the client station, a first indication that the user has selected a first value from the hierarchical list to assign to the given data field, and (iii) in response to receiving the first indication, (a) identify a second set of one or more values from a second level of the hierarchical list that are related to the first value, and (b) cause the client station to display an updated view of the interface in which the recommendation pane presents the second set of one or more values.
A computing platform is configured to: initialize a three-dimensional (3D) model of a given construction project and thereby determine a first set of objects; cause a first frame of the 3D model to be displayed at an end-user device from a first viewpoint having a first view frustum; receive an indication of a command to display a second frame of the 3D model from a second viewpoint having a second view frustum; identify at least a subset of objects that are contained within the second view frustum; apply one or more object processing techniques and thereby identify one or more additional objects that are contained within the second view frustum; render, as an array of pixels, a second set of objects comprising (i) the subset of objects and (ii) the one or more additional objects; and based on the second set of objects, cause the second frame to be displayed.
A computing platform configured to (i) receive, via a user interface, a command to activate a bulk association mode for bulk associating an attribute value with one or more line items, (ii) based on the command, activate the bulk association mode and thereby display, via the user interface, a bulk association view comprising a target region for receiving an indication of one or more line items that are to be bulk associated with one or more given attribute values, (iii) receive first user input selecting at least two given attribute values for bulk association, (iv) receive second user input indicating one or more given line items that are to be bulk associated with the two given attribute values, and (v) after receiving the second user input, cause each given line item to be associated with the two given attribute values.
An example computing platform is configured to: obtain a two-dimensional drawing of a portion of a construction project; perform an image processing analysis of the two-dimensional drawing to identify one or more location entities within the two-dimensional drawing; derive embeddings for each location entity in the two-dimensional drawing; based on the derived embeddings, determine relationships between the one or more location entities; and based on the determined relationships between the one or more location entities, generate a location entity data taxonomy that includes each identified location entity as a respective node that is related to at least one other location entity.
An example computing platform is configured to: obtain a two-dimensional drawing of a portion of a construction project; perform an image processing analysis of the two-dimensional drawing to identify one or more location entities within the two-dimensional drawing; derive embeddings for each location entity in the two-dimensional drawing; based on the derived embeddings, determine relationships between the one or more location entities; and based on the determined relationships between the one or more location entities, generate a location entity data taxonomy that includes each identified location entity as a respective node that is related to at least one other location entity.
Disclosed herein is software technology that enables different accounts to be mirrored. In one aspect, the disclosed process may involve determining that an origin data record created under a first account of a first party is to be mirrored to a second account of a second party, generating a thread identification that is mapped to the data record created under the first account of the first party, and generating a first message that comprises data from the origin data record and the thread identifier that is mapped to the origin data record. Based on the first message, the disclosed process may further involve creating a target data record under a second account of a second party that corresponds to the origin data record created under the first account of the first party and storing the target data record under the second account of the second party.
Techniques for comparing two-dimensional drawings involve (1) accessing first and second two-dimensional drawings, (2) identifying (i) a first set of landmark pixel regions that appear in the first two-dimensional drawing and (ii) a second set of landmark pixel regions that appear in the second two-dimensional drawing, (3) comparing the first set of landmark pixel regions with the second set of landmark pixel regions and thereby identify a set of shared landmark pixel regions that appear in both the first two-dimensional drawing and the second two-dimensional drawing, (4) using the set of shared landmark pixel regions to align the first and second two-dimensional drawings, (5) comparing the aligned first and second two-dimensional drawings, and (6) based on the comparison between the aligned first and second two-dimensional drawings, determining whether the first two-dimensional drawing and the second two-dimensional drawing depict a same given real-world environment.
G06F 18/22 - Matching criteria, e.g. proximity measures
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06F 30/18 - Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
A computing platform is configured to: (i) receive, from a first client station, (a) data related to the first client station and (b) a first image associated with a target location; (ii) based on the received data related to the first client station, determine a location signature associated with the first image; (iii) determine that the location signature associated with the first image has a threshold level of similarity to a location signature associated with a second image that is associated with the target location; (iv) evaluate at least the first image to determine progression of a construction-related activity at the target location; (v) based on the evaluation of at least the first image, determine that the construction-related activity at the target location has progressed a threshold amount; and (vi) transmit, to a second client station, a communication related to progression of the construction-related activity.
A computing platform is configured to: (i) receive, from a first client station, (a) data related to the first client station and (b) a first image associated with a target location; (ii) based on the received data related to the first client station, determine a location signature associated with the first image; (iii) determine that the location signature associated with the first image has a threshold level of similarity to a location signature associated with a second image that is associated with the target location; (iv) evaluate at least the first image to determine progression of a construction-related activity at the target location; (v) based on the evaluation of at least the first image, determine that the construction-related activity at the target location has progressed a threshold amount; and (vi) transmit, to a second client station, a communication related to progression of the construction-related activity.
G06Q 50/00 - Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
G06V 10/00 - Arrangements for image or video recognition or understanding
A computing device facilitates selection of (i) a data-object currency for a data object of a construction project and (ii) an exchange rate for converting between the data-object currency and a project currency. Based on project-level currency settings and permissions information, currency options from which a given user is permitted to select a data-object currency for the data object are identified and presented for selection. After selection of the data-object currency, based on the permissions information and information about the data object, exchange rate options from which the given user is permitted to select an exchange rate for converting between the data-object currency and the project currency are identified and presented for selection. After selection of the exchange rate, cost values for line items of the data object are converted from the data-object currency to the project currency using the exchange rate and dynamically updated based on cost value modifications.
G06Q 40/04 - Trading Exchange, e.g. stocks, commodities, derivatives or currency exchange
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
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.
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04847 - Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
G06F 30/12 - Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 19/00 - Manipulating 3D models or images for computer graphics
83.
Computer Systems and Methods for Determining Recommended Cost Codes for Time Entries
A computing system is configured to receive, from a client device, a first communication comprising an initial set of user-defined information for a new time entry related to a construction project, wherein the initial set of user-defined information includes (i) a date and (ii) identifying information for at least one individual working on the construction project; obtain contextual information related to the at least one individual's work; based at least on the initial set of user-defined information and the contextual information, identify a set of one or more recommended cost codes for the new time entry; cause the client device to display the set of one or more recommended cost codes; receive, from the client device, a second communication that includes a given cost code that has been selected from the one or more recommended cost codes; and create the new time entry comprising the given cost code.
Improved software technology and techniques for enabling creation and management of a customized work breakdown structure (“WBS”) for a specific project may comprise various phases. For instance, a first phase may involve defining an organization-level WBS comprising a first set of customized, multi-dimensional WBS codes that serve as a starting point for the WBS codes to use for projects being handled by the organization, a second phase may involve defining a project-level WBS comprising a second set of customized, multi-dimensional WBS codes to use for a particular project being handled by the organization, and a third phase may involve using the defined project-level WBS to manage certain aspects of the particular project. Further, access to customize WBS variables may be regulated based on user access permissions information indicated by an organization and/or project-level WBS.
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.
G06T 19/00 - Manipulating 3D models or images for computer graphics
G06F 3/04815 - Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
G06F 3/04845 - Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
A computing platform is configured to: for each construction project in a pool of construction projects, (i) obtain a set of data objects related to the construction project; (ii) evaluate the obtained set of data objects related to the construction project and thereby identify two or more problem-specific subsets of data objects, wherein each respective problem-specific subset of data objects corresponds to a respective one of two or more construction-related problems; (iii) for each respective one of the two or more construction-related problems, evaluate the respective problem-specific subset of data objects and thereby identify a respective problem-specific group of one or more construction-related themes that correspond to the respective one of two or more construction-related problems; and (iv) based at least on the problem-specific groups of one or more construction-related themes that respectively correspond to the two or more construction-related problems, generate a project-specific themes dataset for the construction project.
A computing platform is configured to: for each construction project in a pool of construction projects, (i) obtain a set of data objects related to the construction project; (ii) evaluate the obtained set of data objects related to the construction project and thereby identify two or more theme-specific subsets of data objects, wherein each respective theme-specific subset of data objects corresponds to a respective one of two or more construction-related themes; (iii) for each respective one of the two or more construction-related themes, evaluate the respective theme-specific subset of data objects and thereby identify a respective theme-specific group of one or more construction-related problems that correspond to the respective one of two or more construction-related themes; and (iv) based at least on the theme-specific groups of one or more construction-related problems that respectively correspond to the two or more construction-related themes, generate a project-specific themes dataset for the construction project.
A computing platform is configured to: after generating project-specific themes datasets for a pool of construction projects: (i) receive information about a given construction project; (ii) based at least on the received information about the given construction project, identify, from the pool of construction projects, a given set of construction projects having a threshold level of similarity to the given construction project; (iii) for each respective construction project in the given set of construction projects, obtain the project-specific themes dataset for the respective construction project; (iv) based on the project-specific themes datasets that are obtained for the given set of construction projects, determine one or more insights related to the given construction project; and (v) transmit, to a client station, data defining the one or more insights and thereby cause an indication of the one or more insights to be presented at a user interface of the client station.
A computing platform is configured to (i) receive data objects related to a construction project, (ii) add the data objects to a construction knowledge graph as nodes that are connected to other nodes representing other data objects, (iii) determine, via a machine-learning model trained using historic construction project data, a first risk score for a first data object, (iv) determine, via the machine-learning model, a second risk score for a second data object, where the second risk score is based on (a) the first risk score and (b) a degree of separation between the first data object and the second data object in the construction knowledge graph, (v) based on the second risk score, automatically generate a suggested action to be taken with respect to the first data object, and (vi) cause an indication of the suggested action to be displayed at a client station of a user associated with the construction project.
09 - Scientific and electric apparatus and instruments
42 - Scientific, technological and industrial services, research and design
Goods & Services
Downloadable software applications using artificial intelligence to assist in construction project management. Software as a service (SaaS) services featuring software utilizing artificial intelligence to assist in construction project management.
The present disclosure is directed to a software tool that engages in a pattern matching technique. In one implementation, the software tool retrieves a two-dimensional drawing and identifies walls as lines, rotates the drawing until a threshold number of lines are aligned with either the X or Y axes, discards lines that are not aligned with either the X or Y axis, identifies intersection points, identifies a subset of intersection points that have a maxima or minima coordinate, constructs a data library indicative of the relative positions of the points in the identified subset; and compares the constructed data libraries for the two-dimensional drawing to data libraries constructed for another two-dimensional drawing.
G06F 16/21 - Design, administration or maintenance of databases
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
G06T 3/40 - Scaling of whole images or parts thereof, e.g. expanding or contracting
G06T 3/60 - Rotation of whole images or parts thereof
G06T 7/33 - Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
G06V 10/44 - Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersectionsConnectivity analysis, e.g. of connected components
G06V 10/75 - Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video featuresCoarse-fine approaches, e.g. multi-scale approachesImage or video pattern matchingProximity measures in feature spaces using context analysisSelection of dictionaries
An example computing platform is configured to identify a subset of source code files for a modular software application that have changed. The computing platform further creates a dynamic test plan comprising a targeted subset of available software tests by (i) obtaining a dependency map that identifies various dependency relationships between the software application's modules, (ii) based on the dependency map, generating an impact map that identifies various impact relationships between the software application's modules, (iii) based on the impact map, generate a test map that identifies various tests that correspond to the software application's modules, and (iv) select the targeted subset of available software tests based on the test map and the identified subset of source code files. Finally, the computing platform executes the dynamic test plan comprising the targeted subset of available tests.
A method for intelligent pull planning involves determining an update to a master schedule for a construction project that comprises a plurality of tasks, each task comprising a scheduled start date; executing a machine learning model trained using historical construction project schedule data and thereby identifying candidate tasks that may be commenced earlier than scheduled; displaying, at a client station, each identified candidate task, its scheduled start date, a proposed new start date, and an impact on the master schedule if the task is commenced on the proposed new start date; receiving user input indicating a selection of a given task that is to be commenced earlier than its scheduled start date; and transmitting a notification to a party responsible for completing the given task, the notification indicating that the given task has been nominated for earlier commencement and requesting approval for the earlier commencement.
A computing system is configured to determine an update to a master schedule for a construction project that comprises a plurality of tasks, each task comprising a respective scheduled start date; execute a machine learning model that has been trained with historical construction project schedule data and thereby identify one or more tasks that is each a candidate for commencement earlier than its scheduled start date; cause a client station to display each identified task, its scheduled start date, a respective new start date, and an impact on the master schedule if the task is commenced on the respective new start date; receive user input indicating a selection of a given task that is to be commenced earlier than its scheduled start date; and cause a notification to be transmitted to a party responsible for completing the given task indicating that the given task has been nominated for earlier commencement and requests approval for earlier commencement.
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.
09 - Scientific and electric apparatus and instruments
36 - Financial, insurance and real estate services
42 - Scientific, technological and industrial services, research and design
Goods & Services
Downloadable computer software applications for procuring construction materials, managing cash flow, invoicing, payment processing and managing vendor payments for use in the construction industry Payment verification services, namely, verification of vendor payments; processing of credit card payments in the construction industry Providing temporary use of non-downloadable computer software for procuring construction materials, managing cash flow, invoicing, payment processing and managing vendor payments for use in the construction industry
97.
Computer system and method for documenting items identified while at a construction site
In order to improve a user's task of documenting items that are identified by the user while at a construction site, a computing system may be configured to (i) receive, from a first client station associated with a first user, media content that is descriptive of a given on-site item of a construction site, (ii) apply a speech recognition technique to transcribe audio data included in the media content into text that is descriptive of the given on-site item, (iii) generate a data record for the given on-site item, (iv) pre-populate at least a portion of the transcribed text into one or more fields of the data record for the given on-site item, and (v) cause a second client station to display the data record to a second user for review.
A computing platform is configured to: (i) receive, from a first client station, a data file; (ii) obtain metadata associated with the data file; (iii) determine, based on at least a first set of metadata from the obtained metadata associated with the data file, a naming structure to use for the data file; (iv) generate, based on the determined naming structure and at least a second set of metadata from the obtained metadata, a proposed name for the data file; and (v) transmit, to a second client station, a communication identifying the proposed name and thereby cause an indication of the proposed name for the data file to be presented at a user interface of the second client station.
A computing platform is configured to: (i) receive, from a first client station, a data file; (ii) obtain metadata associated with the data file; (iii) determine, based on at least a first set of metadata from the obtained metadata associated with the data file, a naming structure to use for the data file; (iv) generate, based on the determined naming structure and at least a second set of metadata from the obtained metadata, a proposed name for the data file; and (v) transmit, to a second client station, a communication identifying the proposed name and thereby cause an indication of the proposed name for the data file to be presented at a user interface of the second client station.
G06F 16/16 - File or folder operations, e.g. details of user interfaces specifically adapted to file systems
G06F 16/11 - File system administration, e.g. details of archiving or snapshots
G06F 30/13 - Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
100.
Connecting overlapping line segments in a two-dimensional view
An example computing device is configured to (i) generate a cross-sectional view of a three-dimensional drawing file, the cross-sectional view including an object corresponding to a given mesh of the three-dimensional drawing file, the object including a void contained within the object, (ii) determine a plurality of two-dimensional line segments that collectively define a boundary of the void, (iii) for each line segment, determine one or more nearby line segments based on a distance between an end point of the line segment and an end point of the one or more nearby line segments being within a threshold distance, (iv) determine one or more fully-connected sub-objects by connecting respective sets of nearby line segments in series, (v) determine, from the fully-connected sub-objects, a final sub-object to be used as a new boundary of the void, and (vi) add the final sub-object to the cross-sectional view as the new boundary of the void.