Method, system and computer device for interacting with architectural procedures based on visual-linguistic twin representations
By acquiring architectural description documents and generating architectural geometric models, the synchronous updating of visual-linguistic twin representations is achieved, solving the problem of the separation between visual interaction and logical expression in the design process in existing technologies, and improving the flexibility and efficiency of architectural modeling.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHENZHEN UNIV
- Filing Date
- 2026-05-14
- Publication Date
- 2026-06-12
AI Technical Summary
In existing architectural 3D modeling technologies, there is a disconnect between the intuitiveness of the design process and the structured expression of the model, making it difficult to achieve parametric modification and semantic analysis. Furthermore, existing methods cannot support the flexibility required for creative exploration and the rigor required for structured expression.
By acquiring architectural description documents, including 2D architectural sketches, first instruction description parameters, second instruction description parameters, and third instruction description parameters, a building geometric model is generated and visualized and interacted with in a graphical user interface, achieving synchronous updates of visual-linguistic twin representations.
It enables parametric generation and real-time visualization of architectural models, solving the problem of the disconnect between visual interaction and logical expression in the design process. It supports modeling from simple volumes to fine details, improving modeling flexibility and efficiency.
Smart Images

Figure CN122197168A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of architectural 3D modeling technology, and in particular to an interactive method, system and computer device for architectural programs based on visual-linguistic twin representations. Background Technology
[0002] In the field of architectural 3D modeling, there is a serious disconnect between the intuitiveness of the design process and the structured representation of the model.
[0003] Specifically, while interactive design tools based on graphical user interfaces provide intuitive visual feedback, their underlying representation is usually geometric primitives, lacking an explicit description of the hierarchical relationships and construction logic of building components. This makes it difficult to parametrically modify and semantically analyze 3D building models. Symbolic representation methods, such as shape grammars, while structurally rigorous, are difficult to support design iteration due to their complex editing methods and lack of real-time visual feedback.
[0004] Therefore, the existing 3D architectural modeling process has failed to establish a synchronous mechanism between symbolic programs and visual geometric models. Users cannot update structured parameters in real time in the graphical interface editing, nor can they directly drive geometric shape changes by modifying description instructions. This results in a double disconnect between visual interaction and logical expression in the modeling process, and further makes it difficult for the architectural modeling process to meet the flexibility requirements of creative exploration, while also failing to guarantee the rigor requirements of structured expression. Summary of the Invention
[0005] Therefore, it is necessary to provide an interactive method, system, and computer device for an architectural program based on visual-linguistic twin representation that can meet the flexibility requirements of creative exploration and ensure the rigor requirements of structured expression, in order to address the above-mentioned technical problems.
[0006] Firstly, this application provides an interactive method for an architectural program based on visual-linguistic twin representations, including:
[0007] Obtain the building description document; wherein, the building description document includes a sequence of description instructions for describing different building hierarchical structures, the sequence of description instructions includes a two-dimensional building sketch, a first instruction description parameter for describing the building outline features, a second instruction description parameter for describing the covering structure of the building's upper surface, and a third instruction description parameter for describing the building facade details.
[0008] Input the description instruction sequence into the preset parametric geometry compilation model to generate a building geometry model corresponding to the building description document based on the building 2D sketch, the first instruction description parameter, the second instruction description parameter, and the third instruction description parameter;
[0009] The architectural geometry model is displayed in a graphical user interface; the architectural geometry model is used for visualization and interaction.
[0010] In one embodiment, the method further includes:
[0011] In response to the user's first editing operation on the description instructions in the description instruction sequence, update the description instruction parameters in the building description document;
[0012] In response to the user's second editing operation on the building geometry model in the graphical user interface, the second editing operation is mapped to the first editing operation corresponding to the target description instruction sequence, and the description instruction parameters in the building description document are updated;
[0013] The updated building description document is input into the compilation model to update the building geometry model, and the building geometry model is displayed in the graphical user interface.
[0014] In one embodiment, prior to the step of obtaining the building description document, the method further includes:
[0015] Create a building description document;
[0016] The steps for creating a building description document include:
[0017] Using a target procedural synthesis engine, construct a syntactically correct architectural program tree and serialize the first architectural description document; or
[0018] In response to the user's editing operation of the description language through the language editor, the corresponding initial semantic description information is determined, and the semantic description information is grammatically converted to obtain the corresponding second architectural description document; or
[0019] The system acquires observation data and uses a target prediction model to infer and generate a third building description document from the observation data. The observation data is used to represent the data used to describe the building, and the target prediction model is used to infer the corresponding building description text from the observation data.
[0020] In one embodiment, the steps of constructing a syntactically correct architectural program tree and serializing a first architectural description document using a target procedural synthesis engine include:
[0021] The syntax rules for architectural description documents are defined through a target procedural compositing engine. These syntax rules include basic data types and architectural description command types. The basic data types include at least real number types, angle types, integer types, two-dimensional point types, three-dimensional point types, line segment types, arc segment types, wireframe types, and sketch types. The architectural description command types include envelope commands, roof commands, and elevation commands.
[0022] According to the syntax rules, a building program tree that conforms to the syntax rules is recursively generated; where the nodes in the building program tree correspond to building description commands, and the edges in the building program tree represent the combination relationship between the building description commands;
[0023] The building program tree is standardized, normalized, and symbolized to serialize it into a command sequence, which serves as the first building description document.
[0024] In one embodiment, after the step of constructing a grammatically correct architectural program tree and serializing it into a third architectural description document using a target procedural synthesis engine, the method further includes:
[0025] Determine the 3D geometric model corresponding to the architectural description document, and determine the observation data of the 3D geometric model corresponding to the architectural description document;
[0026] The determination of observation data includes: obtaining a guide map by rendering the feature edges and / or grayscale model of the three-dimensional geometric model, and generating observation data based on the guide map;
[0027] Building description documents are paired with observation data to form a supervised dataset for training the target prediction model; the supervised dataset includes multiple pairs of observation data and building description document data.
[0028] In one embodiment, the step of inputting a sequence of description instructions into a preset parametric geometry compilation model to generate a building geometry model corresponding to the building description document based on the building 2D sketch, a first instruction description parameter, a second instruction description parameter, and a third instruction description parameter includes:
[0029] Based on the parametric geometric compilation model, the building geometric model with corresponding precision is selectively compiled and generated according to the target level of the first instruction description parameter, the second instruction description parameter and the third instruction description parameter in the building description document.
[0030] The target level of detail includes at least: a first level of detail that compiles only the envelope instructions to generate a mass model; a second level of detail that compiles the roof instructions based on the envelope instructions to generate a model with a roof; and a third level of detail that further compiles the facade instructions based on the envelope instructions and the roof instructions to generate a model with facade details.
[0031] In one embodiment, after the step of generating the architectural geometry model corresponding to the architectural description document, the method further includes:
[0032] Threshold snapping and merging are performed on vertices in the building geometry model, and duplicate points with a distance less than a preset threshold are merged.
[0033] Project vertices located near the edge onto their nearest neighboring vertices;
[0034] And / or, fit the quadrilateral base of the roof primitive corresponding to the roof instruction to a minimum area rotating rectangle, and merge the slope angles that should be consistent among multiple roof primitives into the same slope constraint.
[0035] Secondly, this application also provides a building data processing system, including:
[0036] The acquisition module is used to acquire the building description document; wherein, the building description document is a sequence of description instructions for describing different building hierarchical structures. The sequence of description instructions includes a two-dimensional building sketch, a first instruction description parameter for describing the building outline features, a second instruction description parameter for describing the covering structure of the building's upper surface, and a third instruction description parameter for describing the building facade details.
[0037] The compilation module is used to input the description instruction sequence into a preset parametric geometric compilation model to generate a building geometric model corresponding to the building description document based on the building 2D sketch, the first instruction description parameter, the second instruction description parameter, and the third instruction description parameter.
[0038] The display module is used to display the architectural geometric model in the graphical user interface; the architectural geometric model is used for visualization and interaction in the graphical user interface.
[0039] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the interactive method of the architecture program based on visual-linguistic twin representation provided in the first aspect.
[0040] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the interactive method of the architecture program based on visual-linguistic twin representation provided in the first aspect.
[0041] This application provides the aforementioned interactive method, system, and computer device for a building program based on visual-linguistic twin representation. The interactive method for the building program based on visual-linguistic twin representation involves acquiring a building description document. This building description document includes a sequence of description instructions for describing different building hierarchical structures. The sequence of description instructions includes a two-dimensional building sketch, first instruction description parameters for describing building outline features, second instruction description parameters for describing the covering structure of the building's upper surface, and third instruction description parameters for describing the detailed features of the building facade. The description instruction sequence is input into a preset parametric geometry compilation model to determine the interaction method based on the two-dimensional building sketch, the first instruction description parameters, the second instruction description parameters, and the third instruction description parameters. The method describes parameters and third-level instructions to generate architectural geometric models corresponding to architectural description documents; it then displays these models in a graphical user interface. These geometric models are used for visualization and interaction. Based on a sequence of description instructions including 2D architectural sketches and multi-level instruction parameters, and utilizing a parametric geometric compilation model to generate the architectural geometric model, the method achieves synchronous updates and interaction between structured parameters and the visualized model. It provides an efficient and structured method for architectural data processing, enabling parametric generation and real-time visualization of architectural geometric models. This solves the problem of the disconnect between design intuitiveness and structured model expression in existing technologies, supporting modeling from simple volumes to fine details. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 This is a schematic diagram illustrating an application environment for the interactive method of the architectural program based on visual-linguistic twin representation, as proposed in this application.
[0044] Figure 2 This is a flowchart illustrating the first embodiment of the interactive method for the architectural program based on visual-linguistic twin representation of this application;
[0045] Figure 3 This is a schematic diagram of a first scene in a first embodiment of the interaction method of the architectural program based on visual-linguistic twin representation of this application;
[0046] Figure 4 This is a schematic diagram of a second scene in the first embodiment of the interaction method of the architectural program based on visual-linguistic twin representation of this application;
[0047] Figure 5This is a flowchart illustrating a second embodiment of the interactive method for the architectural program based on visual-linguistic twin representations in this application;
[0048] Figure 6 This is a flowchart illustrating the third embodiment of the interactive method for the architectural program based on visual-linguistic twin representation of this application;
[0049] Figure 7 This is a schematic diagram of the first scene in the third embodiment of the interactive method of the architectural program based on visual-linguistic twin representation of this application;
[0050] Figure 8 This is a schematic diagram of a second scenario in the third embodiment of the interactive method for the architectural program based on visual-linguistic twin representation of this application;
[0051] Figure 9 This is a schematic diagram of a third scenario in the third embodiment of the interactive method of the architectural program based on visual-linguistic twin representation of this application;
[0052] Figure 10 This is a schematic diagram of the fourth scenario in the third embodiment of the interactive method of the architectural program based on visual-linguistic twin representation of this application;
[0053] Figure 11 This is a schematic diagram of a building data processing system in one embodiment;
[0054] Figure 12 This is a schematic diagram of the internal structure of a computer device in one embodiment. Detailed Implementation
[0055] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0056] It should be noted that the terms "first," "second," etc., used in this application can be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments, or any combination of multiple embodiments.
[0057] The interaction method for architectural programs based on visual-linguistic twin representations provided in this application can be applied to, for example... Figure 1In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or located in the cloud or on another network server. After obtaining a building description document, terminal 102 can input the sequence of description instructions from the building description document into a preset parametric set variation model to generate a building geometric model. Furthermore, the building geometric model can be displayed based on the graphical user interface of terminal 102 for visualization and interaction.
[0058] Terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, drones, low-altitude aircraft, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, and projection equipment. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted displays. Head-mounted displays can be virtual reality (VR) devices, augmented reality (AR) devices, and smart glasses. Server 104 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services.
[0059] In the field of architectural 3D modeling, existing technologies struggle to effectively integrate structured semantic representation with intuitive visual editing. Geometric primitive-based representations only provide meshed underlying data, lacking explicit encoding of hierarchical relationships and construction logic of building components, thus limiting the model's parametric modification capabilities. Symbolic representations, limited by their expressive power, can only describe the LOD1 level structure of flat-roofed box-shaped buildings using their domain-specific languages, failing to model the geometric features of pitched roofs and complex facade details at the LOD3 level. Furthermore, during inverse reconstruction from point clouds or images, existing methods, lacking integration of prior knowledge of the building structure, often produce geometric models with topological discontinuities and detail distortions, affecting the model's structural integrity and adaptability to multimodal inputs.
[0060] For example, in a digital preservation project of a historical building, a 3D reconstruction of an industrial heritage site with an asymmetrical pitched roof and carved facade is required. The input data is a sparse point cloud obtained from ground laser scanning, with data missing in the roof area due to vegetation obstruction. When using traditional interactive design tools, designers can only manipulate discrete mesh vertices and cannot directly adjust the roof slope parameters. If existing symbolic modeling languages are used, their syntax rules do not support the definition of pitched roof primitives, resulting in the inability to explicitly express the hierarchical relationships of facade components. Consequently, parametric optimization is difficult after model reconstruction; for example, modifying the roof slope requires rebuilding the entire geometry, and the symbol editing process lacks real-time visual feedback, leading to inconsistencies between the design intent and the geometric results.
[0061] If the aforementioned technical issues are not resolved, the building model will be unable to support the structured data exchange required by the Building Information Modeling (BIM) system, limiting its application in energy consumption simulation and structural safety assessment. Model topology defects may lead to errors in subsequent engineering analysis, while the separation of visual editing and symbol editing workflows will increase design iteration costs and reduce overall workflow efficiency.
[0062] Based on this, this implementation proposes an interactive method for architectural programs based on visual-linguistic twin representations, such as... Figure 2 As shown, this method is applied to Figure 1 Taking terminal 102 as an example, the explanation includes the following steps 21 to 23, wherein:
[0063] Step 21, obtain the building description document.
[0064] The building description document includes a sequence of description instructions for describing different building hierarchical structures. The sequence of description instructions includes a two-dimensional building sketch, a first instruction description parameter for describing the building outline features, a second instruction description parameter for describing the covering structure of the building's upper surface, and a third instruction description parameter for describing the detailed features of the building facade.
[0065] Here, the architectural description document contains a sequence of instructions for describing the building's geometry, topological relationships, and detailed features. The architectural description document expresses the architectural design intent in a parsable and programmable way, supporting the transformation from abstract concepts to concrete geometric models.
[0066] Understandably, architectural 2D sketches can be used to define the planar outline of a building or the 2D shape of a specific component, specifically by defining the building's geometry through lines, polygons, or curves.
[0067] It can be further understood that the architectural description document includes a sequence of description instructions for describing different hierarchical structures of the building. This sequence of description instructions further includes a two-dimensional architectural sketch, a first set of description parameters for describing the building's outline features, a second set of description parameters for describing the covering structure of the building's upper surface, and a third set of description parameters for describing the detailed features of the building's facade.
[0068] For example, a 2D architectural sketch can be a polygonal data representing the outline of a building foundation; the first instruction description parameter can specify the number of floors and the height of each floor; the second instruction description parameter can define the roof slope and type (such as flat or gable roof); and the third instruction description parameter can specify the dimensions, number, and arrangement of the facades.
[0069] For example, a two-dimensional sketch can be a contour object located in a plane, consisting of an outer contour frame and zero or more inner contour frames, which can be formally represented as: , .
[0070] Where W0 represents the outer boundary, The boundary of the opening is represented by the outer boundary W of each wireframe, which consists of several edges that connect end to end to form a closed loop. These edges can be either straight line segments or circular arc segments. A straight line segment can be represented as: ,here, With the endpoint as the endpoint, the arc segment can be represented as: ,here, For the endpoint of the arc, The point through which the arc passes. Based on this, a building plan sketch containing curved contours is drawn according to the aforementioned unified description rules.
[0071] The first instruction description parameters can be based on the architectural two-dimensional sketch and can be used to describe the building's outline features, such as the overall dimensions, wall thickness, floor height, foundation shape (e.g., rectangular, L-shaped, circular), and facade layout. These parameters collectively define the building's macroscopic volume and basic structure.
[0072] For example, the first instruction describing the parameter can be an envelope, which, as a basic geometric unit constituting a complex shape, can be anchored to the basic volume structure on the ground plane and is also used to define the large-scale blocks of a building. The envelope consists of the ground height and several sketch-extrusion primitives, and its formal representation is as follows:
[0073] .
[0074] in, , Indicates the elevation of the ground plane. Used to represent a two-dimensional sketch located on the ground plane This indicates the corresponding stretching height.
[0075] It should be noted that a building can include multiple basic envelopes. Each basic envelope can be a set of points of an object in the building. By performing a Boolean union on multiple basic envelopes, a final envelope can be obtained, which can be used as the first instruction description parameter to describe the current building outline features.
[0076] The second instruction description parameter can be used to describe the covering structure of the building's upper surface, typically referring to the type and characteristics of the roof. For example, the second instruction description parameter can specify the roof as a flat roof, a pitched roof (such as a gable roof, hip roof), a dome, etc., and further define details such as the slope of the covering structure under the building, the height of the eaves, and the position of the ridge line.
[0077] For example, the second instruction description parameter can be a parameter used to describe the overlying structure attached to the upper surface of the envelope, serving as a roof. Specifically, the roof can be modeled as a Boolean union of several roof primitives, each roof primitive comprising a rectangular base and the slope angles corresponding to its four sides, parameterized together. For example, it can be represented as: .
[0078] in, , The horizontal reference plane in the envelope. This refers to the rectangular projection region in the local coordinate system of the horizontal reference plane. These represent the slope angles corresponding to the four sides of the rectangle. Thus, the roof (the second instruction describing the parameter) can express complex segmented pitched roof structures by combining multiple rectangular roof primitives.
[0079] The third instruction description parameters can be used to describe the parameters of the vertical surface details attached to the envelope, as the facade. Specifically, the facade can be modeled as a set of vertical surface primitives arranged in sequence, each facade primitive consisting of a unit descriptor and a layout descriptor, which can be represented as: .
[0080] in, , The vertical plane in the envelope. This is a cell descriptor that can be used to represent the width, height, and normal extrusion depth of a vertical surface. Here, d>0 can represent adding volume outwards, and d<0 can represent removing volume inwards. For a layout descriptor, it may include a value for defining the center position of the vertical face of the including body. The center distance range W and H of the array in the local width and height directions, and the number of rows and columns m and n of the array.
[0081] In one embodiment, in addition to determining the architectural two-dimensional sketch, the first instruction description parameter, the second instruction description parameter, and the third instruction description parameter that describe the instruction sequence in the architectural description document, the architectural description document may also include the assembly relationship for the first instruction description parameter, the second instruction description parameter, and the third instruction description parameter.
[0082] Understandably, for a building as a whole, the envelope, as the overall exterior framework of the building, should have a corresponding assembly relationship with the roof and facade in order to maintain the overall harmony of the building.
[0083] Please refer to Figure 3 , Figure 3 This is a schematic diagram of the first scenario in this implementation. Specifically, after performing the first editing and clicking operations on the building description document, an updated building description document can be obtained. The corresponding example in this building description document can include an envelope and zero or more roofs and facades. In this building description document, the envelope can be instantiated first. The instantiated envelope can include the floor area on the horizontal plane and the facade height on any vertical plane. Then, the horizontal and vertical planes can be extracted from the envelope as reference planes. Afterward, the roofs and facades are attached to the corresponding reference planes using local coordinates. Since the parameters of the roofs and facades are defined relative to the reference planes, when the size or position of the envelope changes, the roofs and facades attached to it can automatically maintain the consistency of the assembly relationship, thereby supporting linked editing.
[0084] Step 22: Input the description instruction sequence into the preset parametric geometry compilation model to generate a building geometry model corresponding to the building description document based on the building 2D sketch, the first instruction description parameter, the second instruction description parameter, and the third instruction description parameter.
[0085] Among them, the architectural geometric model can be a three-dimensional representation output by the parametric geometric compilation model. It is a concrete representation of the content expressed in the architectural description document. The architectural geometric model not only contains geometric shape information, but can also carry semantic attributes for visualization and interaction in the graphical user interface.
[0086] Here, the parametric geometry compilation model can be a pre-defined set of software modules or algorithms, which can be used to parse and compile the input sequence of descriptive instructions into a renderable 3D geometric model, dynamically generating geometry based on the parameters in the instructions. In particular, the parametric geometry compilation model can support modeling of buildings at different levels of detail and ensure the parametric editability of the generated model.
[0087] As one implementation, the parametric geometry compilation model can be a rule-based interpreter that parses instructions line by line and calls geometry generation functions according to the parameters, generating a corresponding 3D cuboid model. Alternatively, the compilation model can be a script execution engine that executes predefined geometry generation scripts, dynamically adjusting the shape and size of the geometry based on the input parameters. Furthermore, the compilation model can also be a simple geometry library caller that directly calls preset geometry generation functions based on the first, second, and third instruction description parameters to quickly construct architectural geometry models.
[0088] In one embodiment, the step of inputting a sequence of description instructions into a preset parametric geometric compilation model to generate a building geometric model corresponding to a building description document based on a two-dimensional architectural sketch, a first instruction description parameter, a second instruction description parameter, and a third instruction description parameter includes:
[0089] Based on the parametric geometric compilation model, the building geometric model with corresponding precision is selectively compiled according to the target level of the first instruction description parameter, the second instruction description parameter and the third instruction description parameter in the building description document.
[0090] The target level of detail includes at least: a first level of detail that compiles only the envelope instructions to generate a mass model; a second level of detail that compiles the roof instructions based on the envelope instructions to generate a model with a roof; and a third level of detail that further compiles the facade instructions based on the envelope instructions and the roof instructions to generate a model with facade details.
[0091] Among them, the parametric geometry compilation model can transform abstract description instructions into specific geometric shapes.
[0092] The target level of detail is used to indicate the level of detail required when generating architectural geometry models. It can be used to represent the geometric features required at different levels during the compilation process.
[0093] When processing description instruction sequences, parametric geometry compilation models do not compile all details at once. Instead, they selectively process and generate geometric models of appropriate precision based on the target level of detail to optimize resource usage and improve processing efficiency.
[0094] Specifically, this can be achieved by setting conditional judgment logic within the compilation model to skip or execute specific geometry generation subroutines based on the target level of detail; or by decomposing the description instruction sequence into subsets of different levels of detail, with the compilation model only processing the subset corresponding to the target level of detail.
[0095] Only the envelope instructions are compiled to generate the first level of detail representation of the mass-level model. It only processes instructions from the architectural description document that can be used to define the overall outline and basic mass of the building, such as 2D architectural sketches and first instruction description parameters. Its purpose is to quickly generate the macroscopic form of the building, suitable for scenarios requiring an overview view.
[0096] Specifically, the compilation model can be used to parse and execute only instructions related to the basic shape of the building (such as extruding planar polygons), ignoring instructions related to the roof and facade; or, through a preset compilation configuration file, only the module that generates the mass model can be activated.
[0097] Based on the envelope instructions, the roof instructions are compiled to generate a second level of detail with a roof model. On the basis of the first level of detail, the second instruction description parameters used to describe the roof structure in the building description document are further processed. The second instruction description parameters can add roof form to the building mass and provide richer visual information.
[0098] Specifically, after generating the mass model, the model can be compiled to continue parsing and executing instructions related to roof type, slope, eaves, etc., to attach the roof geometry to the mass model; or, through a modular compilation process, the roof compilation module can be called after the mass compilation is completed.
[0099] Based on the envelope and roof instructions, the facade instructions are further compiled to generate a third level of detail model with facade details. Based on the second level of detail, the third instruction description parameters in the building description document used to describe the detailed features of the building facade are further processed to generate a building model with complete appearance details, suitable for high-precision rendering and detailed design.
[0100] As an example, after determining the building description document ArcVLT, multi-level detail compilation can be performed; specifically, a set of compilation operators is defined. This involves compiling the architectural description document. Compilation operators that perform compilation based on different target detail levels. For the triangular grid space corresponding to the building, For the level of detail of the target.
[0101] For example, compiling operators It can be set to the following different levels:
[0102] Output ground contour level representation;
[0103] Compile only the envelope to obtain a volumetric model;
[0104] Further compile the roof based on the scale;
[0105] : Continue compiling facade details based on the above.
[0106] Please refer to Figure 4 , Figure 4 This is a schematic diagram of the second scenario in this implementation. Specifically, ArcVLT can perform model compilation for multiple different target detail levels based on the same building description document, resulting in various building geometric models with levels ranging from LOD0 to LOD3.
[0107] Therefore, by introducing a target level of detail, the parametric geometry compilation model can flexibly and selectively compile the instruction sequences in the architectural description document according to actual needs, thereby generating architectural geometric models of different precision. Specifically, upon receiving the architectural description document, the parametric geometry compilation model can identify the architectural 2D sketch, first instruction description parameters, second instruction description parameters, and third instruction description parameters contained therein. Before generating the geometric model, a target level of detail is determined based on the current task or user settings to guide the workflow of the compilation model's layered compilation mechanism. This avoids unnecessary calculations and generates only the model with the required precision, significantly improving the efficiency and response speed of architectural geometric model generation. Especially when processing large-scale architectural data or conducting real-time interactions, it can effectively reduce the computational burden.
[0108] In one embodiment, after generating the architectural geometric model corresponding to the architectural description document, the parameters in the architectural description document can be further refined and adjusted based on any one or more combinations of the following:
[0109] (1) Perform threshold snapping and merging on the vertices in the building geometry model, and merge duplicate points whose distance is less than the preset threshold.
[0110] To eliminate redundant vertices with similar geometric positions in the model, duplicate points with a distance less than a preset threshold can be merged.
[0111] One approach is to iterate through all vertices in the architectural geometry model and, for each pair of vertices, calculate the Euclidean distance between them. If this distance is less than a preset threshold, the position of one vertex is adjusted to match the position of the other vertex, and the snapped vertex is deleted. Simultaneously, all data structures referencing the deleted vertex are updated to point to the merged vertex.
[0112] As another approach, spatial indexing structures, such as KD trees or octrees, can be used to find other vertices within a preset threshold range for each vertex, thereby accelerating the identification and merging process of duplicate vertices.
[0113] (2) Project the vertex located near the edge onto the nearest neighboring vertex.
[0114] To further correct the model's topology and ensure accurate edge alignment, vertices near the edges can be projected onto their nearest neighboring vertices.
[0115] One approach is to identify all edges in the architectural geometry model and determine which vertices are located near these edges. For each vertex located near an edge, its distance to other vertices on adjacent edges is calculated and projected onto the nearest neighboring vertex to eliminate minor misalignments or gaps.
[0116] As another approach, edge vertices that may not be fully aligned due to accuracy issues can be identified by analyzing the connectivity of the model. For example, for a polygonal mesh, if a vertex belongs to an edge shared by only one face, that vertex may be located on the "edge" of the model. The distance from that vertex to other vertices on its edge can be calculated and projected onto the nearest vertex to eliminate minor misalignments.
[0117] (3) Fit the quadrilateral base of the roof primitive corresponding to the roof instruction to the minimum area rotation rectangle, and merge the slope angles that should be consistent among multiple roof primitives into the same slope constraint.
[0118] To optimize the geometric representation and consistency of the roof structure, the quadrilateral basis of the roof primitive is fitted as a minimum area rotating rectangle. Furthermore, multiple roof primitives can be merged into a common slope constraint.
[0119] Specifically, principal component analysis can be performed on the vertex set of the quadrilateral base of the roof primitive to determine its main directions. A minimum area bounding rectangle can be constructed along these directions to fit the base, thereby making its shape more regular.
[0120] To group roof primitives that should have the same slope angle into common slope constraints, one approach is to identify all roof primitives generated by roof instructions and group roof primitives that should have the same slope angle according to the topological relationship or preset rules between roof primitives. Then, calculate the average slope angle of all roof primitives in the group and adjust the slope angle of each roof primitive to the average value to ensure the consistency of the roof structure.
[0121] Step 23: Display the architectural geometry model in the graphical user interface.
[0122] Among them, architectural geometric models are used for visualization and interaction.
[0123] Here, the graphical user interface (GUI) can be a visual platform for users to interact with the system. It typically includes elements such as windows, menus, buttons, and 3D views. Users can intuitively view, manipulate, and edit architectural geometric models and receive feedback information through the GUI.
[0124] It should be noted that the architectural geometry model can be rendered in a 3D view window. Users can rotate, zoom, and pan the architectural geometry model using a mouse or touch gestures to achieve visual display and interaction, and observe the architectural design from different angles.
[0125] As another implementation, the model can also be displayed in a web browser, allowing users to view and interact with it without installing specific software.
[0126] In addition, the model can also be displayed in a specific view window of the desktop application and provides rich interactive functions, such as selecting components and querying properties.
[0127] Compared to existing 3D architectural modeling methods, which often struggle to balance intuitive visual editing with structured semantic expression, leading to difficulties in parametric modification and semantic analysis, complex editing methods, lack of real-time visual feedback, and limited expressive capabilities, making it ineffective for modeling intricate buildings with complex details, the interactive method of the aforementioned architectural program based on visual-linguistic twin representation achieves structured encoding of the building from macroscopic outlines to detailed features by acquiring an architectural description document containing 2D architectural sketches, first instruction description parameters, second instruction description parameters, and third instruction description parameters. Furthermore, after defining architectural parameters, updates to the 3D model can be seen instantly, achieving synchronization between symbolic logic and visual feedback. This visualization and interactive capability bridges the gap between the rigor of symbolic representation and the intuitiveness of interactive design, making the design process more flexible and efficient, and solving the problem of fragmented generation and editing processes in existing technologies. Therefore, this embodiment provides an architectural data processing method that combines structured semantic expression and intuitive visual interaction capabilities, significantly improving the flexibility, expressiveness, and editing efficiency of architectural modeling.
[0128] In one exemplary embodiment, such as Figure 5 As shown, after displaying the architectural geometry model in the graphical user interface, you can also edit the parameters in the architectural description document or the architectural assembly model, including steps 24 to 26, where:
[0129] Step 24: In response to the user's first editing operation of editing the description instructions in the description instruction sequence, update the description instruction parameters in the building description document.
[0130] When a user directly modifies the sequence of description instructions in the building description document through the first editing operation, such as adjusting a certain dimension parameter or component type, the parameter modification can be captured and the corresponding parameters in the building description document can be updated.
[0131] For example, the first editing operation could be performing language-side editing on a sequence of descriptive instructions, abstracting the editing of the document into a closed family of mappings. That is, arbitrary editing operations. All meet Furthermore, language-side editing includes three types of atomic operations: Create, Update, and Delete. These atomic operations can be executed in combination a finite number of times to represent a complex editing process of the description instruction sequence.
[0132] Step 25: In response to the user's second editing operation on the building geometry model in the graphical user interface, the second editing operation is mapped to the first editing operation corresponding to the target description instruction sequence, and the description instruction parameters in the building description document are updated.
[0133] In addition, to provide a more intuitive design experience, this application also supports users to perform secondary editing operations on the generated architectural geometry model directly on the graphical user interface, such as dragging walls and adjusting the roof slope.
[0134] After completing the editing operation on the building geometry model, the graphical operation can be intelligently reverse-analyzed and mapped to the modification of the underlying description instruction sequence, thereby generating the corresponding first editing operation and updating the description instruction parameters in the building description document.
[0135] Here, the second editing operation can be achieved with the help of an interactive 3D modeling tool. Users can directly select a part of the building geometry model in the 3D view, and then change its geometric properties by dragging with the mouse or entering values. In addition, the mapping relationship from geometric elements to description instructions can be maintained. When a geometric element is modified, the corresponding description instruction can be found according to the mapping relationship, and the corresponding parameter update instruction can be generated.
[0136] For example, the second editing operation could be to perform graphical editing on a sequence of descriptive instructions. This is achieved by defining a three-dimensional action space A for the architectural geometry model and establishing an editing space relative to the architectural geometry model. The correspondence is as follows: Specifically, user interactions such as clicking, dragging, and selecting in the 3D interface will ultimately be mapped to the creation, update, or deletion of a command or parameter in the ArcVLT document.
[0137] For example, the height parameter of the envelope can be modified by vertically dragging the top reference plane; the slope angle of the roof primitive can be modified by dragging the endpoints or midpoints of the roof ridge; and a new facade command can be generated by selecting an area on the facade reference plane and setting array parameters. In this embodiment, to ensure real-time interactive performance, a lazy compilation strategy can be adopted, which only locally recompiles the geometry corresponding to the command affected by the current edit.
[0138] Step 26: Input the updated building description document into the compilation model to update the building geometry model and display the building geometry model in the graphical user interface.
[0139] In this embodiment, once the architectural description document is updated due to any editing operation, the updated document is immediately re-entered into the preset parametric geometric compilation model. The compilation model quickly regenerates or updates the architectural geometry model based on the latest description instructions and parameters. Furthermore, the updated architectural geometry model can be displayed in real-time on the graphical user interface, allowing users to instantly see the visual effects corresponding to the editing operation.
[0140] In the above embodiments, the two-way editing and real-time feedback mechanism effectively solves the problem of low model modification efficiency in traditional methods, greatly improves the flexibility and interactivity of architectural design, and enables designers to carry out efficient iterative design in a unified environment.
[0141] In some of the above embodiments, an interactive method for architectural programs based on visual-linguistic twin representations is proposed. This method can acquire architectural description documents, input them into a parametric geometric compilation model to generate an architectural geometric model, and finally display the model on a graphical user interface for visualization and interaction. However, in practical applications, how to efficiently, flexibly, and accurately create initial architectural description documents as input for subsequent processing is a key problem that needs to be solved. A lack of diverse methods for creating architectural description documents may limit the applicability of this method in different scenarios and increase the difficulty for users to prepare input data.
[0142] Therefore, before obtaining the architectural description document, the method described above further includes a step of creating the architectural description document. The step of creating the architectural description document may include any of the following options:
[0143] Option 1: Construct a building program tree that conforms to the syntax rules and serialize the first building description document through a target procedural synthesis engine.
[0144] Among them, the observation data is used to represent the data describing the building, and the target prediction model is used to infer the corresponding building description text from the observation data.
[0145] In Scheme 1, the target procedural synthesis engine can automatically generate architectural description documents, including sequences of description instructions for describing different architectural hierarchies, according to preset rules. As complex structured data, it can transform abstract architectural design intentions into specific sequences of description instructions that conform to specific syntax rules.
[0146] Here, the target procedural synthesis engine can automatically generate a structured description of a building based on formal grammar rules and algorithms, thereby achieving automated or semi-automated creation of building description documents.
[0147] It's important to note that a building program tree is an intermediate data structure that represents the logic and hierarchical relationships of architectural design elements in a tree-like structure. Nodes in the tree can represent various components or design operations of the building, while edges represent the relationships between these components or the order of operations. Constructing a building program tree decomposes the complex description of a building into a manageable, hierarchical structure, facilitating subsequent serialization and compilation.
[0148] Option 2: In response to the user's description language editing operation through the language editor, determine the corresponding initial semantic description information, and perform grammatical conversion on the semantic description information to obtain the corresponding second building description document.
[0149] The language editor can be a tool that allows users to edit the descriptive language through text input or graphical interface operation, enabling users to describe architectural features in natural language or domain-specific language, thereby generating architectural description documents.
[0150] Initial semantic description information can be unstructured, raw architectural descriptions entered or selected by the user through a language editor. Its purpose is to capture the user's design intent.
[0151] Option 3: Obtain observation data and, through the target prediction model, infer and generate a third building description document from the observation data.
[0152] The observation data can be representational data used to describe the building, and may include, for example, image data, point cloud data, sensor data, or partial information from an existing building model.
[0153] Here, the target prediction model can be used to learn and infer architectural description text from observed data. For example, the target prediction model can be a deep learning-based neural network, such as a convolutional neural network (CNN) combined with a recurrent neural network (RNN), where the CNN is used to extract architectural features from the image, and the RNN is used to transform these features into sequential architectural description text.
[0154] Among the different schemes for creating architectural description documents mentioned above, multiple methods are used to create architectural description documents with a certain paradigm, enabling them to express design intent in a more intuitive and natural language-like manner. This achieves intelligent conversion from real-world data to structured descriptions. For scenarios such as reverse engineering, digitization of historical buildings, or rapid model generation from sketches, they can work collaboratively based on parametric geometric compilation models, ensuring that high-quality architectural description documents can be obtained regardless of the input source, thereby generating accurate architectural geometric models and expanding the applicable scenarios for architectural description documents.
[0155] In one exemplary embodiment, such as Figure 6 As shown, in Scheme 1, the steps of constructing a syntactically correct architectural program tree and serializing the first architectural description document using a target procedural synthesis engine may include steps 61 to 63, wherein:
[0156] Step 61: Define the syntax rules for the building description document using the target procedural synthesis engine.
[0157] The syntax rules include basic data types and architectural description command types. Basic data types include at least real number type, angle type, integer type, two-dimensional point type, three-dimensional point type, line segment type, arc segment type, wireframe type, and sketch type. Architectural description command types include envelope command, roof command, and elevation command.
[0158] Here, grammar rules can be described using formal languages such as Context-Free Grammar (CFG) or Extended Backus-Naur Form (EBNF), or they can be implemented using grammar specifications of a custom Domain-Specific Language (DSL).
[0159] It's important to note that the syntax rules clearly define the elements allowed in an architectural description document, the structure of these elements, and the relationships between them, thus ensuring the document's validity and consistency. Basic data types are the fundamental units that constitute the parameters of architectural description commands. For example, real numbers can be used to represent continuous values such as length, width, and height; angle types can be used to represent slope, rotation angle, etc.; integer types can be used to represent discrete values such as quantity and index; two-dimensional and three-dimensional point types are used to define spatial locations; line segment, arc segment, and wireframe types are used to describe geometric outlines; and sketch types can represent more complex two-dimensional graphics. The types of architectural description commands define different levels of architectural structural elements.
[0160] For example, the envelope command is used to define the overall volume and external outline of a building, the roof command is used to describe the roof form and structure of a building, and the facade command is used to describe details such as doors, windows, balconies, and decorative components on the exterior walls of a building.
[0161] For example, the following are examples of basic data types. Specifically, basic data can include: real numbers (Float), angles (Angle), integers (Int), null values (None), two-dimensional points (Point2D), three-dimensional points (Point3D), line segments (LineSegment), arc segments (ArcSegment), edges (Edge), wireframes (Wire), and sketches (Sketch).
[0162] Based on this, the types of architectural description commands include envelope commands, roof commands, and facade commands. Here, we will provide an illustrative example of these command types:
[0163] (1) Envelope commands can include Envelope and EnvePri.
[0164] Among them, Envelope(z_ground, primitives) can be used to define the ground height and a set of envelope primitives; EnvePri(sketch, height) can be used to define a single sketch extrusion primitive.
[0165] (2) Roof commands may include Roof and RoofPri.
[0166] Among them, Roof(query_point, primitives) can be used to define a roof attached to a horizontal reference surface; RoofPri(vertices, angles) can be used to define the local vertex and slope parameters of a single roof primitive.
[0167] (3) Facade commands can include Facade, FaPri, Cell and Layout.
[0168] Among them, Facade(query_point, primitives) can be used to define a facade attached to a vertical reference plane; FaPri(start_point, cell, layout) can be used to define a single facade primitive; Cell(width, height, depth) can be used to define the size of the facade unit; Layout(width, height, m, n) can be used to define the array layout parameters.
[0169] In some implementations, the roof and facade commands may also include a query point, which is used to locate the corresponding reference plane on the instantiated envelope surface. Once the reference plane is located, the local parameters of the roof and facade will be mapped to the local coordinate system of that reference plane. The explanation is as follows.
[0170] For example, the starting point, width and height dimensions, and array layout in the facade command are all mapped onto the reference surface by projection, thereby ensuring the stability of the attachment relationship.
[0171] Furthermore, based on the one-to-one correspondence between the grammar of architectural description documents and the geometric construction process to the structured language documents, architectural models can be manipulated as three-dimensional objects, as well as analyzed, generated, and modified as language documents.
[0172] Please refer to Figure 7 , Figure 7 This is a schematic diagram of the first scenario in this implementation. Specifically, roof parameter modeling can be defined based on the rectangular projection area in the local coordinate system of the horizontal reference plane represented by the roof command in the second instruction description parameters, and the slope angles corresponding to the four sides of the rectangle.
[0173] Please refer to Figure 8 , Figure 8 This is a schematic diagram of the second scenario in this implementation. Specifically, it can be based on the layout descriptor represented by the facade command in the third instruction description parameter. That is, the position used to locate the center of the vertical plane of the envelope. The range of center distance of the array in the local width and height directions and the number of array rows and columns Define the facade parameter modeling. Each layout descriptor can include local parameters w, h, and d of the roof and facade in the reference plane, where w represents the width, h represents the height, and d represents the depth (or thickness).
[0174] Step 62: Recursively generate a building program tree that conforms to the syntax rules.
[0175] In the building program tree, the nodes correspond to building description commands, and the edges in the building program tree represent the combination relationships between the various building description commands.
[0176] In one implementation, top-down parsing or bottom-up reduction can be used to continuously match grammatical rules with building description commands and construct a tree structure.
[0177] It should be noted that the building program tree represents the structure of a building in a hierarchical manner, which can be used to map different levels of a building. Each node represents a building description command, and the edges connecting the nodes clearly express the combination, inclusion, or dependency relationships between these commands. For example, the roof command may exist as a subcommand of the envelope command.
[0178] Step 63: The building program tree is normalized, standardized, and symbolized to serialize it into a command sequence, which serves as the first building description document.
[0179] Since the same geometric structure may correspond to multiple different but equivalent ArcVLT representations, language documents can be normalized to reduce learning ambiguity. Furthermore, based on normalization, the documents can be further normalized to make ArcVLT documents suitable as prediction targets for autoregressive networks.
[0180] Standardization can include eliminating redundant commands or parameters, merging similar structures, and optimizing the execution order of commands to improve the conciseness and efficiency of the description.
[0181] Normalization can unify coordinate systems, units of measurement, parameter ranges, etc., ensuring that all descriptive data are interpreted and processed under a unified standard.
[0182] As an example, in order to train an inverse modeling network from observed ArcVLT documents, this embodiment proposes a procedural synthesis engine to automatically generate large-scale, grammatically valid ArcVLT documents (architectural description documents) as sample data for training a parametric geometry compilation model.
[0183] In one exemplary implementation, the ground elevation is fixed as The stretching height of each envelope primitive is not directly randomly sampled, but is determined by two architectural parameters: "number of floors" and "floor height", so that the synthesis result is more in line with common architectural proportions.
[0184] The 2D sketch portion is generated using a geometry node graph generator. Specifically, starting from a set of base sketches, layout patterns and their random perturbations are repeatedly sampled, and new sketch sets are created using planar Boolean operations. If multiple sub-sketches share the same extrusion height, they are first subjected to a planar union operation and then instantiated as target envelope primitives; if their extrusion heights are different, they are instantiated as multiple envelope primitives respectively.
[0185] Specifically, the envelope geometry can be constructed using boundary representation (BRep) to stably extract horizontal and vertical reference surfaces. During actual generation, a larger horizontal surface can be prioritized for attaching to the roof, and a larger vertical surface for attaching to the facade.
[0186] Please refer to Figure 9 , Figure 9 This is a schematic diagram of the third scenario in this implementation, using procedural synthesis of roof parameters as an example. Given an orthogonal polygonal contour P on a certain horizontal reference plane, it can be decomposed into several maximal sub-rectangles. Here, a maximal sub-rectangle can be used to represent a rectangle that is aligned with the coordinate axes in the local coordinate system and cannot continue to expand in any direction while remaining inside P. Each maximal sub-rectangle can serve as a base region for a roof primitive.
[0187] Furthermore, a rectangular contact diagram can be constructed based on several maximal sub-rectangles. Each node in the rectangular contact diagram corresponds to a maximal sub-rectangle, and edges are used to represent adjacent rectangles with positive-length collinear contact relationships. Based on this contact diagram, the slope angle parameters of each roof primitive are sampled under constraints. For adjacent edges whose slopes should remain consistent, a constraint propagation solver based on breadth-first search (BFS) can be used to solve the problem, and a random restart mechanism can be used to handle conflict situations. Thus, a segmented pitched roof with complete coverage, harmonious adjacency relationships, and a continuous overall ridge can be generated.
[0188] Facade generation can be viewed as the process of arranging rectangular elements (such as windows, doors, recesses, protrusions, etc.) on a local two-dimensional parametric plane of a vertical reference plane.
[0189] As an example, a set of parametric facade templates can be preset, and template instances can be converted into the aforementioned facade command format. Furthermore, since facade information for actual buildings is often conveyed more by the appearance of images than by point cloud geometry, facade commands can be used as supplementary content to subsequent interactive editing or LLM-based text-driven generation stages, rather than as the primary supervised target of the current reverse modeling network.
[0190] In particular, after generating the above data, the instructions for different building levels in the building description document can be standardized and symbolized.
[0191] As an example, let the original document be... After geometrically preserved normalization rewriting, we get To ensure consistent compilation results between the two methods, for polygonal contours, it can be agreed to start traversing from the bottom left vertex in a counter-clockwise direction to eliminate ambiguity regarding the vertex starting point and traversal direction. Based on normalization, further refinement can be performed on the normalized... After normalization, we get .
[0192] Here, normalization processing makes the document The compiled geometric whole, after translation and uniform scaling, falls within the unit sphere, that is, By limiting the range of continuous values, the stability of neural network training can be improved.
[0193] Furthermore, to make ArcVLT documents suitable as prediction targets for autoregressive networks, the descriptive instruction sequences in the ArcVLT documents can be symbolized. Specifically, the symbol set can be divided into two categories: numerical symbols and non-numerical symbols. Numerical symbols are used to represent coordinate components, height, angle, and integer layout parameters; non-numerical symbols are used to represent command types, field boundaries, and structural markers, etc.
[0194] For example, the numerical symbols can be further subdivided into: floating-point symbols, angle symbols, and integer symbols, wherein the floating-point symbols correspond to the discretized interval of normalized continuous values, preferably covering [-1, 1]; the angle symbols are used to represent the roof slope angle, preferably covering [0, 1]. o 90 o ], integer symbols are used to represent discrete parameters such as the number of rows and columns in the facade array.
[0195] In this way, by using grammar-aware symbolization, redundant splitting of punctuation and decimal places in traditional Byte Pair Encoding (BPE) can be avoided, thereby reducing sequence length and improving prediction efficiency.
[0196] In one embodiment, after constructing a grammatically correct architectural program tree and serializing a first architectural description document using a target procedural synthesis engine, the method can further construct a supervised dataset based on the architectural description document, specifically:
[0197] (1) Determine the three-dimensional geometric model corresponding to the building description document, and determine the observation data of the three-dimensional geometric model corresponding to the building description document.
[0198] Here, observation data can be representational data extracted from an existing 3D geometric model to simulate real-world observations, providing training samples for the target prediction model that are similar in form to real observation data. Observation data can be data obtained by projecting, rendering, or extracting features from the 3D geometric model from different perspectives; for example, it can be the model's depth map, normal map, semantic segmentation map, etc.
[0199] Specifically, determining the observation data includes: obtaining a guide map by rendering the feature edges and / or grayscale model of the three-dimensional geometric model, and generating observation data based on the guide map.
[0200] The guide graph can be an image representation of the rendered result.
[0201] As an example, this could be achieved by programmatically rendering the 3D model using standard graphics rendering pipelines, such as graphics APIs like OpenGL, DirectX, or Vulkan. Alternatively, a specialized rendering engine could be used, with specific rendering parameters set to generate feature outline maps and grayscale models.
[0202] It should be noted that feature edge rendering refers to highlighting edge lines with significant geometric features in a 3D geometric model through graphics rendering technology, such as the outline of a building and structural interfaces. Its purpose is to capture key structural information of the building.
[0203] In addition, gray model rendering refers to rendering a three-dimensional geometric model with a single gray material, which can include lighting and shadow effects to reflect the model's volume and spatial relationships. Its function is to provide information on the overall form and depth of the building.
[0204] After obtaining the guide map, the rendered guide map can be further abstracted to make it closer to a human hand-drawn sketch or a simplified visual representation, simulating a more generalized form of input that the prediction model may receive.
[0205] Specifically, edge detection can be performed on the guide map to extract line information in the image, or the guide map can be converted into a sketch-style image through a style transfer network, different regions in the guide map can be identified, and represented by simplified lines or color blocks.
[0206] (2) Pair building description documents with observation data to form a supervised dataset for training the target prediction model.
[0207] The supervised dataset includes multiple pairs of observation data and building description document data.
[0208] Here, the supervised dataset associates procedurally generated building description text with its corresponding simulated observation data, so that the model can learn the mapping relationship from the observation data to the building description document.
[0209] It's important to note that supervised datasets are a commonly used data structure in machine learning, where each sample contains an input (observed data) and a desired output (architectural description document). By creating a data index, the file path or ID of each architectural description document can be associated with its corresponding observed data (e.g., sketch image file path), and stored in a configuration file, database, or dataset with a specific format. This forms data pairs consisting of architectural description documents as ground truth and observed data as predicted values, further constituting a supervised dataset.
[0210] For example, please refer to Figure 10 , Figure 10 This is a schematic diagram of the fourth scenario in this implementation. Specifically, for the point cloud modality, spatial points can be sampled directly on the compiled geometric surface; for the sketch and image modalities, feature edge rendering and grayscale rendering can be performed on the geometry first, and then the generated guide map can be input into the AI content generation interface to synthesize hand-drawn style sketch images and realistic style images with real background interference. In this way, a supervised dataset with a one-to-one correspondence between observation data and the language documents of architectural description documents can be constructed.
[0211] In one embodiment, after generating the supervised dataset, a target prediction model can also be trained. The training process is illustrated below. Specifically, an encoder-decoder structure is used for training, where the encoder is used to process the observed data... Encoding as latent features The decoder then autoregressively predicts the symbol sequence of the ArcVLT document based on this latent feature. For point cloud input (one modality of observation data), a 3D point set coding network EncoderVecSet can be used; for sketch and image input (another modality of observation data), a 2D visual coding network DINOv2 or DAv2 can be used.
[0212] In a preferred embodiment, the point cloud encoder can be VecSet, the image / sketch encoder can be DINOv2, and the decoder adopts a Transformer structure. The encoded latent features are injected into the decoder as conditional prefixes to guide subsequent symbol prediction. Their conditional probabilities can be expressed as follows: .
[0213] in, Represents the t-th symbol. This indicates a sequence of symbols that has been generated previously.
[0214] During training, cross-entropy loss based on next symbol prediction can be used. For numerical symbols, especially floating-point symbols, a smoothed target distribution can also be used, so that several neighboring buckets near the discrete bucket corresponding to the true value all receive non-zero supervised weights, thereby reducing training instability caused by discretization error.
[0215] Furthermore, since autoregressive reasoning is essentially a probabilistic sampling process, it may generate grammatically invalid or geometrically invalid documents if no constraints are imposed. To address this, this application proposes a syntax-geometry jointly guided reasoning mechanism. This mechanism constructs a finite state machine (FSM) based on the grammar, and at each time step, it masks all candidate symbols that would violate the grammatical structure based on the current prefix. Secondly, it combines a geometry compiler to perform incremental legality checks on the current portion of the document, further masking candidate symbols that could lead to illegal sketches, self-intersecting contours, or uncompileable geometry.
[0216] For example, suppose the decoder outputs logits at time t. The guiding mask is Equivalently, the logit of illegal symbols can be assigned negative infinity before softmax. In particular, the joint guided inference mechanism is compatible with common sampling strategies such as top-K, top-P, or beam search.
[0217] Furthermore, in point cloud input scenarios, a metric guidance mechanism can be introduced. Specifically, multiple candidate documents generated by beamsearch can be compiled and reordered based on the Hausdorff distance between their compiled geometry and the input point cloud, thereby selecting the language document that best matches the input geometry.
[0218] In the above implementation, by defining the syntax rules of the architectural description document, the input of the architectural description has strict structural and semantic constraints. Based on this, a building program tree is generated recursively, expressing the hierarchical structure and command combination relationships of the building in a clear tree structure, ensuring the completeness and logic of the description. Subsequently, the program tree is normalized, standardized, and symbolized to further optimize the quality of the description, eliminate potential ambiguities and redundancies, and convert it into a standardized command sequence.
[0219] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.
[0220] Based on the same inventive concept, this application also provides a building data processing system for implementing the above-mentioned interactive method for building programs based on visual-linguistic twin representations. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations of one or more building data processing system embodiments provided below can be found in the above-described limitations of the interactive method for building programs based on visual-linguistic twin representations, and will not be repeated here.
[0221] In one exemplary embodiment, such as Figure 11 As shown, a building data processing system is provided, including: an acquisition module, a compilation module, and a display module, wherein:
[0222] The acquisition module is used to acquire a building description document; wherein, the building description document is a sequence of description instructions for describing different building hierarchical structures, the sequence of description instructions includes a two-dimensional building sketch, a first instruction description parameter for describing the building outline features, a second instruction description parameter for describing the covering structure of the building's upper surface, and a third instruction description parameter for describing the building facade details.
[0223] The compilation module is used to input the description instruction sequence into a preset parametric geometric compilation model to generate a building geometric model corresponding to the building description document based on the building two-dimensional sketch, the first instruction description parameter, the second instruction description parameter and the third instruction description parameter;
[0224] The display module is used to display the building geometry model in a graphical user interface; wherein the building geometry model is used for visualization and interaction in the graphical user interface.
[0225] Each module in the aforementioned building data processing system can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of the computer device in software form, so that the processor can call and execute the corresponding operations of each module.
[0226] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 12 As shown, the computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operating system and computer programs stored in the non-volatile storage media. The database stores architectural description documents. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When executed by the processor, the computer program implements an interactive method for architectural programming based on visual-linguistic twin representations.
[0227] Those skilled in the art will understand that Figure 12 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0228] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the above-described interactive method of the building program based on visual-linguistic twin representation.
[0229] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the above-described interactive method of the architecture program based on visual-linguistic twin representation.
[0230] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0231] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0232] The above embodiments are merely illustrative of several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. An interactive method for an architectural program based on visual-linguistic twin representation, characterized in that, The method includes: Obtain a building description document; wherein, the building description document includes a sequence of description instructions for describing different building hierarchical structures, the sequence of description instructions includes a two-dimensional building sketch, a first instruction description parameter for describing the building outline features, the first instruction description parameter includes an envelope, a second instruction description parameter for describing the covering structure of the building's upper surface, the second instruction description parameter includes the type and features of the roof, and a third instruction description parameter for describing the detailed features of the building facade, the third instruction description parameter including parameters of the vertical surface detailed features of the envelope; The description instruction sequence is input into a preset parametric geometry compilation model to generate a building geometry model corresponding to the building description document based on the building 2D sketch, the first instruction description parameter, the second instruction description parameter, and the third instruction description parameter. The building geometry model is displayed in a graphical user interface; wherein the building geometry model is used for visualization and interaction.
2. The method according to claim 1, characterized in that, The method further includes: In response to a first editing operation by the user on the description instructions in the sequence of description instructions, the description instruction parameters in the building description document are updated; In response to a user's second editing operation on the building geometry model in the graphical user interface, the second editing operation is mapped to a first editing operation corresponding to the target description instruction sequence, and the description instruction parameters in the building description document are updated; The updated building description document is input into the compiled model to update the building geometry model, and the building geometry model is displayed in the graphical user interface.
3. The method according to claim 1, characterized in that, Prior to the step of obtaining the building description document, the method further includes: Create the building description document; The steps for creating the building description document include: Using a target procedural synthesis engine, construct a syntactically correct architectural program tree and serialize the first architectural description document; or In response to a user's editing operation using a language editor, the system determines the corresponding initial semantic description information and performs grammatical conversion on the semantic description information to obtain the corresponding second architectural description document; or Acquire observation data and, through a target prediction model, infer and generate a third building description document from the observation data; wherein, the observation data is used to represent representation data for describing a building, and the target prediction model is used to infer the corresponding building description text from the observation data.
4. The method according to claim 3, characterized in that, The steps of constructing a syntactically correct architectural program tree and serializing the first architectural description document using a target procedural synthesis engine include: The target procedural synthesis engine defines the syntax rules for the architectural description document; wherein, the syntax rules include basic data types and architectural description command types, the basic data types include at least real number type, angle type, integer type, two-dimensional point type, three-dimensional point type, line segment type, arc segment type, wireframe type and sketch type, and the architectural description command types include envelope command, roof command and elevation command; According to the syntax rules, a building program tree that conforms to the syntax rules is recursively generated; wherein, the nodes in the building program tree correspond to the building description commands, and the edges in the building program tree represent the combination relationship between the building description commands; The building program tree is normalized, standardized, and symbolized to serialize it into a command sequence, which serves as the first building description document.
5. The method according to claim 3 or 4, characterized in that, After the step of constructing a syntactically correct architectural program tree and serializing the first architectural description document using a target procedural synthesis engine, the method further includes: Determine the three-dimensional geometric model corresponding to the building description document, and determine the observation data of the three-dimensional geometric model corresponding to the building description document; The determination of the observation data includes: obtaining a guide map by performing feature edge rendering and / or grayscale rendering on the three-dimensional geometric model, and generating observation data based on the guide map; The building description documents are paired with the observation data to form a supervised dataset for training the target prediction model; wherein, the supervised dataset includes multiple pairs of observation data and building description document data.
6. The method according to claim 1, characterized in that, The step of inputting the description instruction sequence into a preset parametric geometric compilation model to generate a building geometric model corresponding to the building description document based on the building 2D sketch, the first instruction description parameters, the second instruction description parameters, and the third instruction description parameters includes: Based on the parametric geometric compilation model, a building geometric model of corresponding precision is selectively compiled and generated according to the target level of detail of the first instruction description parameter, the second instruction description parameter and the third instruction description parameter in the building description document. The target level of detail includes at least: a first level of detail that compiles only the envelope instructions to generate a volumetric model; a second level of detail that compiles the roof instructions based on the envelope instructions to generate a model with a roof; and a third level of detail that further compiles the facade instructions based on the envelope instructions and the roof instructions to generate a model with facade details.
7. The method according to claim 1, characterized in that, After the step of generating the architectural geometric model corresponding to the architectural description document, the method further includes: Threshold snapping and merging are performed on the vertices in the building geometry model, and duplicate points with a distance less than a preset threshold are merged. Project vertices located near the edge onto their nearest neighboring vertices; And / or, fit the quadrilateral base of the roof primitive corresponding to the roof instruction to a minimum area rotating rectangle, and merge the slope angles that should be consistent among multiple roof primitives into the same slope constraint.
8. A building data processing system, characterized in that, The system includes: The acquisition module is used to acquire a building description document; wherein, the building description document is a sequence of description instructions for describing different building hierarchical structures, the sequence of description instructions includes a two-dimensional building sketch, a first instruction description parameter for describing the building outline features, a second instruction description parameter for describing the covering structure of the building's upper surface, and a third instruction description parameter for describing the building facade details. The compilation module is used to input the description instruction sequence into a preset parametric geometric compilation model to generate a building geometric model corresponding to the building description document based on the building two-dimensional sketch, the first instruction description parameter, the second instruction description parameter and the third instruction description parameter; The display module is used to display the building geometry model in a graphical user interface; wherein the building geometry model is used for visualization and interaction in the graphical user interface.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.