A BIM component coding method based on a 3DE platform and a component information library
By establishing project coding standards and building a component information database on the 3DE platform, and developing data interfaces and coding tools, the problems of lack of coding tools, low standard integration, and low data flow efficiency have been solved, achieving efficient and automated management of BIM component coding.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA POWER CONSRTUCTION GRP GUIYANG SURVEY & DESIGN INST CO LTD
- Filing Date
- 2023-09-19
- Publication Date
- 2026-05-19
AI Technical Summary
The 3DE platform lacks coding tools, has low integration with standards, lacks attribute addition functionality, and has low data flow efficiency, making it unable to effectively support BIM component coding work.
By establishing project coding standards, building a component information database, developing data interfaces and coding tools, and utilizing the EKL language on the 3DE platform, we can achieve automated management and export of attributes and codes, including coding data interfaces, attribute addition, and XML file export functions.
It improves the efficiency and quality of BIM component coding, realizes the automatic addition of attributes and improves the efficiency of data flow, and solves the problems of lack of coding tools and low standard integration.
Smart Images

Figure CN117270848B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of BIM component coding technology, specifically relating to a BIM component coding method based on a 3DE platform and a component information database. Background Technology
[0002] To better serve engineering design, construction, and operation and maintenance, BIM models need to carry a large amount of basic information, specifically expressed through massive amounts of BIM components and their attributes. To improve the systematization, standardization, and normalization of BIM component information, BIM components need to be classified and coded, assigning each component an "identity number" and binding it to predefined component information such as stage, role, and profession. This coding increases the value of BIM component attribute information, facilitating the application of information technology for batch automated processing, thereby enabling data flow and mining applications in the construction and operation and maintenance phases.
[0003] The 3DExperience platform (hereinafter referred to as "3DE platform") includes a series of software for design, simulation, and management. The BIM component coding work on the 3DE platform suffers from several problems: a lack of tools for component coding, generally requiring manual attachment, resulting in low coding efficiency; low integration with standards, frequent changes in coding rules, and chaotic version management; a lack of attribute addition functionality, requiring manual addition of numerous extra attributes for model components; and technical issues with low data flow efficiency. Currently, after BIM model coding, existing formats cannot export attribute information, and direct export of geometry and attributes does not correspond. Furthermore, the transmission methods are mostly manual forwarding or Excel export, hindering data flow efficiency.
[0004] The component classification and coding based on 3DE needs to address the "last mile" shortcoming of being compatible with BIM. There are technical problems such as "no tools for BIM component coding on the 3DE platform, low integration of coding with standards, lack of attribute addition function, and low data flow efficiency", which cannot support BIM component coding work. Summary of the Invention
[0005] The purpose of this invention is to provide a BIM component coding method based on the 3DE platform and component information database. This invention solves the technical problems of lack of tools for BIM component coding on the 3DE platform, low integration of coding with standards, missing attribute addition functions, and low data flow efficiency, thereby improving the efficiency and quality of BIM component coding based on the 3DE platform.
[0006] The technical solution of the present invention is as follows:
[0007] A BIM component coding method based on a 3DE platform and component information database includes the following steps:
[0008] S1: Develop coding standards. Based on project characteristics and operation and maintenance management needs, formulate project coding standards to provide a basis and foundational data for establishing a component information database. The content of a project BIM component coding standard generally includes: scope, normative references, terms and definitions, basic provisions, model structure, model unit classification coding, and component coding management.
[0009] S2: Establish a network-based component information database based on project coding standards to manage standardized table data and provide a unified data source for BIM component coding;
[0010] S3: Develop encoding data interface. Using EKL, a secondary development language provided by 3DE, develop an encoding standard data acquisition interface to provide data for subsequent encoding tools.
[0011] S4: Develop coding tools. Design the coding tool interface using the KAC secondary development framework provided by 3DE. Use the secondary development language EKL to call the coding data interface and write attributes and codes at specified locations on the model components.
[0012] S5: The function of exporting XML files is developed. The coding tool interface is designed using the KAC secondary development framework provided by 3DE. The secondary development language EKL is used to traverse the model components to obtain the attributes and codes in the attribute structure tree, thereby improving the data transmission efficiency after BIM model coding.
[0013] In the aforementioned BIM component coding method based on the 3DE platform and component information database, the S2 process is as follows:
[0014] S21: Use database management tools to create a MySQL database, and create various attribute and encoding data tables in the database;
[0015] S22: Based on the model structure and model unit classification codes determined in S1, collect professional domain attribute data, stage role data, building attribute data by function, building attribute data by space, component attribute data, design attribute data, and coding data. Enter the data through the component information database and save it to the corresponding database table.
[0016] In the aforementioned BIM component coding method based on the 3DE platform and component information database, the S3 process is as follows:
[0017] S31: Configure the MySQL data source, fill in the MySQL database IP address, port number, username and password;
[0018] S32: Write interfaces, including interfaces for obtaining attributes of professional domains, attributes of stage roles, attributes of buildings by function, attributes of buildings by space, attributes of components, attributes of design, and code.
[0019] In the aforementioned BIM component coding method based on the 3DE platform and component information database, the S4 process is as follows:
[0020] S41: Create a new resource in the EKL resource table, with the resource type being VBA macro;
[0021] S42: Design the interactive interface for adding attributes and coding functions. The interface includes the following elements:
[0022] S421: Select component set, used to select components that need to have attributes and codes added, traverse the selected components, determine whether they are in the display state, and store the components in the display state into the component list;
[0023] S422: Select Attributes (tab container) to select the attributes to be added or modified. Obtain attribute data through the interfaces developed in step 3), including interfaces for professional domain attributes, stage role attributes, functional attributes, spatial attributes, component attributes, and design attributes. The corresponding attribute values are displayed in the tab container via the data interfaces. Selecting a first-level attribute displays the corresponding second-level attribute; selecting a second-level attribute displays the corresponding third-level attribute, and so on.
[0024] S423: Component list box, used to display a list of component names selected in S421;
[0025] S424: Generate Attribute Structure (Reset) button, used to generate (reset) an empty component general attribute and design attribute structure tree at a specified location under the component selected in S421, for subsequent attribute attachment;
[0026] S425: Add Attribute button, used to attach the attribute item selected in S422 to the attribute structure tree generated in S424:
[0027] S426: Add an encoding button. Through the data interface developed in S3, transmit the component attribute values added in S425 to the component information database, obtain the corresponding encoding return value, parse it, encode the component according to the encoding rules, and attach it to the attribute structure tree generated in S424.
[0028] ① Connect code groups on different sides with a plus sign "+";
[0029] ② The classification table code and the classification object code at each level should be connected by the English "-".
[0030] In the aforementioned BIM component coding method based on the 3DE platform and component information database, the S5 process is as follows:
[0031] S51: Create a new resource in the EKL resource table, with the resource type being VBA macro;
[0032] S52: The interactive interface for exporting XML files, which includes the following elements:
[0033] S521: Select component set, used to select the components to be exported, traverse the selected components, determine whether they are in the display state, and store the components in the display state into the component list;
[0034] S522: Component list box, used to display a list of component names selected in S521;
[0035] S523: Export Location button, used to select the export location and export all attribute values, code values, and hierarchical relationships of the component selected in S521;
[0036] Iterate through the components in the list box; obtain the attribute values attached to each component; write the component name, GUID unique identifier, and attribute values to a file according to the defined rules; export the file to the location selected by S523.
[0037] Compared with the prior art, the present invention provides a BIM component coding method based on the 3DE platform and component information library, which enables the rapid addition of various attributes to BIM components in the 3DE platform, coding based on component attribute call interface, and export of component attribute, coding, and hierarchical information files.
[0038] This invention, through S1, effectively integrates national standards, industry standards, and advanced experience to formulate project standards, solving the problem of low integration of coding standards; through S4 calling the S3 data interface, it solves the problems of missing attribute addition functions and lack of coding tools for 3DE platform components; through S5 exporting 3DE platform component attribute and coding information files, it solves the problem of low efficiency in traditional data transfer. By establishing standards, building a component information database, adding attributes, coding tools, and exporting tools, this invention realizes a coding method for BIM components based on the 3DE platform and component information database.
[0039] In summary, this invention solves the technical problems of lack of tools for BIM component coding on the 3DE platform, low integration of coding standards, missing attribute addition functions, and low data flow efficiency, thereby improving the efficiency and quality of BIM component coding based on the 3DE platform. Attached Figure Description
[0040] Figure 1 This is a flowchart of the BIM component coding implementation in 3DE.
[0041] Figure 2 This is the directory page for BIM component coding standards.
[0042] Figure 3 It is a component information database.
[0043] Figure 4 This is the interface for adding attributes and encoding.
[0044] Figure 5 It's an interface for adding attributes and generating codes.
[0045] Figure 6 This is the interface for exporting XML files.
[0046] Figure 7 This is the interface for exporting XML files. Detailed Implementation
[0047] The present invention will be further described below with reference to the accompanying drawings and embodiments, but this should not be construed as limiting the present invention.
[0048] Example 1. A BIM component coding method based on the 3DE platform and component information database, see [link to example]. Figure 1-7 It includes the following steps:
[0049] Step 1: Develop coding standards. Based on project characteristics and operation and maintenance management needs, formulate project coding standards to provide a basis and foundational data for establishing a component information database. The content of project BIM component coding standards generally includes: scope, normative references, terms and definitions, basic provisions, model structure, model unit classification coding, and component coding management.
[0050] Step 2: Establish a network-based component information database based on project coding standards to manage specification table data and provide a unified data source for BIM component coding. This includes the following steps:
[0051] 1) Use a database management tool to create a MySQL database, and create various attribute and encoding data tables in the database.
[0052] 2) Based on the determined model structure and model unit classification codes, collect professional domain attribute data, stage role data, building attribute data by function, building attribute data by space, component attribute data, design attribute data, and coding data. Enter the data into the component information database and save it to the corresponding database table.
[0053] Step 3: Develop the encoding data interface. Using EKL, a secondary development language provided by 3DE, develop an interface for acquiring encoding standard data to provide data for subsequent encoding tools. This includes the following steps:
[0054] 1) Configure the MySQL data source by filling in the MySQL database IP address, port number, username, and password.
[0055] 2) Write interfaces, including interfaces for obtaining attributes of professional fields, interfaces for obtaining attributes of stage roles, interfaces for obtaining attributes of buildings by function, interfaces for obtaining attributes of buildings by space, interfaces for obtaining attributes of components, interfaces for obtaining attributes of design, and interfaces for obtaining codes.
[0056] Step 4: Develop the coding tool. Design the coding tool interface using the KAC secondary development framework provided by 3DE, and call the coding data interface using the EKL secondary development language to write attributes and codes at specified locations on the model components. This includes the following steps:
[0057] 1) Create a new resource in the EKL resource table, with the resource type being VBA macro.
[0058] 2) Design the interactive interface for adding attributes and coding functions. The interface should include the following elements:
[0059] ① Select component set, used to select components that need to have attributes and codes added, traverse the selected components, determine whether they are in the display state, and store the components in the display state into the component list;
[0060] ② Select Attributes (tab container) to select the attributes to add or modify. Obtain attribute data through the interfaces developed in step 3), including interfaces for professional domain attributes, stage role attributes, functional attributes, spatial attributes, component attributes, and design attributes. Display the corresponding attribute values in the tab container through the data interfaces. Selecting a first-level attribute displays the corresponding second-level attribute; selecting a second-level attribute displays the corresponding third-level attribute, and so on.
[0061] ③ Component list box, used to display a list of selected component names;
[0062] ④ The Generate Attribute Structure (Reset) button is used to generate (reset) an empty general attribute and design attribute structure tree for the selected component at a specified location, which can be used to attach attributes later.
[0063] ⑤ Add Attribute button, used to attach the selected attribute item to the generated attribute structure tree;
[0064] ⑥ Add an encoding button. Through the developed data interface, transmit the added component attribute values to the component information library, obtain the corresponding encoding return value, parse it, encode the component according to the encoding rules, and attach it to the generated attribute structure tree.
[0065] Step 5: Develop the XML file export function. Using the KAC secondary development framework provided by 3DE, design the coding tool interface and use the EKL secondary development language to traverse the model components and obtain the attributes and codes in the attribute structure tree. This improves the data transfer efficiency after BIM model coding. Specifically, this includes the following steps:
[0066] 1) Create a new resource in the EKL resource table, with the resource type being VBA macro.
[0067] 2) The user interface for exporting XML files includes the following elements:
[0068] ① Select component set, used to select the components to be exported, traverse the selected components, determine whether they are in the display state, and store the components in the display state into the component list;
[0069] ② Component list box, used to display a list of component names selected in step ①;
[0070] ③ The "Export Location" button is used to select the export location and export all attribute values, code values, and hierarchical relationships of the component selected in step ①.
[0071] Iterate through the components in the list box; retrieve the attribute values attached to each component; write the component name, GUID unique identifier, and attribute values to a file according to the defined rules; export the file to the selected location.
[0072] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A BIM component coding method based on a 3DE platform and component information database, characterized in that, Includes the following steps: S1: Develop coding standards. Based on the characteristics of the project and the needs of operation and maintenance management, formulate project coding standards to provide a basis and basic data for establishing a component information database. The content of the BIM component coding standard for a project generally includes: scope, normative references, terms and definitions, basic provisions, model structure, model unit classification coding, and component coding management; S2: Establish a network-based component information database based on project coding standards to manage standardized table data and provide a unified data source for BIM component coding; S3: Develop encoding data interface. Using EKL, a secondary development language provided by 3DE, develop an encoding standard data acquisition interface to provide data for subsequent encoding tools. S4: Develop coding tools. Design the coding tool interface using the KAC secondary development framework provided by 3DE. Use the secondary development language EKL to call the coding data interface and write attributes and codes at specified locations on the model components. S5: The function of exporting XML files is developed. The coding tool interface is designed using the KAC secondary development framework provided by 3DE. The secondary development language EKL is used to traverse the model components to obtain the attributes and codes in the attribute structure tree, thereby improving the data transmission efficiency after BIM model coding.
2. The BIM component coding method based on the 3DE platform and component information database according to claim 1, characterized in that, The specific process of S2 is as follows: S21: Use database management tools to create a MySQL database, and create various attribute and encoding data tables in the database; S22: Based on the model structure and model unit classification codes determined in S1, collect professional domain attribute data, stage role data, building attribute data by function, building attribute data by space, component attribute data, design attribute data, and coding data. Enter the data through the component information database and save it to the corresponding database table.
3. The BIM component coding method based on the 3DE platform and component information database according to claim 1, characterized in that, The specific process of S3 is as follows: S31: Configure the MySQL data source, fill in the MySQL database IP address, port number, username and password; S32: Write interfaces, including interfaces for obtaining attributes of professional domains, attributes of stage roles, attributes of buildings by function, attributes of buildings by space, attributes of components, attributes of design, and code.
4. The BIM component coding method based on the 3DE platform and component information database according to claim 1, characterized in that, The specific process of S4 is as follows: S41: Create a new resource in the EKL resource table, with the resource type being VBA macro; S42: Design the interactive interface for adding attributes and coding functions.
5. The BIM component coding method based on the 3DE platform and component information database according to claim 4, characterized in that, The interactive interface described in S42 includes the following elements: S421: Select component set, used to select components that need to have attributes and codes added, traverse the selected components, determine whether they are in the display state, and store the components in the display state into the component list; S422: Select Attributes. This option allows you to select the attributes to add or modify. It retrieves various attribute data through the interfaces developed in S3, including interfaces for obtaining professional domain attributes, stage role attributes, functional attributes, spatial attributes, component attributes, and design attributes. The corresponding attribute values are displayed in the tab container through the data interface. Selecting a first-level attribute displays the corresponding second-level attribute. Selecting a second-level attribute will display the corresponding third-level attribute, and so on. S423: Component list box, used to display a list of component names selected in S421; S424: Generate Attribute Structure button, used to generate an empty component general attribute and design attribute structure tree at a specified location under the component selected in S421, for subsequent attribute attachment; S425: Add Attribute button, used to attach the attribute item selected in S422 to the attribute structure tree generated in S424; S426: Add an encoding button. Through the data interface developed in S3, transmit the component attribute values added in S425 to the component information database, obtain the corresponding encoding return value, parse it, encode the component according to the encoding rules, and attach it to the attribute structure tree generated in S424.
6. The BIM component coding method based on the 3DE platform and component information database according to claim 1, characterized in that, The specific process of S5 is as follows: S51: Create a new resource in the EKL resource table, with the resource type being VBA macro; S52: The interactive interface for exporting XML files; iterates through the components in the list box; retrieves the attribute values attached to each component; and writes the component name, GUID unique identifier, and attribute values to the file according to predefined rules. Export the file to the selected location.
7. The BIM component coding method based on the 3DE platform and component information database according to claim 6, characterized in that, The interactive interface described in S52 includes the following elements: S521: Select component set, used to select the components to be exported, traverse the selected components, determine whether they are in the display state, and store the components in the display state into the component list; S522: Component list box, used to display a list of component names selected in S521; S523: Export Location button, used to select the export location and export all attribute values, code values, and hierarchical relationships of the component selected in S521.