Method for the realization of lattice structures with variable interconnection geometry
A method and algorithm for lattice structures with variable geometry address the inefficiencies of existing CAD software by parameterizing topology with continuous variables, ensuring interconnectivity and rapid mesh generation, enhancing structural integrity and reducing computational burdens.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-18
- Publication Date
- 2026-03-26
AI Technical Summary
Existing CAD software struggles with the geometric complexity of lattice structures, leading to inefficient mesh generation and high computational times due to the use of Boolean operations, especially when dealing with beam-like elements in heterogeneous lattice structures with variable geometry.
A method and algorithm that parameterize the topology of beam elements using continuous variables, ensuring interconnectivity and structural integrity, bypassing Boolean operations to generate meshes quickly and efficiently, applicable in both classic and implicit CAD environments.
The method enables fast mesh generation of heterogeneous lattice structures with variable geometry, reducing computational time and resource requirements, ensuring high-quality meshes without holes or duplicates, and optimizing the placement of mesh nodes for improved structural integrity.
Smart Images

Figure IB2025059370_26032026_PF_FP_ABST
Abstract
Description
[0001] "METHOD FOR THE REALIZATION OF LATTICE STRUCTURES WITH VARIABLE INTERCONNECTION GEOMETRY"
[0002] »»««
[0003] DESCRIPTION
[0004] Field of invention
[0005] The invention concerns a method for the realization of heterogeneous lattice structures with cells based on beam elements with variable geometry and in any case interconnected and, more precisely, a method for the realization of heterogeneous lattice structures with cells based on beam elements with variable and continuous geometry in order to ensure the structural integrity of the component that incorporates this lattice structure.
[0006] The lattice structure thus obtained can be used as an innovative construction material for industrial components in various applications, such as where low weight and high performance are required such as, for example, aerospace, crane structures, scaffolding, and to minimize the use of material within 3D prints.
[0007] An algorithm to implement the aforementioned method is also the subject of the present invention, which algorithm can be implemented in slicer programs for 3D prints, in pre-existing CAD, or can constitute the graphical engine of a dedicated CAD.
[0008] State of the art
[0009] As is well known, the so-called "reticular structures" (i.e. lattice structures) are three-dimensional systems (but they can also be two-dimensional or one-dimensional) of elements connected to each other forming a mesh. These structures are used in architecture and engineering to provide strength and stability, often combining aesthetics and functionality. Examples include pylons, geodesic domes, and other complex shapes that use geometry to distribute the load efficiently.
[0010] Typically, lattice structures offer several advantages, including:
[0011] Structural efficiency: the use of material is optimized and the overall weight is reduced.
[0012] Lightweight: They are often lighter than other structures, which can be crucial in certain contexts, such as in long-distance architecture or in situations where weight is critical. Geometric flexibility: They allow the creation of complex and innovative shapes, allowing you to explore designs optimized for the given applications.
[0013] Material savings: They use less material than many other types of structures, helping to reduce costs and environmental impact.
[0014] Quick build: In some cases (3D print infill structures), they can be easier and faster to build than conventional structures, giving them an advantage in terms of completion time.
[0015] Seismic resistance: In the case of civil lattice structures (cranes, scaffolding, etc.), they can show a greater ability to resist earthquakes thanks to their flexibility and uniform load distribution.
[0016] On the other hand, the possibility of manipulating the geometry in a lattice structure appears particularly useful, since such manipulation would allow to exert a wide influence on the overall macroscopic properties, endowing the structure with performances not obtainable with conventional materials.
[0017] On the other hand, studies have been carried out to realize and analyze the behavior of lattice structures with variable topology, i.e. heterogeneous lattice structures with continuously variable geometry cells. Examples of bibliography on this topic are the following:
[0018] [1] J. Favre, P. Lohmuller, B. Piotrowski, S. Kenzari, P. Laheurte, and F. Meraghni, "A continuous crystallographic approach to generate cubic lattices and its effect on relative stiffness of architectured materials," Additive Manufacturing, vol. 21, pp. 359- 368, May 2018, doi: 10.1016 / j.addma.2018.02.020.
[0019] [2] N. Letov and Y. Fiona Zhao, "Beam-Based Lattice Topology Transition With Function Representation," Journal of Mechanical Design, vol. 145, no. 011704, Nov. 2022, doi: 10.1115 / 1.4055950.
[0020] [3] Y. Liu, S. Zhuo, Y. Xiao, G. Zheng, G. Dong, and Y. F. Zhao, "Rapid Modeling and Design Optimization of Multi-Topology Lattice Structure Based on Unit-Cell Library," Journal of Mechanical Design, vol. 142, no. 9, p. 091705, Sep. 2020, doi: 10.1115 / 1.4046812.
[0021] [4] N. Letov and Y. Fiona Zhao, "Beam-Based Lattice Topology Transition With
[0022] Function Representation," Journal of Mechanical Design, vol. 145, no. 011704, Nov. 2022, doi: 10.1115 / 1.4055950.
[0023] For cells based on beam elements, the geometry modification is possible by varying the radius of the beams and their interconnecting geometry (hereinafter referred to as topology). Numerical algorithms can modify these variables to maximize the required properties; However, the optimization process can be very expensive and complex. In this context, "Gradient-Based" algorithms emerge as preferential solutions, thanks to their speed and robustness. These algorithms require that the variables they operate on are continuous, i.e. real numbers. Being a real number, the variation of the radius of the elements is directly implementable.
[0024] Otherwise, to consider the cell topology variable it is necessary to define a method and the related algorithm for the generation of the interconnection geometry. A further benefit of this approach is the large number of geometries that can be generated. A focal constraint of these types of algorithms is the interconnectivity of cells, even of different topologies, to ensure the structural integrity of the lattice.
[0025] In summary, the method that is required and the related algorithm for defining the topology of cells based on beam elements must be able to guarantee:
[0026] - The parameterization of the cell topology through continuous variables for the application of Gradient-Based optimization algorithms;
[0027] - Interconnection points between adjacent cells, even of different topology, to ensure structural integrity.
[0028] Then, once the interconnect geometry of the lattice beam axes has been defined, the computer-aided design (CAD) software must generate the three-dimensional geometry of the component. To render the component, CAD requires the generation of a mesh, which is typically superficial and composed of basic elements such as parallelograms, triangles, or a grid of curves called "splines". Once the three- dimensional geometry has been defined, the CAD interfaces with the 3D printing machine through programs called "slicers". These typically see a triangular surface mesh in STL format as input.
[0029] However, the geometric complexity of microstructured components makes mesh generation problematic, both for rendering in the design phase (parallelogram or spline meshes), and in the slicing phase (triangular meshes). The classic CAD software (e.g., SolidWorks, etc.) that can be used for component design is based on Boolean operations which, when applied to the large number of beam-like elements that form the mesh, require high resources and computational time.
[0030] To date, to overcome these limitations, so-called implicit CADs (e.g., nTop, etc.) have been introduced, which are based on mathematical functions for defining surfaces instead of splines elements. In such implicit CAD, algebraic operations replace Boolean operations, resulting in faster component rendering.
[0031] However, for these programs, creating the triangular surface mesh of the STL file is a bottleneck. In addition, these meshes are poorly optimized in terms of placement and number of the triangles.
[0032] The aim of the present invention is therefore to solve the above limitations by providing a method for the realization of heterogeneous lattice structures with variable and continuous geometry cells, and the related algorithm that implements this method, which parameterizes the topology of the cells in a lattice and creates the mesh in a very short time.
[0033] According to a first aspect of the method of the present invention, topological variation is governed by continuous variables, and the cells are in any case interconnectable as rules are defined that guarantee the structural integrity of the lattice.
[0034] According to a second aspect of the method of the present invention, the mesh is defined directly by topological information (continuous variables) and the radius of the beams, without passing through Boolean operations or algebraic operations, thus avoiding the bottlenecks of existing approaches allowing the rendering and creation of print files with considerably reduced times compared to the state of the art.
[0035] According to a third aspect of the method of the present invention, in the case of a microstructured component, it is provided that the algorithm proposed here is called as a subroutine for each cell present in the periodic structure. In addition, this algorithm directly implements a variable cell topology, which is not yet possible with existing software.
[0036] According to a fourth aspect of the method of the present invention, it is provided that the algorithm that is the subject of the present invention automatically generates the structure, with times that are only the machine times (milliseconds), unlike traditional and implicit CAD, in which the surface mesh is generated in the postprocessing phase, and therefore to generate the STL file it is necessary to consider both the human data entry and computer rendering times.
[0037] According to a fifth aspect of the method of the present invention, it is envisaged that the algorithm object of the invention can be generalized to generate surface meshes of parallelograms or splines. It is therefore possible to integrate it into existing classic CAD environments, and in this case the process of triangulation of the STL file is a next step. In addition, it is also possible to apply this methodology for the definition of both tetrahedral and isoparametric volumetric meshes (net of splines) for finite element analysis, being able to significantly reduce the volumetric meshing times of microstructured components compared to state-of-the-art methods.
[0038] According to a sixth aspect of the method of the present invention, although it is also applicable for the optimization of the geometry of pylons, the algorithm provided is specialized for objects produced in 3D printing where the lattice is a single object.
[0039] BRIEF DESCRIPTION OF THE INVENTION
[0040] The present invention provides a method for the realization of heterogeneous lattice structures with variable interconnection geometry, and the related algorithm to apply the aforementioned fast meshing method, with cells based on beam elements and having octahedral symmetry, always connectable, and parameterized by continuous variables.
[0041] Therefore, the present invention provides a method for the realization of heterogeneous lattice structures (lattice) with variable interconnection geometry, and the related algorithm for applying the aforementioned method substantially according to the attached claims.
[0042] DETAILED DESCRIPTION OF THE INVENTION
[0043] A detailed description of a preferred form of implementation of the method of the present invention and its application algorithm will now be provided, given by way of example and not limitation, referring to the attached figures, in which:
[0044] Figure 1 is a schematic view illustrating the symmetry planes of cubic cells with octahedral symmetry; Figure 2 is a schematic view illustrating an independent tetrahedron in a cubic domain with octahedral symmetry;
[0045] Figures 3A to 3D are schematic views illustrating the various steps of the algorithm related to the definition of the topology when implementing the method of the present invention;
[0046] Figure 4 is a schematic view illustrating an independent tetrahedron of a cubic cell chosen for the implementation of the method of the present invention;
[0047] Figure 5 is a schematic view illustrating an example of the definition of the axis of a generating beam and an associated reference system and as a result of a phase of the method of the present invention;
[0048] Figure 6 is a schematic view that illustrates an example of the definition of some nodes of a mesh related to the generating beam and as a result of another phase of the method of the present invention;
[0049] Figure 7 is a schematic view illustrating an example of defining the angular coordinates of refinement nodes of a mesh relative to the generating beam and as a result of a further step in the method of the present invention;
[0050] Figure 8 is a schematic view illustrating an example in which angular coordinates obtained through an earlier step of the method are used to define the nodes of the generating beam on the faces of an independent tetrahedron and as a result of another step in the method of the present invention;
[0051] Figure 9 is a schematic view illustrating an example in which the nodes obtained in a previous phase are interconnected to create the mesh of the surface of the generating beam and as a result of a further phase of the method of the present invention;
[0052] Figure 10 is a schematic view illustrating an example of a definition of a mesh on an external surface of the generating beam and as a result of another step in the method of the present invention;
[0053] Figures 11A and 11B schematically illustrate a final mesh with two angular resolutions obtained according to the method of the present invention; and
[0054] Figures 12 to 18 show examples among the geometries of the 7 classes obtained with the algorithms that implement the method of the present invention. We will now refer to Figures 1, 2, and 3A to 3D. As can be seen in figures 3A to 3D, the single cells are cubic, populated by beam elements of radius R and having octahedral symmetry, which leads the final geometry to have 9 planes of symmetry, as shown in figure 1.
[0055] As Figure 2 shows, the method is based on the concept that a cube with octahedral symmetry has only one independent tetrahedral subdomain Ho. This means that any type of lattice cell can be generated by special operations of symmetry, rotation, and translation on the beams present in this tetrahedron. More precisely, if a beam is placed in the tetrahedron, it will be the generator of the entire structure.
[0056] Therefore, the only independent information to define the geometry of the cell is the radius and the start and end points of the axis of the generating beam.
[0057] It should be noted here that this method is described here for the creation of meshes defined by the choice of a single generating beam. However, it is possible to generalize this method also for the case of cells with an arbitrary number of generating beams. In this case, this method must be applied in parallel for each generating beam, and the final mesh can be obtained by Boolean operation of addition of the individual meshes.
[0058] With particular reference now to figures from 3A to 3D, they illustrate the approach to the topology generated according to the present method.
[0059] More precisely, and as can be seen in the figures, the starting point of the generating beam can reside at any vertex and on any side of the tetrahedron (Fig.3D shows an example of geometry that can be obtained through this approach).
[0060] According to the present invention, the method involves the following steps:
[0061] - A first phase of defining the cell topology, which first phase is implemented by a first algorithm; and
[0062] - A second phase of "Fast Meshing" whose second phase is implemented by a second algorithm.
[0063] Definition of the Cell Topology
[0064] According to the method of the present invention, this first phase and the related algorithm that implements it involves the generation of 7 classes of cell topologies. In each class, the topology is defined by two continuous variables al and a2, and together with the radius are the only information needed to recreate the final geometry.
[0065] Then and as illustrated in Fig. 4, a cubic cell of unitary side defined in a Cartesian space with origin in the barycenter is defined. Of the 32 independent tetrahedra in the cube, one with vertices () is defined
[0066] - Vl= [0.5; -0.5; -0.5]
[0067] - V2= [0.5; 0; -0.5]
[0068] - V3= [0; 0; -0.5]
[0069] - V4= [0; 0; 0]
[0070] Next, the plans are defined:
[0071] - P123: plan generated by V1-V2-V3
[0072] - P124: plan generated by V1-V2-V4
[0073] - P134: plan generated by V1-V3-V4
[0074] - P234: plan generated by V2-V3-V4
[0075] In each ijk plane, an orthogonal two-dimensional reference system with coordinates bl and b2 is defined and such that the point P(bl,b2) belonging to the ijk plane will have the equation:
[0076] P_ijk(bl,b2)= Q_ijk*b + qjjk with
[0077] Q_ijk= [(Vi - Vj), (Vk - Vj)] b= [bl; b2] q_ijk= Vj with i,j,k=l,2,3 e i<j<k
[0078] It should be noted here that this choice of reference system is not univocal, but the previous reference system is chosen for the simplicity of the corresponding equations. It should also be noted that other reference systems are possible.
[0079] Then, a segment AB is defined within the tetrahedron by fixing two coordinates al and a2. This segment is the axis of the beam which, after octahedral symmetry operations, will generate the complete topology of the cell.
[0080] For the various classes we have:
[0081] - Class 1: A=V1 e B= P_234(al, a2), i.e. point A coinciding with vertex VI and point
[0082] B on the face defined by vertices V2-V3-V4; - Class 2: A=V2 and B= P_134(al, a2), i.e. point A coinciding with vertex V2 and point B on the face defined by vertices V1-V3-V4;
[0083] - Class 3: A=V3 and B= P_124(al, a2), i.e. point A coinciding with vertex V3 and point B on the face defined by vertices V1-V2-V4;
[0084] - Class 4: A=V4 and B= P_123(al, a2), i.e. point A coinciding with vertex V4 and point B on the face defined by vertices V1-V2-V3;
[0085] - Class 5: A= P_123(al, 0) and B= P_134(0, a2), i.e. point A on the segment defined by vertices V1-V2 and point B on the segment defined by vertices V3-V4;
[0086] - Class 6: A= P_123(0, al) and B= P_134(0.5*a2, 0.5*a2), i.e. point A on the segment defined by vertices V2-V3 and point B on the segment defined by vertices VIVA;
[0087] - Class 7: A= P_134(al, 0) and B= P_124(0, a2), i.e. point A on segment defined by vertices V1-V3 and point B on segment defined by vertices V2-V4. Points A and B must reside within the faces of the tetrahedron; Thus, the domain of Al and A2 for classes 1- 4 is {0<=al,2<=l | al+a2<=l), while for classes 5-7 it is {0<=al,2<=l}.
[0088] These rules of interconnection of the generating beam, which define the seven topological classes of the method, are fundamental for the final printability of the geometries, which would otherwise result in non-interconnected beams and would compromise the final structural stability of the component.
[0089] Specifically, for classes 1-2-3 there are always fixed points on the outer surface of the cube where it is possible to interconnect cells of different geometry belonging to the same class. For classes 4-5-6-7 it is necessary to define the maximum permissible difference Aal and Aa2 between the values al, 2 of two adjacent cells. These conditions must be met for each adjacent cell, and then must be specified as constraints in the optimization algorithms.
[0090] For these classes, various conditions can ensure structural integrity of the final lattice. Conservative conditions are present here. Defining R1 and R2 as the radius values of two adjacent cells and max() as the operator that identifies the maximum between two values, we have:
[0091] For Class 4
[0092] (AalA2+Aa2A2)A0.5 < max(Rl,R2) For classes 5-6-7
[0093] | DI | < max(Rl,R2)
[0094] The generator segment AB can define the topology of the cell by octahedral symmetry operations. These are independent and therefore applicable in parallel. In the Mesh section, an alternative and equivalent sequence of operations based on simple symmetries (no translation, rotation, and antisymmetry) is proposed.
[0095] A code nomenclature forthe geometries of each class is also proposed. The name of the geometry follows the logic:
[0096] C(class number) - (al*100) - (a2*100)
[0097] So the class 1 geometry with al=0.35 and a2=0.15 will be Cl-35-15.
[0098] Fast Meshing
[0099] The "Fast Meshing" phase includes as input:
[0100] - the topological class,
[0101] - the variables al and a2,
[0102] - the radius of the generating beam (R), and
[0103] - the type of mesh (triangles, splines, etc.) desired.
[0104] In addition, this "fast meshing" phase includes a sequence of phases that are implemented by the second algorithm, as follows:
[0105] 1) Definition of the local space
[0106] As shown in Figure 5, we define an orthonormal local space Rloc: {X Y Z} with a right local triad {el e2 e3}, origin in A with e3 parallel to the axis of the beam, then: e3= (B-A) / norm(B-A)
[0107] The Graham-Shmidt process is applied to uniquely define the versor el. The versor e2 can be extracted from the vector product from e3 and el. The Graham-Shmidt process starts from a vector v that is not parallel to e3. To ensure this feature, we choose:
[0108] - Class 1: v= V3-V2
[0109] - Class 2: v= V3-V1
[0110] - Class 3: v= V2-V1
[0111] - Class 4: v= V3-V1
[0112] - Class 5: v= V2-V1 - Class 6: v= V3-V2
[0113] - Class ?: v= V3-V1
[0114] Other choices of v are possible, this one is chosen for simplicity. Thus, where norm is the operator that normalizes the vector to a unitary norm, while maintaining the orientation: el= norm(vl - dot(vl, e3) * e3) e2= norm(e3 x el)
[0115] We define
[0116] T21= {el, e2, e3} and
[0117] T12= inv(T21) such as the transformation matrices of the base.
[0118] A generic point of the space, on local base, will be:
[0119] P_loc= T12*(P - A)
[0120] A cylindrical base R_loc_cyl: {r, theta, Z} is defined, with axis parallel to e3 and with:
[0121] - rA2 = XA2 + YA2
[0122] - theta= arctan(Y / X)
[0123] 2) Intersection of the cylinder and the tetrahedron sides
[0124] As schematically illustrated in figure 6, the points of intersection of the cylinder with axis parallel to e3, of infinite length and radius R with the sides of the tetrahedron are defined.
[0125] There are various strategies for defining these points. For simplicity, the strategy adopted is:
[0126] - Define the points of the sides of the tetrahedron in a cylindrical base R_loc_cyl; and
[0127] - Search for points with a cylindrical local base coordinate r=R
[0128] It is possible to define these points analytically.
[0129] Alternatively, other possible approaches are as follows:
[0130] - Define the cylinder equation in implicit form and look for the intersection with the segments defined by the sides of the tetrahedron;
[0131] - Define the 3D curve representing the ellipse of projection of the cylinder on the faces of the tetrahedron and see the intersection with the sides of the tetrahedron;
[0132] - Define the 2D projection ellipse of the cylinder at local base al, 2 on the face ijk, and look for the points defined respectively by al=0, a2=0, al+a2=l
[0133] 3) Mesh angular refinement
[0134] The points of intersection between the cylinder and the sides of the tetrahedron are the points strictly necessary to create a closed mesh; however, there is a need to take other points to better approximate the cylinder profile.
[0135] There are various strategies for defining these points. As schematically illustrated in figure 7, according to the method of the present invention, the theta angular coordinate is extracted on a local cylindrical basis of the points defined in step 2 and, if the angle between two points A0 is greater than a chosen resolution angle 0res, a number of points on the circumference such as the lower integer of A0 / 0res are inserted. Figure 7 shows the example with the introduction of one point per arc. Points that reside outside the tetrahedron profile are not shown.
[0136] An equivalent approach is the definition of the curve of the ellipse of projection of the cylinder on the faces of the tetrahedron, the definition of the angular coordinates that define the domain of the curve and the introduction of intermediate points as described above. With this approach, the mesh nodes are defined automatically.
[0137] 4) Definition of nodes
[0138] Once the angular coordinates have been defined, the mesh nodes can be defined. There are various strategies for defining these nodes. As schematically illustrated in figure 8, the solution implemented by the present method involves the definition of the coordinates bl* and b2* of the point belonging to the ellipse of projection of the cylinder on the face ijk of the tetrahedron, for each theta angular coordinate (0) defined in the previous angular refinement phase of the aforementioned method.
[0139] Analytically we have:
[0140] [bl*; b2*]=inv([l 0 0; 0 1 0]*T12*Qijk)*( [R*cos(theta); R*sin(theta)] - ([1 0 0; 0 1 0]*T12*(qijk - A) )
[0141] The point belonging to the ellipse will be:
[0142] P= Q_ijk*[bl*; b2*] + qjjk If 0<=bl*<=l , 0<=b2*<=l and bl*+b2*<=l the point will reside inside the face of the tetrahedron.
[0143] These definitions allow you to define mesh nodes, which are points on tetrahedron faces with angular coordinates defined in step 3.
[0144] 5) Meshing
[0145] The nodes defined in step 4 can be used to define the mesh. Respectively to the type of mesh chosen (triangular, parallelepiped or splines) there are different sequences of operations.
[0146] For a meshing of parallelepipedes, it is sufficient to connect the nodes with the same angular coordinates to each other and connect them with those following or preceding the theta angular coordinate. In this case, the described connection is sufficient to define the outer mesh as well.
[0147] On the other hand, for a spline meshing, angular refinement is superfluous: the points of interconnection with the sides of the tetrahedron are sufficient to define the control points of the splines.
[0148] According to the present method, there are various approaches for triangular meshing, which is necessary to generate 3D printing (STL) files. For example, a bruteforce connection is possible, i.e. a triangulation by calculating the triangle with the smallest area, or a Delaunay tessellation.
[0149] With reference now to figure 9, the triangular meshing process according to the method of the present invention will be illustrated in detail.
[0150] Then, the nodes are divided into two subgroups, the nodes on the in view faces (Nodes) and on the shadowed faces (Nodes_2). A face ijk with normal n_ijk, oriented such that it comes out of the volume of the tetrahedron, can be in view or in shadow (to a parallel view and equiverse to the axis AB) with the relation of:
[0151] - n_ijk*e3 < 0 in view
[0152] - n_ijk * e3 > 0 in shadow
[0153] In the example in the figure, faces 123-124-134 are in view and face 234 is in shadow.
[0154] The set of nodes in shadow and in view has the same number of elements, and the nodes belonging to the sides of the tetrahedron extreme to the view are in common (in the example, the nodes on sides 23-24-34).
[0155] So, by ordering the nodes with increasing angular coordinate, each node ii in view will belong to two triangles tri and tr2 defined as:
[0156] - trl= [Nodes(ii), Nodes_2(ii+1), Nodes_2(ii)]
[0157] - tr2= [Nodes(ii), Nodes(ii+1), Nodes_2(ii+1)]
[0158] Since theta is a periodic variable and the Nodes set is ordered with increasing thetas, it is necessary to manually close the set by connecting the first and last nodes via triangles: trl= [Nodes(end), Nodes_2(l), Nodes_2(end)]; tr2= [Nodes(end), Nodes(l), Nodes_2(l)];
[0159] The vertices of these triangles can be used to define the outgoing normals: nl= (Nodes_2(ii+1) - Nodes(ii)) x (Nodes_2(ii)- - Nodes(ii)) / norm(nl) n2= (Nodes(ii+1) - Nodes(ii)) x (N odes_2(ii+l) - Nodes(ii)) / norm(n2).
[0160] It is important to point out here that in some particular cases it is possible that this logical connection also considers degenerate triangles at zero area. It is therefore necessary to verify that the area of the generated triangle is strictly positive.
[0161] 6) Definition of the outer Mesh
[0162] The mesh defined in the previous phase in step 5 is relative to the internal surface of the cell. To close the solid, a mesh of the outer surface is defined.
[0163] There are several strategies for defining this mesh. The following shows the definition strategy implemented for triangular mesh, defined by a grid of triangular elements T as shown in Figure 10.
[0164] Triangulation sees the connection of the nodes present on face 123 with the point A at the beginning of the axis of the beam or, in the case of class 4, with point B at the end of the axis.
[0165] The nodes of the inner surface mesh with z coordinate= -0.5 belong to plane 123 and, therefore, also to the outer surface mesh. Then, a subset is created with these, called Nodes_cap. These points are then connected with the starting point A of the beam axis, or with the end point B in the case of class 4, according to the logic:
[0166] A (o B) -> Nodes_cap(ii) -> Nodes_cap(ii+1)
[0167] The normal of these triangles will always be [0; 0; -1], If large beam radius values incorporate vertices VI, V2, or V3 into the ellipse, they must be added to the Nodes_cap set. The projection Vi_proj of the vertex Vi (i=l,2,3) on the plane el-e2 is extracted. It questions Vi_proj of its theta angular coordinate. Then, we define the point P* of the ellipse of intersection of the cylinder on face 123 with this angular coordinate, and its projection P*_proj on the plane el-e2 is seen.
[0168] So the following rule applies: norm(P*_proj) > norm(Vi_proj) > 0 -> Vi in Nodes_cap.
[0169] If the beam axis resides on the 1-2-3 plane, the end point B must also be added to the Nodes_cap set.
[0170] 7) Mirroring
[0171] Once the mesh has been defined in the tetrahedron, octahedral symmetry operations allow you to recreate the total mesh of the cell. Given the node-definition procedure, it is guaranteed that the mesh is of high quality, i.e. it has no holes, vertices or repeated faces, and that the normals are oriented consistently.
[0172] According to this method, the symmetry procedure involves a procedure based on sequential mirroring operations. More precisely:
[0173] Given a generic plane with normal n, the mirror transformation around the plane is defined, where I is the identity matrix:
[0174] M= 1 - 2* n*n'
[0175] The mirroring of a point around the plane is defined by:
[0176] P_mirorred= M*P
[0177] Therefore, according to this method, the sequence of symmetry operations to be applied to the set of triangles and normals is performed, updating itself at each step through the sum of the entities generated by the previous mirroring process.
[0178] In particular, the sequence to be applied to triangles and their normals refers to the following planes:
[0179] 134 -> 124 -> 134 -> XY -> YZ -> XZ
[0180] And in which: the XY plane has normal (0; 0; 1); the YZ plane has normal (1; 0; 0); and the XZ plane has normal (0; 1; 0).
[0181] 8) Subroutine for periodic structure generation
[0182] The steps described above generate the coordinates of the mesh nodes of a single unit cell, positioned at the origin of the reference system and oriented with the normals of the faces parallel to the axes {el, e2, e3}.
[0183] To generate the mesh of a generic periodic structure, it is provided that the method implements through a subroutine the affine transformations (scaling, translation and rotation) to the nodal coordinates of each cell. These transformations allow you to scale the cubic domain of the cell to a generic L-side, orient it according to the desired lattice, and position it correctly in its new origin within the lattice.
[0184] As schematically illustrated in figures 11A and 11B, a final mesh is illustrated in them with two angular resolutions and according to the method of the present invention.
[0185] More precisely, Figure 11A illustrates a triangular mesh for Cl-30-30 with n / 8 angular resolution, while Figure 11B illustrates a triangular mesh for Cl-30-30 with TT / 200 angular resolution.
[0186] In addition, figures 12 to 18 show examples among the geometries of the 7 classes obtained with the algorithms that implement the method of the present invention.
[0187] Applications
[0188] The applications of this method are many.
[0189] It can be the main graphical engine of a dedicated CAD, where rendering and mesh creation take place in a single pass, drastically reducing rendering and mesh export times.
[0190] Also, if the output is a tetrahedron mesh, it can be implemented in FEM programs to speed up volumetric meshing.
[0191] If the output is a splines mesh, it can be implemented in existing CAD software for fast rendering, or even in isoparametric FEM programs (which see a volumetric splines mesh).
[0192] The topology definition sub-algorithm, together with the mirroring operations, can be implemented in FEM programs for the analysis of beam lattices. The algorithm can be used in slicer software for the internal structure of infills for 3D printing.
[0193] The algorithm can be implemented for fast rendering of periodic structures in video games or animations.
[0194] The microstructured products that can be obtained with this method of realization can have applications as:
[0195] - Optimized heat exchangers;
[0196] - Heat pipes with high structural properties;
[0197] - Components with high rigidity and low weight (aerospace, automotive, etc.);
[0198] - Impact energy absorbers (guard rails, car bodies, etc.);
[0199] - Cranes and scaffolding with optimized interconnection;
[0200] - See-through bodies for cars or aircraft with reduced aerodynamic drag;
[0201] - Heat sinks optimized for electronic bases;
[0202] - Compliance mechanisms, i.e. mechanisms where joints are replaced by localized elastic deformation;
[0203] - Thermal decouplers with zero thermal expansion;
[0204] - Infills optimized for 3D prints.
[0205] Advantages
[0206] The present invention has numerous advantages.
[0207] According to the method of the present invention, it is provided that the algorithm implementing the method generates very quickly the meshes of unit cells for the creation of microstructured components with heterogeneous lattices. These cells are parameterized by continuous variables, allowing to optimize the topology through Gradient-based algorithms, and with this method rules are provided to ensure the interconnectability of the cells.
[0208] Another advantage is that the method provides:
[0209] - Possibility of creating heterogeneous lattices through continuous variables, and
[0210] - Fast meshing of structures.
[0211] A further advantage is given by the fact that since some of the geometries are in common between the classes, the method provides the possibility for future optimization algorithms to allow class jumps of geometries in conjunction with these geometries, as interconnectability is guaranteed by the criteria described above.
[0212] Another advantage is that according to the present method the meshing process is automatic and therefore almost instantaneous, unlike state-of-the-art methods which are based on solving equations.
[0213] A further advantage is that thanks to this method, the creation of lattices with a large number of cells is not as much of a problem as it can be with traditional CAD programs. The output mesh is the same as the one used for rendering, so there are no additional export steps, which are very resource-intensive in implicit CAD programs.
[0214] Another advantage is that according to this method, the quality of the mesh is always high, with no vertices or duplicate faces or holes. In addition, the normals are always oriented.
[0215] A further advantage is given by the fact that according to the present method, the distribution of the mesh nodes is optimal as they radially define the beams and their interconnection points. These are placed at the ends of each beam and, for a given angular resolution, are as few as possible, resulting in as few associated triangles as possible.
[0216] Another advantage is that, according to this method, it is provided that the mesh resolution is not spatial but angular. This feature allows the method to create meshes with the same number of nodes regardless of the radius of the beams, solving the disadvantages of state-of-the-art methods which, in the case of beams with a small radius, would require reduced spatial resolutions with a very high number of elements and consequent prohibitive mesh generation times. This is particularly useful in the case of heterogeneous structures, where the radius varies within the domain.
[0217] In fact, state-of-the-art methods do not allow to vary the spatial resolution in the structure, and the value is therefore fixed by the cell with the smallest radius. As a result, according to state-of-the-art methods, the meshing of cells with larger radii is highly non-optimized, with a greater number of triangles than necessary, making the meshing process expensive.
Claims
CLAIMS1. Computer implemented method by means of a computer apparatus for the creation of heterogeneous reticular structures with variable interconnection geometry, the method including the execution of a computer program including instructions which, if executed in said computer apparatus, implement the following phases: a first step in which the topology of a cube-shaped cell with octahedral symmetry is elaborated starting from an assembly of beam elements included in an independent tetrahedral subdomain of vertices (VI; V2, V3, V4); a second step of Meshing processing, and generation of three- dimensional geometries of these structures, the method being characterized by the fact that said first step generates a cell populated by beam elements of radius (R) as a result of operations of symmetry, rotation, and translation of these beam elements within said independent tetrahedral subdomain, said beam elements of said tetrahedral subdomain being defined by the radius (R) and by a start point and an end point (A, B) identified by continuous variables (al, a2) and identifying the axis of the beam element, in which said starting point and the end point (A, B) are identified by means of rules for defining points A and B defining the following classes:- Class 1: A=V1 and B= P_234(al, a2), i.e. point A coinciding with vertex VI and point B on the face defined by vertices V2-V3-V4;- Class 2: A=V2 and B= P_134(al, a2), i.e. point A coinciding with vertex V2 and point B on the face defined by vertices V1-V3-V4;- Class 3: A=V3 and B= P_124(al, a2), i.e. point A coinciding with vertex V3 and point B on the face defined by vertices V1-V2-V4;- Class 4: A=V4 and B= P_123(al, a2), i.e. point A coinciding with vertex V4 and point B on the face defined by vertices V1-V2-V3;- Class 5: A= P_123(al, 0) and B= P_134(0, a2), i.e. point A on the segment defined by vertices V1-V2 and point B on the segment defined by vertices V3-V4;- Class 6: A= P_123(0, al) and B= P_134(0.5*a2, 0.5*a2), i.e. point A on thesegment defined by vertices V2-V3 and point B on the segment defined by vertices VIV ;- Class 7: A= P_134(al, 0) and B= P_124(0, a2), i.e. point A on segment defined by vertices V1-V3 and point B on segment defined by vertices V2-V4, and by the fact that this second step includes the definition of two local spaces, in which a first local space is defined by a local triad (el; e2; e3) that originates at the said starting point (A) of the said beam element, and with a first versor (e3) of the said triplet (el; e2; e3) that is parallel to the axis of the said beam element, and such that the following equation is satisfied: e3= (B-A) / norm(B-A), and a second local space is defined as a cylindrical local space of radius (R) R_loc_cyl (r; theta) with axis parallel to said versor (e3) and theta=O corresponding to the points of said versor (el), and a further step of defining the points of intersection of a cylinder with the sides of said tetrahedron, said cylinder having an infinite length, an axis parallel to said vector (e3), and a radius (R), in which said points of intersection are defined by:- the points on the sides of said tetrahedron defined in R_loc_cyl with coordinate r = R; and- points with a local cylindrical base coordinate r = R.
2. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which in said first phase each of said beam elements positioned in said independent tetrahedral subdomain of each cell generate the entire lattice structure.
3. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which in said first step the geometry of said cell is obtained from the radius (R) of said beam member and the position of the start and end points of the axis of said beam element in said tedrahedral subdomain, and where the start point of said beam member is positioned at a vertex or on a side of said tetrahedral subdomain.
4. Method for the realization of heterogeneous lattice structures with variableinterconnection geometry according to any of the above claims, in which said first step includes the following sub-steps:- Definition of a cubic cell with a unit side defined in a Cartesian space with origin in the barycenter;- Definition of an independent tetrahedron within said cubic cell and in which one of its vertexes coincides with a vertex or with a side of said cubic cell;- Definition of the planes (ijk) of the external surfaces of said tetrahedron;- Definition of a two-dimensional orthogonal reference system with coordinates (bl, b2) in each of said planes (ijk); and- Perform symmetry operations to obtain a complete topology of said cell.
5. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which this second meshing step provides the following input data:- definition of the topological class of said cell;- definition of coordinates (al,a2);- definition of the radius (R) of said beam element; and- the type of mesh desired.
6. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which the Graham-Shmidt process is applied to univocally define a second versor (el) of said triad (el; e2; e3), while the third versor (e2) is obtained from the vector product of the versors (e3) and (el), called the Graham-Shmidt process starting from a vector (v) not parallel to said versor (e3).
7. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which this second meshing step includes a third angular refinement sub-step between said points of intersection between the cylinder and the sides of the said tetrahedron, in which an angular coordinate (0) is extracted on a cylindrical basis of said points of intersection and, if the angle between two points A0 is greater than a chosen angleof resolution 0res, a number of points on the circumference equivalent to the lower integer of A0 / 0res are inserted.
8. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which said second meshing step includes a fourth sub-step for defining the angular coordinates of the mesh nodes, in which the coordinates of the point belonging to the projection ellipse of said cylinder on the plane (ijk) relative to each face of said tetrahedron is defined, as a function of said angular coordinate (0), and in which said points with angular coordinate (0) contained on the faces of said tetrahedron define the nodes of said mesh.
9. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which said second meshing step includes a fifth meshing sub-step contained within said tetrahedron, where said nodes are used to define the type of mesh to be obtained, in which, in order to obtain a meshing of parallelepipeds, the nodes with the same angular coordinates are connected to each other, and connecting these nodes with those following or preceding the angular coordinate (0) and residing within the faces of the tetrahedron, and in which, in order to obtain a mesh of splines, the points of interconnection with the sides of said tetrahedron define the "control points" of the splines, and in which, in order to obtain a triangular meshing, the nodes contained on the surfaces of the said tetrahedron and on the sides of the said tetrahedron are defined, and such that by ordering the nodes with an increasing angular coordinate (0), pairs of triangles with a node in common are obtained.
10. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which said second meshing step includes a sixth meshing sub-step on the outer surface of the said tetrahedron, in which an external mesh is defined that includes the connection of the nodes on a face with the point (A) of the beginning of the axis of that beam element, or withthe point (B) of the end of the axis of said beam element.
11. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which said second meshing step includes a seventh mirroring sub-step, and in which, after the definition of the mesh in said tetrahedron, one or more octahedral symmetry operations are performed to recreate the total mesh of said cell.
12. Method for the realization of heterogeneous lattice structures with variable interconnection geometry according to the previous claim, in which said second meshing step includes an eighth sub-step of meshing generation of a generic periodic lattice structure, in which a subroutine is provided that implements affine transformations by scaling, translation, and rotation of the nodal coordinates of each cell, and in which these transformations scale the cubic domain of said cell to a generic side L, perform an orientation of said cell according to a predetermined lattice, and place said cell within said lattice in a predetermined position.
13. A computer program product comprising a computer program comprising instructions which, when executed in a computer apparatus, determine the implementation by the apparatus of a method for the realization of heterogeneous reticular structures with variable interconnection geometry according to one or more of the above claims.
Citation Information
Patent Citations
Hollow topology generation with lattices for computer aided design and manufacturing
US10635088B1