Rule and expression based power grid model information extraction and review method
By using a rule-based and expression-based method for extracting and verifying power grid model information, the problem of inconsistency in the application of BIM technology in power grid engineering was solved. This method enables the iteration and data integrity of the power grid information model throughout its entire lifecycle, thereby improving design quality and the effectiveness of data retrieval.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- STATE GRID ECONOMIC TECH RES INST CO LTD
- Filing Date
- 2023-12-15
- Publication Date
- 2026-06-19
AI Technical Summary
In existing power grid engineering, the application of BIM technology at different stages and between different manufacturers has not been effectively integrated, resulting in information loss and model loss in the power grid information model throughout its entire life cycle, making it impossible to use smoothly and affecting the digital transformation of power grid engineering.
A rule-based and expression-based method for extracting and verifying power grid model information is adopted. By simplifying the power grid BIM model into a string representation of each component and performing unified testing, including geometric model information extraction, material, association relationships and attribute organization and verification, the method ensures the iteration and data integrity of the model throughout its entire life cycle.
It enables iterative model and data updates throughout the entire lifecycle of power grid engineering projects, improving design quality and the effectiveness of data retrieval. It ensures the effectiveness of data retrieval across different software and modeling methods, meeting the application requirements of power grid information models throughout the entire process.
Smart Images

