A BIM full information analysis and conversion method based on lightweight database
Through the BIM full information analysis and conversion method based on light-weight databases, the problems of diversification and incompatibility of BIM model data formats are solved, efficient conversion and information integrity of complex and high-precision models are achieved, and data management and query efficiency are improved.
Patent Information
- Application Number
- CN202411698600.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-26
- Publication Date
- 2025-04-01
- Estimated Expiration
- 2044-11-26
AI Technical Summary
Diversified and incompatible data formats of existing BIM models lead to difficulties in data exchange and sharing, especially in the conversion process of complex and high-precision models, which are inefficient and incomplete information.
The BIM full information analysis and conversion method based on light database is adopted to convert BIM data from file storage format to database storage method. By establishing a linear design model structure tree, the geometric, attribute and material information of elements are parsed and classified, and written to a custom database file.
It realizes efficient conversion of complex and high-precision BIM models, ensures the improvement of information integrity and conversion efficiency, and supports full life cycle management and structured query of data.
Smart Images

Figure CN119179805B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a BIM full information parsing and conversion method based on a lightweight database, which is applicable to BIM fields such as BIM data exchange and digital twins. Background Art
[0002] As a carrier of engineering information, the geometric elements of the BIM model will inevitably be associated with the actual engineering properties. The core of BIM is to establish a virtual three-dimensional model of the construction project and use digital technology to provide this model with a complete and actual construction project information library. This information library not only contains geometric information, professional attributes and status information describing the building components, but also contains status information of non-component objects (such as space and motion behavior). With the help of this three-dimensional model containing construction project information, the degree of information integration of the construction project is greatly improved, thereby providing a platform for engineering information exchange and sharing for the stakeholders of the construction project.
[0003] At present, the application of BIM technology has become popular around the world, but the diversification and incompatibility of its data formats are becoming increasingly prominent. The differences in BIM standard formulation, software development and practical application among countries and regions have hindered the effective sharing and collaboration of BIM information throughout the life cycle of buildings, and thus restricted the in-depth promotion and wide application of BIM technology. In response to this situation, the international community has focused on the development of a unified BIM data format. Standards such as IFC (Industry Foundation Classes) are mainstream data exchange standards, aiming to achieve data exchange and sharing between different BIM software through a unified data interface and improve model interoperability. Although other standards such as IDM (Information Delivery Manual) have also promoted the unification process to a certain extent, the complexity and diversity of the construction industry and the rapid evolution of BIM technology itself have made the formulation and promotion of a unified data format still face many difficulties.
[0004] At present, there are many model data formats involved in the engineering field, and there is a great demand for data conversion technology. The research on the unified BIM data format conversion method is an important issue that cannot be ignored in the digitalization process of the construction industry. At present, the use of model lightweight technology for format conversion has the following problems:
[0005] (1) The geometric information of surfaces, intelligent entities, etc. is triangulated. The conversion process is irreversible. For complex BIM models with high precision requirements, the conversion effect is poor and the efficiency is low;
[0006] (2) Incomplete attribute information is obtained, especially information such as views, layers, styles, fonts, and project properties are easily lost. Summary of the invention
[0007] The purpose of the present invention is to provide a BIM full information parsing and conversion method based on a lightweight database, which transforms the file storage format into a database storage method, realizes the conversion between unified data formats, improves the conversion effect and efficiency of complex BIM models with high precision requirements, and avoids incomplete information. To this end, the present invention adopts the following technical solutions:
[0008] A BIM full information parsing and conversion method based on a lightweight database, characterized by comprising:
[0009] S1: BIM data preparation, traversing the design model in the source file and establishing a linear design model structure tree;
[0010] S2: BIM data parsing, traversing the elements in all design models in the structure tree of the linear design model, parsing the full information data structure of the elements, the full information data structure of the elements including geometry, attributes and material information;
[0011] S3: BIM data conversion, classifying and converting the parsed element information into database objects recognizable by the lightweight database. The database objects adopt a full information data structure and are written into a custom database file.
[0012] On the basis of adopting the above technical solutions, the present invention may also adopt the following further technical solutions, or use these further technical solutions in combination:
[0013] The step S1 specifically includes:
[0014] BIM data preparation stage, including data preparation of source files, branch files, and material libraries;
[0015] Traverse all the design models in the source file, as well as the design models in the branch files referenced by each design model, and establish a linear design model structure tree for the project based on the reference relationship between the design models;
[0016] Extract information related to the design model, including design model information, view information, and layer information.
[0017] The design model information includes the model identification code, model name, model type, and model source; if there is a reference branch file, the design model information also includes the reference branch file name, branch file location, rotation angle, and scaling information;
[0018] The view information includes the view identification code, view name, view state, display style, background color, camera viewing angle, and camera information;
[0019] Layer information includes layer identification code, layer name, color, line type, and line width.
[0020] The step S2 specifically includes: traversing each element in the BIM design model, extracting the attribute and material information of each element, and obtaining the geometric information of each element by adopting a corresponding parsing method according to the geometric type of the element;
[0021] The geometric information includes geometric shape, transformation matrix, length, width, height, center point coordinates, area, and volume;
[0022] Attribute information includes general attributes and extended attribute information. General attributes include element identification code, model identification code, layer identification code, geometry type, color, line type, line width, font, font size, and transparency. Extended attributes include user tags, professional attributes, coding attributes, and custom attributes.
[0023] Material information includes material name, material type, and material mapping information. The material mapping information records reflection, environment, roughness, and metalness information to express the actual material effect.
[0024] The design model in the source file exists in the form of a structure tree, which is named as the initial design model structure tree. The initial design model structure tree includes all the design models in the source file and the design models of one or more branch files referenced. Each design model represents at least a part of a civil building or infrastructure project and has an independent spatial coordinate system. There is a spatial transformation between the spatial coordinate system used by the design model in the source file and the spatial coordinate system of the design model it references.
[0025] In the above further scheme, the steps of traversing all the design models in the source file and the design models in the branch files referenced by each design model, and establishing a linear design model structure tree of the project based on the reference relationship between the design models may be: starting from the design model of the source file, searching for a reference path in the initial design model structure tree, and mapping each encountered design model into a design model of the linear design model structure tree by applying each spatial transformation along the reference path to the encountered design model, and when the same design model is repeatedly encountered due to multiple reference paths in the initial design model structure tree, stopping the search along the reference path.
[0026] In the above further scheme, the geometric shape and transformation matrix information are directly obtained through analytical functions, the length, width, height and center point coordinate information can be obtained by calculating the minimum bounding box, and the area and volume information can be obtained through approximate calculation.
[0027] In the above further solution, the attribute information can be directly obtained through the parsing function.
[0028] In the above further solution, the material types include ordinary materials and PBR (Physically Based Rendering) materials. Materials are mainly used to map the elements to show the actual material style. Material map files are generally placed in the same directory as the current file.
[0029] The conversion in step S3 specifically includes: geometric information conversion, attribute information conversion, and material information conversion; the database objects obtained by the conversion are divided into six categories, namely, vector line objects, spline surface objects, mesh surface objects, basic body objects, BREP body objects, and text objects;
[0030] Vector line objects describe point, line, and curve geometric objects. The conversion types include all 3D point type elements, all 3D line type elements, and polygonal surface elements in the 3D surface type.
[0031] The spline surface class object describes the parameterized spline surface geometry object. The conversion types include B-spline surface and NURBS surface.
[0032] The mesh surface class object describes irregular polygonal mesh geometric objects. The conversion types include triangulated mesh surface elements, quadrilateral mesh surface elements, etc.
[0033] The basic body class object describes a parameterized face or body geometry object. The conversion types include Bezier surface, lofted surface, stretched surface, rotation surface, projection surface, etc. in the 3D face type, which are basic surface elements. The conversion types also include cube, sphere, cylinder, cone, prism in the entity type, which are basic entity elements.
[0034] BREP body class objects describe geometric objects expressed as solid surfaces after complex operations. The conversion types include BREP solids and meshed bodies in the solid type, which are complex solid elements.
[0035] The text class object describes a string geometry object, which includes annotations, descriptions, etc. The conversion type includes all text type elements;
[0036] The full information data structure of the above six types of database objects includes object identification code, object name, model identification code, category identification code, subcategory identification code, object geometry, object attributes, and object material; the design model information, view information, layer information and each database object are written into a unified custom database file; the object geometry will be stored in the database in the form of binary data stream, and the design model information, view information, layer information, object identification code, object name, model identification code, category identification code, subcategory identification code, object attributes, and object material will be stored in the form of database table.
[0037] According to the idea of classification conversion, all 3D point type elements, all 3D line type elements and polygonal surface elements in 3D surface type are uniformly converted into vector line type objects, spline surface elements in 3D surface type are converted into spline surface type objects, mesh surface elements such as triangulated network and quadrangular network in 3D surface type are converted into mesh surface type objects, basic surface elements such as Bezier surface, lofted surface, stretched surface, rotation surface, projection surface in 3D surface type and basic entity elements such as cube, sphere, cylinder, cone, prism in entity type are converted into basic body type objects, complex entity elements such as BREP entity and mesh subdivision body in entity type are converted into BREP body type objects, and all text type elements are converted into text type objects.
[0038] The full information data structure of the vector line class object includes: object identification code, object name, model identification code, category identification code, subcategory identification code, object geometry, object attributes, and object material.
[0039] The full information data structure of the spline surface object includes an object identification code, an object name, a model identification code, a category identification code, a subcategory identification code, object geometry, object attributes, and object material.
[0040] The full information data structure of the mesh surface object includes the object identification code, object name, model identification code, category identification code, subcategory identification code, object geometry, object attributes, and object material.
[0041] The full information data structure of the basic body class object includes an object identification code, an object name, a model identification code, a category identification code, a subcategory identification code, object geometry, object attributes, and object material.
[0042] The full information data structure of the BREP body class object includes an object identification code, an object name, a model identification code, a category identification code, a subcategory identification code, an object geometry, an object attribute, and an object material.
[0043] The full information data structure of a text object includes an object identification code, an object name, a model identification code, a category identification code, a subcategory identification code, a string, a character style, an origin, and a transformation matrix, wherein the character style includes the font, whether italic, character width, and character height.
[0044] The custom database file should be extensible and describe a database composed of tables consisting of many columns and rows, including design model tables, database object tables, database object geometry tables, category tables, object attribute tables, object material tables, and view tables.
[0045] The rows of the design model table represent the design models. The columns of the design model table may include a design model identification code column for representing a unique identifier of the design model and a design model name column for describing the features of the design model.
[0046] The rows of the database object table can be represented as database objects that constitute the design model and are associated with categories and subcategories. The database object table columns include an object ID column for representing a unique identifier of the database object, an object name column for representing the characteristics of the database object, a design model ID column of the design model to which it belongs, a category ID column of the category to which it belongs, a geometry column for expressing the geometry of the database object, an attribute column for expressing the attributes of the database object, a material column for expressing the material of the database object, and the like.
[0047] The rows of the database object geometry table may represent geometric aspects of the referenced database object. The columns of the database object geometry table may include an orientation column for representing the position and orientation of the database object, a size column for representing the spatial size of the database object, and a geometry flow column for representing the spatial structure of the database object. The database object geometry table may reference one or more rows of the subcategory table.
[0048] The rows of the category table may represent the categories of the database objects. The columns of the category table may include a category identification code column for representing the unique identifier of the category and a category name column for representing the characteristics of the category. The rows of the subcategory table may represent subcategories. The columns of the subcategory table may include a subcategory identification code column for representing the unique identifier of the subcategory and a subcategory name column for representing the characteristics of the subcategory, a category identification code column of the category to which it belongs, and an appearance column for defining the symbol used when the database object is displayed. The appearance column includes a color column, a line type column, a line width column, a font column, a font size column, a transparency column, and the like.
[0049] The rows of the object attribute table may represent the specific attributes of the database object. The columns of the object attribute table may include an attribute name column for representing the characteristics of the object attribute, an attribute value column for representing the numerical value of the object attribute, an attribute value type column for representing the type of the object attribute value, an attribute unit column for representing the measurement of the quantity represented by the object attribute, and an attribute category column for distinguishing the characteristics of the object attribute.
[0050] The rows of the object material table may represent the materials of the database objects. The columns of the object material table may include a material identification code column for representing the unique identifier of the material, a material name column for representing the material characteristics, a material type column for distinguishing between ordinary materials and PBR materials, and a column for expressing two-dimensional material maps, etc.
[0051] The rows of the view table may represent the graphical views of various design models and categories. The columns of the view table may include a model column representing the view of the displayed design model, a category column representing the view of each category of the displayed design model, and a subcategory column representing the view of each subcategory. One or more rows of the design model table are referenced so that one or more design models can be referenced by one or more views, and one or more rows of the category table are referenced so that one or more categories can be referenced by one or more views.
[0052] The beneficial effect of the present invention is that it can not only realize lossless conversion of geometric information, but also realize full information output of attribute information, improve conversion effect and ensure high conversion efficiency for complex and high-precision models. Based on the customizable data architecture, custom database file formats can be used to express data models in specific fields. Based on the database storage engine of the lightweight database, the database object stores all historical version information of object changes, covers the data description framework of the entire life cycle and the entire industry, supports structured query of the database, and significantly improves the storage and reading efficiency of massive data. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] Figure 1 It is a schematic diagram of the process of the present invention;
[0054] Figure 2 It is a schematic diagram of the structure tree of the initial design model of the present invention;
[0055] Figure 3 It is a schematic diagram of a structure tree of a linear design model of the present invention;
[0056] Figure 4 It is a structure tree of a three-dimensional assembly linear design model of a pumped storage power station in an embodiment of the present invention;
[0057] Figure 5 It is a DGN file data structure diagram in an embodiment of the present invention;
[0058] Figure 6is a schematic diagram of a structural column database object in an embodiment of the present invention;
[0059] Figure 7 This is a schematic diagram of BIM full information classification conversion of the present invention;
[0060] Figure 8 It is a schematic diagram of the custom database file format in an embodiment of the present invention. DETAILED DESCRIPTION
[0061] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, in one embodiment of the present invention, the BIM full information parsing and conversion method based on the lightweight database is described by taking the parsing and conversion of the DGN file data format as an example. Figure 1 It is a schematic diagram of the process of the present invention.
[0062] DGN is a file format for storing and exchanging CAD data. It was developed by Bentley Systems and is mainly used in its design software MicroStation. DGN files are an object-oriented data model whose basic components are nodes, lines, surfaces, and bodies. These basic components are organized in a hierarchical structure to form a tree structure. It contains various CAD elements, such as primitive objects, lines, polygons, surfaces, entities, triangulated networks, texts, dimensioning, etc. It also supports the management of layers and levels, supports highly accurate graphic representation, and can store complex geometric shapes and detailed design information.
[0063] like Figure 1 As shown, the BIM full information parsing and conversion method based on a lightweight database of the present invention includes:
[0064] S1: BIM data preparation, traversing the design model in the source file, and establishing a linear design model structure tree.
[0065] A DGN file contains a dictionary model and one or more design models. In addition to the design model, the DGN file also includes a dictionary model, which defines common template information such as layers, tables, styles, fonts, etc. for reference by elements in the design model.
[0066] For ease of understanding, by traversing all design models in the source file and the design models in the branch files referenced by them, the initial design model structure tree is obtained according to the reference relationship between the design models, as shown in the figure below: Figure 2 The source file contains 3 views and 3 design models. The 3 views are respectively Figure 1 ,See Figure 2 ,See Figure 3, the three design models are respectively recorded as design model 1, design model 2, and design model 3; the three branch files are respectively recorded as branch file 1, branch file 2 and branch file 3, each containing one design model, the design model in branch file 1 is recorded as design model 4, the design model in branch file 2 is recorded as design model 5, and the design model in branch file 3 is recorded as design model 6; among them, design model 1 refers to design model 4 and design model 5; design model 2 refers to design model 5; design model 3 refers to design model 6; design model 4 refers to design model 5; design model 5 refers to design model 4 and design model 6.
[0067] Through the steps of constructing a linear design model structure tree, a linear design model structure tree is constructed, as shown in the figure. Figure 3 As shown. At this time, design model 1 refers to design model 4 and design model 5; design model 5 referenced by design model 2 is no longer referenced here because it has been referenced by design model 1; design model 6 referenced by design model 3 is no longer referenced here because it has been referenced by design model 5; design model 5 referenced by design model 4 is no longer referenced here because it has been referenced by design model 1; design model 4 referenced by design model 5 is no longer referenced here because it has been referenced by design model 1, and only design model 5 references design model 6.
[0068] The embodiment of the present invention takes a pumped storage power assembly model as an example, and its linear design model structure tree diagram is as follows: Figure 4 As shown. The source DGN file contains only one design model, which refers to the design models of the branch files of the main powerhouse, auxiliary powerhouse, main transformer tunnel, connection tunnel, tail gate tunnel, and installation site. The main transformer tunnel branch engineering design model refers to the design models of the professional branch files of architecture, electricity, water machine, powerhouse, HVAC, water supply and drainage, etc. The professional design model of the powerhouse refers to the design models of the branch files of the ventilation layer, cable layer, traffic tunnel, main transformer layer, air inlet tunnel, exhaust tunnel, etc.
[0069] Furthermore, information related to the design model is extracted, including design model information, view information, layer information, etc.
[0070] Design model information includes model identification code, model name, model type and model source. The model identification code is rearranged according to the linear design model structure tree and can be sorted from 1 to n. References between the same DGN files are called internal references; references between different DGN files are called external references. The original data of the referenced design model is in the referenced design model. There is no specific referenced design model data in the current design model. The referenced DGN file name, file location, rotation angle, scaling ratio and other information are obtained through the API function in the current design model.
[0071] The view information includes view identification code, view name, view status, display style, background color, camera angle, camera information, etc. The source DGN file includes 3 views. Figure 1 For any view, Figure 2 As a top view, Figure 3 They are front views, and they all reference the design models in the linear design model structure tree.
[0072] The layers in the DGN dictionary model include the layers in the source DGN file dictionary model and the layers in all referenced branch file dictionary models. Each layer information includes layer identification code, layer name, color, line type, line width, etc. The layer identification code is rearranged according to the linear design model structure tree and can be sorted from 1 to n.
[0073] S2: BIM data parsing, traversing the elements in the design model, parsing the geometry, attributes and material information of the elements.
[0074] Before parsing BIM data, the DGN file data structure needs to be deconstructed, such as Figure 5 As shown, it includes the relationship between DGN files, design models, views, layers, elements, geometries, attributes, and materials.
[0075] S21: Analyze the geometric information of the element.
[0076] The element types that make up the geometric information of DGN elements include three categories: basic elements, common cells, and shared cells. Basic elements include straight lines, curves, common entities, intelligent entities, surfaces, and mesh surfaces. Common cells refer to the combination of several basic elements. Shared cells are similar to blocks in AutoCAD. Compared with common cells, the difference is that shared cells only store their graphic elements once in a DGN file, and the remaining elements are similar to storing their index positions. Any modification to a shared cell graphic will modify all similar cells.
[0077] According to the type of element, the corresponding parsing method is used to obtain the geometric information of each element. The geometric information includes geometric shape, transformation matrix, length, width, height, center point coordinates, area, volume, etc. The geometric shape and transformation matrix information are directly obtained through the mdlElement_read() and mdlTMatrix_getIdentity() functions, the length, width, height, center point coordinate information is obtained through mdlElmdscr_computeRange(), and the area and volume information is obtained through the mdlMeasure_volumeProperties() function.
[0078] S22: Parse the attribute information of the element.
[0079] Element attribute information includes general attributes, extended attributes, etc. General attributes include element identification code, model identification code, layer identification code, geometry type, color, line type, line width, font, font size, transparency, etc. Extended attributes include user tags, professional attributes, coding attributes, custom attributes, etc. Attribute information can be directly obtained through the corresponding parsing function.
[0080] There are many types of elements in the DGN design model. The program first needs to determine the geometric type of the element. The main functions used include mdlElement_getType(), mdlTFElmdscr_getApplicationType(), and mdlKISolid_isSolidElement(). The common properties such as the layer identification code, color, and transparency are obtained through mdlElement_getProperties(), mdlElement_getSymbology(), and mdlElement_getTransparency().
[0081] The professional attributes of DGN extension are EC (Engineering Content) attributes. ECObject is an engineering content object, which is used to describe the data in the project. ECSchema is data that describes data and is used to express the data structure of EC. It is a carrier for expressing ECObjects information.
[0082] Furthermore, an ECSchema file contains multiple ECClasses, and an ECClass contains multiple ECProperty, ECStructProperty, and ECArrayProperty. ECProperty represents properties of regular types, including integer, string, double precision, date, coordinate, long integer, binary, etc.; while ECStructProperty refers to a custom structure, generally representing a complex type defined by ECClass; and ECArrayProperty refers to a dynamic linked list, allowing multiple properties to be added.
[0083] Furthermore, ECPropertyValue represents the value of a single ECProperty in ECInstance. In most cases, ECPropertyValue constitutes an ECInstance. ECPropertyValue stores various types of data defined by ECProperty.
[0084] To extract EC properties, obtain the ECInstance instance in advance through a series of API functions under DgnECManager, then obtain the ECClass through ECInstance, and then traverse the ECProperty under ECClass one by one, and finally obtain the corresponding ECPropertyValue through ECProperty.
[0085] S23: Analyze the material information of the element.
[0086] Material information includes common materials and PBR materials. You can use the MaterialManager API functions to search the corresponding material library according to the material path associated with the element until you find a material with the same material name.
[0087] Take the concrete structural columns of a factory building as an example. Figure 6 The geometric information of the structural column is composed of 6 polygonal faces and 1 construction line. Its attribute information includes the steel bar model, concrete strength and concrete cover thickness. The attribute values are C40, HRB400 and 35mm respectively. Its material information is concrete material.
[0088] S3: BIM data conversion, classifying the parsed element information into database objects that can be recognized by the lightweight database, and writing them into the custom database file.
[0089] Before converting BIM data, the custom database file data structure needs to be defined, such as Figure 8 As shown, it includes the relationship between custom database files, design models, views, categories, database objects, geometry, attributes, and materials.
[0090] According to the three-dimensional general geometric expressions such as points, lines, surfaces, and bodies, the element geometry obtained by analysis is divided as follows. Among them, points are the most basic geometric type, expressing the location, emphasis, and focus of things. It is the basis for forming other geometric shapes. Three-dimensional point types include single points such as coordinate points and symbol points, and multiple points such as equally divided points and equally spaced points. Lines are paths formed by extending and connecting points, expressing the length and direction of things. It is the basis for forming surfaces and bodies. Three-dimensional line types include basic curves such as straight lines, arcs, ellipses, Bezier curves, spline curves, and polylines, and complex curves such as spirals and interpolation curves. Surfaces are composed of points and lines, expressing the shape, size, and position of things. They are the basis for forming bodies. Three-dimensional surface types include basic surfaces such as polygonal surfaces, Bezier surfaces, spline surfaces, lofted surfaces, stretched surfaces, rotational surfaces, and projection surfaces, and mesh surfaces such as triangulated nets and quadrilateral nets. A body is composed of points, lines and surfaces, and expresses the three-dimensional structure and volume of an object. It is the basic unit that constitutes a real object. Entity types include basic entities such as cubes, spheres, cylinders, cones, prisms, and complex entities such as BREP entities and meshed bodies. Text is a special point type, composed of points and strings, and is used for annotations and descriptions. Text types include single-line text, multi-line text, etc. The BIM full information classification conversion diagram is as follows: Figure 7 shown.
[0091] An element combination is composed of two or more elements. The combination types include basic combinations such as dimensioning, combined lines, combined surfaces, and combined bodies, and shared combinations such as standard blocks. For element combinations, the corresponding conversions of the above six types of database objects are performed one by one by traversing the sub-elements in the combination.
[0092] According to the classification conversion idea, the database objects after the DGN file conversion are divided into the following six categories, namely CurveVector object, MSBsplineSurface object, PolyFace object, Solid object, BRep object, and TextString object.
[0093] Different types of DGN elements need to be processed accordingly. Conventional point, line (simple line, closed line, complex line) and other geometric elements are converted into CurveVector objects. Conventional surface type geometric elements are converted into MSBsplineSurface objects. Conventional triangulated network type geometric elements are converted into PolyFace objects. Conventional body type geometric elements are converted into Solid objects. Special intelligent entity and parametric entity type geometric elements are converted into BRep objects. Text type geometric elements are converted into TextString objects.
[0094] For combinations of common cells, shared cells, annotations, fills, sections, and other elements, they are transformed one by one by traversing the sub-objects.
[0095] Among them, the common cell is a collection of a group of elements, which are mainly divided into two categories: graphical cells and point type cells. The layer, color, line type, and line width of each sub-element in the common cell can be different. When converting, the sub-elements are obtained through the GetSubElements method, and then the sub-elements are converted one by one. The converted sub-elements are used to create a new cell using the CreateCellElement method. Finally, the symbolic expression style and extended attribute information of the cell element are obtained to complete the conversion. The shared cell type is mostly a graphic fill symbol, and the conversion method is similar to the conversion method of the common cell element.
[0096] Through the above conversion, model information, view information, layer information and each database object are written into the custom database file. In the database schema, the row of the design model table represents the design model. The columns of the design model table include the model ID and the model name columns. The database object table includes rows representing database objects. The columns of the database object table include the object ID column, the object name column, the model ID column, the category ID column, the subcategory ID column, the object geometry column, the object attribute column and the object material column. The row of the object geometry table represents the geometric aspects of the referenced database object. The columns of the object geometry table include the orientation column, the size column and the geometry flow column. The row of the object geometry table references one or more rows of the subcategory table. The row of the category table represents the category of the database object, corresponding to the layer information in the DGN dictionary model. The columns of the category table may include the category ID column and the category name column. The row of the subcategory table may represent a subcategory. The columns of the subcategory table may include the subcategory ID column, the subcategory name column, the category ID column and the appearance column. The rows of the object attribute table represent the attribute aspects of the referenced database object, and the columns of the object attribute table include the attribute name column, the attribute value column, the attribute value type column, the attribute unit column, and the attribute category column. The rows of the object material table represent the material aspects of the referenced database object, and the columns of the object material table include the material identification code column, the material name column, the material type column, and the material map column, where the material map is stored in the material table in a binary encoded compressed manner. In addition, the rows of the view table represent the graphical views displayed by each design model and category. The columns of the view table include the model view column, the category view column, and the subcategory override column.
[0097] Furthermore, the database model supports user-defined tables, columns, and rows. When the model changes, only the changed data is transmitted, and the data changes can be backtracked to fully trace the complete change history of the model and components.
[0098] The above description is only a specific implementation case of the invention, and the technical features of the invention are not limited thereto. Any changes or modifications made by any technician in the relevant field within the field of the invention are all covered by the protection scope of the invention.
Claims
1. A BIM full information parsing and conversion method based on a lightweight database, characterized in that: include: S1: BIM data preparation, traversing the design model in the source file and establishing a linear design model structure tree; S2: BIM data parsing, traversing the elements in all design models in the structure tree of the linear design model, parsing the full information data structure of the elements, the full information data structure of the elements including geometry, attributes and material information; S3: BIM data conversion, classifying and converting the element information obtained by parsing into database objects that can be recognized by the lightweight database. The database objects adopt a full information data structure and are written into a custom database file; The step S2 specifically includes: Traversing each element in the design model, extracting the attribute and material information of each element, and obtaining the geometric information of each element by adopting a corresponding parsing method according to the geometric type of the element; The geometric information includes geometric shape, transformation matrix, length, width, height, center point coordinates, area, and volume; Attribute information includes general attributes and extended attribute information. General attributes include element identification code, model identification code, layer identification code, geometry type, color, line type, line width, font, font size, and transparency. Extended attributes include user tags, professional attributes, coding attributes, and custom attributes. Material information includes material name, material type, and material mapping information. The material mapping information records reflection, environment, roughness, and metalness information to express the actual material effect. The conversion in step S3 includes: geometric information conversion, attribute information conversion, and material information conversion; the database objects obtained by the conversion are divided into six categories, namely vector line objects, spline surface objects, mesh surface objects, basic body objects, BREP body objects, and text objects; Vector line objects describe point, line, and curve geometric objects. The conversion types include all 3D point type elements, all 3D line type elements, and polygonal surface elements in the 3D surface type. The spline surface class object describes the parameterized spline surface geometry object. The conversion types include B-spline surface and NURBS surface elements. The mesh surface class object describes irregular polygonal mesh geometric objects. The conversion types include triangle mesh surface elements and quadrilateral mesh surface elements. The basic body class object describes a parameterized face or body geometry object. The conversion types include Bezier surface, lofted surface, stretched surface, rotation surface, and projection surface in the three-dimensional face type, which are basic surface elements. The conversion types also include cube, sphere, cylinder, cone, and prism in the entity type, which are basic entity elements. BREP body class objects describe geometric objects expressed as solid surfaces after complex operations. The conversion types include BREP solids and meshed bodies in the solid type, which are complex solid elements. The text class object describes a string geometry object, which includes annotations and descriptions, and the conversion type includes all text type elements; The full information data structure of the above six types of database objects includes object identification code, object name, model identification code, category identification code, subcategory identification code, object geometry, object attributes, and object material; the design model information, view information, layer information and each database object are written into a unified custom database file; the object geometry will be stored in the database in the form of binary data stream, and the design model information, view information, layer information, object identification code, object name, model identification code, category identification code, subcategory identification code, object attributes, and object material will be stored in the form of database table.
2. According to the light database-based BIM full information parsing and conversion method of claim 1, it is characterized in that: The step S1 specifically includes: BIM data preparation stage, including data preparation of source files, branch files, and material libraries; Traverse all the design models in the source file, as well as the design models in the branch files referenced by each design model, and establish a linear design model structure tree for the project based on the reference relationship between the design models; Extracting design model related information, including design model information, view information and layer information; The design model information includes the model identification code, model name, model type, and model source; if there is a reference branch file, the design model information also includes the reference branch file name, branch file location, rotation angle, and scaling information; The view information includes the view identification code, view name, view state, display style, background color, camera viewing angle, and camera information; Layer information includes layer identification code, layer name, color, line type, and line width.
Citation Information
Patent Citations
Conversion method for DGN data format
CN107273543A
Method for converting BIM model into GIS model
CN111339599A