A 3D factory generation method, system, medium and device based on RVM data
By parsing RVM and ATT files, performing 3D model reuse judgment and mesh compression optimization, the problem of insufficient 3D model loading and rendering capabilities of RVM data was solved, improving the efficiency and smoothness of 3D factory model building.
Patent Information
- Application Number
- CN202210613280.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-31
- Publication Date
- 2026-01-23
- Estimated Expiration
- 2042-05-31
AI Technical Summary
In existing technologies, the 3D model loading and rendering capabilities of RVM data are insufficient, and the original tree structure has not been effectively sorted and reorganized, which affects the construction of 3D factory models and the development of subsequent related businesses.
By traversing RVM and ATT files, parsing the hierarchical structure, determining the reuse of 3D models, optimizing mesh compression using the MeshOpt algorithm, and adjusting the RVM hierarchical structure according to the scene requirements of the 3D factory, a new model structure is constructed.
It enables efficient loading and rendering of 3D models, improves the smoothness of model building, and provides strong support for subsequent business operations.
Smart Images

Figure CN114882178B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of 3D modeling technology, and in particular to a method, system, medium, and device for generating 3D factories based on RVM data. Background Technology
[0002] Currently, PDMS (Plant Design Management System) is hailed as the preferred design software system for large and complex plant design projects, and is widely used in fields such as petroleum, chemical, power, gas, and steel structures. It can create full-scale 3D models with geometric and attribute information, boasts a powerful component library, supports collaborative design across multiple disciplines (architecture, structure, electrical, equipment, HVAC, instrumentation, etc.), and can export data as publicly available exchange files, model data files (.rvm), and attribute auxiliary files (.att).
[0003] RVM data contains complete geometric and material information, perfectly replicating the tree structure of the PDMS database, while the ATT attribute file records the attribute information of each level, including size, material, and spatial information, and is widely used in the scene construction of 3D factories.
[0004] As the scale and detail of digital modeling for 3D factories increase, the smoothness of model browsing is significantly affected, placing higher demands on model loading and rendering capabilities. Furthermore, during the parsing of RVM and ATT data, the original tree-like structure was not effectively organized and reorganized, and the multi-level structure was not fully utilized, impacting the model building of 3D factories and the subsequent development of related business.
[0005] To address the problems existing in current technologies, there is an urgent need to develop a 3D factory generation method based on RVM data, which can simultaneously solve the problems of loading large 3D models and reconstructing 3D factory structures. Summary of the Invention
[0006] The technical problem to be solved by the present invention is to provide a method, apparatus, medium and equipment for generating 3D factories based on RVM data, which addresses the shortcomings of the prior art.
[0007] The technical solution of this invention to solve the above-mentioned technical problems is as follows: A 3D factory generation method based on RVM data, the method comprising:
[0008] Data reading steps: Traverse all 3D models, read model data files and attribute auxiliary files. Model data files are RVM files in binary format, and attribute auxiliary files are ATT files in JSON format.
[0009] Hierarchical structure parsing steps: Based on the read RVM file, parse the hierarchical structure of the RVM and the primitive and non-primitive objects of the leaf nodes of the hierarchical structure; based on the read ATT file, obtain the attribute information of each 3D model.
[0010] 3D model reuse judgment steps: Based on objects of basic and non-basic nature, determine the reuse of 3D models according to geometric type, size or type identifier attribute information;
[0011] Mesh data compression and optimization steps: Based on the 3D model reuse judgment results, after triangulation, only one mesh information is recorded for the reused 3D model, and the MeshOpt algorithm is used for compression optimization;
[0012] 3D factory construction steps: Based on the hierarchical structure analysis of the RVM file and the ATT file and the mesh information of the 3D model, adjust the original RVM hierarchical structure according to the scene construction and business requirements of the 3D factory to be generated, and readjust it to the 3D factory model structure to be generated.
[0013] Preferably, the above data reading step further includes:
[0014] RVM file reading steps: Traverse the RVM file, using the leaf node data as the 3D model data; obtain the ID and Name information of the 3D model;
[0015] ATT file reading steps: Traverse the ATT file, read the attribute information of each 3D model, and obtain the geometry type, size, matrix, material and type identifier of the 3D model.
[0016] Preferably, the above-mentioned hierarchical structure parsing steps further include:
[0017] RVM file structure parsing steps: Based on the geometry type, the 3D model is divided into primitives and non-primitives. Primitives include: Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere class models; non-primitives include FacetGroup class models; read the ID and Name of each 3D model, and set the ID as a unique identifier for the corresponding 3D model;
[0018] ATT file structure parsing steps: Read the identifier ID of each 3D model, match it one-to-one with the unique identifier ID in the RVM file reading result, read the attributes of the 3D model, obtain the matrix and material information of the 3D model, obtain the geometric type, size information of the basic body, and the non-basic type identifier.
[0019] Preferably, the above-mentioned three-dimensional model reuse judgment step includes:
[0020] Basic body reuse steps: For basic bodies of Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder and Sphere models, select geometric type and size information as reuse criteria for reuse judgment;
[0021] Non-primitive body reuse steps: For non-primitive bodies of the FacetGroup class model, the reuse judgment of non-primitive bodies is performed based on the type identifier.
[0022] Preferably, the above-mentioned 3D factory construction steps include:
[0023] Building node construction steps: interpret the Zone nodes in the RVM hierarchy, identify keywords related to Building, Structure, and Civil, analyze the building distribution inside the factory, and build the building nodes of the 3D factory based on the analysis results;
[0024] Floor node construction steps: Identify nodes with keywords related to Floor and Roof in the Framework nodes of the RVM hierarchy, interpret the floor and elevation information, and establish the floor nodes of the 3D factory according to their relationship with the above building nodes.
[0025] Room node construction steps: In the SubFramework node of the RVM hierarchy, identify nodes with Slab and Panel related keywords, interpret room information and bounding box information, and build 3D factory room nodes according to their relationship with the above floor nodes.
[0026] Device node construction steps: Traverse the Equipment nodes in the RVM hierarchy, interpret the device information and bounding box information, and build the device nodes of the 3D factory according to the spatial topology relationship of the room nodes mentioned above;
[0027] System node construction steps: interpret the Zone nodes in the RVM hierarchy, identify keywords related to Pipe, HVAC, and Cable, analyze the electromechanical system information, and establish the system nodes of the 3D factory according to the above-mentioned building node relationships and spatial topology relationships;
[0028] Branch node construction steps: Identify nodes with System-related keywords in the Pipe, HVAC, and Cable nodes of the RVM hierarchy, analyze the branch node information, and build the branch nodes of the 3D factory according to the above system node relationships;
[0029] Component node construction steps: Traverse the Branch nodes and child nodes under the Branch in the RVM hierarchy, interpret the component node information, and build the component nodes of the 3D factory according to the above branch node relationships.
[0030] This invention also provides a 3D factory generation system based on RVM data, employing the above-described 3D factory generation method based on RVM data. The system includes:
[0031] Data reading module: Traverses all 3D models, reads model data files and attribute auxiliary files. Model data files are RVM files in binary format, and attribute auxiliary files are ATT files in JSON format.
[0032] Hierarchical structure parsing module: Based on the read RVM file, it parses the hierarchical structure of the RVM and the primitive and non-primitive objects of the leaf nodes of the hierarchical structure. Based on the read ATT file, it obtains the attribute information of each 3D model.
[0033] 3D model reuse judgment module: Based on objects of basic and non-basic nature, it performs 3D model reuse judgment according to geometric type, size or type identifier attribute information;
[0034] Mesh data compression and optimization steps: Based on the 3D model reuse judgment results, after triangulation, only one mesh information is recorded for the reused 3D model, and the MeshOpt algorithm is used for compression optimization;
[0035] 3D Factory Construction Module: Based on the hierarchical structure analysis of the RVM file and the ATT file and the mesh information of the 3D model, the original RVM hierarchical structure is adjusted and readjusted into the 3D factory model structure to be generated according to the scene construction and business requirements of the 3D factory to be generated.
[0036] Preferably, the hierarchical structure parsing module further includes:
[0037] The RVM file structure parsing module categorizes 3D models into primitives and non-primitives based on geometry type. Primitives include Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere class models; non-primitives include FacetGroup class models. It reads the ID and Name of each 3D model and sets the ID as a unique identifier for the corresponding 3D model.
[0038] The ATT file structure parsing module reads the identifier ID of each 3D model and matches it one-to-one with the unique identifier ID in the RVM file reading result to read the attributes of the 3D model; it obtains the matrix and material information of the 3D model, as well as the geometric type, size information and non-basic type identifier of the primitive.
[0039] Preferably, the above-mentioned 3D model reuse judgment module includes:
[0040] Primitive Reuse Module: For primitives of Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder and Sphere models, the module selects geometric type and size information as the basis for reuse judgment.
[0041] Non-basic body reuse module: For non-basic bodies of the FacetGroup class model, the reuse judgment of non-basic bodies is performed based on the type identifier.
[0042] The present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the above-described 3D factory generation method based on RVM data.
[0043] The present invention provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it implements the steps of the 3D factory generation method based on RVM data as described above.
[0044] The beneficial effects of this invention are:
[0045] 1) The present invention proposes a method for generating 3D factories based on RVM data. While preserving conventional geometric and material information, it achieves full reuse of geometric models (i.e., primitives and non-primitives). MeshOpt is used to achieve mesh compression optimization, which greatly improves the loading capacity and rendering efficiency of 3D models.
[0046] 2) The method of this invention unifies the data hierarchy structure under different modules such as architecture, structure, electrical, equipment, HVAC, and instrumentation into "3D factory - architecture - floor - room - equipment" and "3D factory - architecture - system - branch - component", which sorts out a scene construction that is more suitable for 3D factory and provides strong support for subsequent rendering and business implementation.
[0047] The advantages of additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description
[0048] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0049] Figure 1 This is a schematic diagram of the 3D factory generation method based on RVM data according to the present invention;
[0050] Figure 2 A schematic diagram of the 3D factory model structure tree reconstructed for a specific embodiment of the present invention;
[0051] Figure 3 This is a schematic diagram illustrating the reuse of the basic Box class in a specific embodiment of the present invention;
[0052] Figure 4 This is a schematic diagram illustrating the reuse of the non-basic Valve class in a specific embodiment of the present invention;
[0053] Figure 5 This is a schematic diagram of the model structure of a factory, building, floor, room, and equipment according to a specific embodiment of the present invention;
[0054] Figure 6 This is a schematic diagram of the entire electromechanical system according to a specific embodiment of the present invention;
[0055] Figure 7 This is a schematic diagram of the 3D factory generation system framework based on RVM data of the present invention. Detailed Implementation
[0056] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0057] This invention aims to propose a method for generating 3D factories based on Representational Modeling (RVM) data. First, it reads RVM files in binary format and ATT files in JSON format. Second, it reads the geometry, material, and attribute information of the primitives and non-primitives from the leaf nodes of the RVM hierarchy, and implements efficient 3D model reuse judgment. Third, it converts the 3D model data into triangular mesh data and uses MeshOpt compression for efficient compression processing. Finally, based on the scene construction and business requirements of the 3D factory, the original RVM hierarchy structure is reorganized, and a new model structure tree is constructed.
[0058] The technical solution of this invention to solve the above-mentioned technical problems is as follows: a 3D factory generation method based on RVM data, such as... Figure 1 As shown, the method includes:
[0059] Data reading step S10: Traverse all 3D models, read model data files and attribute auxiliary files. The model data files are RVM files in binary format, and the attribute auxiliary files are ATT files in JSON format.
[0060] Hierarchical structure parsing step S20: Based on the read RVM file, parse the hierarchical structure information of the RVM and the basic and non-basic objects of the leaf nodes of the hierarchical structure; based on the read ATT file, obtain the attribute information of each 3D model.
[0061] 3D model reuse judgment step S30: Based on objects of basic and non-basic nature, perform 3D model reuse judgment according to geometric type, size or type identifier attribute information;
[0062] Mesh data compression and optimization step S40: Based on the three-dimensional model reuse judgment result, after triangulation processing, only one mesh information is recorded for the reused three-dimensional model, and the MeshOpt algorithm is used for compression optimization.
[0063] 3D factory construction step S50: Based on the hierarchical structure analysis of the RVM file and the ATT file and the mesh information of the 3D model, adjust the original RVM hierarchical structure according to the scene construction and business requirements of the 3D factory to be generated, and readjust it to the 3D factory model structure to be generated.
[0064] Preferably, the above data reading step S10 further includes:
[0065] RVM file reading steps: Traverse the RVM file, using the leaf node data as the 3D model data; obtain the ID and Name information of the 3D model;
[0066] ATT file reading steps: Traverse the ATT file and read the attribute information of each 3D model; obtain the geometry type, size, matrix, material and type identifier of the 3D model.
[0067] Preferably, the hierarchical structure parsing step S20 further includes:
[0068] RVM file structure parsing steps: Based on the geometry type, the 3D model is divided into primitives and non-primitives. Primitives include: Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere class models; non-primitives include FacetGroup class models; read the ID and Name of the 3D model, and set the ID as the unique identifier of the corresponding 3D model;
[0069] ATT file structure parsing steps: Read the identifier ID of each 3D model, match it one-to-one with the unique identifier ID in the RVM file reading result, and read the attributes of the 3D model; obtain the matrix and material information of the 3D model, obtain the geometric type, size information of the basic body, and the non-basic type identifier.
[0070] Preferably, the above-mentioned three-dimensional model reuse judgment step S30 includes:
[0071] Basic body reuse steps: For basic bodies of Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder and Sphere models, select geometric type and size information as reuse criteria for reuse judgment;
[0072] Non-primitive body reuse steps: For non-primitive bodies of the FacetGroup class model, the reuse judgment of non-primitive bodies is performed based on the type identifier.
[0073] Preferably, the above-mentioned 3D factory construction step S50 includes:
[0074] Building node construction steps: interpret the Zone nodes in the RVM hierarchy, identify keywords related to Building, Structure, and Civil, analyze the building distribution inside the factory, and build the building nodes of the 3D factory based on the analysis results;
[0075] Floor node construction steps: Identify nodes with keywords related to Floor and Roof in the Framework nodes of the RVM hierarchy, interpret the floor and elevation information, and establish the floor nodes of the 3D factory according to their relationship with the above building nodes.
[0076] Room node construction steps: In the SubFramework node of the RVM hierarchy, identify nodes with Slab and Panel related keywords, interpret room information and bounding box information, and build 3D factory room nodes according to their relationship with the above floor nodes.
[0077] Device node construction steps: Traverse the Equipment nodes in the RVM hierarchy, interpret the device information and bounding box information, and build the device nodes of the 3D factory according to the spatial topology relationship of the room nodes mentioned above;
[0078] System node construction steps: interpret the Zone nodes in the RVM hierarchy, identify keywords related to Pipe, HVAC, and Cable, analyze the electromechanical system information, and establish the system nodes of the 3D factory according to the above-mentioned building node relationships and spatial topology relationships;
[0079] Branch node construction steps: Identify nodes with System-related keywords in the Pipe, HVAC, and Cable nodes of the RVM hierarchy, analyze the branch node information, and build the branch nodes of the 3D factory according to the above system node relationships;
[0080] Component node construction steps: Traverse the Branch nodes and child nodes under the Branch in the RVM hierarchy, interpret the component node information, and build the component nodes of the 3D factory according to the above branch node relationships.
[0081] The specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings:
[0082] Figure 2 This is a schematic diagram of the 3D factory model structure tree reconstructed in this invention, as shown below. Figure 2 As shown, this invention employs a method for generating 3D factories based on RVM data, which enables RVM data to be more adaptable to the scene construction and business logic of 3D factories, and achieves efficient consumption of RVM data.
[0083] The specific implementation method provided by this invention is as follows:
[0084] Step 1: Read the binary RVM file and iterate through all the 3D models.
[0085] (1) Traverse the RVM file and use the leaf node data as the 3D model data.
[0086] (2) Read the ID and Name of each 3D model and set them as the unique identifier of the model.
[0087] Step 2: Read the ATT file in JSON format to obtain the attribute information of each 3D model.
[0088] (1) Traverse the ATT file and read the attribute information of each 3D model.
[0089] (2) By reading the ID of each 3D model, a one-to-one match is made with the ID value in the RVM file reading result.
[0090] (3) Read the material information of each 3D model, that is, the color information.
[0091] (4) Read the matrix information of each 3D model, including rotation (ORI) and translation (POS).
[0092] (5) Based on the different geometry types, all 3D models are divided into primitives and non-primitives. Primitives include Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere; while non-primitives are called FacetGroup.
[0093] (6) Read the size information of each basic body, such as the length, width, and height of the Box; and the bottom radius and height of the Cylinder.
[0094] (7) When reading non-geometric properties, obtain the type identifier (SPRE) information.
[0095] Step 3: Organize basic and non-basic objects, and determine the degree of reuse based on size information and type identifier.
[0096] (1) For basic objects, select geometric type and size information as the basis for reuse. For example... Figure 3 All Box primitives in the model are reused, and only one copy is recorded during storage. The corresponding transformation matrix is added, which improves the loading capacity.
[0097] ① For Box-type models, only one set of unit Box triangle information with a length of 1m is recorded, and the original Box's actual length as X, actual width as Y, and actual height as Z are multiplied into the original Box matrix.
[0098] ② For Sphere-type models, only one set of unit Sphere triangular face information with a radius of 1m is recorded, and the original actual radius of the Sphere is used as the proportion of the X, Y, and Z directions and multiplied into the original matrix of the Sphere.
[0099] ③ For the Cylinder class model, only one set of Cylinder triangle information with baseRadius of 1m and Height of 1m is recorded, and the actual bottom radius is used as X, the actual bottom radius as Y, and the actual height as Z, and multiplied by the original Cylinder matrix.
[0100] ④ For SphericalDish type models, only one set of SphericalDish triangle information with baseRadius of 1m and Height of 1m is recorded, and the actual bottom radius is used as X, the actual bottom radius as Y, and the actual height as Z, and multiplied by the original SphericalDish matrix.
[0101] ⑤ For EllipticalDish-type models, only one set of triangular face information for a unit EllipticalDish with a radius of 1m and a height of 1m is recorded, and the actual bottom radius is used as the X, the actual bottom radius as the Y, and the actual height as the Z, and multiplied by the original matrix of the EllipticalDish.
[0102] ⑥ For Pyramid-type models, the actual Bottom1, Bottom2, Top1, Top2, Offset1, Offset2, and Height are merged as the criteria for reuse. When they are the same, only one set of triangle information is recorded, and the original Pyramid matrix is retained.
[0103] ⑦ For CircularTorus type models, the actual Offset, Radius, and Angle are merged as the criteria for reuse. When they are the same, only one set of triangular face information is recorded, and the original matrix of CircularTorus is retained.
[0104] ⑧ For RectangularTorus type models, the actual Inner_radius, Outer_radius, Height, and Angle are merged as the criteria for reuse. When they are the same, only one set of triangle information is recorded, and the original matrix of RectangularTorus is retained.
[0105] ⑨ For Snout-type models, the reuse criterion is based on merging the actual Offset1, Offset2, Bshear1, Bshear2, Tshear1, Tshear2, Radius_b, Radius_t, and Height. When they are the same, only one set of triangular face information is recorded, and the original matrix of RectangularTorus is retained.
[0106] (2) For non-basic entities, the type identifier is selected as the basis for reuse. For example... Figure 4 In the model, the Valve class, which is not a primitive, is reused. Only one copy is recorded during storage. The corresponding transformation matrix is added, which improves the loading capacity.
[0107] ① For FacetGroup type models, the type identifier is used as the basis for reuse judgment. For example, the type identifier (SPRE) of a certain valve in PDMS is "A1A / GA-:150". At the same time, the rotation and translation values are calculated by the "ORI" and "POS" values in the attributes, and combined into the transformation matrix of the model. For example, the "ORI" of a certain valve is "Y is E and Z is U", "ANGL" is "90", and "POS" is "W 663S 4899.45U934".
[0108] ② When recording the triangular face information of the FacetGroup class model, the original triangular face vertex information is multiplied by the inverse matrix obtained in step ①, and only one copy is recorded for the reused model.
[0109] Step 4: Grid data compression optimization includes:
[0110] Based on the 3D model reuse judgment results, after triangulation, only one set of mesh information is recorded for the reused 3D model. The MeshOpt algorithm is used to perform high-quality compression of mesh data such as vertices, normals, UVs, and indices, significantly optimizing network transmission efficiency on the web client without affecting model loading.
[0111] Step 5: By adjusting the original hierarchical structure of RVM, the 3D factory hierarchical structure is reconstructed. This invention is not limited to this and can also support other hierarchical structures.
[0112] Based on the scene setup and business requirements of the 3D factory to be generated, the original RVM hierarchical structure is adjusted and readjusted to the 3D factory model structure to be generated.
[0113] In the RVM hierarchical structure, Zone, Structure, Framework, SubFramework, and Equipment nodes mainly involve architecture, structure, and equipment disciplines. By interpreting the information of these nodes, the hierarchical and spatial relationships are obtained, and the hierarchical structure of these nodes is reorganized into a "3D Factory - Building - Floor - Room - Equipment" hierarchy. Zone, Pipe, HVAC, Cable, and Branch nodes belong to the electromechanical discipline, involving HVAC, piping, and other systems, including a series of components such as valves, instruments, supports, and fittings. Furthermore, by interpreting the hierarchical relationships of these nodes, the hierarchy is reorganized into a "3D Factory - Building - System - Branch - Component" hierarchy. This invention supports the recognition of keywords related to Building, Structure, Civil, Floor, Roof, Slab, Panel, Pipe, HVAC, Cable, and System, but is not limited to these and can also support other keywords.
[0114] Building node construction steps: interpret the Zone nodes in the RVM hierarchy, identify keywords related to Building, Structure, and Civil, analyze the building distribution inside the factory, and build the building nodes of the 3D factory based on the analysis results;
[0115] Floor node construction steps: Identify nodes with keywords related to Floor and Roof in the Framework nodes of the RVM hierarchy, interpret the floor and elevation information, and establish the floor nodes of the 3D factory according to their relationship with the above building nodes.
[0116] Room node construction steps: In the SubFramework node of the RVM hierarchy, identify nodes with Slab and Panel related keywords, interpret room information and bounding box information, and build 3D factory room nodes according to their relationship with the above floor nodes.
[0117] Device node construction steps: Traverse the Equipment nodes in the RVM hierarchy, interpret the device information and bounding box information, and build the device nodes of the 3D factory according to the spatial topology relationship of the room nodes mentioned above;
[0118] System node construction steps: interpret the Zone nodes in the RVM hierarchy, identify keywords related to Pipe, HVAC, and Cable, analyze the electromechanical system information, and establish the system nodes of the 3D factory according to the above-mentioned building node relationships and spatial topology relationships;
[0119] Branch node construction steps: Identify nodes with System-related keywords in the Pipe, HVAC, and Cable nodes of the RVM hierarchy, analyze the branch node information, and build the branch nodes of the 3D factory according to the above system node relationships;
[0120] Component node construction steps: Traverse the Branch nodes and child nodes under the Branch in the RVM hierarchy, interpret the component node information, and build the component nodes of the 3D factory according to the above branch node relationships.
[0121] The beneficial effects of the technical solution of this invention are as follows: Figure 3 All Box primitives in the model are reused, and only one copy is recorded during storage. This is achieved by adding corresponding transformation matrices and improving loading capacity. Figure 4 In the model, Valve classes that are not primitives are reused, and only one copy is recorded during storage. This is achieved by adding corresponding transformation matrices, thus improving loading capacity. Figure 5 This reconstructed a new model structure tree for buildings, floors, rooms, and equipment. For example... Figure 6 Pipes and fittings are categorized under the electromechanical system.
[0122] This invention also provides a 3D factory generation system based on RVM data, employing a 3D factory generation method based on RVM data, such as... Figure 7 As shown, the system includes:
[0123] Data reading module 10: Traverses all 3D models, reads model data files and attribute auxiliary files. The model data files are RVM files in binary format, and the attribute auxiliary files are ATT files in JSON format.
[0124] Hierarchical structure parsing module 20: Based on the read RVM file, it parses the hierarchical structure information of the RVM and the basic and non-basic objects of the leaf nodes of the hierarchical structure. Based on the read ATT file, it obtains the attribute information of each 3D model.
[0125] 3D model reuse judgment module 30: Based on objects of basic and non-basic nature, it performs 3D model reuse judgment according to geometric type, size or type identifier attribute information;
[0126] Mesh data compression and optimization module 40: Based on the three-dimensional model reuse judgment result, after triangulation processing, only one mesh information is recorded for the reused three-dimensional model, and the MeshOpt algorithm is used for compression optimization;
[0127] 3D Factory Construction Module 50: Based on the hierarchical structure analysis of the RVM file and the ATT file and the mesh information of the 3D model, the original RVM hierarchical structure is adjusted and readjusted into the 3D factory model structure to be generated according to the scene construction and business requirements of the 3D factory to be generated.
[0128] Preferably, the hierarchical structure parsing module 20 further includes:
[0129] The RVM file structure parsing module categorizes 3D models into primitives and non-primitives based on geometry type. Primitives include Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere class models; non-primitives include FacetGroup class models. It reads the ID and Name of each 3D model and sets the ID as a unique identifier for the corresponding 3D model.
[0130] The ATT file structure parsing module reads the identifier ID of each 3D model and matches it one-to-one with the unique identifier ID in the RVM file reading result to read the attributes of the 3D model; it obtains the matrix and material information of the 3D model, as well as the geometric type, size information and non-basic type identifier of the primitive.
[0131] Preferably, the above-mentioned three-dimensional model reuse judgment module 30 includes:
[0132] Primitive Reuse Module: For primitives of Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder and Sphere models, the module selects geometric type and size information as the basis for reuse judgment.
[0133] Non-basic body reuse module: For non-basic bodies of the FacetGroup class model, the reuse judgment of non-basic bodies is performed based on the type identifier.
[0134] The present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the above-described 3D factory generation method based on RVM data.
[0135] The present invention provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the 3D factory generation method based on RVM data as described above.
[0136] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0137] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0138] In the embodiments provided by this invention, it should be understood that the disclosed apparatus / terminal devices and methods can be implemented in other ways. For example, the apparatus / terminal device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0139] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0140] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0141] If the integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.
[0142] Based on this understanding, the present invention can implement all or part of the processes in the methods of the above embodiments, or it can be accomplished by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium can be appropriately added or removed according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable medium does not include electrical carrier signals and telecommunication signals.
[0143] Compared to existing technologies, the key and protected aspects of this invention lie in the process of collecting, parsing, and calculating the connection rate of communication call records in the Inmarsat C system.
[0144] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.
[0145] The above are merely specific embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in the present invention, and these modifications or substitutions should all be covered within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A method for generating a 3D factory based on RVM data, characterized in that, The method includes: Data reading steps: Traverse all 3D models, read model data files and attribute auxiliary files. The model data files are RVM files in binary format, and the attribute auxiliary files are ATT files in JSON format. Hierarchical structure parsing steps: Based on the read RVM file, parse the hierarchical structure of the RVM and the primitive and non-primitive objects of the leaf nodes of the hierarchical structure; based on the read ATT file, obtain the attribute information of each 3D model. 3D model reuse judgment steps: Based on the basic objects and the non-basic objects, the 3D model reuse judgment is performed according to the geometric type, size or type identifier attribute information; Mesh data compression and optimization steps: Based on the 3D model reuse judgment result, after triangulation, a mesh information of the reused 3D model is recorded, and the MeshOpt algorithm is used for compression and optimization. 3D factory construction steps: Based on the hierarchical structure analysis of the RVM file and the ATT file and the mesh information of the 3D model, adjust the original RVM hierarchical structure according to the scene construction and business requirements of the 3D factory to be generated, and readjust it to the 3D factory model structure to be generated. The data reading step further includes: RVM file reading steps: Traverse the RVM file, using the leaf node data as the 3D model data; obtain the ID and Name information of the 3D model; ATT file reading steps: Traverse the ATT file, read the attribute information of each 3D model, and obtain the geometric type, size, matrix, material, and type identifier of the 3D model; The hierarchical structure parsing step further includes: RVM file structure parsing steps: Based on the geometry type, the 3D model is divided into primitives and non-primitives. The primitives include: Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere class models; the non-primitives include FacetGroup class models; read the ID and Name of each 3D model, and set the ID as a unique identifier for the corresponding 3D model; ATT file structure parsing steps: Read the ID of each 3D model and match it one-to-one with the unique identifier ID in the RVM file reading result; read the attributes of the 3D model; obtain the matrix and material information of the 3D model; obtain the geometric type, size information and non-basic type identifier of the primitive; The three-dimensional model reuse judgment step includes: Basic body reuse steps: For the basic bodies of the Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder and Sphere class models, select the geometric type and size information as the reuse basis for reuse judgment; Non-basic body reuse step: For the non-basic bodies of the FacetGroup class model, the reuse judgment of the 3D model is performed based on the type identifier. The 3D factory construction steps include: Building node construction steps: interpret the Zone nodes in the RVM hierarchy, identify the keywords Building, Structure, and Civil, analyze the building distribution inside the factory, and build the building nodes of the 3D factory based on the analysis results; Floor node construction steps: Identify nodes with the keywords "Floor" and "Roof" in the Framework nodes of the RVM hierarchy, interpret the floor and elevation information, and establish the floor nodes of the 3D factory according to their relationship with the above building nodes. Room node construction steps: In the SubFramework node of the RVM hierarchy, identify nodes with the keywords Slab and Panel, interpret the room information and bounding box information, and build the 3D factory room nodes according to their relationship with the above floor nodes. Device node construction steps: Traverse the Equipment nodes in the RVM hierarchy, interpret the device information and bounding box information, and build the device nodes of the 3D factory according to the spatial topology relationship of the room nodes mentioned above; System node construction steps: interpret the Zone nodes in the RVM hierarchy, identify the keywords Pipe, HVAC, and Cable, analyze the electromechanical system information, and establish the system nodes of the 3D factory according to the above-mentioned building node relationships and spatial topology relationships; Branch node construction steps: Identify nodes with the keyword "System" in the Pipe, HVAC, and Cable nodes of the RVM hierarchy, analyze the branch node information, and establish the branch nodes of the 3D factory according to the above system node relationships; Component node construction steps: Traverse the Branch nodes and child nodes under the Branch in the RVM hierarchy, interpret the component node information, and build the component nodes of the 3D factory according to the above branch node relationships.
2. A 3D factory generation system based on RVM data, employing the 3D factory generation method based on RVM data as described in claim 1, characterized in that, The system includes: Data reading module: Traverses all 3D models, reads model data files and attribute auxiliary files. The model data files are RVM files in binary format, and the attribute auxiliary files are ATT files in JSON format. Hierarchical structure parsing module: Based on the read RVM file, it parses the hierarchical structure of the RVM and the primitive and non-primitive objects of the leaf nodes of the hierarchical structure; based on the read ATT file, it obtains the attribute information of each 3D model. 3D model reuse judgment module: Based on the basic objects and the non-basic objects, the module performs the 3D model reuse judgment according to the geometric type, size or type identifier attribute information; Mesh data compression and optimization module: Based on the 3D model reuse judgment result, after triangulation, only one mesh information is recorded for the reused 3D model, and the MeshOpt algorithm is used for compression and optimization. 3D Factory Construction Module: Based on the hierarchical structure analysis of the RVM file and the ATT file and the mesh information of the 3D model, the original RVM hierarchical structure is adjusted and readjusted into the 3D factory model structure to be generated according to the scene construction and business requirements of the 3D factory to be generated. The hierarchical structure parsing module further includes: The RVM file structure parsing module divides the 3D model into primitives and non-primitives based on the geometry type. The primitives include Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder, and Sphere class models. The non-primitives include FacetGroup class models. The module reads the ID and Name of each 3D model and sets the ID as a unique identifier for the corresponding 3D model. ATT file structure parsing module: reads the identifier ID of each 3D model, matches it one-to-one with the unique identifier ID in the RVM file reading result, reads the attributes of the 3D model; obtains the matrix and material information of the 3D model, obtains the geometric type, size information and non-basic type identifier of the primitive; The 3D model reuse judgment module includes: Basic body reuse module: For the basic bodies of the Pyramid, Box, RectangularTorus, CircularTorus, EllipticalDish, SphericalDish, Snout, Cylinder and Sphere class models, the geometric type and size information are selected as the reuse criteria for reuse judgment; Non-basic body reuse module: For non-basic bodies of the FacetGroup class model, the module performs recombination and reuse judgment on the RVM file and the ATT file based on the type identifier.
3. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the steps of the 3D factory generation method based on RVM data as described in claim 1.
4. An electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the 3D factory generation method based on RVM data as described in claim 1.
Citation Information
Patent Citations
Method for carrying out spatial operation on BIM model based on IFC format
CN110176076A
RVM binary model analysis method and system for three-dimensional lightweight engine
CN112308975A
Method for rendering 3D models in a browser using distributed resources
WO2021235971A1