Figure CN117708941B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer-aided design technology, and in particular to a method for extracting and verifying power grid model information based on rules and expressions. Background Technology
[0002] With the development of BIM technology, BIM+ application models are constantly being innovated in the power grid industry, such as construction management platforms based on BIM forward design, substation operation and maintenance management platforms, transmission line inspection platforms, and so on.
[0003] However, current applications are mainly focused on a certain stage or rely on the model to achieve a specific purpose. In the entire application process, it is not effectively connected with the power grid company's infrastructure management, operation and dispatch, smart construction site and other systems. Moreover, due to the model expression method and model parsing method, the power grid information model will suffer a certain degree of information loss and model loss in different stages, different manufacturers and different application scenarios, which makes it impossible for the power grid information model to be used smoothly in the entire life cycle of power grid projects.
[0004] Therefore, how to achieve model and data iteration throughout the entire life cycle of power grid engineering, integrate BIM technology into the core of power grid engineering, and promote the digital transformation of power grid engineering has become a technical problem that urgently needs to be solved by those skilled in the art. Summary of the Invention
[0005] In view of the above-mentioned deficiencies of the prior art, the present invention provides a method for extracting and verifying power grid model information based on rules and expressions. The purpose is to realize the iteration of models and data throughout the entire life cycle of power grid engineering, integrate BIM technology into the genes of power grid engineering, and promote the digital transformation process of power grid engineering.
[0006] To achieve the above objectives, this invention discloses a method for extracting and verifying power grid model information based on rules and expressions, including:
[0007] Geometric model information of power grid engineering is extracted to obtain the power grid BIM model;
[0008] The power grid BIM model is simplified into a string representation of each component, along with its corresponding material, relationships, and attributes.
[0009] A unified detection is performed on each of the aforementioned string representations.
[0010] Preferably, the method for extracting the geometric model information of the power grid project is separate geometric information extraction;
[0011] The term "individual geometric body" refers to any geometric body that has no association relationship with any other geometric body.
[0012] In the extraction of individual geometric information, each geometric object is a separate geometric object;
[0013] The specific method for extracting individual geometric information is as follows:
[0014] The geometric model is reconstructed by converting it into an organization of surfaces and points.
[0015] The faces of the reconstructed geometry are classified as planes and curved surfaces.
[0016] Each quadrilateral planar object is composed of two triangular planar objects, denoted as P. {T1,T2} ,
[0017] Each surface object is composed of multiple triangular planar objects, denoted as P. {T1,T2……Tn} ;
[0018] Each of the aforementioned triangular planar objects consists of three vertices and one normal coordinate, denoted as T. {V1,V2,V3,V4} Where V is denoted as V {0,0,0} ;
[0019] The remaining cases are still calculated using the planar method, and the way triangular faces are expressed is the same as that of planes.
[0020] Preferably, the method for extracting the geometric model information of the power grid project is to obtain nested geometry.
[0021] In the acquisition of the nested geometry, each geometry is a geometric combination composed of two or more individual geometry. The information acquisition method of the nested geometry is to describe the association relationship between the individual geometry and other individual geometry through an ID association table at the outermost layer of the individual geometry.
[0022] The term "individual geometry" refers to any geometry that is not associated with any other geometry.
[0023] Preferably, the method for simplifying the power grid BIM model into a string representation of each component and its corresponding material, relationship, and attribute is as follows:
[0024] Extract all content related to the component from the power grid BIM model, establish the string expression for each component, and record it;
[0025] The specific form of the string representation is as follows:
[0026] {ID, Name, List <triangle>(),List <parameter>()}of;
[0027] Wherein, ID is a unique representation of each of the aforementioned components;
[0028] Name is the name of each of the aforementioned components in the power grid BIM model;
[0029] List <triangle>() represents an array of all triangular meshes contained in each of the aforementioned components. The Triangle class is defined by List<T>. <List<X,Y,Z,Nx,Ny,Nz> >The structure consists of X representing the x-direction coordinate value, Y representing the y-direction coordinate value, Z representing the z-direction coordinate value, and Nx, Ny, and Nz representing the X, Y, and Z-direction coordinates corresponding to the triangular mesh normal information, respectively.
[0030] List <parameter>For each of the aforementioned components, an array of attributes of the current component in the power grid BIM model is provided. The Parameter class consists of a List.<ParameterName,ParameterValue> The parameter is composed of two strings: ParameterName and ParameterValue. ParameterName and ParameterValue are both strings.
[0031] The geometric information of each component is further organized; the geometric information representing each component is described as a triangular mesh, the basic element constituting the three-dimensional model; wherein the geometric information is the triangular facet information of the three-dimensional model;
[0032] It also includes materials, i.e., material information table, and textures, i.e. texture information table; if the texture is not empty, it is associated with the geometry texture information table through the texture ID;
[0033] The material and texture information of the geometric components described for each component are further organized to make the List <triangle>Each face of the corresponding component in parentheses is associated with a material information table; if the corresponding texture is not empty, then the corresponding geometric texture information table is associated.
[0034] The attribute information of each component is further organized, and the corresponding ID, name, triangular grid array and attribute array are associated.
[0035] More preferably, the geometric information of each component is further organized; the method for describing the geometric information representing each component as an array of triangular meshes constituting a three-dimensional model is as follows:
[0036] Define vertex coordinate parameter vertices as the vertices of the triangular facets described by each component after geometric discretization, requiring that each vertex be unique after deduplication;
[0037] Each vertex coordinate consists of a group of three numerical symbols, representing the X, Y, and Z coordinate values respectively;
[0038] Each vertex of a triangle is associated with the vertex index information vertices, and vertex index values starting from 0 are used to form vertex index information vertexIndexes; where every three of the index values form a group, representing a triangle.
[0039] Define the normal vectors of the vertices of the triangle facet, and record them in the same way as the vertex coordinate parameters vertices.
[0040] The normal vectors of the vertices of a triangle are established by creating normal indexes normalIndexes, which are normal index values starting from 0 in the normal information normals. Each group of three normal index values represents the normal vectors of the three vertices of the same triangle, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes.
[0041] If the data in the string representation is separated by commas, the relationship of the number of values in each field is as follows:
[0042] a.vertices = 3 * n; where n is the number of vertices after deduplication;
[0043] b.normals = 3 * m; where m is the number of duplicate normal vectors after deduplication;
[0044] c.textrueCoords = 2*k; where textrueCoords represents the texture plane coordinates, and k is the number of duplicate UV coordinates;
[0045] d.vertexIndexes = normalIndexex = textrueCoordIndexes = materialIds * 3 = 3 * t; where textrueCoordIndexes represents the texture index and t is the number of triangles.
[0046] More preferably, the material and texture information of the descriptive geometry of each component are further organized to make the List <triangle>The method for associating each face of the corresponding component with the material information table in parentheses is as follows:
[0047] Define texture plane coordinates textureCoords, including the UV coordinates of the texture, with two coordinate values as a group;
[0048] Define texture plane coordinates textrueCoordIndexes for the vertices of the triangle facet, and obtain the corresponding normal index values from the normal index normalIndexes. Each group of three normal indices represents the texture coordinate indexes of three vertices on the same triangle facet, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes.
[0049] Define the material ID of each triangular facet in the material table, and associate the specific material information with the material table of the power grid project through the material ID.
[0050] More preferably, the method for further organizing the attribute information of each component and associating the corresponding ID, name, triangular mesh array, and attribute array is as follows:
[0051] Based on the attribute information Parameters of each component, the attribute name and attribute value of each component are combined to form an attribute table;
[0052] The attribute index of each component is associated with the component ID recorded in the parameter table;
[0053] Each of the aforementioned components is defined as an Element. {ID,Name,List <triangle> (),List <parameter> ()} < / parameter> < / triangle> The list is in the form of a list, where ID is used for unique indexing, Name is used for part name filtering, and List <triangle>Used for geometric judgments, List <parameter>Used for comparing and judging relevant parameters.
[0054] Preferably, the unified testing includes compliance testing, specifically as follows:
[0055] The compliance check is performed by extracting all content related to the component from the power grid BIM model according to step 2, reviewing the string expression of each component, and checking whether it can complete the general information model conversion according to the established rules. If it cannot, it is determined that there is a problem.
[0056] Preferably, the unified detection includes integrity review, specifically as follows:
[0057] The integrity check involves judging the attribute values and attribute entries of the converted string representation of each component to determine whether there are corresponding elements in the string representation.
[0058] The elements specifically include geometric information and attribute classes;
[0059] The geometric information includes components, materials, and relationships.
[0060] The component is represented as: {component unique identifier, material unique identifier, attribute table identifier};
[0061] The material is represented as: {material unique identifier, color, texture.texture coordinates};
[0062] The association relationship is expressed as: {unique identifier, object 1, object 2};
[0063] The attribute class includes an attribute table, as well as attribute names / values;
[0064] The attribute table is expressed as: {unique identifier, component unique identifier};
[0065] The attribute name / value is expressed as: {unique identifier, attribute name, attribute value}.
[0066] Preferably, the unified detection includes a correctness check;
[0067] The correctness review is a process of extracting, comparing, and judging information from the model item by item, based on the review criteria. The specific process is as follows:
[0068] Perform filtering traversal in the engineering model document, with the filtering conditions being the corresponding types;
[0069] By comparing and judging the names of the corresponding types, the content contained in the names of the corresponding types can be found.
[0070] Based on the ID of the corresponding type name, find the attribute value corresponding to the attribute name, and determine whether the attribute value meets the requirements;
[0071] Based on another judgment condition in the combined judgment condition, the corresponding sub-elements of the type name are determined, and the IDs of all the sub-elements are listed separately to form a sub-element ID list;
[0072] Based on the element classification conditions in the combined judgment conditions, the elements under the corresponding type names;
[0073] Obtain the corresponding subject based on the elements;
[0074] Determine whether the ID of the corresponding element and the corresponding subject exists in the sub-element ID list. If they exist and the corresponding values meet the requirements, the review item is considered to have passed the inspection; otherwise, it is determined to have failed.
[0075] Preferably, the review entries generated by the unified detection are all stored in a database and invoked through a data interface. The steps for generating each review entry are as follows:
[0076] Step 1: Item parsing;
[0077] The item parsing refers to analyzing the composition structure of the input review item and configuring the review item according to the specific composition structure;
[0078] Step II: Generation of expressions for each of the aforementioned review entries;
[0079] Each of the aforementioned review items is then broken down to form a computer rule expression that includes {}, $, :%, and special assertions;
[0080] Where {} represents the review item, and {} within {} represents combined conditions;
[0081] The content within $$ represents the judgment method, which can be divided into two types: direct judgment and loop judgment.
[0082] The direct judgment is $if$;
[0083] The loop condition is expressed as a $for$;
[0084] The content within %% is the judgment content;
[0085] The content within :: represents the attribute comparison method, including ==, <, >, !, =, and in;
[0086] The preceding element is the attribute being evaluated;
[0087] The following is the comparison attribute.
[0088] This invention also provides a power grid model information extraction and verification device, comprising:
[0089] The extraction module is used to extract geometric model information for power grid engineering to obtain the power grid BIM model;
[0090] The execution module is used to simplify the power grid BIM model into string expressions for each component, as well as the corresponding materials, relationships, and attributes; and to perform unified testing on each of the string expressions.
[0091] Preferably, the method for extracting the geometric model information of the power grid project is separate geometric information extraction;
[0092] In the extraction of individual geometric information, each geometric object is a separate geometric object;
[0093] The term "individual geometric body" refers to any geometric body that has no association relationship with any other geometric body.
[0094] The extraction module is specifically used to reconstruct the geometric model by converting it into an organization of surfaces and points.
[0095] The faces of the reconstructed geometry are classified as planes and curved surfaces.
[0096] Each quadrilateral planar object is composed of two triangular planar objects, denoted as P. {T1,T2} ,
[0097] Each surface object is composed of multiple triangular planar objects, denoted as P. {T1,T2……Tn} ;
[0098] Each of the aforementioned triangular planar objects consists of three vertices and one normal coordinate, denoted as T. {V1,V2,V3,V4} Where V is denoted as V {0,0,0} ;
[0099] The remaining cases are still calculated using the planar method, and the way triangular faces are expressed is the same as that of planes.
[0100] Preferably, the method for extracting the geometric model information of the power grid project is to obtain nested geometry.
[0101] The extraction module is used for nested geometry acquisition;
[0102] In the acquisition of the nested geometry, each geometry is a geometric combination composed of two or more individual geometry. The information acquisition method of the nested geometry is to describe the association relationship between the individual geometry and other individual geometry through an ID association table at the outermost layer of the individual geometry.
[0103] The term "individual geometry" refers to any geometry that is not associated with any other geometry.
[0104] Preferably, the method for simplifying the power grid BIM model into a string representation of each component and its corresponding material, relationship, and attribute is as follows:
[0105] The execution module is used to extract all content related to the component in the power grid BIM model, establish the string expression for each component, and record it.
[0106] The specific form of the string representation is as follows:
[0107] {ID, Name, List <triangle>(),List <parameter>()}of;
[0108] Wherein, ID is a unique representation of each of the aforementioned components;
[0109] Name is the name of each of the aforementioned components in the power grid BIM model;
[0110] List <triangle>() represents an array of all triangular meshes contained in each of the aforementioned components. The Triangle class is defined by List<T>. <List<X,Y,Z,Nx,Ny,Nz> >The structure consists of X representing the x-direction coordinate value, Y representing the y-direction coordinate value, Z representing the z-direction coordinate value, and Nx, Ny, and Nz representing the X, Y, and Z-direction coordinates corresponding to the triangular mesh normal information, respectively.
[0111] List <parameter>For each of the aforementioned components, an array of attributes of the current component in the power grid BIM model is provided. The Parameter class consists of a List.<ParameterName,ParameterValue> The parameter is composed of two strings: ParameterName and ParameterValue. ParameterName and ParameterValue are both strings.
[0112] The geometric information of each component is further organized; the geometric information representing each component is described as a triangular mesh, the basic element constituting the three-dimensional model; wherein the geometric information is the triangular facet information of the three-dimensional model;
[0113] It also includes materials, i.e., material information table, and textures, i.e. texture information table; if the texture is not empty, it is associated with the geometry texture information table through the texture ID;
[0114] The material and texture information of the geometric components described for each component are further organized to make the List <triangle>Each face of the corresponding component in parentheses is associated with a material information table; if the corresponding texture is not empty, then the corresponding geometric texture information table is associated.
[0115] The attribute information of each component is further organized, and the corresponding ID, name, triangular grid array and attribute array are associated.
[0116] More preferably, the execution module is used to further organize the geometric information of each component; the method for describing the geometric information representing each component as an array of triangular meshes constituting a three-dimensional model is as follows:
[0117] Define vertex coordinate parameter vertices as the vertices of the triangular facets described by each component after geometric discretization, requiring that each vertex be unique after deduplication;
[0118] Each vertex coordinate consists of a group of three numerical symbols, representing the X, Y, and Z coordinate values respectively;
[0119] Each vertex of a triangle is associated with the vertex index information vertices, and vertex index values starting from 0 are used to form vertex index information vertexIndexes; where every three of the index values form a group, representing a triangle.
[0120] Define the normal vectors of the vertices of the triangle facet, and record them in the same way as the vertex coordinate parameters vertices.
[0121] The normal vectors of the vertices of a triangle are established by creating normal indexes normalIndexes, which are normal index values starting from 0 in the normal information normals. Each group of three normal index values represents the normal vectors of the three vertices of the same triangle, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes.
[0122] If the data in the string representation is separated by commas, the relationship of the number of values in each field is as follows:
[0123] a.vertices = 3 * n; where n is the number of vertices after deduplication;
[0124] b.normals = 3 * m; where m is the number of duplicate normal vectors after deduplication;
[0125] c.textrueCoords = 2*k; where textrueCoords represents the texture plane coordinates, and k is the number of duplicate UV coordinates;
[0126] vertexIndexes = normalIndexex = textrueCoordIndexes = materialIds * 3 = 3 * t; where textrueCoordIndexes represents the texture index and t is the number of triangles.
[0127] More preferably, the execution module is used to further organize the material and texture information of the descriptive geometry of each component, so that the List <triangle>The method for associating each face of the corresponding component with the material information table in parentheses is as follows:
[0128] Define texture plane coordinates textureCoords, including the UV coordinates of the texture, with two coordinate values as a group;
[0129] Define texture plane coordinates textrueCoordIndexes for the vertices of the triangle facet, and obtain the corresponding normal index values from the normal index normalIndexes. Each group of three normal indices represents the texture coordinate indexes of three vertices on the same triangle facet, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes.
[0130] Define the material ID of each triangular facet in the material table, and associate the specific material information with the material table of the power grid project through the material ID.
[0131] More preferably, the execution module is used to further organize the attribute information of each component, and the method for associating the corresponding ID, name, triangular mesh array, and attribute array is as follows:
[0132] Based on the attribute information Parameters of each component, the attribute name and attribute value of each component are combined to form an attribute table;
[0133] The attribute index of each component is associated with the component ID recorded in the parameter table;
[0134] Each of the aforementioned components is defined as an Element. {ID,Name,List <triangle> (),List <parameter> ()} < / parameter> < / triangle> The list is in the form of a list, where ID is used for unique indexing, Name is used for part name filtering, and List <triangle>Used for geometric judgments, List <parameter>Used for comparing and judging relevant parameters.
[0135] Preferably, the unified testing includes compliance testing, specifically as follows:
[0136] The execution module is used to perform the compliance check; the compliance check is performed by extracting all the content related to the component in the power grid BIM model according to step 2, reviewing the string expression of each component, and checking whether it can complete the general information model conversion according to the established rules. If it cannot, it is determined that there is a problem.
[0137] Preferably, the unified detection includes integrity review, specifically as follows:
[0138] The execution module is used for the integrity review; the integrity review is to judge the attribute values and attribute entries of the converted string expression form of each component, and to determine whether there is a corresponding element in the string expression form;
[0139] The elements specifically include geometric information and attribute classes;
[0140] The geometric information includes component ID, material, and association relationships;
[0141] The component is represented as: {component unique identifier, material unique identifier, attribute table identifier};
[0142] The material is represented as: {material unique identifier, color, texture.texture coordinates};
[0143] The association relationship is expressed as: {unique identifier, object 1, object 2};
[0144] The attribute class includes an attribute table, as well as attribute names / values;
[0145] The attribute table is expressed as: {unique identifier, component unique identifier};
[0146] The attribute name / value is expressed as: {unique identifier, attribute name, attribute value}.
[0147] Preferably, the unified detection includes a correctness check;
[0148] The execution module is used for the correctness review; the correctness review is a process of extracting, comparing and judging information from the model item by item according to the review items, and the specific process is as follows:
[0149] Perform filtering traversal in the engineering model document, with the filtering conditions being the corresponding types;
[0150] By comparing and judging the names of the corresponding types, the content contained in the names of the corresponding types can be found.
[0151] Based on the ID of the corresponding type name, find the attribute value corresponding to the attribute name, and determine whether the attribute value meets the requirements;
[0152] Based on another judgment condition in the combined judgment condition, the corresponding sub-elements of the type name are determined, and the IDs of all the sub-elements are listed separately to form a sub-element ID list;
[0153] Based on the element classification conditions in the combined judgment conditions, the elements under the corresponding type names;
[0154] Obtain the corresponding subject based on the elements;
[0155] Determine whether the ID of the corresponding element and the corresponding subject exists in the sub-element ID list. If they exist and the corresponding values meet the requirements, the review item is considered to have passed the inspection; otherwise, it is determined to have failed.
[0156] More preferably, the execution module stores all review entries generated by the unified detection in a database and calls them through a data interface. The steps for generating each review entry are as follows:
[0157] Step 1: Item parsing;
[0158] The item parsing refers to analyzing the composition structure of the input review item and configuring the review item according to the specific composition structure;
[0159] Step II: Generation of expressions for each of the aforementioned review entries;
[0160] Each of the aforementioned review items is then broken down to form a computer rule expression that includes {}, $, :%, and special assertions;
[0161] Where {} represents the review item, and {} within {} represents combined conditions;
[0162] The content within $$ represents the judgment method, which can be divided into two types: direct judgment and loop judgment.
[0163] The direct judgment is $if$;
[0164] The loop condition is expressed as a $for$;
[0165] The content within %% is the judgment content;
[0166] The content within :: represents the attribute comparison method, including ==, <, >, !, =, and in;
[0167] The preceding element is the attribute being evaluated;
[0168] The following is the comparison attribute.
[0169] The beneficial effects of this invention are:
[0170] This invention can derive a general description method for power grid information models from different software, and standardizes the definition of model objects in terms of geometry, location, and attributes. This enables computers to identify and extract corresponding elements according to the general expression method, and at the same time complete the judgment of the review items, providing a rule-based and expression-based judgment method to improve design quality.
[0171] The following will further explain the concept, specific structure, and technical effects of the present invention in conjunction with the accompanying drawings, so as to fully understand the purpose, features, and effects of the present invention. Attached Figure Description
[0172] Figure 1 The following is a flowchart illustrating the execution of an embodiment of the present invention.
[0173] Figure 2 A flowchart illustrating the steps for forming each review entry in one embodiment of the present invention is shown. Detailed Implementation
[0174] Example
[0175] like Figure 1 As shown, the rule-based and expression-based method for extracting and verifying power grid model information includes:
[0176] Geometric model information of power grid engineering is extracted to obtain the power grid BIM model;
[0177] The power grid BIM model is simplified into a string representation of each component, along with its corresponding material, relationships, and attributes;
[0178] Perform a unified test on each string representation.
[0179] In the design phase of this invention, since the key elements of the general information model are the accuracy of the model size and position, and the information depth requires attention to the level of detail in the design parameters, material properties, spatial relationships, etc. contained in the model.
[0180] The key points for reviewing the general information model of the power grid can be formulated according to the State Grid's "Specification for Three-Dimensional Design and Modeling of Transmission and Transformation Engineering" standard, which clarifies the naming method of the reviewed components and the attribute entries they contain. For specific specifications, please refer to the specific standard.
[0181] This invention is based on a method for defining, extracting, and reviewing information using a universal information model. This method ensures the effectiveness of data reading between different software and modeling methods at the data level. Through review rules, it enables automatic review of the universal information model to ensure that the quality and accuracy of the power grid information model meet the application requirements of the entire power grid information model process. Furthermore, it utilizes model codes, physical IDs, material codes, and various attributes in the universal information model to tightly integrate the application at each stage with the existing management platform of the power grid company. By optimizing the organizational hierarchy of the model, a continuously growing model forms a BIM technology application chain, forming a holographic model of the power grid project that contains complete power grid design, construction, and operation and maintenance information.
[0182] In some embodiments, the method for extracting the geometric model information of the power grid project is to extract the geometric information separately;
[0183] A standalone geometric solid is one that has no relation to any other geometric solid.
[0184] In the extraction of individual geometric information, each geometric object is a separate geometric object;
[0185] The specific methods for extracting individual geometric information are as follows:
[0186] The geometric model is reconstructed by converting it into an organization of surfaces and points.
[0187] The faces of the reconstructed geometry are classified as planes and curved surfaces.
[0188] Each quadrilateral planar object is composed of two triangular planar objects, denoted as P. {T1,T2} ,
[0189] Each surface object is composed of multiple triangular planar objects, denoted as P. {T1,T2……Tn} ;
[0190] Each triangular planar object consists of three vertices and one normal coordinate, denoted as T. {V1,V2,V3,V4} Where V is denoted as V {0,0,0} ;
[0191] The remaining cases are still calculated using the planar method, and the way triangular faces are expressed is the same as that of planes.
[0192] In some embodiments, the geometric model information of the power grid project is extracted by obtaining nested geometry.
[0193] In the acquisition of nested geometry, each geometry is a geometric combination composed of two or more individual geometry. The information acquisition method of nested geometry is to describe the relationship between the individual geometry and other individual geometry through an ID association table at the outermost layer of the individual geometry.
[0194] A standalone geometric object is one that has no relation to any other geometric object.
[0195] In some embodiments, the method for simplifying the power grid BIM model into a string representation of each component, along with its corresponding material, relationships, and attributes, is as follows:
[0196] Extract all component-related content from the power grid BIM model, create a string representation for each component, and record it.
[0197] The specific string representation is as follows:
[0198] {ID, Name, List <triangle>(),List <parameter>()}of;
[0199] Wherein, ID is a unique identifier for each component;
[0200] Name is the name of each component in the power grid BIM model;
[0201] List <triangle>() represents an array of all triangular meshes contained in each component. The Triangle class is defined by List<T>. <List<X,Y,Z,Nx,Ny,Nz> >The structure consists of X representing the x-direction coordinate value, Y representing the y-direction coordinate value, Z representing the z-direction coordinate value, and Nx, Ny, and Nz representing the X, Y, and Z-direction coordinates corresponding to the triangular mesh normal information, respectively.
[0202] List <parameter>For each component, there is an array of attributes for the current component in the power grid BIM model. The Parameter class consists of a List.<ParameterName,ParameterValue> The parameter is composed of two strings: ParameterName and ParameterValue. ParameterName and ParameterValue are both strings.
[0203] The geometric information of each component is further organized; the geometric information representing each component is described as the basic element triangular mesh that constitutes the three-dimensional model; where the geometric information is the triangular facet information of the three-dimensional model.
[0204] It also includes materials, i.e., material information table, and textures, i.e. texture information table; if the texture is not empty, it is associated with the geometry texture information table through the texture ID;
[0205] The description geometry, material, and texture information of each component are further organized to make the List <triangle>Each face of the corresponding component in parentheses is associated with a material information table; if the corresponding texture is not empty, it is associated with the corresponding geometry texture information table.
[0206] The attribute information of each component is further organized, and the corresponding ID, name, triangular grid array and attribute array are associated.
[0207] In some embodiments, the geometric information of each component is further organized; the method for describing the geometric information representing each component as an array of triangular meshes constituting the three-dimensional model is as follows:
[0208] Define vertex coordinate parameter vertices as the vertices describing the triangular facets of each component after geometric discretization, requiring that each vertex be unique after deduplication;
[0209] Each vertex coordinate consists of a group of three numerical symbols, representing the X, Y, and Z coordinate values respectively;
[0210] Each vertex of a triangle is associated with the vertex index information vertices, and vertex index values starting from 0 are used to form vertex index information vertexIndexes; where every three index values are grouped together, they represent a triangle.
[0211] Define the normal vectors of the vertices of the triangle facet, and record them in the same way as the vertex coordinate parameters vertices;
[0212] The normal vectors of the vertices of a triangle are established by creating normal indexes normalIndexes, which are normal indexes starting from 0 in the normal information normals. Each group of three normal indexes represents the normal vectors of the three vertices of the same triangle, and the order of each vertex is consistent with the order of the vertices in the vertex index information vertexIndexes.
[0213] If the data in the string representation is separated by commas, the relationship of the number of values in each field is as follows:
[0214] d.vertices = 3 * n; where n is the number of vertices after deduplication;
[0215] e.normals = 3*m; where m is the number of duplicate normal vectors after deduplication;
[0216] f.textrueCoords = 2*k; where textrueCoords represents the texture plane coordinates, and k is the number of duplicate UV coordinates;
[0217] g.vertexIndexes = normalIndexex = textrueCoordIndexes = materialIds * 3 = 3 * t; where textrueCoordIndexes represents the texture index and t is the number of triangles.
[0218] In some embodiments, the description geometry, material, and texture information of each component are further organized, making the List <triangle>The method for associating each face of the corresponding component with the material information table in parentheses is as follows:
[0219] Define texture plane coordinates textureCoords, including the UV coordinates of the texture, with two coordinate values as a group;
[0220] For example, [1,1,2,2,3,3] indicates that there are three UV coordinates: a(1,1), b(2,2), and c(3,3).
[0221] Define the texture plane coordinates of the vertices of the triangle facet, and obtain the corresponding normal index value from the normal index, normalIndexes. Each group of three normal indices represents the texture coordinate index of three vertices on the same triangle facet, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes.
[0222] Define the material ID of each triangular facet in the material table, and associate the specific material information with the material table of the power grid project through the material ID.
[0223] In some embodiments, the attribute information of each component is further organized, and the method for associating the corresponding ID, name, triangular mesh array, and attribute array is as follows:
[0224] Based on the attribute information (Parameters) of each component, the attribute name and attribute value of each component are combined to form an attribute table.
[0225] The attribute index of each component is associated with the component ID recorded in the parameter table;
[0226] Define each component as an Element {ID,Name,List <triangle> (),List <parameter> ()} < / parameter> < / triangle> The list is in the form of a list, where ID is used for unique indexing, Name is used for part name filtering, and List <triangle>Used for geometric judgments, List <parameter>Used for comparing and judging relevant parameters.
[0227] In some embodiments, the unified detection includes compliance detection, as detailed below:
[0228] The compliance check is performed by extracting all component-related content from the power grid BIM model in step 2, reviewing the string representation of each component, and checking whether it can complete the general information model conversion according to the established rules. If it cannot, it is determined that there is a problem.
[0229] In some embodiments, the unified detection includes integrity review, as follows:
[0230] Integrity review involves judging the attribute values and attribute entries of each component in the converted string representation to determine whether there are corresponding elements in the string representation.
[0231] Elements specifically include geometric information and attribute classes;
[0232] Among them, geometric information includes component ID, material, and association relationships;
[0233] The component is represented as: {component unique identifier, material unique identifier, attribute table identifier};
[0234] The material is represented as: {material unique identifier, color, texture.texture coordinates};
[0235] The association relationship is expressed as: {unique identifier, object 1, object 2};
[0236] An attribute class includes an attribute table, as well as attribute names and values;
[0237] The attribute table is expressed as: {unique identifier, component unique identifier};
[0238] The way to express an attribute name / value is: {unique identifier, attribute name, attribute value}.
[0239] In some embodiments, the unified detection includes a correctness check;
[0240] The correctness review is a process of extracting, comparing, and judging information from each item in the model based on the review criteria. The specific process is as follows:
[0241] Perform filtering traversal in the engineering model document, with the filtering conditions being the corresponding types;
[0242] Compare and determine the content contained in the corresponding type name;
[0243] Based on the ID of the corresponding type name, find the attribute value corresponding to the corresponding attribute name, and determine whether the attribute value meets the requirements;
[0244] Based on the other condition in the combined judgment condition, the child elements of the corresponding type name are obtained, and the IDs of all child elements are listed separately to form a list of child element IDs;
[0245] Based on the element classification conditions in the combined judgment conditions, the elements under the corresponding type names;
[0246] Retrieve the corresponding subject based on the element;
[0247] Check if the ID of the corresponding element and the corresponding subject exists in the list of child element IDs. If they exist and the corresponding values meet the requirements, the item is considered to have passed the inspection. Otherwise, it is considered to have failed.
[0248] Taking the proofreading entry {3$if$%category:=:room%;$if$%name:=:"control||relay"%;$if$%height:>:3000%,{$if$%category:=:door%;$for$%parent:in:room.child%}} as an example;
[0249] Perform a filtering traversal in the engineering model document, using room type as the filtering condition;
[0250] Based on the comparison of room names, identify the number of rooms whose names contain the words "control" or "relay".
[0251] Based on the room ID, find the attribute value named "height" under this ID and determine whether the attribute value is greater than 3000 mm;
[0252] Based on the other condition in the combined judgment, obtain the sub-elements that make up the room, namely the walls, and create a separate table for each sub-element ID.
[0253] Based on the element classification criteria in the combined judgment conditions, find all elements of type "door".
[0254] Retrieve the main body (wall) of the door type element based on the door type element.
[0255] Check if the main ID of the door element type exists in the list of child element IDs that make up the room. If it exists and the height attribute value is greater than 3000 mm, the item is considered to have passed the inspection. Otherwise, it is considered to have failed.
[0256] like Figure 2 As shown, in some embodiments, the review entries generated by the unified detection are stored in a database and invoked through a data interface. The steps for generating each review entry are as follows:
[0257] Step 1: Item parsing;
[0258] Item parsing refers to analyzing the composition structure of the input review items and configuring the review items according to the specific composition structure.
[0259] For example, the layout of control rooms and relay rooms should be conducive to fire prevention and safe evacuation of personnel in case of emergency. There should be no fewer than two entrances and exits, and the clear height should not be less than 3m. From the description, it can be concluded that this review item contains at least two rules, so it is a combination type.
[0260] Step II: Generation of expressions for each review item;
[0261] Each review item is then broken down to form a computer rule expression that includes {}, $, ;:%, and special assertions;
[0262] Where {} represents the review item, and {} within {} represents combined conditions;
[0263] The content within $$ represents the judgment method, which can be divided into two types: direct judgment and loop judgment.
[0264] The direct evaluation is done using an if statement.
[0265] The loop condition is expressed as a $for$;
[0266] The content within %% is the judgment content;
[0267] The content within :: represents the attribute comparison method, including ==, <, >, !, =, and in;
[0268] The preceding element is the attribute being evaluated;
[0269] The following is the comparison attribute.
[0270] Taking the above rule entry as an example, the transformed rule expression is:
[0271] The proofreading rule expression for {3$if$%category:=:room%;$if$%name:=:"control||relay"%;$if$%height:>:3000%,{$if$%category:=:door%;$for$%parent:in:room.child%}} is as follows: the first letter represents the rule type, 0 represents attribute-based judgment, 1 represents spatial location-based judgment, 2 represents geometric judgment, and 3 represents combination-based judgment.
[0272] This invention provides a computer for executing the above-described extraction and verification methods, including a rule conversion module;
[0273] The rule conversion module is used to analyze the composition structure of the input review entries, configure the review entries according to the specific composition structure, and decompose each review entry into a computer rule expression that includes {,}, $, ;, :, % and special judges.
[0274] This invention also provides a power grid model information extraction and verification device, comprising:
[0275] The extraction module is used to extract geometric model information for power grid engineering to obtain the power grid BIM model;
[0276] The execution module is used to simplify the power grid BIM model into string representations for each component, along with its corresponding material, relationships, and attributes; and to perform unified testing on each string representation.
[0277] In some embodiments, the method for extracting the geometric model information of the power grid project is to extract the geometric information separately;
[0278] In the extraction of individual geometric information, each geometric object is a separate geometric object;
[0279] A standalone geometric solid is one that has no relation to any other geometric solid.
[0280] The extraction module is specifically used to reconstruct geometric models by converting them into an organization of surfaces and points.
[0281] The faces of the reconstructed geometry are classified as planes and curved surfaces.
[0282] Each quadrilateral planar object is composed of two triangular planar objects, denoted as P. {T1,T2} ,
[0283] Each surface object is composed of multiple triangular planar objects, denoted as P. {T1,T2……Tn} ;
[0284] Each triangular planar object consists of three vertices and one normal coordinate, denoted as T. {V1,V2,V3,V4} Where V is denoted as V {0,0,0} ;
[0285] The remaining cases are still calculated using the planar method, and the way triangular faces are expressed is the same as that of planes.
[0286] In some embodiments, the geometric model information of the power grid project is extracted by obtaining nested geometry.
[0287] The extraction module is used for nested geometry acquisition;
[0288] In the acquisition of nested geometry, each geometry is a geometric combination composed of two or more individual geometry. The information acquisition method of nested geometry is to describe the relationship between the individual geometry and other individual geometry through an ID association table at the outermost layer of the individual geometry.
[0289] A standalone geometric object is one that has no relation to any other geometric object.
[0290] In some embodiments, the method for simplifying the power grid BIM model into a string representation of each component, along with its corresponding material, relationships, and attributes, is as follows:
[0291] The execution module is used to extract all content related to components from the power grid BIM model, create a string representation for each component, and record it.
[0292] The specific string representation is as follows:
[0293] {ID, Name, List <triangle>(),List <parameter>()}of;
[0294] Wherein, ID is a unique identifier for each component;
[0295] Name is the name of each component in the power grid BIM model;
[0296] List <triangle>() represents an array of all triangular meshes contained in each component. The Triangle class is defined by List<T>. <List<X,Y,Z,Nx,Ny,Nz> >The structure consists of X representing the x-direction coordinate value, Y representing the y-direction coordinate value, Z representing the z-direction coordinate value, and Nx, Ny, and Nz representing the X, Y, and Z-direction coordinates corresponding to the triangular mesh normal information, respectively.
[0297] List <parameter>For each component, there is an array of attributes for the current component in the power grid BIM model. The Parameter class consists of a List.<ParameterName,ParameterValue> The parameter is composed of two strings: ParameterName and ParameterValue. ParameterName and ParameterValue are both strings.
[0298] The geometric information of each component is further organized; the geometric information representing each component is described as the basic element triangular mesh that constitutes the three-dimensional model; where the geometric information is the triangular facet information of the three-dimensional model.
[0299] It also includes materials, i.e., material information table, and textures, i.e. texture information table; if the texture is not empty, it is associated with the geometry texture information table through the texture ID;
[0300] The description geometry, material, and texture information of each component are further organized to make the List <triangle>Each face of the corresponding component in parentheses is associated with a material information table; if the corresponding texture is not empty, it is associated with the corresponding geometry texture information table.
[0301] The attribute information of each component is further organized, and the corresponding ID, name, triangular grid array and attribute array are associated.
[0302] In some embodiments, the execution module is used to further organize the geometric information of each component; the method for describing the geometric information representing each component as an array of triangular meshes constituting the three-dimensional model is as follows:
[0303] Define vertex coordinate parameter vertices as the vertices describing the triangular facets of each component after geometric discretization, requiring that each vertex be unique after deduplication;
[0304] Each vertex coordinate consists of a group of three numerical symbols, representing the X, Y, and Z coordinate values respectively;
[0305] Each vertex of a triangle is associated with the vertex index information vertices, and vertex index values starting from 0 are used to form vertex index information vertexIndexes; where every three index values are grouped together, they represent a triangle.
[0306] Define the normal vectors of the vertices of the triangle facet, and record them in the same way as the vertex coordinate parameters vertices;
[0307] The normal vectors of the vertices of a triangle are established by creating normal indexes normalIndexes, which are normal indexes starting from 0 in the normal information normals. Each group of three normal indexes represents the normal vectors of the three vertices of the same triangle, and the order of each vertex is consistent with the order of the vertices in the vertex index information vertexIndexes.
[0308] If the data in the string representation is separated by commas, the relationship of the number of values in each field is as follows:
[0309] h.vertices = 3 * n; where n is the number of vertices after deduplication;
[0310] i.normals = 3*m; where m is the number of normal vectors after deduplication;
[0311] j.textrueCoords = 2*k; where textrueCoords represents the texture plane coordinates, and k is the number of duplicate UV coordinates;
[0312] vertexIndexes = normalIndexex = textrueCoordIndexes = materialIds * 3 = 3 * t; where textrueCoordIndexes represents the texture index and t is the number of triangles.
[0313] In some embodiments, the execution module is used to further organize the material and texture information of the descriptive geometry of each component, so that the List <triangle>The method for associating each face of the corresponding component with the material information table in parentheses is as follows:
[0314] Define texture plane coordinates textureCoords, including the UV coordinates of the texture, with two coordinate values as a group;
[0315] Define the texture plane coordinates of the vertices of the triangle facet, and obtain the corresponding normal index value from the normal index, normalIndexes. Each group of three normal indices represents the texture coordinate index of three vertices on the same triangle facet, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes.
[0316] Define the material ID of each triangular facet in the material table, and associate the specific material information with the material table of the power grid project through the material ID.
[0317] In some embodiments, the execution module is used to further organize the attribute information of each component, and the method for associating the corresponding ID, name, triangular mesh array, and attribute array is as follows:
[0318] Based on the attribute information (Parameters) of each component, the attribute name and attribute value of each component are combined to form an attribute table.
[0319] The attribute index of each component is associated with the component ID recorded in the parameter table;
[0320] Define each component as an Element {ID,Name,List <triangle> (),List <parameter> ()} < / parameter> < / triangle> The list is in the form of a list, where ID is used for unique indexing, Name is used for part name filtering, and List <triangle>Used for geometric judgments, List <parameter>Used for comparing and judging relevant parameters.
[0321] In some embodiments, the unified detection includes compliance detection, as detailed below:
[0322] The execution module is used to perform compliance checks. The compliance check method is to extract all the content about components in the power grid BIM model according to step 2, review the string expression of each component, and check whether it can complete the general information model conversion according to the established rules. If it cannot, it is determined that there is a problem.
[0323] In some embodiments, the unified detection includes integrity review, as follows:
[0324] The execution module is used for integrity review; integrity review is to judge the attribute values and attribute entries of each component in the converted string representation form to determine whether there are corresponding elements in the string representation form;
[0325] Elements specifically include geometric information and attribute classes;
[0326] Among them, geometric information includes component ID, material, and association relationships;
[0327] The component is represented as: {component unique identifier, material unique identifier, attribute table identifier};
[0328] The material is represented as: {material unique identifier, color, texture.texture coordinates};
[0329] The association relationship is expressed as: {unique identifier, object 1, object 2};
[0330] An attribute class includes an attribute table, as well as attribute names and values;
[0331] The attribute table is expressed as: {unique identifier, component unique identifier};
[0332] The way to express an attribute name / value is: {unique identifier, attribute name, attribute value}.
[0333] In some embodiments, the unified detection includes a correctness check;
[0334] The execution module is used for correctness review; correctness review is a process of extracting, comparing and judging information from the model item by item according to the review items. The specific process is as follows:
[0335] Perform filtering traversal in the engineering model document, with the filtering conditions being the corresponding types;
[0336] Compare and determine the content contained in the corresponding type name;
[0337] Based on the ID of the corresponding type name, find the attribute value corresponding to the corresponding attribute name, and determine whether the attribute value meets the requirements;
[0338] Based on the other condition in the combined judgment condition, the child elements of the corresponding type name are obtained, and the IDs of all child elements are listed separately to form a list of child element IDs;
[0339] Based on the element classification conditions in the combined judgment conditions, the elements under the corresponding type names;
[0340] Retrieve the corresponding subject based on the element;
[0341] Check if the ID of the corresponding element and the corresponding subject exists in the list of child element IDs. If they exist and the corresponding values meet the requirements, the item is considered to have passed the inspection. Otherwise, it is considered to have failed.
[0342] In some embodiments, the execution module stores the review entries generated by the unified detection in a database and calls them through a data interface. The steps for generating each review entry are as follows:
[0343] Step 1: Item parsing;
[0344] Item parsing refers to analyzing the composition structure of the input review items and configuring the review items according to the specific composition structure.
[0345] Step II: Generation of expressions for each review item;
[0346] Each review item is then broken down to form a computer rule expression that includes {}, $, ;:%, and special assertions;
[0347] Where {} represents the review item, and {} within {} represents combined conditions;
[0348] The content within $$ represents the judgment method, which can be divided into two types: direct judgment and loop judgment.
[0349] The direct evaluation is done using an if statement.
[0350] The loop condition is expressed as a $for$;
[0351] The content within %% is the judgment content;
[0352] The content within :: represents the attribute comparison method, including ==, <, >, !, =, and in;
[0353] The preceding element is the attribute being evaluated;
[0354] The following is the comparison attribute.
[0355] The preferred embodiments of the present invention have been described in detail above. It should be understood that those skilled in the art can make numerous modifications and variations based on the concept of the present invention without creative effort. Therefore, all technical solutions that can be obtained by those skilled in the art based on the concept of the present invention through logical analysis, reasoning, or limited experimentation on the basis of existing technology should be within the scope of protection defined by the claims.< / parameter> < / triangle> < / triangle> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle> < / triangle> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle> < / triangle> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle> < / triangle> < / triangle> < / parameter> < / triangle> < / parameter> < / triangle>
Claims
1. A rule and expression based power grid model information extraction and review method, characterized in that, include: Geometric model information of power grid engineering is extracted to obtain the power grid BIM model; The power grid BIM model is simplified into a string representation of each component, along with its corresponding material, relationships, and attributes. Perform a unified test on each of the aforementioned string representations; The method for extracting geometric model information for power grid engineering is separate geometric information extraction; In the extraction of individual geometric information, each geometric object is a separate geometric object; The term "individual geometric body" refers to any geometric body that has no association relationship with any other geometric body. The specific method for extracting individual geometric information is as follows: The geometric model is reconstructed by organizing it into surfaces and points. The faces of the reconstructed geometry are classified as planes and curved surfaces. Each quadrilateral planar object is composed of two triangular planar objects, denoted as P. {T1,T2} , Each curved object is composed of a plurality of said triangular planar objects, noted P {T1,T2……Tn} ; Each of the triangular planar objects is composed of 3 vertices and a normal coordinate, denoted as T {V1,V2,V3,V4} ; wherein V is denoted as V {0,0,0} ; The remaining calculations still refer to the planar method, and the way triangular faces are expressed is the same as that of the planar method; The method for simplifying the power grid BIM model into a string representation of each component, its corresponding material, relationship, and attribute is as follows: Extract all content related to the component from the power grid BIM model, establish the string expression for each component, and record it; The specific form of the string representation is as follows: {ID, Name, List <triangle>(), List <parameter> ()};< / parameter> < / triangle> Wherein, ID is a unique representation of each of the aforementioned components; Name is the name of each of the aforementioned components in the power grid BIM model; List <triangle> () represents an array of all triangular meshes contained in each of the aforementioned components. The Triangle class is defined by List<T>. <List<X,Y,Z,Nx,Ny,Nz> >The structure consists of X representing the x-direction coordinate value, Y representing the y-direction coordinate value, Z representing the z-direction coordinate value, and Nx, Ny, and Nz representing the X, Y, and Z-direction coordinates corresponding to the triangular mesh normal information, respectively.< / triangle> List <parameter> () represents the attribute array of each component in the power grid BIM model, where the parameters are of type List.<ParameterName,ParameterValue> The parameter is composed of parentheses (), where ParameterName represents the parameter name and ParameterValue represents the parameter value. Both ParameterName and ParameterValue are in string format.< / parameter> The geometric information of each component is further organized; the geometric information representing each component is described as a triangular mesh, the basic element constituting the three-dimensional model; wherein the geometric information is the triangular facet information of the three-dimensional model; It also includes materials, i.e., material information table, and textures, i.e. texture information table; if the texture is not empty, it is associated with the geometry texture information table through the texture ID; The material and map information of the geometry component of each of the components is further organized, making List <triangle> Each face of the corresponding component in parentheses is associated with a material information table; if the corresponding texture is not empty, then the corresponding geometric texture information table is associated.< / triangle> The attribute information of each component is further organized, and the corresponding ID, name, triangular grid array and attribute array are associated.
2. The rule and expression based power grid model information extraction and review method of claim 1, wherein, The method for extracting the geometric model information of the power grid project is to obtain nested geometric bodies; In the acquisition of the nested geometry, each geometry is a geometric combination composed of two or more individual geometry. The information acquisition method of the nested geometry is to describe the association relationship between the individual geometry and other individual geometry through an ID association table at the outermost layer of the individual geometry. The term "individual geometry" refers to any geometry that is not associated with any other geometry.
3. The rule and expression based power grid model information extraction and review method of claim 1, wherein, The geometric information of each component is further organized; the method for describing the geometric information representing each component as an array of triangular meshes constituting the three-dimensional model is as follows: Define vertex coordinate parameter vertices as the vertices of the triangular facets described by each component after geometric discretization, requiring that each vertex be unique after deduplication; Each vertex coordinate consists of a group of three numerical symbols, representing the X, Y, and Z coordinate values respectively; Each vertex of a triangle is associated with the vertex index information vertices, and vertex index values starting from 0 are used to form vertex index information vertexIndexes; where every three of the index values form a group, representing a triangle. Define the normal vectors of the vertices of the triangle facet, and record them in the same way as the vertex coordinate parameters vertices. The normal vectors of the vertices of a triangle are established by creating normal indexes normalIndexes, which are normal index values starting from 0 in the normal information normals. Each group of three normal index values represents the normal vectors of the three vertices of the same triangle, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes. If the data in the string representation is separated by commas, the relationship of the number of values in each field is as follows: a.vertices = 3 * n; where n is the number of vertices after deduplication; b.normals=3*m; where m is the number of normal vectors after deduplication; c.textrueCoords=2*k; where textrueCoords represents the texture plane coordinates, and k is the number of unique UV coordinates after deduplication; vertexIndexes=normalIndexex; normalIndexex=textrueCoordIndexes=materialIds*3=3*t; Here, textrueCoordIndexes represents the texture index, and t is the number of triangles.
4. The rule and expression based power grid model information extraction and review method of claim 1, wherein, The material and map information of the geometry component of each of the components is further organized, making List <triangle> The method for associating each face of the corresponding component with the material information table in parentheses is as follows:< / triangle> Define texture plane coordinates textureCoords, including the UV coordinates of the texture, with two coordinate values as a group; Define texture plane coordinates textrueCoordIndexes for the vertices of a triangle and obtain the corresponding normal index values from the normal index normalIndexes. Each group of three normal index values represents the texture coordinate indexes of three vertices on the same triangle, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes. Define the material ID of each triangular facet in the material table, and associate the specific material information with the material table of the power grid project through the material ID.
5. The rule and expression based power grid model information extraction and review method of claim 1, wherein, The method for further organizing the attribute information of each component and associating the corresponding ID, name, triangular mesh array, and attribute array is as follows: Based on the attribute information Parameters of each component, the attribute name and attribute value of each component are combined to form an attribute table; The attribute index of each component is associated with the component ID recorded in the parameter table; Each of the aforementioned components is defined as an Element. {ID,Name,List <triangle> (),List <parameter> ()} < / parameter> < / triangle> The list is in the form of a list, where ID is used for unique indexing, Name is used for part name filtering, and List <triangle>() for conducting the geometric determination, List <parameter> () is used to compare and judge relevant parameters.< / parameter> < / triangle> 6. The rule and expression based power grid model information extraction and review method of claim 1, wherein, The unified testing includes compliance testing, as detailed below: The compliance detection method is as follows: extract all content related to the components in the power grid BIM model during the process of simplifying the power grid BIM model into a string expression form, and review the string expression form of each component to see if it can complete the general information model conversion according to the established rules. If it cannot, it is determined that there is a problem.
7. The rule and expression based power grid model information extraction and review method of claim 6, wherein, The unified inspection includes integrity review, as detailed below: The integrity check involves judging the attribute values and attribute entries of the converted string representation of each component to determine whether there are corresponding elements in the string representation. The elements specifically include geometric information and attribute classes; The geometric information includes component ID, material, and association relationships; The component ID is expressed as: {component unique identifier, material unique identifier, attribute table identifier}; The material is expressed as: {material unique identifier, color, texture, texture coordinates}; The association relationship is expressed as: {unique identifier, object 1, object 2}; The attribute class includes an attribute table, as well as attribute names / values; The attribute table is expressed as: {unique identifier, component unique identifier}; The attribute name / value is expressed as: {unique identifier, attribute name, attribute value}.
8. The rule and expression based power grid model information extraction and review method of claim 1, wherein, The unified testing includes a correctness review; The correctness review is a process of extracting, comparing, and judging information from the model item by item, based on the review criteria. The specific process is as follows: Perform filtering traversal in the engineering model document, with the filtering conditions being the corresponding types; By comparing and judging the names of the corresponding types, the content contained in the names of the corresponding types can be found. Based on the ID of the corresponding type name, find the attribute value corresponding to the attribute name, and determine whether the attribute value meets the requirements; Based on another judgment condition in the combined judgment condition, the corresponding sub-elements of the type name are determined, and the IDs of all the sub-elements are listed separately to form a sub-element ID list; Based on the element classification conditions in the combined judgment conditions, the elements under the corresponding type names; Obtain the corresponding subject based on the elements; Determine whether the ID of the corresponding element and the corresponding subject exists in the sub-element ID list. If they exist and the corresponding values meet the requirements, the review item is considered to have passed the test; otherwise, it is considered to have failed.
9. The rule and expression based power grid model information extraction and review method according to claim 6, 7 or 8, characterized in that, The review entries generated by the unified detection are all stored in a database and invoked through a data interface. The steps for generating each review entry are as follows: Step 1: Item parsing; The item parsing refers to analyzing the composition structure of the input review item and configuring the review item according to the specific composition structure; Step II: Generation of expressions for each of the aforementioned review entries; Each of the aforementioned review items is then broken down into a form including {,}, $, and; Computer rule expressions for , :, %, and special conditional operators; In this context, the content between { and} represents the review item, and the content between another set of { and} within { and} represents the combination condition; The content within $ and $ represents the judgment method, which can be divided into two types: direct judgment and loop judgment. The direct judgment is $if$; The loop condition is expressed as a $for$; The content within % and % is the judgment content; The content within the colon (:) represents the attribute comparison method, including ==, <, >, !, =, and in; The preceding element is the attribute being evaluated; The following is the comparison attribute.
10. A power grid model information extraction and review apparatus, characterized by, include: The extraction module is used to extract geometric model information for power grid engineering to obtain the power grid BIM model; The execution module is used to simplify the power grid BIM model into string representations for each component, as well as its corresponding material, relationships, and attributes; and to perform unified testing on each of the string representations. The method for extracting geometric model information for power grid engineering is separate geometric information extraction; In the extraction of individual geometric information, each geometric object is a separate geometric object; The term "individual geometric body" refers to any geometric body that has no association relationship with any other geometric body. The extraction module is specifically used to reconstruct the geometric model by converting it into an organization of surfaces and points. The faces of the reconstructed geometry are classified as planes and curved surfaces. wherein each quadrilateral planar object is composed of 2 triangular planar objects, denoted as P {T1,T2} , Each surface object is composed of multiple triangular planar objects, denoted as P. {T1,T2……Tn} ; Each of the aforementioned triangular planar objects consists of three vertices and one normal coordinate, denoted as T. {V1,V2,V3,V4} Where V is denoted as V {0,0,0} ; The remaining calculations still refer to the planar method, and the way triangular faces are expressed is the same as that of the planar method; The method for simplifying the power grid BIM model into a string representation of each component, its corresponding material, relationship, and attribute is as follows: The execution module is used to extract all content related to the component in the power grid BIM model, establish the string expression form for each component, and record it. The specific form of the string representation is as follows: {ID, Name, List <triangle>(), List <parameter> ()};< / parameter> < / triangle> Wherein, ID is a unique representation of each of the aforementioned components; Name is the name of each of the aforementioned components in the power grid BIM model; List <triangle>() represents an array of all triangular meshes contained in each of the aforementioned components. The Triangle class is defined by List<T>. <List<X,Y,Z,Nx,Ny,Nz> >The structure consists of X representing the x-direction coordinate value, Y representing the y-direction coordinate value, Z representing the z-direction coordinate value, and Nx, Ny, and Nz representing the X, Y, and Z-direction coordinates corresponding to the triangular mesh normal information, respectively.< / triangle> List <parameter> () represents the attribute array of each component in the power grid BIM model, where the parameters are of type List.<ParameterName,ParameterValue> The parameter is composed of parentheses (), where ParameterName represents the parameter name and ParameterValue represents the parameter value. Both ParameterName and ParameterValue are in string format.< / parameter> The geometric information of each component is further organized; the geometric information representing each component is described as a triangular mesh, the basic element constituting the three-dimensional model; wherein the geometric information is the triangular facet information of the three-dimensional model; It also includes materials, i.e., material information table, and textures, i.e. texture information table; if the texture is not empty, it is associated with the geometry texture information table through the texture ID; The material and map information of the geometry component of each of the components is further organized, making List <triangle> Each face of the corresponding component in parentheses is associated with a material information table; if the corresponding texture is not empty, then the corresponding geometric texture information table is associated.< / triangle> The attribute information of each component is further organized, and the corresponding ID, name, triangular grid array and attribute array are associated.
11. The power grid model information extraction and review apparatus according to claim 10, characterized by, The method for extracting the geometric model information of the power grid project is to obtain nested geometric bodies; The extraction module is used for nested geometry acquisition; In the acquisition of the nested geometry, each geometry is a geometric combination composed of two or more individual geometry. The information acquisition method of the nested geometry is to describe the association relationship between the individual geometry and other individual geometry through an ID association table at the outermost layer of the individual geometry. The term "individual geometry" refers to any geometry that is not associated with any other geometry.
12. The power grid model information extraction and review apparatus according to claim 10, characterized by, The execution module is used to further organize the geometric information of each component; the method for describing the geometric information representing each component as a triangular mesh array constituting the three-dimensional model is as follows: Define vertex coordinate parameter vertices as the vertices of the triangular facets described by each component after geometric discretization, requiring that each vertex be unique after deduplication; Each vertex coordinate consists of a group of three numerical symbols, representing the X, Y, and Z coordinate values respectively; Each vertex of a triangle is associated with the vertex index information vertices, and vertex index values starting from 0 are used to form vertex index information vertexIndexes; where every three of the index values form a group, representing a triangle. Define the normal vectors of the vertices of the triangle facet, and record them in the same way as the vertex coordinate parameters vertices. The normal vectors of the vertices of a triangle are established by creating normal indexes normalIndexes, which are normal index values starting from 0 in the normal information normals. Each group of three normal index values represents the normal vectors of the three vertices of the same triangle, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes. If the data in the string representation is separated by commas, the relationship of the number of values in each field is as follows: a.vertices = 3 * n; where n is the number of vertices after deduplication; b.normals=3*m; where m is the number of normal vectors after deduplication; c.textrueCoords=2*k; where textrueCoords represents the texture plane coordinates, and k is the number of unique UV coordinates after deduplication; vertexIndexes=normalIndexex; normalIndexex=textrueCoordIndexes=materialIds*3=3*t; Here, textrueCoordIndexes represents the texture index, and t is the number of triangles.
13. The power grid model information extraction and verification device according to claim 10, characterized in that, The execution module is configured to further organize the material and mapping information describing the geometry of each component, so that the List <triangle> The method for associating each face of the corresponding component with the material information table in parentheses is as follows:< / triangle> Define texture plane coordinates textureCoords, including the UV coordinates of the texture, with two coordinate values as a group; Define texture plane coordinates textrueCoordIndexes for the vertices of a triangle and obtain the corresponding normal index values from the normal index normalIndexes. Each group of three normal index values represents the texture coordinate indexes of three vertices on the same triangle, and the position of each vertex is consistent with the position of the vertex in the vertex index information vertexIndexes. Define the material ID of each triangular facet in the material table, and associate the specific material information with the material table of the power grid project through the material ID.
14. The power grid model information extraction and verification device according to claim 10, characterized in that, The execution module is used to further organize the attribute information of each component, and the specific method for associating the corresponding ID, name, triangular mesh array, and attribute array is as follows: Based on the attribute information Parameters of each component, the attribute name and attribute value of each component are combined to form an attribute table; The attribute index of each component is associated with the component ID recorded in the parameter table; Each of the components is defined as Element {ID,Name,List <triangle> (),List <parameter> ()} < / parameter> < / triangle> in the form of ID for unique indexing, Name for component name filtering, List <triangle>() for conducting the geometric determination, List <parameter> () is used to compare and judge relevant parameters.< / parameter> < / triangle> 15. The grid model information extraction and redaction device of claim 10, wherein, The unified testing includes compliance testing, as detailed below: The execution module is used to perform the compliance check; the compliance check is performed by: extracting all the content about the components in the power grid BIM model during the process of simplifying the power grid BIM model into a string expression, reviewing the string expression of each component, and checking whether it can complete the general information model conversion according to the established rules. If it cannot, it is determined that there is a problem.
16. The power grid model information extraction and review apparatus according to claim 15, characterized by, The unified inspection includes integrity review, as detailed below: The execution module is used for the integrity review; the integrity review is to judge the attribute values and attribute entries of the converted string expression form of each component, and to determine whether there is a corresponding element in the string expression form; The elements specifically include geometric information and attribute classes; The geometric information includes component ID, material, and association relationships; The component ID is expressed as: {component unique identifier, material unique identifier, attribute table identifier}; The material is expressed as: {material unique identifier, color, texture, texture coordinates}; The association relationship is expressed as: {unique identifier, object 1, object 2}; The attribute class includes an attribute table, as well as attribute names / values; The attribute table is expressed as: {unique identifier, component unique identifier}; The attribute name / value is expressed as: {unique identifier, attribute name, attribute value}.
17. The grid model information extraction and redaction device of claim 10, wherein, The unified testing includes a correctness review; The execution module is used for the correctness review; the correctness review is a process of extracting, comparing and judging information from the model item by item according to the review items, and the specific process is as follows: Perform filtering traversal in the engineering model document, with the filtering conditions being the corresponding types; By comparing and judging the names of the corresponding types, the content contained in the names of the corresponding types can be found. Based on the ID of the corresponding type name, find the attribute value corresponding to the attribute name, and determine whether the attribute value meets the requirements; Based on another judgment condition in the combined judgment condition, the corresponding sub-elements of the type name are determined, and the IDs of all the sub-elements are listed separately to form a sub-element ID list; Based on the element classification conditions in the combined judgment conditions, the elements under the corresponding type names; Obtain the corresponding subject based on the elements; Determine whether the ID of the corresponding element and the corresponding subject exists in the sub-element ID list. If they exist and the corresponding values meet the requirements, the review item is considered to have passed the test; otherwise, it is considered to have failed.
18. The power grid model information extraction and review apparatus according to claim 15, 16 or 17, characterized by, The execution module stores the review entries generated by the unified detection in a database and calls them through a data interface. The steps for generating each review entry are as follows: Step 1: Item parsing; The item parsing refers to analyzing the composition structure of the input review item and configuring the review item according to the specific composition structure; Step II: Generation of expressions for each of the aforementioned review entries; Each of the aforementioned review items is then broken down into a form including {,}, $, and; Computer rule expressions for , :, %, and special conditional operators; In this context, the content between { and} represents the review item, and the content between another set of { and} within { and} represents the combination condition; The content within $ and $ represents the judgment method, which can be divided into two types: direct judgment and loop judgment. The direct judgment is $if$; The loop condition is expressed as a $for$; The content within % and % is the judgment content; The content within the colon (:) represents the attribute comparison method, including ==, <, >, !, =, and in; : front is judged attribute; : back is contrast attribute.