A method, device and electronic device for generating three-dimensional model based on porous structure
By acquiring and utilizing porous array data, cell model data and cell size data, a porous structure three-dimensional model with complex topological structures is solved, and an efficient and resource-saving model construction is achieved.
Patent Information
- Application Number
- CN202510133908.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-06
- Publication Date
- 2025-04-18
- Estimated Expiration
- 2045-02-06
AI Technical Summary
The existing technology is difficult to efficiently construct a porous structure three-dimensional model of complex topological structures, resulting in the design and construction cost a lot of human resources and time, and the processing efficiency is low.
By obtaining porous array data, cell model data and cell size data, the tree structure data is used to represent the internal spatial structure of the cell model, and the cell model and target three-dimensional model are constructed based on these data to realize the construction of a porous structure model of complex topological structures.
It realizes efficient construction of a porous structure three-dimensional model of complex structures, avoids the waste of resources and time consumption of manual design and construction, and improves the efficiency of model construction and the execution efficiency of subsequent tasks.
Smart Images

Figure CN119579799B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of three-dimensional modeling, and in particular to a method, device and electronic device for generating a three-dimensional model based on a porous structure. Background Art
[0002] With the development and progress of science and technology, the construction and rendering technology of 3D models have become more mature and widely used in various fields. In the field of additive manufacturing, the design and research of porous structure 3D models is extremely important. Its advantages of lightweight and high flexibility make its application scenarios extremely wide.
[0003] At present, implicit modeling technology is a common modeling method in the field of constructing three-dimensional models of porous structures. It implicitly defines the geometric model through specific mathematical functions, rather than manually building the model in the traditional sense. Users only need to input the corresponding model parameters or adjust the model function to obtain the desired three-dimensional model, such as using the sign distance function (SDF) to represent and build the model.
[0004] However, at this stage, most of these technologies are only applicable to relatively basic porous structures, such as traditional point-rod structures, plate-shell structures, etc., and cannot realize the construction of porous models with complex topological structures composed of basic structures. The porous structure models with complex topological structures often require manual model combination and construction during design and construction, which is extremely consuming of human resources and time costs, and has extremely low processing efficiency.
[0005] Therefore, how to efficiently construct a three-dimensional model of a porous structure with a complex structure is a crucial issue. Summary of the invention
[0006] This specification provides a method, device and electronic device for generating a three-dimensional model based on a porous structure, so as to partially solve the above-mentioned problems existing in the prior art.
[0007] This manual adopts the following technical solutions:
[0008] This specification provides a method for generating a three-dimensional model based on a porous structure, comprising:
[0009] Acquire porous array data, cell model data and cell size data corresponding to the target three-dimensional model to be constructed, wherein the cell model corresponding to the cell model data is a basic cell for constructing the target three-dimensional model, the porous array data is used to represent the arrangement of the cell model corresponding to the cell model data in the target three-dimensional model, the cell size data is used to represent the shape and size occupied by the cell model corresponding to the cell model data in the target three-dimensional model, the cell model data is tree structure data, which is used to represent the internal space structure of the cell model corresponding to the cell model data based on the tree structure data, the tree structure data includes: for each non-leaf node in the cell model data, the node data of the non-leaf node contains a list of child nodes of the non-leaf node and a Boolean operation type for the child nodes of the non-leaf node, for each leaf node in the cell model data, the node data of the leaf node contains a basic model type and basic model parameters corresponding to the leaf node, and the basic model types include at least a rod structure model, a plate structure model, and a cuboid structure model;
[0010] Constructing the cell model according to the cell model data and the cell size data;
[0011] The target three-dimensional model is constructed according to the porous array data and the cell model.
[0012] Optionally, constructing the cell model according to the cell model data and the cell size data specifically includes:
[0013] For each leaf node in the cell model data, determine the basic model construction rule corresponding to the leaf node, and generate the basic three-dimensional model corresponding to the leaf node according to the basic model construction rule, basic model parameters and the cell size data corresponding to the leaf node, wherein the basic model construction rule is used to determine the shape and boundary of the basic three-dimensional model corresponding to the leaf node according to the basic model parameters corresponding to the leaf node;
[0014] The cell model is constructed according to the node data of each non-leaf node in the cell model data and the basic three-dimensional model corresponding to each leaf node.
[0015] Optionally, constructing the cell model according to the node data of each non-leaf node in the cell model data and the basic three-dimensional model corresponding to each leaf node specifically includes:
[0016] Determine the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node;
[0017] According to the node data corresponding to the root node in the cell model data and the three-dimensional models corresponding to the child nodes of the root node, the combined three-dimensional model corresponding to the root node is determined, and the combined three-dimensional model corresponding to the root node is used as the cell model.
[0018] Optionally, each non-leaf node except the root node in the cell model data includes a first type of node, and the relative node depth of the child nodes corresponding to the first type of node is 1. For each child node in the cell model data, the relative node depth of the child node is used to represent the node level distance between the leaf node in the branch where the child node is located and the parent node of the child node;
[0019] Determining the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node, specifically includes:
[0020] For each first-type node in the cell model data, Boolean operation processing is performed on the basic three-dimensional models corresponding to each child node of the first-type node according to the basic three-dimensional models corresponding to each child node of the first-type node and the Boolean operation type corresponding to the first-type node to obtain a combined three-dimensional model corresponding to the first-type node.
[0021] Optionally, each non-leaf node except the root node in the cell model data further includes a second type of node, and the relative node depths of the child nodes corresponding to the second type of nodes are not all 1;
[0022] Determining the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node, specifically includes:
[0023] For each second-type node in the cell model data, Boolean operation processing is performed on the three-dimensional models corresponding to each child node of the second-type node according to the three-dimensional models corresponding to each child node of the second-type node and the Boolean operation type corresponding to the second-type node to obtain a combined three-dimensional model corresponding to the second-type node.
[0024] Optionally, constructing the target three-dimensional model according to the porous array data and the cell model specifically includes:
[0025] According to the porous array data, the arrangement of the cell models in the target three-dimensional model is determined, and the cell models are arranged and combined according to the arrangement to construct a target three-dimensional model corresponding to the cell models.
[0026] Optionally, the method further includes:
[0027] Acquiring coordinate point information input by a user based on the target three-dimensional model;
[0028] Determine, according to the target three-dimensional model and the coordinate point information, a position prediction value of the coordinate point corresponding to the coordinate point information for the target three-dimensional model, wherein the position prediction value is used to represent the distance and position information of the coordinate point from the nearest model surface in the target three-dimensional model, and the position information is used to represent whether the coordinate point is inside or outside the target three-dimensional model;
[0029] Execute the target task according to the position prediction value corresponding to the coordinate point.
[0030] This specification provides a three-dimensional model generation device based on a porous structure, comprising:
[0031] An acquisition module, used for acquiring porous array data, cell model data and cell size data corresponding to a target three-dimensional model to be constructed, wherein the cell model corresponding to the cell model data is a basic cell for constructing the target three-dimensional model, the porous array data is used for indicating the arrangement of the cell model corresponding to the cell model data in the target three-dimensional model, the cell size data is used for indicating the shape and size occupied by the cell model corresponding to the cell model data in the target three-dimensional model, the cell model data is tree structure data, used for indicating the internal space structure of the cell model corresponding to the cell model data based on the tree structure data, the tree structure data includes: for each non-leaf node in the cell model data, the node data of the non-leaf node contains a list of child nodes of the non-leaf node and a Boolean operation type for the child nodes of the non-leaf node, for each leaf node in the cell model data, the node data of the leaf node contains a basic model type and basic model parameters corresponding to the leaf node, and the basic model types include at least a rod structure model, a plate structure model and a cuboid structure model;
[0032] A cell construction module, used to construct the cell model according to the cell model data and the cell size data;
[0033] A model building module is used to build the target three-dimensional model according to the porous array data and the cell model.
[0034] This specification provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the above-mentioned three-dimensional model generation method based on a porous structure is implemented.
[0035] This specification 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 implements the above-mentioned method for generating a three-dimensional model based on a porous structure when executing the program.
[0036] At least one of the above technical solutions adopted in this specification can achieve the following beneficial effects:
[0037] It can be seen from the above method that in the method for generating a three-dimensional model based on a porous structure provided in this specification, a cell model corresponding to the cell model data can be constructed according to the acquired cell model data and cell size data. Finally, a target three-dimensional model corresponding to the cell model is constructed according to the determined cell model and the previously acquired porous array data.
[0038] From the above content, it can be seen that the three-dimensional model generation method based on the porous structure provided in this specification can determine the corresponding cell model according to the cell model data and the cell size data. Then, the cell model is arranged and combined according to the porous array data to obtain the corresponding target three-dimensional model. Through the method in this specification, a target three-dimensional model with a complex topological structure or a combination of multiple basic models can be efficiently constructed through implicit modeling technology, which greatly avoids the waste of resources and unnecessary time consumption caused by manual design and construction of complex topological structures, and thus also improves the execution efficiency of subsequent tasks based on the target three-dimensional model to a certain extent. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The drawings described herein are used to provide a further understanding of this specification and constitute a part of this specification. The illustrative embodiments and descriptions of this specification are used to explain this specification and do not constitute an improper limitation on this specification. In the drawings:
[0040] Figure 1 A schematic diagram of a process for generating a three-dimensional model based on a porous structure provided in this specification;
[0041] Figure 2 A flow chart of a method for generating a three-dimensional model based on a porous structure provided in this specification;
[0042] Figure 3 A schematic diagram of a three-dimensional model generating device based on a porous structure provided in this specification;
[0043] Figure 4 A method provided in this specification corresponding to Figure 1 Schematic diagram of the structure of an electronic device. DETAILED DESCRIPTION
[0044] In order to make the purpose, technical solutions and advantages of this specification more clear, the technical solutions of this specification will be clearly and completely described below in combination with the specific embodiments of this specification and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of this specification, not all of them. Based on the embodiments in this specification, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this specification.
[0045] The technical solutions provided by the embodiments of this specification are described in detail below in conjunction with the accompanying drawings.
[0046] Figure 1 A schematic flow chart of a method for generating a three-dimensional model based on a porous structure provided in this specification includes the following steps:
[0047] S101: Acquire porous array data, cell model data, and cell size data corresponding to the target three-dimensional model to be constructed.
[0048] At present, the three-dimensional model technology has gradually matured and is widely used in various fields. In the field of additive manufacturing, the design and research of three-dimensional models of porous structures are extremely important. Implicit modeling technology is a relatively common modeling method. It implicitly defines the geometric model through specific mathematical functions. For example, it uses the sign distance function (SDF) to represent and build the model, which can effectively improve the modeling efficiency of the porous structure model. However, at present, most of these technologies are only applicable to relatively basic porous structures, and cannot realize the construction of porous models with complex topological structures composed of basic structures. At present, the construction of porous structure models with complex topological structures often requires manual model combination and construction, which is extremely consuming human resources and time costs, and the processing efficiency is low. Therefore, how to efficiently construct a three-dimensional model of a porous structure with a complex structure is a crucial issue.
[0049] To this end, this specification provides a method for generating a three-dimensional model based on a porous structure, wherein the execution subject used by the method provided in this specification can be a terminal device such as a desktop computer, a laptop computer, or a server. In addition, the execution subject of this specification can also be a subject in the form of software, such as a client installed in a terminal device. For the sake of ease of description, this specification below only uses the terminal device as the execution subject to describe the provided method for generating a three-dimensional model based on a porous structure.
[0050] Based on this, the terminal device using the porous structure-based three-dimensional model generation method provided in this specification can construct a cell model in the target three-dimensional model according to the cell model data and the cell size data, and then can combine the porous array data and the constructed cell model to construct a target three-dimensional model with a porous structure.
[0051] Among them, the application scenario of the target three-dimensional model generated by the terminal device using the method in this specification can be determined according to actual needs. For example, in the field of medical research, the terminal device using the method in this specification can construct a cell model composed of various types of basic three-dimensional models based on the cell size data and the cell model data, and then construct a target three-dimensional model built by the cell model based on the porous array data. The target three-dimensional model with a porous structure obtained by this method can be applied to scaffold materials in the medical field, such as bone transplant materials that require appropriate porosity. The efficient and precise generation process of the target three-dimensional model can effectively guarantee the generation efficiency and practicality of special structural materials in the field of medical research, thereby promoting progress in the medical field and helping to solve stubborn medical problems.
[0052] For another example, in the field of building materials, a terminal device using the method in this specification can construct a cell model obtained by Boolean transformation and other operations based on the cell model data and cell size data. Then, a corresponding target three-dimensional model is constructed based on the porous array data. The constructed target three-dimensional model can be used as an internal filling material for building materials, such as porous insulation bricks, plates, and other building materials that maintain the original stable structure and have lightweight characteristics based on the characteristics of the porous structure. This method can effectively improve the design and production efficiency of porous building materials, greatly reduce the cost of human resources and time, and thus to a certain extent improve the efficiency of the construction task.
[0053] In this specification, the terminal device can obtain the porous array data, cell model data and cell size data corresponding to the target three-dimensional model to be constructed.
[0054] Among them, the cell model corresponding to the cell model data is the basic cell corresponding to the target three-dimensional model constructed subsequently, the above-mentioned porous array data is used to represent the specific arrangement of the cell model in the target three-dimensional model, and the cell size data is used to represent the shape of the cell model in the target three-dimensional model and the size range it occupies.
[0055] Specifically, the data type corresponding to the cell model data can be tree structure data. In the cell model data with a tree structure, the node data corresponding to each leaf node can specifically include the basic model type and basic model parameters corresponding to the leaf node. The above-mentioned basic model types can be specifically divided into but not limited to rod structure models, plate structure models and rectangular structure models, and the node data of each leaf node can include any of the above-mentioned basic model types and corresponding basic model parameters.
[0056] Regarding the basic model parameters, they can be specifically understood as the specific model parameters of the basic model type corresponding to each leaf node. For example, when the basic model type is a rod structure model, the basic model parameters corresponding to the leaf node may include the coordinate data of the double-end vertices of the rod structure model in the cell space planned corresponding to the cell size data, as well as the rod radius size corresponding to the rod structure model.
[0057] When the basic model type is a plate structure model, the basic model parameters corresponding to the leaf node may include the coordinate data of the vertices corresponding to the plate structure model in the cell space planned corresponding to the cell size data (for example, the coordinate data of the four vertices of a rectangular plate structure model), and the thickness of the plate structure model.
[0058] When the basic model type is a rectangular parallelepiped structure model, the basic model parameters corresponding to the leaf nodes may include coordinate data of any group of diagonal double-end vertices of the rectangular parallelepiped structure model in the cell space planned corresponding to the cell size data.
[0059] Regarding the node data of non-leaf nodes, in the cell model data with a tree structure, the node data corresponding to each non-leaf node includes a child node list of all child nodes of the non-leaf node, and a Boolean operation type for all child nodes of the leaf node.
[0060] The above-mentioned Boolean operation type is used to indicate what type of Boolean operation the terminal device performs on all child nodes corresponding to the non-leaf node when subsequently determining the combined three-dimensional model corresponding to the non-leaf node. The Boolean operation type may specifically include but is not limited to intersection operations, union operations, and difference operations on at least two three-dimensional models, as well as offset operations and outward shell operations on a single three-dimensional model. The node data of each non-leaf node may include any of the above-mentioned Boolean operation types. In the subsequent process, the terminal device may perform Boolean processing on the three-dimensional models corresponding to each child node of the non-leaf node based on the corresponding Boolean operation type to obtain the combined three-dimensional model corresponding to the non-leaf node.
[0061] Regarding the cell size data and porous array data mentioned above, the cell size data can be specifically used to represent the cell model and the cell space range size and space shape type corresponding to each node in the cell model data, such as the cell space of the cuboid type and the length, width and height corresponding to the cell space of the cuboid type, the cell space of the cylinder type and the height and bottom radius corresponding to the cell space of the cylinder type, etc. The porous array data can be used to represent the number of cell models arranged on the x-axis, y-axis and z-axis of the three-dimensional coordinate system for the subsequent generation of the target three-dimensional model.
[0062] It should be noted that the specific data format and data language of the above-mentioned cell model data, cell size data and porous array data are not strictly limited and can be flexibly set according to actual application scenarios and requirements. In order to facilitate understanding of the specific data content and structure of the above-mentioned cell model data, cell size data and porous array data, the following uses the cell model data, cell size data and porous array data in the form of JS key-value pair data (JavaScript Object Notation, JSON) as an example, as shown below:
[0063] "lattice": {
[0064] "cell_size": [1, 1, 1],
[0065] "period_count": [1, 1, 1],
[0066] "models": {
[0067] "op_union": {
[0068] "type": "op_union",
[0069] "models": [
[0070] {
[0071] "op_union": {
[0072] "type": "op_union",
[0073] "models": [
[0074] {
[0075] "cylinder": {
[0076] "points": [
[0077] [0, 0, 0],
[0078] [0.5, 0.5, 0.5]
[0079] ],
[0080] "radius": 0.05
[0081] }
[0082] },
[0083] {
[0084] "cylinder": {
[0085] "points": [
[0086] [0, 0, 0],
[0087] [-0.5, 0.5, 0.5]
[0088] ],
[0089] "radius": 0.05
[0090] }
[0091] } ]
[0093] }
[0094] } ]
[0096] }
[0097] }
[0098] }
[0099] Among them, cell_size can be used to represent the cell size data corresponding to the cell model. In this example, the cell space corresponding to the cell model is a rectangular parallelepiped structure by default, and the three values in the corresponding array represent the size of the cell space corresponding to the cell model on the x-axis, y-axis, and z-axis. period_count can be used to represent the porous array data corresponding to the cell model. The three values in the corresponding array represent the number of cell model arrangements on the x-axis, y-axis, and z-axis when the target three-dimensional model is subsequently constructed.
[0100] Each model in the above example can be used to represent each node in the cell model data corresponding to the cell model. The first model is the root node in the cell model data. The non-leaf node models contain models of all corresponding child nodes, and also contain operation identifiers useful for representing Boolean operation types op_x. For example, "op_union" in the above example represents a union operation on child nodes. The above example contains two leaf nodes, and the corresponding basic model types are both cylinder rod structure models. The points in the corresponding specific node data are used to represent the coordinate data of the double-end vertices of the rod structure model in the cell space corresponding to the cell size data, and radius can be used to represent the radius size of the rod structure model.
[0101] S102: constructing the cell model according to the cell model data and the cell size data.
[0102] In this specification, the terminal device can construct a cell model corresponding to the cell model data according to the acquired cell model data and cell size data.
[0103] Specifically, for each leaf node in the cell model data, the terminal device can determine the basic model construction rules preset for the basic model type corresponding to the leaf node. Then, according to the basic model construction rules and basic model parameters corresponding to the leaf node, the basic three-dimensional model corresponding to the leaf node is generated.
[0104] In this specification, each leaf node corresponds to a different basic model type and is respectively preset with a corresponding basic model construction rule. The basic model construction rule can be used to determine the shape and boundary of the basic three-dimensional model corresponding to the leaf node according to the basic model parameters corresponding to the leaf node. Specifically, for example, the sign distance function (SDF) corresponding to the basic model type, and the basic model construction rule corresponding to the rod structure model can be the shortest distance from any coordinate point in the cell space where the rod structure model is located to the surface of the rod structure model. The specific calculation method can be to calculate the modulus of the vector cross product from any coordinate point to the two end vertices of the rod structure model, and divide it by the straight line distance between the two end vertices to determine the vertical distance between the coordinate point and the central axis of the rod structure model. Then, subtract the radius of the rod structure model to obtain the shortest distance from the coordinate point to the surface of the rod structure model, that is, the sign distance value. If the coordinate point is outside the rod structure model, it is a positive number, otherwise it is a negative number, and it is 0 on the surface of the rod structure model.
[0105] When the basic model type is a plate structure model, still taking the above-mentioned signed distance function as an example, the corresponding basic model construction rule can be the shortest distance from any coordinate point in the cell space where the plate structure model is located to the surface of the plate structure model. The specific calculation method can be to first determine the normal vector corresponding to the plate structure model, and then calculate the straight-line distance from the coordinate point to the plane of the plate structure model and the shortest distance from the coordinate point to the length of each side of the plate structure model. When the coordinate point is inside the plate structure, the terminal device can directly use the straight-line distance from the coordinate point to the plane of the plate structure model as the shortest distance from the coordinate point to the surface of the plate structure model, and when the coordinate point is outside the plate structure, the terminal device can use the minimum value between the straight-line distance from the coordinate point to the plane of the plate structure model and the shortest distance from the coordinate point to the length of each side of the plate structure model as the shortest distance from the coordinate point to the length of each side of the plate structure model. Similarly, it is negative inside the plate structure model, positive outside, and 0 on the surface.
[0106] When the basic model type is a rectangular parallelepiped structure model, the above-mentioned signed distance function is still used as an example. The corresponding basic model construction rule can be the shortest distance from any coordinate point in the cell space where the rectangular parallelepiped structure model is located to the surface of the rectangular parallelepiped structure model. The specific calculation method can be to first determine the distance (for example, dx, dy, dz) from any coordinate point in the cell space to the center point of the rectangular parallelepiped structure model on each coordinate axis, as well as the half-size of the rectangular parallelepiped structure model on the three coordinate axes. Determine the size relationship between the distance from the coordinate point to the center point of the rectangular parallelepiped structure model on each coordinate axis and the half-size of the rectangular parallelepiped structure model on the corresponding coordinate axis. If the distance from the coordinate point to the center point of the rectangular parallelepiped structure model on each coordinate axis is greater than the corresponding half-size, determine the difference and retain it as the excess distance. If the distance from the coordinate point to the center point of the rectangular parallelepiped structure model on each coordinate axis is less than or equal to the corresponding half-size, determine the excess distance to be 0. According to the sum of the squares of the excess distances corresponding to the three coordinate axes, determine the shortest distance from the coordinate point to the surface of the rectangular parallelepiped structure model. Similarly, in the rectangular structure model, the inside is negative, the outside is positive, and the surface is 0.
[0107] Based on the basic model construction rules preset for each basic model type introduced above, the terminal device can construct the basic three-dimensional model corresponding to each leaf node according to the basic model construction rules, basic model parameters and acquired cell size data corresponding to each leaf node, and each coordinate point in the cell space containing the basic three-dimensional model corresponding to each leaf node can correspond to the signed distance value (SDF value) determined by the coordinate point based on the corresponding basic model construction rules.
[0108] Then, the terminal device can generate a cell model corresponding to the cell model data based on the basic three-dimensional model corresponding to each leaf node in the cell model data and the node data corresponding to each non-leaf node in the cell model data.
[0109] Specifically, the terminal device can determine the combined three-dimensional model corresponding to each non-leaf node except the root node based on the basic three-dimensional model corresponding to each leaf node in the cell model data. Then, based on the node data corresponding to the root node in the cell model data and the three-dimensional model corresponding to the child node of the root node, the three-dimensional model corresponding to the root node is determined as the cell model corresponding to the cell model data.
[0110] In this specification, each non-leaf node except the root node in the cell model data is divided into two types, namely the first type of node and the second type of node. The difference between the two types of non-leaf nodes is that the relative node depths of the corresponding child nodes are different. The so-called relative node depth is used to indicate the node level distance between the leaf node in the branch where the child node of the non-leaf node is located and the parent node of the child node. The relative node depths of the child nodes corresponding to the first type of nodes are all 1, while the relative node depths of the child nodes corresponding to the second type of nodes are not all 1. It can be simply understood that all child nodes of non-leaf nodes of the first type of node are leaf nodes, while all child nodes of non-leaf nodes of the second type of node are not all leaf nodes. They can be all non-leaf nodes or some leaf nodes and some non-leaf nodes.
[0111] Among them, for the first type of nodes in the cell model data, the terminal device can perform Boolean operation processing on the basic three-dimensional models corresponding to each child node of the first type of node (i.e., each leaf node) and the Boolean operation type in the node data corresponding to the first type of node, so as to obtain a combined three-dimensional model corresponding to the first type of node.
[0112] For each second-class node in the cell model data, the child nodes of such non-leaf nodes may only include non-leaf nodes, or may include leaf nodes and non-leaf nodes at the same time, that is, the three-dimensional model corresponding to the child node is a basic three-dimensional model or a combined three-dimensional model. The terminal device can perform Boolean operation processing on the three-dimensional model corresponding to each child node according to the three-dimensional model corresponding to each child node of the second-class node and the Boolean operation type corresponding to the non-second-class node, to obtain the combined three-dimensional model corresponding to the second-class node.
[0113] Then, the terminal device can perform Boolean operation processing on the three-dimensional models corresponding to each child node of the root node according to the three-dimensional models corresponding to each child node of the root node and the Boolean operation type in the node data corresponding to the root node, so as to obtain the three-dimensional model corresponding to the root node, and then use the three-dimensional model corresponding to the root node as the cell model corresponding to the cell model data.
[0114] It should be noted that the specific implementation method of the above-mentioned Boolean processing operation on each three-dimensional model can be to directly perform Boolean processing on the corresponding three-dimensional model instance to obtain a three-dimensional model after the Boolean operation. In addition, it is also possible to combine the signed distance functions corresponding to each three-dimensional model to be Boolean operated according to the Boolean operation type, and re-determine the updated signed distance value (SDF value) of each coordinate point in the same cell space after Boolean processing. The specific implementation method of the Boolean processing operation is not strictly limited in this specification and can be flexibly adjusted according to actual application scenarios and needs.
[0115] For example, if the Boolean operation type is an intersection operation, the terminal device can use the point-by-point minimum value between the signed distance values of any coordinate point in the cell space for two or more three-dimensional models as the signed distance value corresponding to the coordinate point after the Boolean operation. If the Boolean operation type is a union operation, the terminal device can use the point-by-point maximum value between the signed distance values of any coordinate point in the cell space for two or more three-dimensional models as the signed distance value corresponding to the coordinate point after the Boolean operation.
[0116] When the Boolean operation type is a difference operation, the corresponding three-dimensional models can be divided into a minuend model and a subtrahend model. The difference operation can be specifically understood as subtracting the subtrahend model from the minuend model to obtain a new three-dimensional model. The terminal device can first determine the complement model corresponding to the subtrahend model in the cell space, and then perform the above intersection operation on the minuend model and the complement model to update the signed distance value corresponding to each coordinate point in the cell space.
[0117] When the Boolean operation type is an offset operation, the terminal device can adjust the symbol distance value corresponding to each coordinate point in the cell space according to the size of the offset value and the corresponding coordinate axis. When the Boolean operation type is an outward shell operation, the terminal device can first perform the above-mentioned offset processing on the three-dimensional model according to the shell thickness corresponding to the shell operation to obtain the offset three-dimensional model. Then, the terminal device can perform the above-mentioned difference processing on the original three-dimensional model and the offset three-dimensional model, using the original three-dimensional model as the subtrahend model and the offset three-dimensional model as the minuend model, and subtracting the original three-dimensional model from the offset three-dimensional model to obtain the shell model corresponding to the three-dimensional model.
[0118] The above introduction is mainly explained from the perspective of model construction. In the process of constructing the corresponding cell model according to the cell model data, the terminal device can traverse and parse the cell model data in a tree structure, and traverse the data from the node data of the root node step by step downward. The specific traversal method can adopt, for example, depth-first search (DFS).
[0119] When traversing node data, the terminal device can first determine whether the node is a leaf node or a non-leaf node. When the node is a non-leaf node, the Boolean operation type op_x corresponding to the non-leaf node and the sub-node list SUB_NODES=[S1, S2, S3, S4…] corresponding to the non-leaf node are determined. When the node is a leaf node, the basic model type MODEL_TYPE and basic model parameters MODEL_PARAM corresponding to the leaf node are determined.
[0120] When determining the combined 3D model of a non-leaf node, traverse the subnode list SUB_NODES of the non-leaf node, and perform Boolean operations on the 3D models of each subnode according to the Boolean operation type op_x corresponding to the non-leaf node to obtain the result R=[R1, R2, R3…Rn], where R is the set of model instances corresponding to the subnodes of the non-leaf node. Perform model combination in sequence to determine the 3D model corresponding to the root node as the cell model corresponding to the cell model data.
[0121] S103: constructing the target three-dimensional model according to the porous array data and the cell model.
[0122] In this specification, the terminal device can construct a target three-dimensional model composed of a plurality of cell models arranged and combined according to the cell model determined by the above steps and the porous array data obtained previously.
[0123] Specifically, as mentioned in the above steps, the previously acquired porous array data contains the number of cell models in the target three-dimensional model in the positive direction of each coordinate axis of the three-dimensional coordinate system. The terminal device can arrange and combine the cell models determined above according to the number of basic cells in the porous array data in the positive direction of each coordinate axis of the three-dimensional coordinate system, and finally obtain the target three-dimensional model corresponding to the cell model.
[0124] In addition to the above, after determining the target three-dimensional model corresponding to the cell model through the above steps, the terminal device can also determine the symbol distance value of the coordinate point information in the target three-dimensional model in the symbol distance field corresponding to the coordinate point information in the target three-dimensional model according to the coordinate point information input by the user. The so-called symbol distance value is also mentioned in the above steps, which can be used to indicate the distance size and symbol information of the coordinate point in the target three-dimensional model to the nearest model surface, and the symbol information is used to indicate whether the coordinate point is inside or outside the target three-dimensional model, which is negative inside and positive outside.
[0125] The determined symbol distance value may be used to execute a task, and specifically, the determined symbol distance value may be returned to a terminal device used by a user, so that the terminal device used by the user may execute a corresponding target task according to the received symbol distance value.
[0126] Among them, the specific task type and task content of the target task are not strictly limited in this specification. It can be based on determining the signed distance value corresponding to each coordinate point in the target three-dimensional model to perform edge smoothing on the target three-dimensional model, or the target three-dimensional model can be Boolean operated again according to the signed distance value corresponding to each coordinate point to obtain the target three-dimensional model updated by the Boolean operation, or the signed distance value corresponding to each coordinate point can be used to solve real-time rendering technology, such as ray tracing or rasterization, so that more efficient and accurate shadow, reflection and refraction effects can be provided when rendering the target three-dimensional model.
[0127] In order to facilitate understanding of the overall process and direction of the above-mentioned three-dimensional model generation method based on porous structure, the following is an explanation with a process trend diagram of the three-dimensional model generation method based on porous structure, as shown in FIG. Figure 2 as shown in .
[0128] Figure 2 This is a flow chart of a method for generating a three-dimensional model based on a porous structure provided in this specification.
[0129] like Figure 2 As shown, the terminal device can first determine the basic three-dimensional model corresponding to each leaf node in the cell model data based on the basic model type and basic model parameters corresponding to each leaf node in the acquired cell model data and the cell size data, based on the basic model construction rules corresponding to the basic model type. Then, the terminal device can generate the cell model corresponding to the cell model data based on the node data of each non-leaf node and the basic three-dimensional model corresponding to each leaf node, and construct the model from each leaf node upward in sequence, and finally obtain the three-dimensional model corresponding to the root node in the cell model data as the cell model.
[0130] Finally, the terminal device can construct the target three-dimensional model based on the acquired porous array data and the determined cell model. In addition, the user can also input the coordinate information of any coordinate point in the target three-dimensional model to obtain the symbol distance value of the corresponding coordinate point in the target three-dimensional model returned by the terminal device, so that the user can perform subsequent corresponding target tasks according to the symbol distance value of the coordinate point.
[0131] From the above content, it can be seen that the three-dimensional model generation method based on the porous structure provided in this specification can determine the corresponding cell model according to the cell model data and the cell size data. Then, according to the porous array data, the cell model is arranged and combined to obtain the corresponding target three-dimensional model. Through the method in this specification, a target three-dimensional model with a complex topological structure or a combination of multiple basic models can be efficiently constructed through implicit modeling technology, which greatly avoids the waste of resources and unnecessary time consumption caused by manual design and construction of complex topological structures, and thus also improves the execution efficiency of subsequent tasks performed based on the target three-dimensional model to a certain extent.
[0132] The above are one or more implementation methods of this specification. Based on the same idea, this specification also provides a corresponding three-dimensional model generation device based on a porous structure, such as Figure 3 shown.
[0133] Figure 3 A schematic diagram of a three-dimensional model generation device based on a porous structure provided in this specification, comprising:
[0134] An acquisition module 301 is used to acquire porous array data, cell model data and cell size data corresponding to a target three-dimensional model to be constructed, wherein the cell model corresponding to the cell model data is a basic cell for constructing the target three-dimensional model, the porous array data is used to represent the arrangement of the cell model corresponding to the cell model data in the target three-dimensional model, the cell size data is used to represent the shape and size occupied by the cell model corresponding to the cell model data in the target three-dimensional model, the cell model data is tree structure data, which is used to represent the internal space structure of the cell model corresponding to the cell model data based on the tree structure data, the tree structure data includes: for each non-leaf node in the cell model data, the node data of the non-leaf node contains a list of child nodes of the non-leaf node and a Boolean operation type for the child nodes of the non-leaf node, for each leaf node in the cell model data, the node data of the leaf node contains a basic model type and basic model parameters corresponding to the leaf node, and the basic model types include at least a rod structure model, a plate structure model, and a cuboid structure model;
[0135] A cell construction module 302, configured to construct the cell model according to the cell model data and the cell size data;
[0136] The model building module 303 is used to build the target three-dimensional model according to the porous array data and the cell model.
[0137] Optionally, the cell construction module 302 is specifically used to determine, for each leaf node in the cell model data, a basic model construction rule corresponding to the leaf node, and generate a basic three-dimensional model corresponding to the leaf node based on the basic model construction rule, basic model parameters and the cell size data corresponding to the leaf node, wherein the basic model construction rule is used to determine the shape and boundary of the basic three-dimensional model corresponding to the leaf node based on the basic model parameters corresponding to the leaf node; and construct the cell model based on the node data of each non-leaf node in the cell model data and the basic three-dimensional model corresponding to each leaf node.
[0138] Optionally, the cell construction module 302 is specifically used to determine the combined three-dimensional models corresponding to the non-leaf nodes except the root node based on the node data of the non-leaf nodes except the root node in the cell model data and the basic three-dimensional models corresponding to the leaf nodes; determine the combined three-dimensional model corresponding to the root node based on the node data corresponding to the root node in the cell model data and the three-dimensional models corresponding to the child nodes of the root node, and use the combined three-dimensional model corresponding to the root node as the cell model.
[0139] Optionally, each non-leaf node except the root node in the cell model data includes a first type of node, and the relative node depth of the child nodes corresponding to the first type of node is 1. For each child node in the cell model data, the relative node depth of the child node is used to represent the node level distance between the leaf node in the branch where the child node is located and the parent node of the child node;
[0140] The cell construction module 302 is specifically used to, for each first-type node in the cell model data, perform Boolean operation processing on the basic three-dimensional models corresponding to each child node of the first-type node and the Boolean operation type corresponding to the first-type node to obtain a combined three-dimensional model corresponding to the first-type node.
[0141] Optionally, each non-leaf node except the root node in the cell model data further includes a second type of node, and the relative node depths of the child nodes corresponding to the second type of nodes are not all 1;
[0142] The cell construction module 302 is specifically used to, for each second-type node in the cell model data, perform Boolean operation processing on the three-dimensional models corresponding to each child node of the second-type node and the Boolean operation type corresponding to the second-type node to obtain a combined three-dimensional model corresponding to the second-type node.
[0143] Optionally, the model construction module 303 is specifically used to determine the arrangement of the cell models in the target three-dimensional model according to the porous array data, and arrange and combine the cell models according to the arrangement to construct the target three-dimensional model corresponding to the cell models.
[0144] Optionally, the model building module 303 is specifically used to obtain coordinate point information input by the user based on the target three-dimensional model; determine, based on the target three-dimensional model and the coordinate point information, a position prediction value of the coordinate point corresponding to the coordinate point information for the target three-dimensional model, the position prediction value being used to represent the distance and position information of the coordinate point from the target three-dimensional model to the nearest model surface, and the position information being used to represent whether the coordinate point is inside or outside the target three-dimensional model; and execute the target task based on the position prediction value corresponding to the coordinate point.
[0145] This specification also provides a computer-readable storage medium, which stores a computer program, which can be used to execute the above Figure 1 A method for generating a three-dimensional model based on a porous structure is provided.
[0146] This manual also provides Figure 4 The one shown corresponds to Figure 1 A schematic diagram of the electronic device. Figure 4 As shown, at the hardware level, the electronic device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory, and may also include other hardware required for the business. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to achieve the above Figure 1 The three-dimensional model generation method based on porous structure.
[0147] In the 1990s, it was very clear whether the improvement of a technology was hardware improvement (for example, improvement of the circuit structure of diodes, transistors, switches, etc.) or software improvement (improvement of the method flow). However, with the development of technology, many improvements of the method flow today can be regarded as direct improvements of the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be implemented with hardware entity modules. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask chip manufacturers to design and make dedicated integrated circuit chips. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the original code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one kind of HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.
[0148] The controller may be implemented in any suitable manner, for example, the controller may take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (e.g., software or firmware) executable by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller, examples of which include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320, and the memory controller may also be implemented as part of the control logic of the memory. It is also known to those skilled in the art that, in addition to implementing the controller in a purely computer-readable program code manner, the controller may be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, such a controller may be considered as a hardware component, and the devices for implementing various functions included therein may also be considered as structures within the hardware component. Or even, the devices for implementing various functions may be considered as both software modules for implementing the method and structures within the hardware component.
[0149] The systems, devices, modules or cells described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0150] For the convenience of description, the above device is described by dividing the functions into various cells. Of course, when implementing this specification, the functions of each cell can be implemented in the same or multiple software and / or hardware.
[0151] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0152] This specification is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of this specification. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0153] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0154] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0155] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0156] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0157] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0158] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0159] It should be understood by those skilled in the art that the embodiments of this specification may be provided as methods, systems or computer program products. Therefore, this specification may take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0160] This specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.
[0161] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0162] The above description is only an embodiment of the present specification and is not intended to limit the present specification. For those skilled in the art, the present specification may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present specification shall be included in the scope of the claims of the present specification.
Claims
1. A method for generating a three-dimensional model based on a porous structure, characterized in that: include: Acquire porous array data, cell model data and cell size data corresponding to the target three-dimensional model to be constructed, wherein the cell model corresponding to the cell model data is a basic cell for constructing the target three-dimensional model, the porous array data is used to represent the arrangement of the cell model corresponding to the cell model data in the target three-dimensional model, the cell size data is used to represent the shape and size occupied by the cell model corresponding to the cell model data in the target three-dimensional model, the cell model data is tree structure data, which is used to represent the internal space structure of the cell model corresponding to the cell model data based on the tree structure data, the tree structure data includes: for each non-leaf node in the cell model data, the node data of the non-leaf node contains a list of child nodes of the non-leaf node and a Boolean operation type for the child nodes of the non-leaf node, for each leaf node in the cell model data, the node data of the leaf node contains a basic model type and basic model parameters corresponding to the leaf node, and the basic model types include at least a rod structure model, a plate structure model, and a cuboid structure model; For each leaf node in the cell model data, determine the basic model construction rule corresponding to the leaf node, and generate the basic three-dimensional model corresponding to the leaf node according to the basic model construction rule, basic model parameters and the cell size data corresponding to the leaf node, wherein the basic model construction rule is used to determine the shape and boundary of the basic three-dimensional model corresponding to the leaf node according to the basic model parameters corresponding to the leaf node; determine the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node; determine the combined three-dimensional model corresponding to the root node according to the node data corresponding to the root node in the cell model data and the three-dimensional model corresponding to the child node of the root node, and use the combined three-dimensional model corresponding to the root node as the cell model; The target three-dimensional model is constructed according to the porous array data and the cell model.
2. The method according to claim 1, characterized in that Each non-leaf node except the root node in the cell model data includes a first type of node, and the relative node depth of the child nodes corresponding to the first type of node is 1. For each child node in the cell model data, the relative node depth of the child node is used to represent the node level distance between the leaf node in the branch where the child node is located and the parent node of the child node; Determining the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node, specifically includes: For each first-type node in the cell model data, Boolean operation processing is performed on the basic three-dimensional models corresponding to each child node of the first-type node according to the basic three-dimensional models corresponding to each child node of the first-type node and the Boolean operation type corresponding to the first-type node to obtain a combined three-dimensional model corresponding to the first-type node.
3. The method according to claim 2, characterized in that Each non-leaf node except the root node in the cell model data also includes a second type of node, and the relative node depths of the child nodes corresponding to the second type of nodes are not all 1; Determining the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node, specifically includes: For each second-type node in the cell model data, Boolean operation processing is performed on the three-dimensional models corresponding to each child node of the second-type node according to the three-dimensional models corresponding to each child node of the second-type node and the Boolean operation type corresponding to the second-type node to obtain a combined three-dimensional model corresponding to the second-type node.
4. The method according to claim 1, characterized in that Constructing the target three-dimensional model according to the porous array data and the cell model, specifically comprising: According to the porous array data, the arrangement of the cell models in the target three-dimensional model is determined, and the cell models are arranged and combined according to the arrangement to construct a target three-dimensional model corresponding to the cell models.
5. The method according to claim 1, characterized in that The method further comprises: Acquiring coordinate point information input by a user based on the target three-dimensional model; Determine, according to the target three-dimensional model and the coordinate point information, a position prediction value of the coordinate point corresponding to the coordinate point information for the target three-dimensional model, wherein the position prediction value is used to represent the distance and position information of the coordinate point from the nearest model surface in the target three-dimensional model, and the position information is used to represent whether the coordinate point is inside or outside the target three-dimensional model; Execute the target task according to the position prediction value corresponding to the coordinate point.
6. A three-dimensional model generation device based on a porous structure, characterized in that: include: An acquisition module, used for acquiring porous array data, cell model data and cell size data corresponding to a target three-dimensional model to be constructed, wherein the cell model corresponding to the cell model data is a basic cell for constructing the target three-dimensional model, the porous array data is used for indicating the arrangement of the cell model corresponding to the cell model data in the target three-dimensional model, the cell size data is used for indicating the shape and size occupied by the cell model corresponding to the cell model data in the target three-dimensional model, the cell model data is tree structure data, used for indicating the internal space structure of the cell model corresponding to the cell model data based on the tree structure data, the tree structure data includes: for each non-leaf node in the cell model data, the node data of the non-leaf node contains a list of child nodes of the non-leaf node and a Boolean operation type for the child nodes of the non-leaf node, for each leaf node in the cell model data, the node data of the leaf node contains a basic model type and basic model parameters corresponding to the leaf node, and the basic model types include at least a rod structure model, a plate structure model and a cuboid structure model; A cell construction module is used to determine the basic model construction rule corresponding to each leaf node in the cell model data, and generate a basic three-dimensional model corresponding to the leaf node according to the basic model construction rule, basic model parameters and the cell size data corresponding to the leaf node, wherein the basic model construction rule is used to determine the shape and boundary of the basic three-dimensional model corresponding to the leaf node according to the basic model parameters corresponding to the leaf node; determine the combined three-dimensional model corresponding to each non-leaf node except the root node according to the node data of each non-leaf node except the root node in the cell model data and the basic three-dimensional model corresponding to each leaf node; determine the combined three-dimensional model corresponding to the root node according to the node data corresponding to the root node in the cell model data and the three-dimensional model corresponding to the child node of the root node, and use the combined three-dimensional model corresponding to the root node as the cell model; A model building module is used to build the target three-dimensional model according to the porous array data and the cell model.
7. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the method described in any one of claims 1 to 5 is implemented.
8. 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, the method described in any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Method for the preparation of biosynthetic device and their uses in diagnostics
CN109074422A
Parameterized functional gradient cubic lattice structure design method and material
CN110929358A