CN119272359A - A method, device and medium for generating a lattice structure - Google Patents
A method, device and medium for generating a lattice structure Download PDFInfo
- Publication number
- CN119272359A CN119272359A CN202411822088.5A CN202411822088A CN119272359A CN 119272359 A CN119272359 A CN 119272359A CN 202411822088 A CN202411822088 A CN 202411822088A CN 119272359 A CN119272359 A CN 119272359A
- Authority
- CN
- China
- Prior art keywords
- basic
- node
- dimensional
- lattice structure
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/10—Additive manufacturing, e.g. 3D printing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/02—Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/14—Force analysis or force optimisation, e.g. static or dynamic forces
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Processing Or Creating Images (AREA)
Abstract
The application discloses a method, a device and a medium for generating a lattice structure, wherein the method comprises the steps of taking a designated point on a preset three-dimensional geometrical body as an origin, and establishing a three-dimensional space coordinate system; the method comprises the steps of taking specified coordinate points on a preset three-dimensional geometric body as basic nodes, carrying out combination connection on the basic nodes in pairs to obtain basic line segments, constructing a topological structure through every basic line segment with any preset number, screening the topological structure to obtain a target structure set, and reading the target topological structure from the target structure set to carry out modeling to obtain a lattice structure. Therefore, compared with a fixed topology generation mode, based on free combination of nodes and line segments, rich lattice structures can be generated, and the requirements of complex application scenes on structural diversity and complexity are met. In addition, a coordinate system is automatically established, a topological structure is automatically generated based on the automatic combination of the specified coordinate points, the manual input of node coordinates is not needed, and the generation efficiency of the lattice structure is improved.
Description
Technical Field
The present application relates to the field of 3D printing technologies, and in particular, to a method, an apparatus, and a medium for generating a lattice structure.
Background
Along with the rapid development of 3D printing technology, the current 3D printing technology not only can manufacture complex appearance structures which are difficult to realize by traditional methods, but also can greatly reduce the material consumption, lighten the weight and improve the mechanical property by reasonable internal structural design, thereby being widely applied to a plurality of fields such as automobile part manufacture, aerospace part manufacture, biomedical implant manufacture and the like.
The lattice structure is a three-dimensional structure composed of repeated unit cells, has the characteristics of light weight and high strength, and is one of key technologies in the 3D printing technology. Currently, in one possible lattice structure generation implementation, starting from the vertices and the surface center points of the cube, lattice standard cells are constructed by a specific connection mode, and the lattice structure is generated based on modeling of the lattice standard cells. However, by adopting the fixed geometric topology mode, the generated lattice structure is relatively single, the design space is limited, and the requirements of structural diversity and complexity of complex application scenes cannot be met. In addition, in the current lattice structure design tool, information such as coordinate points, line segments, etc. needs to be manually input to generate a complex lattice structure, which results in low generation efficiency when processing a large-scale complex structure.
Therefore, how to improve the generation efficiency of the lattice structure and meet the requirements of the complex application scene on structural diversity and complexity is a technical problem to be solved by the technicians in the field.
Disclosure of Invention
In view of this, an aspect of the present application provides a method for generating a lattice structure, the method comprising:
Establishing a three-dimensional space coordinate system by taking a specified point on a preset three-dimensional geometric body as an origin;
taking the specified coordinate points on the preset three-dimensional geometric body as basic nodes, and carrying out pairwise combination connection on the basic nodes to obtain basic line segments, wherein the number of the specified coordinate points is greater than 1;
Constructing a topological structure through the basic line segments of every arbitrary preset number;
screening the topological structure to obtain a target structure set;
and modeling based on the target topological structure to obtain a lattice structure.
Optionally, the preset three-dimensional geometry is a part of the target geometry after the preset number of parts is uniformly cut, and the target geometry comprises a cube, a sphere and a cylinder.
Optionally, screening the topology structure includes:
traversing and accessing all the basic nodes in the topological structure by taking the basic line segment of the topological structure as an access path;
And extracting a topological structure with intersection between the topological structure and all surfaces of the preset three-dimensional geometrical body according to the coordinates of the basic nodes.
Optionally, the topology structure screening further includes:
determining whether a plurality of basic line segments exist in the topological structure on the same straight line according to the coordinates of the basic nodes;
Determining the connection quantity of each basic node connected with the basic line segments in the topological structure, and rejecting the topological structure corresponding to the connection quantity being larger than a first threshold value and/or the connection quantity being smaller than a second threshold value, wherein the first threshold value is larger than the second threshold value.
Optionally, determining the number of connections between each base node and the base line segment in the topology includes:
assigning corresponding weight coefficients to the foundation nodes in the topological structure, and counting the actual connection number of the foundation nodes and the foundation line segments;
And determining the connection quantity according to the weight coefficient and the actual connection quantity.
Optionally, modeling based on the target topology structure to obtain a lattice structure includes:
Acquiring design parameters of the lattice structure and node optimization instructions;
Mirror-image overturning is carried out on the target topological structure based on different planes of the three-dimensional space coordinate system so as to construct a three-dimensional framework composed of a plurality of target topological structures;
according to the node optimization instruction, controlling a base node in the three-dimensional framework to move, and obtaining a target three-dimensional framework;
and modeling the target three-dimensional framework based on the design parameters to obtain the lattice structure.
Optionally, according to the node optimization instruction, controlling the base node in the three-dimensional skeleton to move includes:
determining a node movement mode according to the node optimization instruction, wherein the node movement mode comprises at least one of a random movement mode, a fixed movement mode and a specified movement mode;
and controlling the basic nodes in the three-dimensional framework to move based on the node movement mode.
Optionally, controlling the base node in the three-dimensional skeleton to move based on the node movement mode includes:
If the node movement mode is the random movement mode, controlling a base node on the preset three-dimensional geometrical body side in the three-dimensional framework to move on a corresponding side, moving a base node on the preset three-dimensional geometrical body surface on a corresponding surface, and moving a base node in the preset three-dimensional geometrical body in the body;
If the node movement mode is the fixed movement mode, adjusting the position of a basic node in the three-dimensional framework through a specified optimization algorithm;
and if the node movement mode is the appointed movement mode, determining the terminal movement coordinates of each basic node in the three-dimensional framework according to the node optimization instruction, and controlling each basic node in the three-dimensional framework to move to the corresponding terminal movement coordinates.
Optionally, before screening the topology structure, the method further includes:
determining whether the preset number of bars is greater than a threshold;
if the number is larger than the number, filtering the topological structure through a target optimization algorithm;
and if the topology structure is not larger than the first topology structure, entering the step of screening the topology structure.
Another aspect of the present application provides a generating apparatus for a lattice structure, the apparatus comprising:
The coordinate system establishing module is used for establishing a three-dimensional space coordinate system by taking a specified point on a preset three-dimensional geometrical body as an origin;
The node combination module is used for taking the appointed coordinate points on the preset three-dimensional geometric body as basic nodes, and carrying out combination connection on the basic nodes to obtain basic line segments, wherein the number of the appointed coordinate points is larger than 1;
The construction module is used for constructing a topological structure through the basic line segments of which the number is preset at any time;
the screening module is used for screening the topological structure to obtain a target structure set;
and the lattice generation module is used for reading the target topological structure from the target structure set, and modeling based on the target topological structure to obtain a lattice structure.
Another aspect of the present application provides a generating device for a lattice structure, including a memory and a processor, where the memory stores a computer program executable on the processor, and the processor implements steps of the generating method for a lattice structure when executing the program.
Another aspect of the present application provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the method of generating a lattice structure.
Compared with a fixed topology generation mode, the method, the device and the medium for generating the lattice structure have the beneficial effects that based on free combination of nodes and line segments, more diversified topology structures can be obtained, so that rich lattice structures can be generated, and the requirements of complex application scenes on structural diversity and complexity are met. In addition, the application automatically establishes the coordinate system, automatically combines and generates the topological structure based on the appointed coordinate points, does not need to manually input the coordinates of each node, and improves the generation efficiency of the lattice structure.
Drawings
Fig. 1 is a flow chart of a method for generating a lattice structure according to an embodiment of the present application;
FIG. 2 (a) is a schematic diagram of a three-dimensional coordinate system according to an embodiment of the present application;
FIG. 2 (b) is a schematic diagram of another three-dimensional coordinate system according to an embodiment of the present application;
FIG. 3 (a) is a schematic structural diagram of a topology according to an embodiment of the present application;
FIG. 3 (b) is a schematic diagram of another topology according to an embodiment of the present application;
FIG. 4 is a flowchart illustrating a method for generating a lattice structure according to another embodiment of the present application;
FIG. 5 (a) is a schematic structural diagram of a three-dimensional skeleton according to an embodiment of the present application;
FIG. 5 (b) is a schematic structural diagram of another three-dimensional skeleton according to an embodiment of the present application;
FIG. 6 (a) is a schematic diagram of a lattice structure according to an embodiment of the present application;
FIG. 6 (b) is a schematic structural diagram of another lattice structure according to an embodiment of the present application;
FIG. 7 is a schematic structural diagram of a three-dimensional skeleton according to another embodiment of the present application;
fig. 8 is a schematic structural diagram of a generating device of a lattice structure according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a generating device of a lattice structure according to another embodiment of the present application.
Reference numeral 130 is a database, 90 is a memory, 91 is a processor, 92 is a display screen, 93 is an input/output interface, 94 is a communication interface, 95 is a power supply, 96 is a communication bus, 901 is a computer program, 902 is an operating system, 903 is data.
Detailed Description
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this specification and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any or all possible combinations of one or more of the associated listed items.
It should be understood that although the terms first, second, third, etc. may be used herein to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, first information may also be referred to as second information, and similarly, second information may also be referred to as first information, without departing from the scope of the application. The term "if" as used herein may be interpreted as "at..once" or "when..once" or "in response to a determination", depending on the context.
Fig. 1 is a flow chart of a method for generating a lattice structure according to an embodiment of the present application, as shown in fig. 1, the method includes:
s10, establishing a three-dimensional space coordinate system by taking a specified point on a preset three-dimensional geometric body as an origin;
In a specific embodiment, a three-dimensional space coordinate system is established through step S10, where the coordinate system is established by using a specified point on a preset three-dimensional geometric body as an origin, and the preset three-dimensional geometric body is a part of the target geometric body after the preset number of parts is uniformly segmented, and the target geometric body includes a cube, a sphere and a cylinder.
It is worth to describe that, the method for generating the lattice structure provided by the application establishes a three-dimensional space coordinate system based on a preset three-dimensional geometric body, and aims to build a topological structure based on the coordinates (namely, basic nodes) of a designated point on the preset three-dimensional geometric body, and then turn over and restore a target geometric body according to the topological structure, so that a three-dimensional and complete three-dimensional framework can be obtained inside the target geometric body.
For example, the target geometry is a cube, and the preset number of parts is 8, then a smaller cube is obtained after the target geometry is uniformly segmented, the smaller cube is used as a preset three-dimensional geometry to establish a three-dimensional space coordinate system, and after the topology structure is constructed, if the preset three-dimensional geometry is subjected to mirror-image overturning to restore the target geometry, a complete three-dimensional framework can be obtained, and the method is specifically described below.
It should be noted that the present application is not limited to the target geometry, the preset three-dimensional geometry, and the preset number of parts, and in an alternative embodiment, the target geometry may include, but is not limited to, a cube, a sphere, and a cylinder. The cube can be cut 8 parts to obtain one eighth of the cube as a preset three-dimensional geometry, and 48 parts can be cut to obtain one forty-eighth of the cube as the preset three-dimensional geometry. Similarly, after the sphere and the column are uniformly cut, one part of the sphere and the column is used as a preset three-dimensional geometric body.
It can be appreciated that cubes have better symmetry and that lattice structures constructed based on cubes have better rigidity, stability and mechanical properties. Thus, in a preferred embodiment, a three-dimensional space coordinate system is established with a specified point on a cube as the origin. For ease of understanding, the following description will be given by taking the target geometry as a cube.
Fig. 2 (a) is a schematic diagram of a three-dimensional space coordinate system provided by an embodiment of the present application, and fig. 2 (b) is a schematic diagram of another three-dimensional space coordinate system provided by an embodiment of the present application. In an alternative embodiment, the target geometry is uniformly segmented into 8 parts, one of which, namely, one eighth of a cube as shown in fig. 2 (a), is taken as a preset three-dimensional geometry for establishing a three-dimensional coordinate system. In fig. 2 (a), a three-dimensional space coordinate system is established with one vertex of the cube as the origin O of the coordinate system, that is, the cartesian coordinate system shown in fig. 2 (a) is obtained.
It should be noted that, the origin of the three-dimensional space coordinate system may be any point on the preset three-dimensional geometric body, which is not limited to the present application. However, in an alternative embodiment, to reduce the amount of computation, it is preferable to set up a coordinate system with the vertices of the cube as the origin, and the resulting coordinate system may be referred to as a cube coordinate system, also referred to as a cartesian coordinate system, or also referred to as a three-dimensional space coordinate system.
In another alternative embodiment, the target geometry is uniformly segmented into 48 shares, one of which, namely, a forty-eighth tetrahedron as shown in fig. 2 (b), is used as the preset three-dimensional geometry for establishing the three-dimensional coordinate system. In fig. 2 (b), similarly, a three-dimensional space coordinate system is established with one vertex of a tetrahedron as the origin O of the coordinate system.
S11, taking specified coordinate points on a preset three-dimensional geometric body as basic nodes, and carrying out combination connection on the basic nodes to obtain basic line segments, wherein the number of the specified coordinate points is more than 1;
Furthermore, the appointed coordinate points on the preset three-dimensional geometry are taken as basic nodes, and the basic nodes are connected in a pairwise combined mode to obtain basic line segments. The number of the specified coordinate points is not limited in the present application. However, in order to ensure that two base nodes can be connected to obtain a base line segment, the number of specified coordinate points is greater than 1, and all base nodes are on a three-dimensional geometry regardless of the setting of several base nodes.
In an alternative embodiment, as shown in fig. 2 (a), 27 designated coordinate points are used as base nodes, and 27 base nodes are labeled as base node 0 through base node 26, respectively. The distribution of 27 base nodes is 8 cube vertex coordinates, 12 cube edge midpoint coordinates, 6 cube face center point coordinates, and cube interior center point coordinates.
In another alternative embodiment, as shown in fig. 2 (b), 15 designated coordinate points are used as base nodes, and the 15 base nodes are labeled as base nodes 0 through 14, respectively. The distribution of the 15 base nodes is 4 tetrahedron vertex coordinates, 6 tetrahedron edge midpoint coordinates, 4 tetrahedron center point coordinates, and tetrahedron interior center point coordinates.
When the base nodes are selected, a plurality of points can be selected on the edge of the cube, and the distances between the base nodes on the edge are the same, namely, a plurality of designated coordinate points on the cube are uniformly selected as the base nodes. In addition, for the face and the inside of the cube, a plurality of points can be selected, and the selected basic nodes are uniformly distributed on the face and the inside of the cube.
The selected base nodes are uniformly distributed in a three-dimensional grid so that a basic geometric framework can be provided for subsequent generation of segment combinations. Specifically, every two basic nodes are connected in a combined mode, namely, any two basic nodes are connected, and abundant basic line segments are obtained. For ease of understanding, the 27 base nodes shown in fig. 2 (a) will be described as an example.
After the 27 base nodes shown in fig. 2 (a) are connected in pairs, possible base line segments in 351 can be obtained. The specific calculation formula is as follows:
Wherein n is the number of base nodes, k is the number of base node combination connections, i.e. k is the number of base nodes on each base line segment, and when k takes 2, the topology structure is characterized by constructing every arbitrary 2 base nodes. Representing the number of combinations that can be obtained by taking k nodes out of n base nodes for combining.
S12, constructing a topological structure through basic line segments of every arbitrary preset number;
After all the basic nodes are connected in a pairwise combined way, a rich basic line segment set can be obtained so as to be used for constructing a crystal structure later. Specifically, every arbitrary preset number of basic line segments are combined, and a rich topological structure is built based on the basic line segments in each group.
It should be noted that the present application does not limit the preset number, and in a specific embodiment, a user may set the number of basic line segments in the topology according to the actual service requirement. It should be noted, however, that the preset number of segments is a minimum of 1, and the maximum is the number of segments of all the basic segments in the basic segment set, that is,Wherein M is a preset number.
For example, among 27 base nodes shown in FIG. 2 (a), the number of base line segments generated is 351, and thus, the maximum value of M is 351, that is, 1.ltoreq.M.ltoreq.351. Or, among the 15 base nodes shown in fig. 2 (b), the number of generated base line segments is 105, and thus, the maximum value of M is 105, that is, 1.ltoreq.m.ltoreq.105.
By combining the M base line segments, various complex geometries can be constructed, i.e. rich topologies can be obtained. In a specific embodiment, a topology structure is constructed by any preset number of basic line segments, which can be understood that all basic line segments are divided into a plurality of line segment combinations by each group of line segments with preset number, and different line segment combination basic line segments can be constructed to obtain a rich topology structure.
It is to be understood that the number of line segment combinations is related to the value of the preset number, and similarly, for convenience of understanding, the following description will take 27 base nodes as shown in fig. 2 (a) as an example.
As shown in fig. 2 (a), if m=1, each basic line segment is taken as one line segment combination, and the number of line segment combinations obtained is C (351,1) =351. If m=2, every arbitrary 2 basic line segments are divided into one line segment combination, and the number of line segment combinations obtained is C (351,2) = 61425. If m=3, every arbitrary 3 basic line segments are divided into one line segment combination, and the number of the obtained line segment combinations is C (351,3) = 7145775.
It should be noted that, when the topology structure is constructed, in every basic line segment combination of any preset number, the basic line segments may be connected with each other, or may be partially connected, or there may be basic line segments existing in isolation, that is, some basic line segments may not have any connection relationship with other basic line segments. The application is not particularly limited to the combination relation between the basic line segments. Thus, each set of base line segments can build a rich topology.
Fig. 3 (a) is a schematic structural diagram of one topology according to an embodiment of the present application, and fig. 3 (b) is a schematic structural diagram of another topology according to an embodiment of the present application, which is further described below with reference to fig. 3 (a) and 3 (b) for convenience of understanding. When m=3, a topology is built up every arbitrary 3 basic line segments, and fig. 3 (a) is a building manner of a topology in the three-dimensional coordinate system shown in fig. 2 (a). As can be seen from fig. 3 (a), in this topology, the base line segment includes a line segment composed of the base node 0 and the base node 26, a line segment composed of the base node 19 and the base node 26, a line segment composed of the base node 14 and the base node 26, and a line segment composed of the base node 15 and the base node 26. A topology as shown in fig. 3 (b) can be constructed based on the three-dimensional coordinate system shown in fig. 2 (b).
S13, screening the topological structure to obtain a target structure set;
After a large number of topological structures are generated, the method for generating the lattice structure provided by the application screens out the structure with poor quality through a screening mechanism. The generated lattice structure is ensured to have reasonable physical characteristics, applicability and manufacturability while meeting design diversity.
Specifically, in an alternative embodiment, the filtering of the topology may include detecting connectivity of the topology, so as to reject the structure in which the isolated base line segment exists in the topology. The method further comprises the step of detecting the intersection of the topological structure and all the faces of the preset three-dimensional geometrical body so as to extract the structure of the intersection of the topological structure and all the faces of the preset three-dimensional geometrical body.
In addition, the method can also comprise checking the collinearity of the topological structure so as to reject the structure with collinearity, detecting the basic node so as to reject the structure with poor stability of the basic node, and checking the symmetry between the basic nodes so as to reject the structure with the symmetry of the basic node not meeting the expected requirement.
In summary, the topology filtering of the present application includes, but is not limited to, connectivity, intersection preset three-dimensional geometry all planes, collinearity, base node stability, and base node symmetry filtering. It should be noted that, in a specific embodiment, the topology screening method is not limited in the present application.
After the topological structure is screened, a target structure set with the quality meeting the requirements of stability, physical characteristics, manufacturability and the like can be obtained. Further, as shown in fig. 1, the generated target structure set is stored in the database 130. The use of the database 130 not only facilitates subsequent management and invocation of the topology, but also provides persistent data support for generating the lattice structure, thereby improving the efficiency of lattice structure design.
In an alternative embodiment, when storing the target structure set, the combination of the basic line segments and the geometric characteristics corresponding to the screened topological structure are converted into a structured data format and stored in the database 130. The database 130 includes information such as basic node coordinates, connection relations, screening parameters, etc. of basic line segments in each topology structure.
Storing the set of target structures in database 130 may provide users with the ability to query, adjust, and multiplex at any time, greatly reducing the time required to design and create new structures. In addition, database 130 also supports statistics and analysis of historical topology data by which users can be aided in optimizing the topology to obtain an optimal topology.
It should be noted that, the storage form of the database 130 may include a relational database or a document-oriented database to adapt to the requirements of different design systems, which is not limited by the present application. In addition, it should be noted that the database 130 may be, but is not limited to, a cloud database, a distributed database system, and a local database, and in an alternative embodiment, the graph database 130 may be used to represent the relationship between the base node and the base line segment, so as to improve the efficiency of query and screening, and the application is not limited to the storage form of the puff structure data.
And S14, reading the target topological structure from the target structure set, and modeling based on the target topological structure to obtain the lattice structure.
Further, when a lattice structure needs to be generated, the target topology is read from the database 130 storing the target data set, and modeling is performed based on the target topology, so as to obtain the lattice structure.
Therefore, compared with a fixed topology generation mode, the generation method of the lattice structure provided by the embodiment of the application can obtain more diversified topology structures based on free combination of nodes and line segments, thereby generating rich lattice structures and meeting the requirements of complex application scenes on structural diversity and complexity. In addition, the application automatically establishes the coordinate system, automatically combines and generates the topological structure based on the appointed coordinate points, does not need to manually input the coordinates of each node, and improves the generation efficiency of the lattice structure.
In an alternative embodiment, the topology screening includes:
Traversing all basic nodes in the access topology structure by taking basic line segments of the topology structure as access paths, and eliminating the topology structure which is inaccessible to the basic nodes;
And extracting the topological structure with intersection of all surfaces of the topological structure and the preset three-dimensional geometrical body according to the coordinates of the basic nodes.
The connectivity of the topology is critical to the rigidity and mechanical properties of the lattice structure. Thus, in an alternative embodiment, connectivity of the topologies needs to be filtered to determine that there is a connection relationship between the base nodes in each topology, i.e., there are no base nodes and base line segments that exist in isolation. Thereby improving the strength of the lattice structure bearing external force and ensuring good physical properties in practical application.
Specifically, a basic line segment in a topological structure is taken as an access path, all basic nodes in the access topological structure are traversed, so that whether all basic nodes can be accessed is judged, if any basic node cannot be accessed, the fact that the topological structure has an isolated basic node or basic line segment is represented, namely, the topological structure is not a completed communication structure. At this time, the topology structure which is inaccessible to the base node is removed.
In an alternative embodiment, when the topology structures are subjected to connectivity screening, connectivity verification can be performed on each topology structure by using a connectivity analysis method in graph theory. Specifically, the connected components are searched in the graph, the basic nodes are traversed through Depth First Search (DFS) or Breadth First Search (BFS), so that whether all the basic nodes are in the same connected subgraph is judged, and if yes, the topological structure is determined to be a connected structure.
Notably, the manner in which the topology connectivity is determined may also include, but is not limited to, a union set (DSU) algorithm, a Kruskal algorithm, and a Prim algorithm, which is not limiting to the present application.
In another alternative embodiment, the intersection of the topological structure and all surfaces of the preset three-dimensional geometric body is ensured, and the foundation nodes and the foundation line segments can be uniformly distributed in the lattice structure, so that the foundation line segments in different directions can be effectively connected, the lattice structure is supported at different positions, and the stability of the lattice structure is improved.
Therefore, in addition to connectivity screening of the topology, the intersection of the topology with all faces of the preset three-dimensional geometry needs to be screened. In an alternative embodiment, the topology is determined in relation to all faces of the preset three-dimensional geometry by geometric projection and intersection detection. Specifically, it may be determined whether the base node or the base line segment has an intersection with all surfaces of the preset three-dimensional geometry through coordinates of the base node.
It will be appreciated that the base node is a designated coordinate point on the preset three-dimensional geometry, and therefore, the coordinates of the base node can be directly compared to determine whether the base node intersects all the faces of the preset three-dimensional geometry. Further, if any intersection exists between the topological structure and any one surface of the preset three-dimensional geometric body, the topological structure is eliminated.
Therefore, all surfaces of the intersection preset three-dimensional geometric body of the topological structure are screened, stability of the lattice structure in all directions can be improved, and when the lattice structure is stressed, pressure and load can be effectively shared and transferred by all parts, so that better balance and deformation resistance can be shown in a multidirectional stress environment.
It should be noted that, the connectivity and intersection of the topology structure preset the screening sequence of all the faces of the three-dimensional geometric body, and the application is not limited. In order to improve screening efficiency, different topological structures can be directly and simultaneously screened until all topological structures are screened.
Therefore, the method for generating the lattice structure, provided by the embodiment of the application, introduces an automatic screening mechanism of the topological structure, can screen the generated basic line segment combination, ensures that the topological structure meets specific geometric requirements, automatically generates and screens a large number of topological structures, and greatly improves the generation efficiency while ensuring the quality of the generated lattice structure.
On the basis of the above embodiment, in order to further improve the quality of the generated lattice structure, as an alternative embodiment, the topology screening method further includes:
Determining whether a plurality of basic line segments exist in the topological structure on the same straight line according to the coordinates of the basic nodes, and eliminating the topological structure with the plurality of basic line segments on the same straight line;
determining the connection quantity of each basic node connected with a basic line segment in a topological structure, and rejecting the topological structure corresponding to the connection quantity being larger than a first threshold value and/or the connection quantity being smaller than a second threshold value, wherein the first threshold value is larger than the second threshold value.
When the basic line segments are combined and connected, a situation that a plurality of basic line segments are collinear may exist, thereby causing redundant connection and affecting the overall performance of the lattice structure. Thus, in particular embodiments, the co-linearity of the topology may be filtered based on the coordinates of the base nodes.
In an alternative embodiment, the spatial relationship between the underlying line segments may be determined by cross product calculations in a vector operation. Specifically, the vector of the basic line segment is determined according to the coordinates of the basic nodes, the cross product between the basic line segment vectors is calculated, if the calculation result is zero, the two basic line segments are characterized as collinear, and the topological structure with the collinear structure is removed, so that redundant connection without effective rigidity contribution in the lattice structure is avoided.
It is noted that, besides the method of vector cross product calculation, the method of slope comparison or vector matrix rank determination can be used to determine whether there are collinear basic line segments in the topology structure, and the method of co-linearity screening is not limited in the present application.
It can be understood that in the topological structure, the number of the foundation line segments connected with each foundation node is different, and the stress situation is different, so that in order to improve the stress intensity of the lattice mechanism, the number of the foundation line segments connected with each foundation node needs to be ensured to meet certain requirements, thereby improving the stability of the foundation node in the structure. Particularly edge nodes and internal nodes, require enough connection to disperse stress and avoid failure of the nodes due to insufficient stress. Therefore, the stability of the base nodes in the topology needs to be screened.
In an alternative embodiment, a connection Degree (Degree of a node) analysis of each base node may be performed, similar to the calculation of the Degree of the base node in graph theory, to implement the screening of the stability of the base node. Specifically, according to the positions (such as vertexes, edges, faces and the like) of the foundation nodes in the preset three-dimensional geometry, the connection number of the foundation nodes connected with the foundation line segments in the topological structure is determined, and the topological structure corresponding to the connection number being larger than a first threshold value and/or the connection number being smaller than a second threshold value is removed. Wherein the first threshold is greater than the second threshold.
In another alternative embodiment, the stress condition of each node can be analyzed based on a mechanical simulation method, so that the connection quantity of the base nodes is adjusted, and the stability of the structure is ensured.
Therefore, based on analysis of stability of the foundation nodes in the topological structure, each foundation node can be ensured to have enough connection in the structure, and rigidity and strength of the whole structure are enhanced. In particular, the multipoint connection design of the foundation nodes in the high stress area can effectively disperse stress, so that the safety of the structure is improved, and the service life of the structure is prolonged.
Furthermore, in order to further improve the feasibility and stability of the lattice structure, the symmetry of the basic node is screened. In particular, in an alternative embodiment, the geometric relationship between the base nodes may be determined by geometric similarity detection and symmetry, i.e., whether the base nodes are on the same plane or straight line. For example, the coplanarity or coaxiality of a plurality of basic nodes is judged through geometric calculation so as to ensure that the geometric characteristics in the structure meet expectations, thereby reducing stress concentration and improving the feasibility and stability of the lattice structure in the manufacturing process.
It should be noted that, between the embodiment of the present application and the screening of the topology structure provided in the foregoing embodiment, the present application does not limit the execution sequence.
Therefore, the method for generating the lattice structure, provided by the embodiment of the application, further screens the co-linearity, the stability of the basic node and the symmetry of the basic node of the topological structure on the basis of ensuring the generation of the lattice structure by screening all surfaces of the topological structure connectivity and intersection preset three-dimensional geometric bodies, thereby further improving the stability and the resistance capability of the lattice structure.
On the basis of the foregoing embodiment, as an optional embodiment, determining the number of connection segments of each base node in the topology, includes:
The corresponding weight coefficient is given to each basic node in the topological structure, and the actual connection number of each basic node and the basic line segment is counted;
And determining the number of the connections according to the weight coefficient and the actual number of the connections.
In order to ensure the screening accuracy of the base nodes and further improve the quality of the lattice structure, in an alternative embodiment, corresponding weight coefficients are given to each base node in the topology structure, wherein the sum of the weight coefficients corresponding to each base node in each topology structure is equal to one. When the weight coefficient is given, the weight coefficient can be given according to the stress condition, the importance degree and the like of different foundation nodes, and the application is not limited.
After the weight is given, the actual connection number of each basic node and the basic line segment is counted, and the connection number is determined according to the weight coefficient and the actual connection number. Specifically, the product of the weight basis and the actual number of connections may be used as the number of connections, and it is understood that the number of connections calculated may not be an integer. For ease of understanding, the following will exemplify.
For example, the base nodes include a base node a, a base node B and a base node C, and the weight coefficients given to the base nodes are respectively 0.2, 0.3 and 0.5, and the actual connection numbers are respectively 8, 6 and 3. The number of connections of base node a is 0.2×8=1.6, the number of connections of base node B is 0.3×6=1.8, and the number of connections of base node C is 0.5×3=1.5.
Fig. 4 is a flowchart of a method for generating a lattice structure according to another embodiment of the present application, as an alternative embodiment, as shown in fig. 4, modeling is performed based on a target topology, to obtain a lattice structure, including:
S40, obtaining design parameters of a lattice structure and node optimization instructions;
In a specific embodiment, when a lattice structure needs to be generated, a design parameter and a node optimization instruction of the lattice structure to be generated currently are acquired first. The design parameters include basic structure types of lattice structures and basic parameters corresponding to the basic structures, wherein the basic structure types include but are not limited to truss structures, tubular structures and shell structures, the basic parameters corresponding to the truss structures include but are not limited to radii, the basic parameters corresponding to the tubular structures include but are not limited to radii and thicknesses, and the basic parameters corresponding to the shell structures include but are not limited to radii, thicknesses and smoothing parameters.
It will be appreciated that in modeling the lattice structure according to the target topology, the base nodes of the target topology are not moved, and the base nodes may be moved in order to adjust and optimize the lattice structure. Thus, a node optimization instruction refers to an instruction to perform movement control on a base node.
S41, mirror-image overturning is carried out on the target topological structure based on different planes of a three-dimensional space coordinate system so as to construct a three-dimensional framework composed of a plurality of target topological structures;
In the specific embodiment of generating the lattice structure, the target topology is mirror-inverted based on different planes in the three-dimensional space coordinate system, so as to construct a three-dimensional skeleton composed of a plurality of target topologies, through step S41. Specifically, a basic three-dimensional framework is constructed according to coordinates of foundation nodes in a target topological structure and connection relations among the foundation nodes. The generation of a three-dimensional skeleton is the core of the lattice structure, and the accuracy of this stage directly affects the overall rigidity and printing feasibility of the lattice structure.
In an alternative embodiment, the base nodes and the base line segments may be mirror-inverted sequentially as the three-dimensional skeleton is constructed. Specifically, mirror image overturning is performed on a basic node in a target topological structure based on an X plane of a three-dimensional space coordinate system, and an X-axis mirror image node coordinate is generated. Further, mirror image overturning is carried out on the base node of the target topological structure and the node coordinates of the X-axis mirror image based on the Y-plane, so that the symmetrical structure of the XY plane is expanded. And finally, mirror image overturning is carried out on all currently obtained node coordinates based on a Z plane, and a three-dimensional framework based on a target topological structure is travelled.
It can be understood that the three-dimensional framework obtained through mirror image overturning not only can keep the geometric characteristics and connection relation of the target topological structure, but also can ensure the uniform distribution and good supporting performance of the whole structure in different directions, thereby providing a stronger and consistent foundation for subsequent modeling and manufacturing. Fig. 5 (a) is a schematic structural diagram of a three-dimensional skeleton provided by an embodiment of the present application, and fig. 5 (b) is a schematic structural diagram of another three-dimensional skeleton provided by an embodiment of the present application, and for convenience of understanding, an example will be described below with reference to fig. 5 (a) and 5 (b).
For example, in an alternative embodiment, if the target topology is the structure shown in fig. 3 (a), after mirror-flipping the target topology, a three-dimensional skeleton as shown in fig. 5 (a) may be obtained. Specifically, the object topology structure is subjected to mirror-image overturning operation based on the X, Y, Z plane of the three-dimensional space coordinate system, so that one eighth of a small cube (preset three-dimensional geometry) shown in fig. 3 (a) can be expanded and restored to one large cube (object geometry), namely, the eight small cubes shown in fig. 3 (a) form one large cube shown in fig. 5 (a), and a completed three-dimensional framework structure is restored, so that a lattice structure is generated by subsequent modeling.
In another alternative embodiment, if the target topology is the structure shown in fig. 3 (b), after the target topology is mirror-inverted, a three-dimensional skeleton as shown in the right diagram in fig. 5 (b) may be obtained. Specifically, the image inversion operation is performed on the target topology structure based on the x=y plane and the x=z plane of the three-dimensional space coordinate system, and then the image inversion operation is performed on the whole structure based on the y=z plane, so as to obtain the structure shown in the left graph in fig. 5 (b). Further, the structure shown in the left diagram in fig. 5 (b) is subjected to mirror image overturning operation based on the X, Y, Z plane of the three-dimensional space coordinate system, so as to obtain the three-dimensional framework structure shown in the right diagram in fig. 5 (b). That is, the preset three-dimensional combination is turned over as a tetrahedron in fig. 3 (b) to obtain a cube shown in a right diagram in fig. 5 (b), so that the topology in fig. 3 (b) can be turned over to obtain a three-dimensional skeleton in the right diagram in fig. 5 (b), and the left diagram in fig. 5 (b) is turned over in the middle to obtain a structural schematic diagram.
S42, controlling a base node in the three-dimensional framework to move according to the node optimization instruction, and obtaining a target three-dimensional framework;
Further, in order to adapt to complex external geometric shapes or to meet specific mechanical requirements, after the three-dimensional framework is generated, the basic nodes in the three-dimensional framework can be controlled to move according to node optimization instructions and adjusted to a stronger target three-dimensional framework, so that the design flexibility is improved to the greatest extent and the performance of the structure is optimized.
In an alternative embodiment, the base node of the target topology may be moved first and then the three-dimensional skeleton may be regenerated. The three-dimensional framework can be generated firstly, and then the basic nodes in the three-dimensional framework are moved, so that the application is not limited.
And S43, modeling the target three-dimensional framework based on the design parameters to obtain a lattice structure.
After step S40 to step S42, the obtained target three-dimensional skeleton is modeled based on the design parameters, and a lattice structure is obtained. In a specific embodiment, different foundation structure types correspond to different foundation parameters, for example, the foundation parameters corresponding to the truss structure are radii, and the radii of the truss structure determine the thicknesses of the rods constituting the truss. The truss structure is mainly characterized by light weight and being capable of bearing larger pulling pressure, and the size of the radius has important influence on the strength of the rod pieces and the bearing capacity of the whole structure.
For tubular structures, the radius and thickness determine the thickness and wall thickness, respectively, of the bars constituting the tubular structure. The radius determines the overall dimensions of the tube structure, while the wall thickness affects the stiffness and bending strength of the tube. In the tubular structure, reasonable radius and thickness combination can effectively reduce weight on the premise of ensuring strength, and is an important parameter for lightweight design.
For the shell structure, the radius, thickness and smoothness parameters determine the thickness, wall thickness and surface smoothness, respectively, of the rods constituting the shell structure. Shell structures are often used for applications covering or closing spaces, thickness affecting the stiffness and stability of the shell, while smoothing parameters are used to control the continuity and smoothness of the surface, thereby reducing surface defects in 3D printing and improving the appearance and mechanical properties of the finished product.
It should be noted that the radius of the truss framework, the radius and thickness of the tubular structure, and the radius, thickness, and smoothness parameters of the shell structure may be randomly generated, or may be generated according to a specific optimization target, or may be a specific value specifically given by a user, which is not limited to the present application.
After determining the design parameters, in the specific embodiment of lattice structure generation, in order to ensure that the lattice structure meets the design requirements, the effectiveness of the lattice structure, that is, the printing quality of the lattice structure, is also ensured.
In an alternative embodiment, for structural effectiveness determination of the truss structure, in particular, the radius of the truss structure determines the thickness of the bars making up the truss, which is directly related to the strength and print quality of the structure. Thus, in particular embodiments, it is desirable to evaluate whether the radius of the truss structure is within the printing capabilities of the printer. If the rod is too thin, it may be necessary to increase the radius or adjust the print resolution to ensure that the printed rod is of sufficient strength and does not break.
For the tubular and shell structure effectiveness determination, the specific radius, thickness and smoothing parameters determine the strength and print quality of the two structures, in particular embodiments by determining whether the wall thickness is uniform and whether there is an excessively thin portion. If there is uneven wall thickness, or if there is too thin a portion, it may be difficult to shape or collapse easily during printing. Therefore, adjustments to the basic parameters of the tubular structure and the shell structure are required.
Notably, the base parameters need to be matched to the chosen printing process and material characteristics. For example, for fused filament fabrication (Fused Filament Fabrication, FFF) techniques or fused deposition modeling (Fused Deposition Modeling, FDM) techniques, the base parameters (e.g., layer thickness, packing density, and support structure) need to be optimized based on the printing materials (e.g., polylactic acid (Polylactic acid, PLA) and acrylonitrile-butadiene-styrene copolymer (Acrylonitrile Butadiene Styrene, ABS)).
In an alternative embodiment, if it is determined that the basic parameters of the basic structure type are not in accordance with the printing requirements according to the validity structure, the basic parameter adjustment advice may be directly given, for example, parameters such as radius, wall thickness, etc. of the rod member are changed. An alternative real-time way of base parameter optimization is for the user to optimize the base parameters based on feedback of the structural effectiveness, thereby achieving optimal printing effect and structural performance.
Therefore, under the combined action of design parameters and structure effectiveness judgment, the generated lattice structure not only meets the design requirements, but also can realize efficient and accurate molding in the 3D printing process, thereby improving the quality and performance of the finished product.
In an alternative lattice structure generation embodiment, after a structural validity determination, a satisfactory target three-dimensional skeleton will be used to generate the final lattice structure. It will be appreciated that step S43 is to convert the abstract three-dimensional skeleton into a physical model that is actually printed and manufactured. Fig. 6 (a) is a schematic structural diagram of a lattice structure according to an embodiment of the present application, and fig. 6 (b) is a schematic structural diagram of another lattice structure according to an embodiment of the present application, which is illustrated below with reference to fig. 6 (a) and 6 (b) for convenience of understanding.
For example, in an alternative embodiment, after 3D printing of a three-dimensional skeleton as shown in fig. 5 (a), a lattice structure as shown in fig. 6 (a) is generated, in fig. 6 (a), a lattice structure 1 of which the base structure type is a truss structure is shown in the left side, a lattice structure 2 of which the base structure type is a tubular structure is shown in the middle, and a lattice structure 3 of which the base structure type is a shell structure is shown in the right side.
In another alternative embodiment, a three-dimensional skeleton as shown in the right-hand side of fig. 5 (b) is 3D printed to produce a lattice structure as shown in fig. 6 (b), the left-hand side shows a lattice structure 4 of a truss structure of a base structure type, the middle-hand side shows a lattice structure 5 of a tubular structure of a base structure type, and the right-hand side shows a lattice structure 6 of a shell structure of a base structure type.
In an alternative embodiment of generating the lattice structure, the modeling process may be implemented using PythonOCC libraries or LibIGL libraries, and in fact the application is not limited to the specific tools used to generate the lattice structure. The PythonOCC library and the LibIGL library can provide rich geometric processing functions, so that basic nodes and basic line segments can be expanded into rods with volumes, and a space structure capable of performing actual printing is generated.
In addition to the PythonOCC and LibIGL libraries, modeling of lattice structures may be implemented, in an alternative embodiment, the OpenCASCADE library may be used. Specifically, pythonOCC is a Python interface of OpenCASCADE, and the same function, especially the geometry generation and modeling part, can be implemented directly using the OpenCASCADE library of the c++ version. Development using OpenCASCADE libraries may provide greater computational efficiency and flexibility in performance optimization.
In another alternative embodiment, modeling of the lattice structure may be accomplished using a CGAL (Computational Geometry Algorithms Library) library. The CGAL library is a powerful geometrical computation library that can be used to generate and process complex three-dimensional geometries. The method can provide rich geometric algorithms, can be used for basic line segment generation, screening and modeling processes, and has advantages in improving geometric accuracy and processing complex topological structures.
In another alternative embodiment, modeling of the lattice structure may be accomplished using a PyVista library. The PyVista library is a Visualization Toolkit (VTK) based Python interface that provides comprehensive 3D data interactive visualization and analysis functionality. The library allows a user to voxel a 3D dataset, generate voxel grids, and slice, volume render, etc. the grids. Furthermore, the interactive visualization function of the PyVista library is particularly suited for exploring and exposing complex 3D datasets, including, but not limited to, modeling and analysis of lattice structures.
In another alternative embodiment, modeling of the lattice structure may be accomplished using a Trimesh library. Trimesh is a Python library designed specifically for processing and analyzing 3D grids that supports import and export of multiple file formats including, but not limited to, STL format, OBJ format, and PLY format. The library provides a series of geometric processing functions that enable the base nodes and base line segments to be expanded into rods with volumes, thereby creating a spatial structure that can be actually printed. In addition, the Trimesh library provides analytical tools for computing volumes, surface areas, and centroids, which are of great value for performance evaluation and design optimization of lattice structures.
In an alternative embodiment, modeling of the lattice structure may also be accomplished using Blender and its Python API. Blender is an open-source three-dimensional modeling tool, and can realize the generation and optimization of a lattice structure by combining with a Python API. The Python interface of Blender provides rich geometric processing functions, can be used for generating basic nodes and basic line segments, and realizes movement, screening and optimization through scripts.
In yet another alternative embodiment, the FEniCS library may be used to assist and optimize modeling of the lattice structure. The FEniCS library is an open source library for solving partial differential equations, and although used mainly for finite element analysis, can be used for mechanical property simulation and optimization of the generated lattice structure. In combination with other geometry processing libraries, a comprehensive evaluation and optimization of the structure can be achieved.
In an alternative embodiment, the TetGen library may be used to assist and optimize modeling of the lattice structure. The TetGen library is a tool for generating tetrahedral meshes, is suitable for dividing complex geometric structures into finite element meshes, and is convenient for subsequent mechanical analysis and optimization. The tool can be used in combination with other geometric processing libraries to enable the generation and analysis of lattice structures.
In yet another alternative embodiment, lattice structure modeling may be implemented using MATLAB and its geometric modeling toolbox. The basic node generation, basic line segment combination and modeling of the lattice structure can be realized by using a geometric modeling toolbox in MATLAB. The strong numerical computation capability of MATLAB can also be used for optimizing strategies of moving and not moving basic nodes, so that the mechanical property of the structure is ensured.
Furthermore, in another alternative embodiment, lattice structure modeling may be accomplished by a three-dimensional CAD modeling tool. Specifically, for example, software such as SolidWorks, autodesk Inventor, creo, etc. may be used to generate the base nodes and base line segment combinations and modeling of lattice structures through the api interface of the software, and use its built-in optimization and simulation tools to perform structural analysis.
The specific modeling also comprises further refinement of geometric information, generation of patches and model optimization. Specifically, if a display modeling manner (for example, pythonOCC library, blender and Python API thereof) is used, a geometric shape is generated according to the target three-dimensional skeleton, a three-dimensional model with entity attributes is formed, and finally exported as one of STP file, STL file and OBJ file. If a hidden modeling approach is used (e.g., libIGL and PyVista libraries), then the voxel structure is built first, then the voxels are converted to a three-dimensional geometric model using an algorithm (e.g., marching Cubes algorithm, dual Contouring algorithm, etc.), and an STL or OBJ file is generated.
Further, the generated lattice structure is optimized, and the method specifically comprises the steps of simplifying and refining the surface patch. For 3D printing, the number of polygonal patches in the lattice structure can affect the printing time and the operating efficiency of the printer. Unnecessary patches are simplified on the premise of ensuring structural integrity, so that the data volume is reduced, and the printing time is optimized. In addition, the base nodes and the base line segments connected with the external surface are subjected to refinement treatment, so that the overall strength and the attractiveness of the model are improved.
Finally, the three-dimensional data after modeling is exported into a standard file format suitable for 3D printing, wherein the file contains geometric information of a lattice structure, and the geometric information can be directly input into a 3D printer for manufacturing. The generated file is further subjected to hierarchical slicing through slicing software of the 3D printer so as to determine the printing strategy and the material consumption of each layer, and therefore efficient printing and material utilization are achieved.
Therefore, the method for generating the lattice structure ensures that the generated lattice structure not only meets the requirements of diversity and optimization in the design stage, but also can be efficiently and reliably printed in the manufacturing stage, and finally meets the mechanical property and geometric requirements in practical application.
In an alternative embodiment, according to the node optimization instruction, the base node in the three-dimensional skeleton is controlled to move, including:
Determining a node movement mode according to the node optimization instruction, wherein the node movement mode comprises at least one of a random movement mode, a fixed movement mode and a specified movement mode;
and controlling the basic nodes in the three-dimensional framework to move based on the node movement mode.
In a specific embodiment, through the flexibility of the movement of the base node, a structure with higher adaptability is generated in different application scenes, so that the universality and the flexibility of the design are improved. The generated skeleton structure not only meets the specific mechanical property requirement, but also has higher success rate and finished product quality in the 3D printing process, and is suitable for various engineering applications, especially for scenes with high requirements on structure weight and strength.
In an alternative embodiment, when the base node in the three-dimensional skeleton is controlled to move according to the node optimization instruction, the node movement mode is determined according to the node optimization instruction. Specifically, the node movement pattern includes at least one of a random movement pattern, a fixed movement pattern, and a specified movement pattern.
In an alternative embodiment, when the node movement mode is a random movement mode, the base nodes on the preset three-dimensional geometrical body sides of the three-dimensional framework are controlled to move on the corresponding sides, the base nodes on the preset three-dimensional geometrical body surfaces are controlled to move on the corresponding surfaces, and the base nodes in the preset three-dimensional geometrical body are controlled to move in the body.
Specifically, the movement of the base nodes on the preset three-dimensional geometrical body side, which plays a role of maintaining the boundary morphology in the lattice structure, can be used for adjusting the rigidity of the lattice structure boundary, so that the structure can better resist the external force impact. When the base node on the side of the preset three-dimensional geometrical body is moved, the base node can be moved along the side of the preset three-dimensional geometrical body, and the base node is controlled to move in a moving range, namely, the base node is optimized in a local position. Of course, it can be adjusted according to specific design requirements.
For the basic nodes on the surface of the preset three-dimensional geometric body, the basic nodes are mainly used for maintaining the integrity of the structure on the surface and adjusting the local detail, and the rigid structure in the surface is enhanced. For example, moving the base node toward the center of the face of the predetermined three-dimensional geometry, or near the edges of the face, may change the overall stress direction of the lattice structure, thereby helping to improve the compressive properties of the lattice structure. When the basic nodes on the surface of the preset three-dimensional geometrical body are moved, the nodes are controlled to move in a specified range in the surface where the nodes are positioned, abrupt displacement in the direction perpendicular to the surface is avoided, so that the flatness and consistency of the whole surface are maintained, and the coordination with other nodes on the surface is maintained.
For the basic nodes in the preset three-dimensional geometrical body, the internal rigidity and stress condition of the lattice structure are mainly improved. And the stress distribution is optimized, and the stress concentration is reduced. In particular, localized concentrated stresses can be effectively distributed to other surrounding foundation nodes by movement of these foundation nodes. Thereby increasing the flexibility and diversity of the lattice structure and improving the bearing capacity and the overall rigidity of the lattice structure. The movement of the base node in the preset three-dimensional geometrical body has a large degree of freedom, and can be generally carried out in any direction or in a formulated range, so that the application is not limited.
In another alternative embodiment, when the node movement pattern is a fixed movement pattern, the position of the base node in the three-dimensional skeleton is adjusted by specifying an optimization algorithm. Specifically, topology-based optimization algorithms can be used to automatically adjust base node positions to maximize structural rigidity or minimize material usage. The method can also automatically adjust the position of the basic node according to the input design parameters by training the neural network model so as to realize the optimal lattice structure design, and the method is not particularly limited to the appointed optimization algorithm.
In yet another alternative embodiment, when the node movement mode is a designated movement mode, determining an endpoint movement coordinate of each base node in the three-dimensional skeleton according to the node optimization instruction, and controlling each base node in the three-dimensional skeleton to move to a corresponding endpoint movement coordinate. Specifically, the user can autonomously adjust the position of the base node according to modeling experience, and obtain the final destination coordinate to which the base node to be adjusted sent by the user is finally moved, namely, the final destination movement coordinate, so as to control the base node to perform corresponding movement.
It will be appreciated that in a given travel mode, a particular direction and distance of travel is set according to design requirements and mechanical goals. The optimization of the stress concentration problem can be realized, the lattice structure can better disperse stress after the base node moves, and complex design requirements and diversified engineering application scenes can be better adapted. Fig. 7 is a schematic structural diagram of a three-dimensional skeleton according to another embodiment of the present application, and for convenience of understanding, the following will illustrate the three-dimensional skeleton with reference to fig. 7.
In an alternative embodiment, the topology structure shown in the left diagram in fig. 7 may be obtained after the base node in the topology structure shown in fig. 3 (a) is moved, and further, the three-dimensional skeleton shown in the right diagram in fig. 7 is obtained by performing mirror-image inversion on the topology structure shown in the left diagram in fig. 7. Of course, in another alternative embodiment, the three-dimensional skeleton shown in the right diagram in fig. 7 may be obtained by moving the base nodes of the three-dimensional skeleton of 2 (c).
In fact, in order to obtain a lattice result with higher symmetry and higher stability, in a preferred embodiment, it is preferable to move the basic nodes of the topology, and then mirror-flip the topology after movement to obtain a three-dimensional skeleton, and further generate a lattice structure according to the obtained three-dimensional skeleton.
In fact, in an alternative embodiment, the base node may not be moved, and the non-moving node may allow the structure to maintain symmetry and uniformity, particularly in applications requiring structural load symmetry, and may significantly improve overall stability.
It is understood that in the design of lattice structures, some application scenarios require structures with high symmetry and uniformity. Keeping the base nodes stationary allows for good symmetry of the lattice structure, thereby ensuring consistent physical properties of the overall structure in all directions, particularly stiffness and fatigue resistance.
Furthermore, not moving nodes can also reduce design complexity, especially when a large number of similar structures need to be generated. The non-moving nodes keep the design relatively simple, and simultaneously reduce the number of design parameters, thereby being beneficial to improving the generation efficiency of the lattice structure. That is, keeping the nodes stationary during 3D printing means that the resulting structure has a simpler geometry, thereby reducing the complexity of the print path planning. Therefore, the printing speed can be improved, possible errors in the printing process can be reduced, and the quality of a finished product can be improved.
Therefore, the method for generating the lattice structure provided by the embodiment of the application enables the lattice structure with higher adaptability to be generated under different application scenes through the control of the movement flexibility of the base node, and improves the universality and the flexibility of the lattice structure design. The generated lattice structure is ensured to meet specific mechanical property requirements, the success rate and the quality of finished products in the 3D printing process can be ensured, and the method is suitable for scenes with high requirements on light weight and strength of various structures.
In an alternative embodiment, before screening the topology, the method further includes:
determining whether the preset number is larger than a threshold value;
If the number is larger than the preset number, filtering the topological structure through a target optimization algorithm;
if not, the step of screening the topological structure is carried out.
It can be understood that as the value of M increases, the more line segment combinations are formed, that is, the more line segment combinations are connected to each M basic line segment combinations, until m=l/2, the number of line segment combinations reaches the maximum value, where L is the number of basic line segments.
When the number of the composed line segment combinations is larger, the number of the topological structures obtained after the basic line segments are combined and connected is larger, and further, under a large number of topological structures, connectivity, collinearity, basic node stability and basic node symmetry screening are carried out on all surfaces of intersection preset three-dimensional geometric bodies on all topological structures, so that the generation efficiency of the lattice structures can be reduced.
Therefore, in order to solve the above technical problem, in an alternative embodiment, before screening the topology structure, it is first determined whether the number of line segment combinations generated at present is too large, specifically, when it is determined that the number of preset line segments is greater than a threshold value, it is determined that the number of line segment combinations at present is too large, so as to ensure the efficiency of generating the lattice structure, at this time, the topology structure is filtered once by the target optimization algorithm, and the topology structure with poor quality is rejected.
In an alternative embodiment, when the topology structure is filtered, a genetic algorithm may be used to select and adjust a line segment combination, so as to improve the performance of the generated structure, and the application does not specifically limit the target optimization algorithm.
Of course, if the preset number is not greater than the threshold value, in order to ensure the generation quality of the lattice structure, the topology structure is directly screened, so that a high-quality target structure set is obtained.
It is noted that when L is even, the number of line segment combinations corresponding to m=l/2 is the largest, and when M is a base, the value of m=l/2 is rounded up and rounded down, and the number of line segment combinations corresponding to m=l/2 is the largest. Therefore, in order to ensure that the number of line segment combinations corresponding to the threshold does not exceed the maximum value, the threshold is smaller than L/2.
Therefore, the method for generating the lattice structure provided by the embodiment of the application filters the topological structure once before screening the topological structure, so that the generating efficiency of the lattice structure is improved.
In the foregoing embodiments, the method for generating a lattice structure is described in detail, and the application further provides a corresponding embodiment of a device for generating a lattice structure.
Fig. 8 is a schematic structural diagram of a device for generating a lattice structure according to an embodiment of the present application, as shown in fig. 8, where the device includes:
A coordinate system establishing module 80, configured to establish a three-dimensional space coordinate system with a specified point on a preset three-dimensional geometric body as an origin;
The node combination module 81 is configured to take specified coordinate points on a preset three-dimensional geometric body as base nodes, and connect the base nodes in a pairwise combination manner to obtain base line segments, where the number of the specified coordinate points is greater than 1;
A construction module 82, configured to construct a topology structure by combining every arbitrary preset number of basic line segments;
the screening module 83 is configured to obtain a target structure set after screening the topology structure;
the lattice generation module 84 is configured to read the target topology from the target structure set, and perform modeling based on the target topology to obtain a lattice structure.
In addition, the device for generating the lattice structure provided by the embodiment of the application further comprises:
The first screening submodule is used for traversing all basic nodes in the access topological structure by taking basic line segments of the topological structure as access paths and rejecting the topological structure which cannot be accessed by the basic nodes;
And the second screening submodule is used for extracting the topological structure with intersection between all surfaces of the topological structure and the preset three-dimensional geometrical body according to the coordinates of the base nodes.
The third screening submodule is used for determining whether a plurality of basic line segments exist in the topological structure on the same straight line according to the coordinates of the basic nodes, and rejecting the topological structure with the plurality of basic line segments on the same straight line;
And the fourth screening submodule is used for determining the connection quantity of the foundation line segments connected with each foundation node in the topological structure, and rejecting the topological structure corresponding to the topological structure with the connection quantity larger than a first threshold value and/or with the connection quantity smaller than a second threshold value, wherein the first threshold value is larger than the second threshold value.
The connection number determining module is used for giving corresponding weight coefficients to each base node in the topological structure, counting the actual connection number of each base node and the base line segment, and determining the connection number according to the weight coefficients and the actual connection number.
The acquisition module is used for acquiring design parameters of the lattice structure and node optimization instructions;
The mirror image overturning module is used for mirror image overturning the target topological structure based on different planes of the three-dimensional space coordinate system so as to construct a three-dimensional framework consisting of a plurality of target topological structures;
The control module is used for controlling the basic nodes in the three-dimensional framework to move according to the node optimization instruction so as to obtain a target three-dimensional framework;
and the modeling module is used for modeling the target three-dimensional framework based on the design parameters to obtain a lattice structure.
The node movement mode determining module is used for determining a node movement mode according to the node optimization instruction, wherein the node movement mode comprises at least one of a random movement mode, a fixed movement mode and a specified movement mode;
And the control module is also used for controlling the basic nodes in the three-dimensional framework to move based on the node movement mode.
The first control submodule is used for controlling the base nodes on the preset three-dimensional geometrical body sides of the three-dimensional framework to move on the corresponding sides when the node movement mode is a random movement mode, and the base nodes on the preset three-dimensional geometrical body surfaces move on the corresponding surfaces and the base nodes in the preset three-dimensional geometrical body move in vivo;
The second control sub-module is used for adjusting the position of the basic node in the three-dimensional framework through a specified optimization algorithm when the node moving mode is a fixed moving mode;
and the third control sub-module is used for determining the terminal point movement coordinates of each basic node in the three-dimensional framework according to the node optimization instruction when the node movement mode is the appointed movement mode and controlling each basic node in the three-dimensional framework to move to the corresponding terminal point movement coordinates.
The processing module is used for determining whether the preset number is larger than a threshold value, filtering the topological structure through a target optimization algorithm if the preset number is larger than the threshold value, and entering a step of screening the topological structure if the preset number is not larger than the threshold value.
Fig. 9 is a schematic structural diagram of a lattice structure generating apparatus according to another embodiment of the present application, where the lattice structure generating apparatus shown in fig. 9 includes a memory 90 for storing a computer program;
A processor 91 for implementing the steps of the method of generating a lattice structure as mentioned in the above embodiments when executing a computer program.
The lattice structure generating device provided in this embodiment may include, but is not limited to, a smart phone, a tablet computer, a notebook computer, a desktop computer, or the like.
Processor 91 may include one or more processing cores, such as a 4-core processor, a 9-core processor, etc. The Processor 91 may be implemented in at least one hardware form of a digital signal Processor (DIGITAL SIGNAL Processor, abbreviated as DSP), a Field-Programmable gate array (FPGA), and a Programmable logic array (Programmable Logic Array, abbreviated as PLA). The processor 91 may also include a main processor for processing data in the awake state, which is also called a central processor (Central Processing Unit, abbreviated as CPU), and a coprocessor for processing data in the standby state, which is a low-power-consumption processor. In some embodiments, the processor 91 may be integrated with an image processor (Graphics Processing Unit, GPU for short) for rendering and drawing of content required to be displayed by the display screen. In some embodiments, the processor 91 may further include an artificial intelligence (ARTIFICIAL INTELLIGENCE, AI) processor for processing computing operations related to machine learning.
Memory 90 may include one or more computer-readable storage media, which may be non-transitory. Memory 90 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In this embodiment, the memory 90 is at least used for storing a computer program 901, where the computer program, when loaded and executed by the processor 91, can implement the relevant steps of the method for generating a lattice structure disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 90 may further include an operating system 902, data 903, and the like, where the storage mode may be transient storage or permanent storage. Operating system 902 may include Windows, unix, linux, among other things. The data 903 may include, but is not limited to, related data involved in the method of generating the lattice structure, and the like.
In some embodiments, the lattice structure generating device may further include a display 92, an input/output interface 93, a communication interface 94, a power supply 95, and a communication bus 96.
Those skilled in the art will appreciate that the structure shown in fig. 9 is not limiting of the means for generating a lattice structure and may include more or less components than those shown.
The device for generating the lattice structure provided by the embodiment of the application comprises a memory and a processor, wherein the processor can realize the method for generating the lattice structure in the embodiment when executing the program stored in the memory.
It should be noted that although operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous. Moreover, the separation of various system modules and components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
Claims (12)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411822088.5A CN119272359B (en) | 2024-12-11 | 2024-12-11 | A method, device and medium for generating a lattice structure |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411822088.5A CN119272359B (en) | 2024-12-11 | 2024-12-11 | A method, device and medium for generating a lattice structure |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN119272359A true CN119272359A (en) | 2025-01-07 |
| CN119272359B CN119272359B (en) | 2025-03-21 |
Family
ID=94120026
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202411822088.5A Active CN119272359B (en) | 2024-12-11 | 2024-12-11 | A method, device and medium for generating a lattice structure |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN119272359B (en) |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6720962B1 (en) * | 2000-12-04 | 2004-04-13 | Joseph Alter Inc. | Hair generation and other natural phenomena with surface derived control volumes in computer graphics and animation |
| WO2008138002A1 (en) * | 2007-05-08 | 2008-11-13 | Laser-Scan, Inc. | Three-dimensional topology building method and system |
| CN109974725A (en) * | 2017-12-28 | 2019-07-05 | 北京三快在线科技有限公司 | A kind of road network topology construction method, guidance path calculation method and device |
| US10635088B1 (en) * | 2018-11-09 | 2020-04-28 | Autodesk, Inc. | Hollow topology generation with lattices for computer aided design and manufacturing |
| WO2023124576A1 (en) * | 2021-12-27 | 2023-07-06 | 卡斯柯信号有限公司 | Visual modeling method for train operation basic environment, medium, and electronic device |
| CN117010241A (en) * | 2023-07-24 | 2023-11-07 | 浙江大学 | Automatic design method for field-guided lattice structure |
| CN118349705A (en) * | 2024-04-15 | 2024-07-16 | 中国工商银行股份有限公司 | Network topology structure generation method and device |
-
2024
- 2024-12-11 CN CN202411822088.5A patent/CN119272359B/en active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6720962B1 (en) * | 2000-12-04 | 2004-04-13 | Joseph Alter Inc. | Hair generation and other natural phenomena with surface derived control volumes in computer graphics and animation |
| WO2008138002A1 (en) * | 2007-05-08 | 2008-11-13 | Laser-Scan, Inc. | Three-dimensional topology building method and system |
| CN109974725A (en) * | 2017-12-28 | 2019-07-05 | 北京三快在线科技有限公司 | A kind of road network topology construction method, guidance path calculation method and device |
| US10635088B1 (en) * | 2018-11-09 | 2020-04-28 | Autodesk, Inc. | Hollow topology generation with lattices for computer aided design and manufacturing |
| WO2023124576A1 (en) * | 2021-12-27 | 2023-07-06 | 卡斯柯信号有限公司 | Visual modeling method for train operation basic environment, medium, and electronic device |
| CN117010241A (en) * | 2023-07-24 | 2023-11-07 | 浙江大学 | Automatic design method for field-guided lattice structure |
| CN118349705A (en) * | 2024-04-15 | 2024-07-16 | 中国工商银行股份有限公司 | Network topology structure generation method and device |
Non-Patent Citations (1)
| Title |
|---|
| 郑惠江;王太勇;何改云;: "在机检测中三角网格拓扑重建方法的研究", 计算机工程与应用, no. 30, 21 October 2010 (2010-10-21) * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN119272359B (en) | 2025-03-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4381743B2 (en) | Method and program for generating volume data from boundary representation data | |
| Adams et al. | Interactive boolean operations on surfel-bounded solids | |
| Chen | 3D texture mapping for rapid manufacturing | |
| Chougrani et al. | Lattice structure lightweight triangulation for additive manufacturing | |
| CN105900145B (en) | Method for creating a three-dimensional mesh structure in a computer-aided design model for additive manufacturing | |
| CN109571961B (en) | A method for obtaining slices and support points of a parametric model of a complex heterogeneous volume | |
| CN105793848B (en) | Computer Aided Design Method Including Modeling Steps | |
| KR20140139984A (en) | Compression and decompression of a 3d modeled object | |
| CN108763827B (en) | Transmission tower finite element model establishing method and device | |
| Bernhard et al. | Volumetric modelling for 3D printed architecture. | |
| CN108171793B (en) | Method for probing triangular mesh of laminated area | |
| JP4894369B2 (en) | 3D model image processing device | |
| CN111243094B (en) | Three-dimensional model accurate voxelization method based on lighting method | |
| Tierny et al. | Interactive quadrangulation with Reeb atlases and connectivity textures | |
| Galicia et al. | Improving printing orientation for Fused Deposition Modeling printers by analyzing connected components | |
| CN115674684A (en) | 3D printing method for hollowing out internal self-supporting structure and printing method for desktop ornaments | |
| Wang et al. | Cost-effective printing of 3D objects with self-supporting property | |
| Hong et al. | Inner engraving for the creation of a balanced lego sculpture | |
| CN117972834A (en) | A method and system for intelligent design and topology optimization of key nodes of aerial building construction machine | |
| CN119272359B (en) | A method, device and medium for generating a lattice structure | |
| CN119378525B (en) | A method, device and medium for processing structured data | |
| CN113191016B (en) | Body expression model-based multi-material product modeling and analyzing integrated method | |
| Jung et al. | Automatic segmentation and 3D printing of A-shaped Manikins using a bounding box and body-feature points | |
| Du et al. | Generation and evaluation of unimaginable three-dimensional structural joints using generative adversarial networks | |
| Kase et al. | Volume cad |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |