Calculation Method, Calculation Device and Storage Medium for Geometric Elements in Three-Dimensional Space
By splitting and aggregating geometric object instances in the three-dimensional model, building and compressing the same geometric object collection, and building bounding boxes and spatial indexes, the problem of repeated calculation of similar features in the existing technology is solved, and the calculation efficiency of geometric data processing of the three-dimensional model is improved.
Patent Information
- Application Number
- CN202510438085.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-09
- Publication Date
- 2025-06-24
- Estimated Expiration
- 2045-04-09
AI Technical Summary
Existing three-dimensional model geometric data processing strategies are difficult to avoid repeated calculations of similar features, resulting in low computational efficiency.
By splitting the geometric object instances in the three-dimensional model file, building the same geometric object collection, compressing and storing it into persistent memory, building bounding boxes and spatial indexes, and controlling the computing node to perform geometric features calculations based on spatial indexes.
The number of geometric objects that are repeatedly calculated is reduced, data access efficiency and search query efficiency of space calculation are improved, and overall computing efficiency is improved.
Smart Images

Figure CN119963747B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of three-dimensional model data processing, and particularly relates to a calculation method, a calculation device, and a storage medium for three-dimensional space geometric elements. Background Art
[0002] In the related calculation methods of three-dimensional model geometric data, usually through the way of simplifying the number of triangular faces, the redundant vertex data, patch data, and internal geometric details in the three-dimensional model geometric data are simplified, and the main geometric features and boundary information are retained. The geometric data after such simplification is used for spatial calculation to improve the calculation efficiency.
[0003] However, there is a significant defect in the current geometric compression and simplification strategy: it only simplifies a single object and does not merge the similar features between objects. This approach leads to repeated calculation of similar feature data, thereby reducing the overall calculation efficiency when performing the calculation task of three-dimensional model geometric data.
[0004] The above content is only used to assist in understanding the technical solution of the present application, and does not represent an admission that the above content is prior art. Summary of the Invention
[0005] The main purpose of the present application is to provide a calculation method, a calculation device, and a storage medium for three-dimensional space geometric elements, aiming to solve the technical problem that the current geometric model processing strategy is difficult to avoid repeated calculation of similar features, resulting in low calculation efficiency when performing the calculation task of three-dimensional model geometric data.
[0006] To achieve the above purpose, the present application proposes a calculation method for three-dimensional space geometric elements, and the method includes:
[0007] Obtain the three-dimensional model file and three-dimensional space planning information of the area to be recognized;
[0008] Split the geometric object instances in the three-dimensional model file, and construct a set of the same geometric objects according to the split geometric object instances;
[0009] Save the compressed set of the same geometric objects to the persistent memory, and construct a bounding box for the compressed set of the same geometric objects;
[0010] Construct a geometric object space index for the set of the same geometric objects according to the bounding box;
[0011] Control the calculation node to perform geometric element calculation based on the geometric object space index to obtain the spatial position information between the area to be recognized and the three-dimensional space planning information.
[0012] In one embodiment, the steps of splitting the geometric object instances in the 3D model file and constructing a set of the same geometric objects according to the split geometric object instances include:
[0013] Obtain the geometric object instances of the geometric data in the 3D model file;
[0014] Based on the spatial position and / or subordination relationship of the geometric data, perform a splitting process on the geometric object instances to obtain first-level geometric object instances and multi-level component object instances, where the multi-level component geometric object instances are components of the first-level geometric object instances;
[0015] Determine the first-level geometric object set of the first-level set object instances according to the first transformation matrix after aggregation processing of the first-level geometric object instances, and determine the multi-level component geometric object set of the multi-level component geometric object instances according to the second transformation matrix after aggregation processing of the multi-level component geometric object instances.
[0016] In one embodiment, the steps of determining the first-level geometric object set of the first-level set object instances according to the first transformation matrix after aggregation processing of the first-level geometric object instances, and determining the multi-level component geometric object set of the multi-level component geometric object instances according to the second transformation matrix after aggregation processing of the multi-level component geometric object instances include:
[0017] Perform the same geometric object aggregation processing on the first-level geometric object instances, and establish the first transformation matrix between each geometric object after aggregation processing and the first-level geometric object instances, and the number of the first transformation matrices is equal to the number of the first-level geometric object instances;
[0018] Generate the first-level geometric object set according to the first transformation matrix and the first-level geometric object instances;
[0019] Perform the same geometric object aggregation processing on the multi-level component geometric object instances, and establish the second transformation matrix between the geometric objects after aggregation processing and the multi-level component geometric object instances, and the number of the second transformation matrices is equal to the number of the multi-level component geometric object instances;
[0020] Generate the multi-level component geometric object set according to the second transformation matrix and the multi-level component geometric object instances;
[0021] Wherein, multiplying the transformation matrix by one subset of the set of the same geometric objects obtains the split geometric object instances.
[0022] In one embodiment, before the step of saving the compressed set of identical geometric objects to persistent memory and constructing a bounding box for the compressed set of identical geometric objects, the method further includes:
[0023] Determine a compression processing algorithm for the set of identical geometric objects, and perform compression processing on the set of identical geometric objects based on the compression processing algorithm;
[0024] Determine a set of transformation matrices associated with the set of identical geometric objects;
[0025] The step of saving the compressed set of identical geometric objects to persistent memory and constructing a bounding box for the compressed set of identical geometric objects includes:
[0026] Store the compressed set of identical geometric objects and the set of transformation matrices in the persistent memory;
[0027] Determine a bounding box processing algorithm, and construct the bounding box based on the bounding box processing algorithm.
[0028] In one embodiment, the step of constructing a geometric object space index for the set of identical geometric objects according to the bounding box includes:
[0029] Set the point-line-plane feature information of the bounding box as the geometric object space index.
[0030] In one embodiment, the step of controlling a computing node to perform geometric element calculations based on the geometric object space index to obtain spatial position information between the region to be recognized and the three-dimensional space planning information includes:
[0031] Determine the current task processing volume of the computing node, and determine the task weight values of each computing task in the region to be recognized according to a computing intensity weight model;
[0032] Control the computing intensity weight model to determine the computing node corresponding to the computing task based on the current task processing volume and the task weight values;
[0033] Control the computing node to perform geometric element calculations corresponding to the geometric element calculation task based on the geometric object space index, and obtain a collision calculation result fed back by the computing node;
[0034] Generate spatial position information for position collision detection between the region to be recognized and the three-dimensional space planning information according to the collision calculation result.
[0035] In one embodiment, the steps of determining the current task processing volume of the computing node and determining the task weight values of each computing task in the area to be recognized according to the computing intensity weight model include:
[0036] Determine the current task processing volume of each computing node, obtain the time complexity of the collision algorithm associated with the three-dimensional space planning information, and determine the complexity and the number of instances of the geometric object instances corresponding to the same geometric object set in the persistent memory;
[0037] Obtain the first weight associated with the number of instances and the second weight associated with the time complexity;
[0038] Generate the computing intensity weight model according to the complexity, the number of instances, the first weight, the second weight, and the time complexity;
[0039] Determine the task weight value associated with the computing task according to the computing intensity weight model.
[0040] In one embodiment, after the step of obtaining the three-dimensional model file and the three-dimensional space planning information of the area to be recognized, the following steps are further included:
[0041] Obtain the separated data after preprocessing the three-dimensional model file, where the separated data at least includes geometric data, material data, texture data, hierarchical structure data, and business attribute data;
[0042] Determine the geometric object instances of the geometric data, and based on the geometric object instances, perform the step of splitting the geometric object instances in the three-dimensional model file and constructing the same geometric object set according to the split geometric object instances.
[0043] In addition, to achieve the above object, the present application also proposes a computing device for three-dimensional space geometric elements, where the computing device for three-dimensional space geometric elements includes: a memory, a processor, and a computer program stored on the memory and executable on the processor, and the computer program is configured to implement the steps of the computing method for three-dimensional space geometric elements as described above.
[0044] In addition, to achieve the above object, the present application also proposes a storage medium, where the storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium, and when the computer program is executed by a processor, it implements the steps of the computing method for three-dimensional space geometric elements as described above.
[0045] One or more technical solutions proposed by the present application have at least the following technical effects:
[0046] When processing the 3D model file of the recognition area, by splitting the geometric object instances in the 3D model file and constructing a geometric object set based on the similar geometric objects of the split geometric object instances, the instances with the same geometric objects are statistically associated and the number of geometric objects with duplicate calculations is reduced. Then, after compressing the geometric object set, it is stored in the persistent memory, facilitating direct access to these data through memory during spatial calculations and improving data access efficiency. Subsequently, the bounding boxes of the compressed geometric objects are constructed to reduce the vertex and face information in spatial calculations. Based on the geometric object bounding boxes, a spatial index of the set of the same geometric objects is constructed to further improve the retrieval and query efficiency of geometric objects during spatial calculations. Finally, the computing node is controlled to perform geometric feature calculations based on the geometric object spatial index, thereby obtaining the spatial position information between the recognition area and the 3D space planning information. Based on this, by aggregating geometric objects with similar features, the number of geometric objects for storage compression and spatial index establishment is reduced, and the calculation efficiency of the geometric feature calculation task for the recognition area and the 3D space planning information is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] The accompanying drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present application and used together with the specification to explain the principles of the present application.
[0048] To more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the accompanying drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0049] Figure 1 It is a schematic flowchart provided for the first embodiment of the calculation method of the 3D space geometric features of the present application;
[0050] Figure 2 It is a schematic flowchart provided for the second embodiment of the calculation method of the 3D space geometric features of the present application;
[0051] Figure 3 It is a schematic diagram of task processing of the calculation intensity weight model provided for the second embodiment of the present application;
[0052] Figure 4 It is an optional flowchart of the calculation method of the 3D space geometric features of the present application;
[0053] Figure 5 It is a schematic diagram of the device structure of the hardware operating environment involved in the calculation method of the 3D space geometric features in the embodiments of the present application.
[0054] The realization of the purpose, functional features and advantages of this application will be further described in conjunction with the embodiments with reference to the accompanying drawings. Detailed implementation manners
[0055] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of this application and are not used to limit this application.
[0056] The main solution of the embodiment of this application is: obtaining a three-dimensional model file and three-dimensional space planning information of the area to be recognized;
[0057] Splitting the geometric object instances in the three-dimensional model file and constructing a set of the same geometric objects according to the split geometric object instances;
[0058] Saving the compressed set of the same geometric objects to persistent memory and constructing a bounding box of the compressed set of the same geometric objects;
[0059] Constructing a geometric object spatial index of the set of the same geometric objects according to the bounding box;
[0060] Controlling a computing node to perform geometric element calculation based on the geometric object spatial index to obtain spatial position information between the area to be recognized and the three-dimensional space planning information.
[0061] In the calculation methods of relevant three-dimensional model geometric data, usually through the triangle face number simplification method, the redundant vertex data, patch data and internal geometric details in the three-dimensional model geometric data are simplified, and the main geometric features and boundary information are retained. This simplified geometric data is used for spatial calculation to improve calculation efficiency. However, this geometric compression and simplification strategy only simplifies a single object and does not merge the similar features between objects, resulting in repeated calculation of similar feature data and reducing the overall task execution efficiency.
[0062] The present application provides a solution. When processing the 3D model file of the area to be recognized, by splitting the geometric object instances in the geometric data and aggregating the same geometric objects, it is possible to statistically associate the geometric object instances with similar geometric objects to reduce the number of geometric objects for repeated calculation. Then, the set of the same geometric objects is compressed and stored in the persistent memory, which is convenient for directly accessing these data through the memory during spatial calculation and improves the data access efficiency. Subsequently, the bounding box of the compressed geometric objects is constructed to reduce the vertex and face information for spatial calculation. A spatial index is constructed based on the geometric object bounding box to further improve the retrieval and query efficiency of geometric objects during spatial calculation. Finally, each computing node is controlled to execute geometric element calculation based on the geometric object spatial index, so as to obtain the spatial position information between the area to be recognized and the 3D spatial planning information. Therefore, by merging similar objects, the number of geometric object spatial indexes to be constructed is reduced, and the calculation efficiency of the geometric element calculation task is improved.
[0063] It should be noted that the execution subject of this embodiment can be a computing service device with data processing, network communication, and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of implementing the above functions, the calculation of 3D spatial geometric elements, etc. Hereinafter, taking the calculation of 3D spatial geometric elements as an example, this embodiment and the following embodiments will be described.
[0064] To better understand the technical solution of the present application, the following will be described in detail in conjunction with the specification drawings and specific implementation manners.
[0065] The embodiment of the present application provides a method for calculating 3D spatial geometric elements, referring to Figure 1 , Figure 1 is a schematic flowchart of the first embodiment of the method for calculating 3D spatial geometric elements of the present application.
[0066] In this embodiment, the method for calculating 3D spatial geometric elements includes steps S10 to S50:
[0067] Step S10, obtain the 3D model file of the area to be recognized and the 3D spatial planning information.
[0068] It should be noted that the area to be recognized refers to the specific area that needs to be subjected to 3D modeling and 3D space planning, and the 3D model information can be determined through the 3D model file of this area. The 3D model file contains data of complete geometric information in the real 3D scene. It is usually obtained through methods such as 3D scanning, measurement, or calculation, and contains information such as the 3D coordinates, shape, size, and texture of the object, that is, it contains the geometric data, material data, texture data, hierarchical structure data, and business attribute data of the object. The 3D space planning information refers to the information related to the 3D space layout, configuration, and utilization of the area to be recognized, including various information such as flight route laying information, building layout, road traffic planning, and terrain and landform analysis.
[0069] When performing 3D space planning processing on the area to be recognized, such as constructing a low-altitude flight route in a certain street of City A, at this time, it is necessary to calculate the spatial relationship between the flight route and the building geometry of this street, and find its boundary points to improve the flight safety and efficiency of the flight route. Based on this, it is necessary to accurately calculate the spatial position relationship between the flight route and the building, ensure that the flight route avoids all obstacles, and at the same time optimize the flight path, reduce unnecessary flight altitude and turns, so as to reduce the flight cost and improve the overall operation efficiency. It can be understood that in addition to the low-altitude flight route, the design of the UAV flight route, the planning of the urban intelligent transportation system, environmental protection and planning, and the planning information related to the urban area are all applicable to the calculation scenario of spatial position information.
[0070] Therefore, in this embodiment, during the calculation process of 3D space geometric elements, the information of the area to be recognized can be automatically input from the existing regional 3D model file in response to the instruction of the area to be recognized, so as to obtain the 3D model file of the area to be recognized that needs to be recognized and detected, as well as the 3D space planning information of this area. For example, when the user inputs Area A and uploads the 3D space planning information of Area A, at this time, while the computing device reads this 3D space planning information, it obtains the 3D model file of Area A from the existing database for calculation processing based on the 3D model file.
[0071] Step S20: Split the geometric object instances in the 3D model file, and construct a set of the same geometric objects according to the split geometric object instances.
[0072] The 3D model file contains the geometric data, material data, texture data, hierarchical structure data, business attribute data, etc. of the buildings in the area to be recognized. When performing the calculation of 3D space geometric elements, only the geometric data of the buildings needs to be determined. Therefore, after step S10, it is also necessary to obtain the separated data after preprocessing the 3D model file. The separated data includes at least geometric data, material data, texture data, hierarchical structure data, and business attribute data, and then perform the processing action of step S20 based on the separated geometric data.
[0073] A geometric object instance is a geometric object instance with a specific location and attributes created based on geometric data. Each building, vehicle, terrain, and other geometric data in the area to be identified can be considered as a geometric object instance. In three-dimensional space, a geometric object can be a basic element such as a point, line, surface, or body, or a combination of these basic elements or a more complex polyhedron structure.
[0074] In this embodiment, after obtaining the geometric data corresponding to the three-dimensional model file, the geometric object instance of the geometric data in the three-dimensional model file can be obtained, and then the geometric object instance in the three-dimensional model file is split according to the data characteristics and hierarchical information of the geometric data. Among them, the data characteristics and hierarchical information at least include the subordinate relationship and spatial position between the data, that is, based on the spatial position and / or subordinate relationship of the geometric data, the geometric object instance is split and processed to obtain a first-level geometric object instance and a multi-level geometric object instance, wherein the multi-level component geometric object instance is a component of the first-level geometric object instance. The first-level geometric object instance usually represents a relatively simple and basic geometric shape, such as the building frame geometry, which mainly describes the overall structure and outline of the building, while the multi-level component geometric object instance contains more complex geometric details and functions, such as building doors and windows, layered and household divisions, etc. The multi-level component geometric object instance can be a component of the first-level geometric object instance.
[0075] As an optional implementation method of splitting geometric object instances in a three-dimensional model file based on spatial position, assuming that there is a building model, this building model can be regarded as a first-level geometric object instance. At the same time, according to the spatial position of the building, it is split into multiple parts, such as roofs, walls, doors and windows, etc. The instances constructed by geometric objects are regarded as multi-level component object instances.
[0076] As an optional implementation method of splitting geometric object instances in a 3D model file based on a subordinate relationship, taking a car as an example, the entire car model can be regarded as a first-level geometric object instance. At this time, according to the subordinate relationship of the car, it is split into multiple parts such as the body, lights, and tires. These parts can be further subdivided into smaller components. For example, the body can be split into instances constructed by geometric objects such as the roof, doors, and windows, which are regarded as multi-level component object instances.
[0077] As an alternative implementation for splitting geometric object instances in a 3D model file based on spatial position and subordination relationship, taking a bridge model as an example, the entire bridge can be regarded as a first-level geometric object instance. When splitting the bridge model, both spatial position and subordination relationship need to be considered simultaneously. Among them, the bridge can be split into multiple parts such as bridge piers, bridge decks, and guardrails. Bridge piers are the key parts supporting the bridge deck, and the spatial position relationship between them is clear. At the same time, the bridge deck is composed of multiple plates, and there are both spatial position relationships and subordination relationships among these plates. Therefore, the instances constructed by geometric objects such as bridge piers, bridge deck plates, and guardrails can be regarded as multi-level component object instances.
[0078] Therefore, based on the spatial position and / or subordination relationship of geometric data, the geometric object instances can be split to obtain first-level geometric object instances and multi-level component object instances. It can be understood that the redundant data can be removed from the split components, and only the necessary geometric information and attributes are retained, thus optimizing data storage. At the same time, the split components can be processed in parallel, thereby improving the overall processing efficiency. It can significantly shorten the processing time and improve the computing efficiency. Splitting the 3D model data into first-level geometric object instances and multi-level component geometric object instances can significantly improve data processing efficiency, optimize data storage and management, enhance the reusability and flexibility of the model, and support more complex analysis and applications.
[0079] Furthermore, in this embodiment, after splitting the geometric object instances, it is also necessary to construct a set of the same geometric objects according to the split geometric object instances to reduce the number of geometric objects that need to be compressed and stored.
[0080] Specifically, the first-level geometric object instances split out include 10 buildings. The geometric objects corresponding to these 10 buildings include cuboids, cylinders, and cones respectively. At this time, in the conventional processing method, usually the 10 geometric objects corresponding to the geometric object instances of the 10 buildings are respectively compressed and stored. At this time, since there are multiple cuboid buildings with the same shape and size, storing them as independent objects and repeating the compression will result in a waste of storage resources. At the same time, if each similar geometric object is compressed separately, the compression algorithm will not be able to effectively utilize the similarity between these objects to further reduce the storage space. Based on this, in this application, by constructing the same geometric object geometry from the split-out geometric object instances. For example, among the geometric object instances of 10 buildings with high similarity, the buildings numbered 1-3 are cuboids in shape, the buildings numbered 4-6 are cones in shape, and the buildings numbered 7-10 are cylinders. At this time, a same geometric object geometry containing only three types of geometric objects, namely cuboids, cones, and cylinders, can be constructed, and storage compression processing is performed on these geometric object sets. By improving the storage efficiency, the data loading and processing speed are accelerated, thereby improving the overall performance. Among them, the process of determining the similar geometric objects of the geometric object instances is called the aggregation processing process of the geometric object instances, which aggregates the geometric object instances with different spatial positions but the same geometric shape.
[0081] It can be understood that after storing and processing the same geometric object set, it is also necessary to ensure which geometric object instance the geometric object corresponds to when it is read, such as knowing the building instance corresponding to the conical building compared with the current low-altitude flight path. Therefore, an instantiation relationship between the geometric object instance and the geometric object to be stored can be constructed. This instantiation relationship is the transformation matrix between the geometric object and the geometric object instance, that is, geometric object * transformation matrix = geometric object instance. Continuing with the previous example content, the geometric object instance of the building numbered 1 can be converted through the transformation matrix with the geometric object of the cuboid. Among them, the transformation matrix multiplied by one of the subsets of the same geometric object set results in the split-out geometric object instance, and the transformation matrix is associated with a unique subset in the same geometric object set. Although there are similar geometric objects between different geometric object instances, there are still differences. Therefore, each geometric object instance corresponds to an independent transformation matrix. When compressing and storing the same geometric object set, in order to maintain the accurate position and attitude of each geometric object in space, these transformation matrices will also be stored in the data table. It should be noted that the transformation matrix is essentially just a matrix data format, and it does not contain the complex shape information of the geometric object itself. From the perspective of storage space, the storage space required by the transformation matrix is almost negligible. Compared with the geometric data of the geometric object itself (such as vertex coordinates, normals, texture coordinates, etc.), the space occupied by the transformation matrix is very small.
[0082] Therefore, when constructing a set of the same geometric objects based on the split geometric object instances, the set of first-level geometric objects of the first-level geometric object instances can be determined according to the first transformation matrix after aggregation processing based on the first-level geometric object instances, and the set of multi-level component geometric objects of the multi-level component geometric object instances can be determined according to the second transformation matrix after aggregation processing based on the multi-level component geometric object instances.
[0083] As an optional implementation manner for determining the set of first-level geometric objects of the first-level geometric object instances, the same geometric object aggregation processing can be performed on the first-level geometric object instances, and the first transformation matrix of each geometric object after aggregation processing and the first-level geometric object instances can be established. The number of the first transformation matrices is equal to the number of the first-level geometric object instances, and the first transformation matrix and the geometric object are uniquely determined. Subsequently, a set of first-level geometric objects is generated according to the first transformation matrix and the first-level geometric object instances.
[0084] As an optional implementation manner for determining the set of multi-level component geometric objects of the multi-level component geometric object instances, the same geometric object aggregation processing can be performed on the multi-level component geometric object instances, and the second transformation matrix of the geometric objects after aggregation processing and the multi-level component geometric object instances can be established. The number of the second transformation matrices is equal to the number of the multi-level component geometric object instances. Subsequently, a set of multi-level component geometric objects is generated according to the second transformation matrix and the multi-level component geometric object instances.
[0085] Step S30: Save the compressed set of the same geometric objects into the persistent memory, and construct a bounding box for the compressed set of the same geometric objects.
[0086] It should be noted that persistent memory (PMEM, Persistent Memory) is a new type of storage technology that combines the characteristics of traditional memory (DRAM, Dynamic Random Access Memory) and persistent storage (such as hard disks or SSDs, Solid State Drives). Persistent memory allows data to remain after power-off, which is different from DRAM (data in DRAM is lost after power-off) and is similar to hard disks or SSDs. At the same time, the access speed of persistent memory is much faster than that of hard disks or SSDs and is close to the speed of DRAM. By storing the set of the same geometric objects in the persistent memory, it is convenient to directly access the memory during spatial calculations, improving the data access efficiency.
[0087] In this embodiment, before storing geometric objects in persistent memory, in order to reduce redundant information of 3D geometric data and achieve compression of individual geometric data, these geometric objects also need to be compressed. Therefore, before step S30, it is also necessary to determine the compression algorithm for geometric objects and compress the geometric objects based on the compression algorithm. Among them, the compression algorithm can be methods such as Draco compression, binary serialization compression method, and OpenCTM compression. This application does not limit it here.
[0088] When the compression of geometric objects is completed and the geometric objects are stored in persistent memory, to ensure the uniqueness of the geometric object instances corresponding to the geometric objects in 3D space information, it is necessary to store the geometric objects and the transformation matrix together in persistent memory. Therefore, after the compression process for the same set of geometric objects, it is also necessary to determine the transformation matrix geometry associated with the same geometric object geometry. Finally, the compressed set of the same geometric objects and the transformation matrix storage set are stored in persistent memory.
[0089] Furthermore, geometric objects are usually composed of a large number of vertices and patches, and these detailed information may be very time-consuming when performing spatial calculations. Therefore, when constructing the spatial index of geometric objects, it is necessary to reduce the spatial calculation vertex and patch information based on the bounding box processing algorithm. For example, if the original geometric object space vertices have hundreds of points and are in a tetrahedral cone shape, only the spatial relationship between four vertices needs to be calculated for subsequent calculation processing. Therefore, the information of other points needs to be ignored.
[0090] Therefore, after storing the compressed set of the same geometric objects and the transformation matrix set in persistent memory, it is also necessary to determine the bounding box processing algorithm, and then construct a bounding box based on the bounding box processing algorithm, so as to construct the spatial index of geometric objects for the same geometric objects based on the bounding box.
[0091] Step S40, construct the spatial index of geometric objects for the set of the same geometric objects according to the bounding box.
[0092] In this embodiment, the point-line-plane feature information of the bounding box can be set as the spatial index of geometric objects.
[0093] Exemplarily, an oriented bounding box (OBB) can be used to approximately represent the position and size of geometric objects, thereby reducing the dependence on the original vertex and patch information. In practical applications, the boundary information of the OBB (such as the minimum and maximum coordinate values) is usually used as the key or index item of the spatial index. Therefore, the bounding box can be set as the spatial index of geometric objects. Constructing a spatial index based on the bounding box of geometric objects further improves the retrieval and query efficiency of geometric objects during spatial calculations.
[0094] Optionally, in addition to using the oriented bounding box (OBB), an axis-aligned bounding box (AABB) can also be selected to represent the spatial range of an object, and based on this, a spatial index tree can be constructed. By organizing geometric objects into a tree structure (such as an R-tree, a quadtree, an octree, etc.), spatial data can be efficiently managed and accessed, improving data access efficiency.
[0095] Step S50: Control the computing node to perform geometric element calculations based on the geometric object spatial index, and obtain the spatial position information between the to-be-identified area and the three-dimensional space planning information.
[0096] It should be noted that the geometric element calculation task is usually issued by a computing device, and the calculation task can be determined based on the number of geometric object instances. For example, if there are 100 geometric object instances, 100 times of task comparison processing are required.
[0097] The geometric element calculation task is used to compare the information positions between the to-be-identified area and the three-dimensional space planning information. For example, it calculates whether a low-altitude flight path will collide with a building in the to-be-identified area. The computing node can be a device for performing three-dimensional space geometric element calculations, usually a computer, and can also be a cloud server.
[0098] In this embodiment, after obtaining the geometric object spatial index, each computing node can be controlled to execute the geometric element calculation task of the three-dimensional space information of the to-be-identified area, so as to perform geometric element calculations based on the geometric object spatial index, and finally calculate the spatial position information between the to-be-identified area and the three-dimensional space planning information, thereby improving the calculation efficiency and the effectiveness of space planning during space planning.
[0099] As an alternative implementation, when controlling each computing node to execute the geometric element calculation task, the geometric calculation amounts corresponding to the complexities of different geometric objects will be different, resulting in some cluster nodes being overloaded with calculation amounts, while some computing nodes have relatively small calculation amounts and finish ahead of time, being in a state of idle waiting, making the utilization of the overall cluster resources low. Therefore, the calculation intensity (including the time required for calculation) corresponding to each geometric object can be calculated first, and at the same time, the current calculation amounts of each computing node can be analyzed. Finally, the geometric element calculation task can be dynamically allocated based on the calculation intensity and the current calculation amounts, thereby improving the overall calculation efficiency.
[0100] This embodiment provides a method for calculating three-dimensional space geometric elements. By aggregating geometric object instances in geometric data for the same geometric objects, statistical association of duplicate geometric objects is performed and the number of geometric objects for duplicate calculations is reduced. Then, after compressing the same geometric objects, the geometric objects together with the transformation matrix are stored in persistent memory to ensure accurate calculation and facilitate direct access to these data during spatial calculation, thereby improving data access efficiency. Subsequently, the bounding box of the compressed geometric objects is constructed to reduce spatial calculation vertex and face information, and a spatial index is constructed based on the geometric object bounding box to further improve the retrieval and query efficiency of geometric objects during spatial calculation. Finally, each computing node is controlled to execute the geometric element calculation task based on the geometric object spatial index, so as to obtain the spatial position information between the area to be recognized and the three-dimensional space planning information. Based on this, the amount of compression processing is reduced and the indexing efficiency of three-dimensional data is improved, thereby improving the overall calculation efficiency when performing calculation and comparison of three-dimensional space geometric elements.
[0101] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar content as that in the above first embodiment can be referred to the above introduction and will not be repeated hereinafter. The three-dimensional space planning information is the low-altitude flight route planning information of the area to be recognized. On this basis, please refer to Figure 2 , step S50 includes steps S51 to S54:
[0102] Step S51, determine the current task processing amount of the computing node, and determine the task weight value of each computing task in the area to be recognized according to the calculation intensity weight model.
[0103] When performing the calculation of three-dimensional space geometric elements, the calculation efficiencies of different computing nodes are different, and at the same time, different geometric objects take different times for geometric element calculation due to their different complexities. Therefore, it is necessary to flexibly allocate the processing tasks of the computing nodes so that each computing node is in an operating state, avoiding the situation where some computing nodes are overloaded with calculations while some computing nodes have fewer calculations.
[0104] In this embodiment, the task processing information of the computing node can be directly read to determine its current task processing amount, and the task processing includes the task execution time. Subsequently, the time complexity of the collision algorithm associated with the three-dimensional space planning information is obtained, and the complexity and the number of instances of the geometric object instances corresponding to the same geometric object in the persistent memory are determined. The three-dimensional space planning information is to set a low-altitude flight route in the area to be recognized. At this time, the calculation algorithm associated with this planning information needs to calculate the intersection relationship in space, such as the collision calculation algorithm between the flight route and the building. The complexity is related to the vertex and face complexity of the geometric object after constructing the spatial index. The number of instances is the current task processing amount involved.
[0105] In this embodiment, the geometric computation amounts corresponding to different geometric complexities are different, which may lead to overloading of the computation amounts of some cluster nodes and relatively small computation amounts of some nodes, resulting in premature completion and an idle waiting state, thus reducing the utilization of the overall cluster resources. Therefore, it is necessary to construct a computation intensity weight model that takes into account parameters such as the complexity of geometric objects, the number of geometric object instances, and the time complexity of computation algorithms, and then perform real-time scheduling and dynamic distribution of geometric element computation tasks based on this model to maximize the utilization of computation resources and improve the computation efficiency of the overall task. When constructing this computation intensity weight model, it is also necessary to obtain the first weight associated with the number of instances and the second weight associated with the time complexity. The first weight and the second weight can be preset weight information. Then, based on the complexity, the number of instances, the first weight, the second weight, and the time complexity, a computation intensity weight model is generated.
[0106] Exemplarily, the computation intensity weight model is calculated and constructed based on the following formula:
[0107]
[0108] , where W1 is the first weight, W2 is the second weight, N is the number of geometric object instances, C type is the geometric complexity of each geometric object, T matrix is the time complexity of the computation algorithm, and Q is the task complexity.
[0109] After generating the computation intensity weight model, based on the computation intensity weight model, determine the task weight value associated with the computation task, that is, the task complexity corresponding to this task, so as to perform dynamic distribution of tasks based on the task complexity and improve the task allocation and processing effect.
[0110] Step S52: Control the computation intensity weight model, and based on the current task processing amount and the task weight value, determine the computation node corresponding to the computation task.
[0111] In this embodiment, in addition to calculating the task weight value, the computation intensity weight model can distribute tasks based on the weight values of each computation task to ensure the computation balance of each computation node.
[0112] Step S53: Control the computation node to execute the geometric element computation corresponding to the geometric element computation task based on the geometric object spatial index, and obtain the collision computation result feedback by the computation node.
[0113] Step S54: Generate the spatial position information of the position collision detection between the to-be-identified region and the three-dimensional space planning information according to the collision computation result.
[0114] After the task is issued, the computing nodes perform collision detection calculations on each geometric object in the three-dimensional space through the geometric object space index, and finally generate the collision detection results of all geometric objects passed by the flight path. In order to generate the spatial position information of the collision detection based on the collision detection results, and provide data support for the subsequent planning of the low-altitude flight path.
[0115] It can be understood that when each computing node is in an idle state, directly determine the corresponding geometric element calculation task according to the current task processing status of each computing node. That is, the tasks are sequentially assigned to each computing node.
[0116] Exemplarily, please refer to Figure 3 , in the design of the calculation intensity weight model, Q = W1 * N * C type + W2 * T matrix , where W1 and W2 represent the proportion of each weight, that is, the first weight and the second weight, N represents the number of geometric object instances, and C type represents the geometric object complexity, that is, the geometric complexity of each geometric object, and T matrix represents the time complexity of the calculation algorithm. After calculating the complexity of each processing task through the calculation intensity weight model, the calculation tasks are dynamically allocated according to the task processing complexity and the task processing volume of each computing node. That is, when the task complexity Q sum = 0.2, computing node 1 processes task 1, task 2, task 3 and task, while computing node 2 processes task 5, task 6, computing node 3 processes task 7, task 8, task 9, task 10 and task 11, computing node 4 executes task 12, and computing node 5 executes task 13, task 14 and task 15. Based on this, the calculation tasks are dynamically allocated through the calculation intensity weight model to improve the task processing efficiency.
[0117] This embodiment provides a calculation method for three-dimensional space geometric elements. By setting a calculation intensity weight model and dynamically allocating the tasks that each computing node needs to execute based on the calculation intensity weight model, the calculation redundancy of the computing nodes is avoided, and the overall calculation efficiency is improved.
[0118] Exemplarily, in order to help understand the implementation process of the calculation method for three-dimensional space geometric elements obtained by combining the above first embodiments, please refer to Figure 4 , Figure 4 provides an optional flow schematic diagram of a calculation method for three-dimensional space geometric elements. Specifically:
[0119] After obtaining the 3D model file, extract the material data, geometric data, texture data, business data, etc. of the 3D model file through data extraction. Subsequently, determine the geometric object instance data in the geometric data, then decompose the geometric object instance data, divide it into first-level geometric objects and multi-level component geometric objects, and statistically correlate the duplicate geometric object data to construct a transformation matrix between the geometric object and the geometric instance, realizing the hierarchical classification and simplification of the geometric data. Among them, the first-level geometric object instance can be decomposed into first-level geometric polynomials and transformation matrix A, and the multi-level component geometric object instance can be decomposed into multi-level component geometric objects and transformation matrix C. The transformation matrix B is the conversion relationship between the first-level geometric object and the multi-level geometric object. It can be understood that the relationship between the first-level geometric object instance and the multi-level instance is "multi-level geometric object instance + transformation matrix A + transformation matrix B + transformation matrix C = first-level geometric object instance".
[0120] Based on this, after obtaining the first-level geometric object and the multi-level component geometric object, perform data compression on the first-level geometric object and the multi-level component geometric object. During the compression process, perform compression through the Draco compression algorithm, including using geometric compression technology and entropy coding technology to reduce the redundant information of the 3D geometric data, realizing the compression of the geometric data. Subsequently, store the compressed geometric object and the transformation matrix of the geometric object (not shown in the figure) in the persistent memory for direct memory access during spatial calculation to improve the data access efficiency.
[0121] Furthermore, calculate the bounding box in the persistent memory to construct a spatial index based on the bounding box. At the same time, after constructing the spatial index, set a computational intensity weight model based on the geometric object complexity, the number of geometric object instances in the persistent memory, and the complexity of computational algorithms such as collision detection algorithms. Then, based on the computational task, obtain the weight value through the computational intensity weight model, and dynamically allocate the computational task to the computational nodes for distributed processing according to the weight value. Finally, output the computational result. Based on this, by applying technologies such as GIS, spatial calculation, and big data, while reducing the 3D data storage space, reducing the network transmission volume, improving the utilization efficiency of computational resources, and enhancing the 3D spatial calculation efficiency.
[0122] This application provides a computing device for 3D spatial geometric elements. The computing device for 3D spatial geometric elements includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method for calculating 3D spatial geometric elements in the above first embodiment.
[0123] Next, refer to Figure 5, which shows a schematic structural diagram of a computing device suitable for implementing the three-dimensional space geometric elements of the embodiments of the present application. Figure 5 The shown computing device for three-dimensional space geometric elements is merely an example and should not impose any limitations on the functions and usage scope of the embodiments of the present application.
[0124] As Figure 5 shown, the computing device for three-dimensional space geometric elements may include a processing device 1001 (such as a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM, Read Only Memory) 1002 or the program loaded from the storage device 1003 into the random access memory (RAM, Random Access Memory) 1004. In the random access memory 1004, various programs and data required for the operation of the computing device for three-dimensional space geometric elements are also stored. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are connected to each other through a bus 1005. The input / output (I / O) interface 1006 is also connected to the bus. Generally, the following systems may be connected to the input / output interface 1006: an input device 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD, Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the computing device for three-dimensional space geometric elements to communicate with other devices wirelessly or wiredly to exchange data. Although the figure shows a computing device for three-dimensional space geometric elements having various systems, it should be understood that it is not required to implement or have all the shown systems. More or fewer systems may be alternatively implemented or had.
[0125] Particularly, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program codes for performing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device, or installed from the storage device 1003, or installed from the read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiments disclosed in the present application are executed.
[0126] The computing device for three-dimensional space geometric elements provided by this application adopts the method for calculating three-dimensional space geometric elements in the above-mentioned embodiments, which can solve the technical problem that the current geometric model processing strategy is difficult to avoid repeated calculations of similar features, resulting in low computing efficiency when calculating the geometric data of three-dimensional models. Compared with the prior art, the beneficial effects of the computing device for three-dimensional space geometric elements provided by this application are the same as those of the method for calculating three-dimensional space geometric elements provided by the above-mentioned embodiments, and other technical features in the computing device for three-dimensional space geometric elements are the same as those disclosed in the method of the previous embodiment, and will not be elaborated here.
[0127] It should be understood that each part disclosed in this application can be implemented by hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in a suitable manner in any one or more embodiments or examples.
[0128] The above is only the specific implementation manner of this application, but the protection scope of this application is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed in this application, and all should be covered by the protection scope of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claims.
[0129] This application provides a computer-readable storage medium with computer-readable program instructions (i.e., computer programs) stored thereon, and the computer-readable program instructions are used to execute the method for calculating three-dimensional space geometric elements in the above-mentioned embodiments.
[0130] The computer-readable storage medium provided by this application can be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memories, read-only memories, erasable programmable read-only memories (EPROMs), optical fibers, portable compact disk read-only memories (CD-ROMs), optical storage devices, magnetic storage devices, or any suitable combination of the above. In this embodiment, the computer-readable storage medium can be any tangible medium that contains or stores a program, and this program can be used by or in combination with an instruction execution system, device, or device. The program code contained on the computer-readable storage medium can be transmitted by any appropriate medium, including but not limited to: wires, optical cables, radio frequency (RF), etc., or any suitable combination of the above.
[0131] The above computer-readable storage medium may be included in a computing device for three-dimensional spatial geometric elements; or it may exist independently and not be assembled into a computing device for three-dimensional spatial geometric elements.
[0132] The above computer-readable storage medium carries one or more programs. When the one or more programs are executed by a computing device for three-dimensional spatial geometric elements, the computing device for three-dimensional spatial geometric elements is caused to:
[0133] Obtain a three-dimensional model file of the area to be recognized and three-dimensional spatial planning information;
[0134] Split the geometric object instances in the three-dimensional model file and construct a set of the same geometric objects according to the split geometric object instances;
[0135] Save the compressed set of the same geometric objects to persistent memory and construct a bounding box for the compressed set of the same geometric objects;
[0136] Construct a geometric object spatial index for the set of the same geometric objects according to the bounding box;
[0137] Control a computing node to perform geometric element calculations based on the geometric object spatial index to obtain spatial position information between the area to be recognized and the three-dimensional spatial planning information.
[0138] Computer program code for performing the operations of this application can be written in one or more programming languages or combinations thereof. The above programming languages include object-oriented programming languages - such as Java, Smalltalk, C++; and also include conventional procedural programming languages - such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network - including a local area network (LAN, Local Area Network) or a wide area network (WAN, Wide Area Network) - or can be connected to an external computer (for example, by using an Internet service provider to connect through the Internet).
[0139] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a part of code that contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and combinations of blocks in the block diagram and / or flowchart, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.
[0140] The modules involved in the embodiments described in the present application can be implemented in software or in hardware. Among them, the name of the module does not constitute a limitation on the unit itself in some cases.
[0141] The readable storage medium provided in the present application is a computer-readable storage medium. The computer-readable storage medium stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned calculation method of three-dimensional spatial geometric elements, which can solve the technical problem that the current geometric model processing strategy is difficult to avoid repeated calculations of similar features, resulting in low calculation efficiency when calculating the geometric data of three-dimensional models. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in the present application are the same as those of the calculation method of three-dimensional spatial geometric elements provided in the above embodiments, and will not be elaborated here.
[0142] The above are only some embodiments of the present application, and do not limit the patent scope of the present application. Any equivalent structural transformation made using the description of the present application and the content of the accompanying drawings under the technical concept of the present application, or direct / indirect application in other related technical fields, is included in the patent protection scope of the present application.
Claims
1. A method for calculating three-dimensional space geometric elements, characterized in that: The calculation method of the three-dimensional space geometric elements includes: Obtain the 3D model file and 3D space planning information of the area to be identified; Splitting the geometric object instances in the three-dimensional model file, and constructing the same geometric object set according to the split geometric object instances, including: obtaining the geometric object instances of the geometric data in the three-dimensional model file; splitting the geometric object instances based on the spatial position and / or subordinate relationship of the geometric data to obtain the first-level geometric object instances and the multi-level component object instances, wherein the multi-level component object instances are components of the first-level geometric object instances; determining the first-level geometric object set of the first-level geometric object instances according to the first transformation matrix after the first-level geometric object instances are aggregated, and determining the multi-level component geometric object set of the multi-level component object instances according to the second transformation matrix after the multi-level component object instances are aggregated, wherein the same geometric object set includes the first-level geometric object set and the multi-level component geometric object set; Saving the compressed set of identical geometric objects into a persistent memory, and constructing a bounding box of the compressed set of identical geometric objects; Constructing a geometric object spatial index of the same set of geometric objects according to the bounding box; The computing node is controlled to perform geometric element calculation based on the spatial index of the geometric object to obtain the spatial position information between the area to be identified and the three-dimensional space planning information, including: determining the current task processing volume of the computing node, and determining the task weight value of each computing task in the area to be identified according to the computing intensity weight model; controlling the computing intensity weight model to determine the computing node corresponding to the computing task based on the current task processing volume and the task weight value; controlling the computing node to perform the geometric element calculation corresponding to the geometric element calculation task based on the spatial index of the geometric object, and obtaining the collision calculation result fed back by the computing node; generating the spatial position information of the position collision detection between the area to be identified and the three-dimensional space planning information according to the collision calculation result.
2. The method for calculating three-dimensional space geometric elements according to claim 1, characterized in that: The steps of determining the first-level geometric object set of the first-level geometric object instance according to the first transformation matrix after the aggregation processing of the first-level geometric object instance, and determining the multi-level component geometric object set of the multi-level component object instance according to the second transformation matrix after the aggregation processing of the multi-level component object instance include: Performing a same geometric object aggregation process on the first-level geometric object instances, and establishing first transformation matrices of the aggregated geometric objects and the first-level geometric object instances, wherein the number of the first transformation matrices is equal to the number of the first-level geometric object instances; Generate the first-level geometric object set according to the first transformation matrix and the first-level geometric object instance; Aggregating the same geometric objects of the multi-level component object instances, and establishing second transformation matrices of the aggregated geometric objects and the multi-level component object instances, wherein the number of the second transformation matrices is equal to the number of the multi-level component object instances; Generate the multi-level component geometric object set according to the second transformation matrix and the multi-level component object instance; The transformation matrix is multiplied by a subset of the same set of geometric objects to obtain the separated geometric object instances.
3. The method for calculating three-dimensional space geometric elements according to claim 1, characterized in that: Before the step of saving the compressed set of identical geometric objects into a persistent memory and constructing a bounding box of the compressed set of identical geometric objects, the method further includes: Determining a compression processing algorithm for the set of identical geometric objects, and compressing the set of identical geometric objects based on the compression processing algorithm; Determine a set of transformation matrices associated with the same set of geometric objects; The step of saving the compressed set of identical geometric objects into a persistent memory and constructing a bounding box of the compressed set of identical geometric objects comprises: Storing the compressed set of identical geometric objects and the set of transformation matrices in the persistent memory; A bounding box processing algorithm is determined, and the bounding box is constructed based on the bounding box processing algorithm.
4. The method for calculating three-dimensional space geometric elements according to claim 3, characterized in that: The step of constructing a geometric object spatial index of the same set of geometric objects according to the bounding box comprises: The point, line and surface feature information of the bounding box is set as the spatial index of the geometric object.
5. The method for calculating three-dimensional space geometric elements according to claim 1, characterized in that: The step of determining the current task processing amount of the computing node and determining the task weight value of each computing task in the to-be-identified area according to the computing intensity weight model comprises: Determine the current task processing volume of each of the computing nodes, obtain the time complexity of the collision algorithm associated with the three-dimensional space planning information, and determine the complexity and number of geometric object instances corresponding to the same set of geometric objects in the persistent memory; Obtaining a first weight associated with the number of instances and a second weight associated with the time complexity; Generate the computational intensity weight model according to the complexity, the number of instances, the first weight, the second weight, and the time complexity; According to the computing intensity weight model, a task weight value associated with the computing task is determined.
6. The method for calculating three-dimensional space geometric elements according to claim 1, characterized in that: After the step of obtaining the three-dimensional model file and the three-dimensional space planning information of the area to be identified, the method further includes: Acquire the separated data after preprocessing the three-dimensional model file, wherein the separated data at least includes geometric data, material data, texture data, hierarchical structure data and business attribute data; Determine the geometric object instance of the geometric data, and based on the geometric object instance, perform the steps of splitting the geometric object instance in the three-dimensional model file, and constructing the same geometric object set according to the split geometric object instance.
7. A device for calculating geometric elements of three-dimensional space, characterized in that: The device for calculating geometric elements of three-dimensional space includes: a memory, a processor, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, the steps of the method for calculating geometric elements of three-dimensional space as described in any one of claims 1 to 6 are implemented.
8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps of the method for calculating three-dimensional space geometric elements as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Method and system for determining same geometric object in three-dimensional space
CN116861023A
Encoding and compressing three-dimensional (3D) object data models
US8831366B1