Method for constructing topology description function of three-dimensional spline component
By constructing a continuously differentiable 3D spline component topology description function, the problem of high expression complexity of existing topology description functions is solved, realizing high-order continuous variation and splice-free topology description, thus improving the efficiency and accuracy of topology optimization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-31
- Publication Date
- 2026-04-14
AI Technical Summary
The topology description functions used in existing 3D explicit topology optimization have limitations in geometric description capabilities, resulting in excessively high expression complexity, inability to smoothly represent space curves, and a surge in variables and complex boundary expressions.
The topological description function of the 3D spline component is constructed. By constructing a continuously differentiable first function and a second function, the roundness of the cross-sectional edge and the number of polygonal sides corresponding to the parameter coordinates are determined. The polar radius is determined in the polar coordinate system to form a continuously differentiable third function, which directly calculates the higher-order continuous change of the cross-sectional size with the parameter coordinates.
It reduces the expression complexity of topological description functions and achieves the capabilities of single equations, high-order continuity, variable cross sections, and no splicing through the step-by-step propagation of continuously differentiable functions, thereby improving the effectiveness of constructing topological description functions.
Smart Images

Figure CN121859482A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of structural topology optimization technology, and in particular to a method for constructing a topology description function for a three-dimensional spline component. Background Technology
[0002] Structural topology optimization, as an advanced digital design method, aims to find the optimal material distribution pattern under given design space and constraints in order to optimize one or more structural properties (such as stiffness, strength, or natural frequency).
[0003] In structural topology optimization, the topology description function is the core mapping carrier connecting design parameters and structural performance objectives. The effectiveness of the topology description function directly determines the accuracy and efficiency of the optimization results. If the topology description function can concisely and continuously represent complex geometric shapes, it can reduce the redundancy of design variables and lower computational complexity. Conversely, if the topology description function has insufficient descriptive ability (such as the discretized topology description function corresponding to existing linear components), it will lead to geometric representation distortion, performance calculation deviation, and ultimately cause the optimization results to deviate from the optimal solution.
[0004] Currently, the topological description functions used in 3D explicit topology optimization have significant limitations in geometric description capabilities. They are mostly constructed using piecewise straight skeletons and discrete parameters, which cannot smoothly express the force flow of spatial curves. They can only densely splice short segments, resulting in a surge of variables and complex boundary expressions.
[0005] Therefore, the expression of the topology description function currently used in 3D explicit topology optimization has the problem of excessive complexity. Summary of the Invention
[0006] Based on this, it is necessary to propose a method for constructing the topology description function of 3D spline components to address the above problems, aiming to solve the problem that the expression of the topology description function used in current 3D explicit topology optimization is too complex.
[0007] In a first aspect, embodiments of the present invention provide a method for constructing a topological description function for a three-dimensional spline component, the method comprising: Construct a first function and a second function; the first function uses parameter coordinates as variables to determine a first target value corresponding to the parameter coordinates on the spline component skeleton of the three-dimensional spline component in the preset design domain, and the first target value is used to characterize the roundness of the cross-sectional edge corresponding to the parameter coordinates; the second function uses the parameter coordinates as variables to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinates; both the first function and the second function are continuously differentiable mathematical operation functions; Based on the first function and the second function, a third function is constructed; the third function uses the parameter coordinates as variables to determine the shape of the cross section corresponding to the parameter coordinates; Based on the third function, construct the topological description function of the three-dimensional spline component.
[0008] In some embodiments, the third function uses the parameter coordinates and the polar angle in the polar coordinate system as variables to determine the polar radius corresponding to the parameter coordinates at the polar angle. The polar coordinate system is determined based on the local coordinate system corresponding to the parameter coordinates. The x-axis of the local coordinate system is perpendicular to the cross section corresponding to the parameter coordinates and points to the guide direction of the spline component skeleton. The y-axis and z-axis of the local coordinate system are both orthogonal to the x-axis. The polar radius at different polar angles is the size of the cross section corresponding to the parameter coordinates at different polar angles. The expression for the third function mentioned above is as follows: ; in, This represents the third function. This represents the first function. This represents the second function. Indicates the coordinates of the parameter. Indicates the polar angle.
[0009] In some embodiments, the expression for the above topology description function is as follows: ; ; in, u= , Indicates the coordinates of the target parameter. Represents the topology description function. This represents the y-axis coordinate value of the second three-dimensional coordinate system. The z-axis coordinate value represents the second three-dimensional coordinate. The target parameter coordinate is the parameter coordinate corresponding to the first three-dimensional coordinate of the material point in the global coordinate system in the preset design domain. The second three-dimensional coordinate is the three-dimensional coordinate of the material point in the local coordinate system corresponding to the target parameter coordinate.
[0010] In some embodiments, the above method includes: constructing a fourth function; the fourth function, using parameter coordinates as variables, is used to determine the third three-dimensional coordinates of the corresponding point on the spline component skeleton in a global coordinate system; differentiating the fourth function with respect to the parameter coordinates to determine the derivative components of the x-axis, y-axis, and z-axis of the global coordinate system that vary with the parameter coordinates; determining a fifth function based on the fourth function and the derivative components; the fifth function, using the first three-dimensional coordinates as variables, is used to determine the target parameter coordinates corresponding to the first three-dimensional coordinates.
[0011] In some embodiments, the expression for the fourth function described above is as follows: ; ; in, This represents the fourth function. , , () represents the third three-dimensional coordinate. = , = , = u represents the parameter coordinates. for B-spline basis functions, ( , , ) represents the three-dimensional coordinates of the i-th control point in the global coordinate system. The control point is used to determine the skeleton of the spline component, and n+1 is the preset number of control points.
[0012] In some embodiments, determining the fifth function based on the fourth function and the derivative component includes: The inverse world transformation expression is constructed based on the fourth function and the derivative component; the inverse world transformation expression is as follows: ; ; Where u represents the parameter coordinates, Represents the three-dimensional coordinates in the global coordinate system. , , () represents the three-dimensional coordinates in the local coordinate system. Represents the scaling matrix. Represents the rotation matrix. Represents the translation matrix, the Determined by the fourth function and the derivative component; Will , , Substituting the expression into the inverse world transformation expression, we obtain the first line of the simplified inverse world transformation expression as follows: ; in, This represents the fourth function. , , () represents the third three-dimensional coordinate. = = = They represent the methods used to determine , , The function, This represents the derivative component of the global coordinate system corresponding to the x-axis, which varies with the parameter coordinates. This represents the derivative component of the y-axis of the global coordinate system, which varies with the parameter coordinates. = This represents the derivative component of the global coordinate system corresponding to the z-axis, which varies with the parameter coordinates. make , and u= , = = and z= This yields the fifth function; , ) respectively represent the first three-dimensional coordinates The coordinates of the target parameter are represented.
[0013] 7. The method according to claim 6, characterized in that, the The expression is as follows: ; in, = Using parameter coordinates as variables, this is used to determine the dimension of the cross-section corresponding to the parameter coordinates along the y-direction of the corresponding local coordinate system. = Using parameter coordinates as variables, it is used to determine the cross section corresponding to the parameter coordinates along the corresponding local coordinate system. Dimensions of direction; The The expression is as follows: ; ; ; ; ; ; in, This represents the derivative component of the x-axis in the global coordinate system, which varies with the parametric coordinates. This represents the derivative component of the y-axis in the global coordinate system, which varies with the parameter coordinates. = This represents the derivative component of the z-axis in the global coordinate system, which varies with the parametric coordinates. = Using parameter coordinates as variables, it is used to determine the local coordinate system around the parameter coordinates. The rotation angle of the direction; The The expression is as follows: .
[0014] 8. The method according to claim 6, characterized in that, after constructing the inverse world transformation expression based on the fourth function and the derivative component, it includes: Will , , Substitute the expression into the inverse world transformation expression, and let u= in the inverse world transformation expression. , =0、 = = and z= The inverse transformation expression of the target world transformation is obtained; wherein, the inverse transformation expression of the target world transformation is used to determine the corresponding second three-dimensional coordinates based on the first three-dimensional coordinates of the material point and the target parameter coordinates. axis coordinate values and Axis coordinate values.
[0015] In some embodiments, the above method includes: defining the first function, the second function, and the polynomial function, using any one of the following: a polynomial function, a B-spline function, a piecewise linear function, and a trigonometric function. , , At least one of them.
[0016] In some embodiments, the above method includes: obtaining the second three-dimensional coordinates of the target material point in the preset design domain in the local coordinate system. axis coordinate values and Axis coordinate values; based on the topological description function, according to the second three-dimensional coordinates of the target material point in the local coordinate system. axis coordinate values and The second target value is determined by using the axis coordinate value and the target parameter coordinate corresponding to the target material point; if the second target value is greater than 0, the target material point is determined to be located inside the three-dimensional spline component; if the second target value is equal to 0, the target material point is determined to be located at the boundary of the three-dimensional spline component; if the second target value is less than 0, the target material point is determined to be located outside the three-dimensional spline component.
[0017] In some embodiments, the above-described method for obtaining the second three-dimensional coordinates of the target material point in the preset design domain in the local coordinate system is... axis coordinate values and The axis coordinate values include: obtaining the first three-dimensional coordinates of the target material point in the global coordinate system within the preset design domain; determining the target parameter coordinates corresponding to the target material point based on the first three-dimensional coordinates of the target material point in the global coordinate system using a fifth function; the fifth function uses the first three-dimensional coordinates of the material point in the global coordinate system as a variable to determine the target parameter coordinates corresponding to the first three-dimensional coordinates; and determining the second three-dimensional coordinates of the target material point in the local coordinate system based on the inverse transformation expression of the target world transformation, according to the first three-dimensional coordinates of the target material point in the global coordinate system and the target parameter coordinates corresponding to the target material point. axis coordinate values and The axis coordinate values; the inverse transformation expression of the target world transformation is used to determine the corresponding second three-dimensional coordinates based on the first three-dimensional coordinates of the material point and the target parameter coordinates. axis coordinate values and The first three-dimensional coordinate is the axis coordinate value, and the second three-dimensional coordinate is the three-dimensional coordinate in the local coordinate system.
[0018] Secondly, embodiments of the present invention provide an apparatus for constructing a topological description function for a three-dimensional spline component, the apparatus comprising: The first construction module is used to construct a first function and a second function. The first function uses parameter coordinates as variables to determine a first target value corresponding to the parameter coordinates on the spline component skeleton of the three-dimensional spline component in the preset design domain. The first target value is used to characterize the roundness of the cross-sectional edge corresponding to the parameter coordinates. The second function uses the parameter coordinates as variables to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinates. Both the first function and the second function are continuously differentiable mathematical operation functions. The second construction module is used to construct a third function based on the first function and the second function; the third function uses the parameter coordinates and the polar angle in the polar coordinate system as variables to determine the polar radius corresponding to the parameter coordinates at the polar angle. The polar coordinate system is determined based on the local coordinate system corresponding to the parameter coordinates. The x-axis of the local coordinate system is perpendicular to the cross section corresponding to the parameter coordinates and points to the guide direction of the spline component skeleton. The y-axis and z-axis of the local coordinate system are both orthogonal to the x-axis. The polar radius at different polar angles is the size of the cross section corresponding to the parameter coordinates at different polar angles. The third construction module is used to construct the topological description function of the three-dimensional spline component based on the third function.
[0019] Thirdly, embodiments of the present invention provide a computer-readable storage medium storing a computer program, which, when executed by a processor, causes the processor to perform the steps of the method described in the first aspect.
[0020] Fourthly, embodiments of the present invention provide a computer device including a memory and a processor, the memory storing a computer program, which, when executed by the processor, causes the processor to perform the steps of the method as described in the first aspect.
[0021] The method for constructing a topological description function for a three-dimensional spline component according to an embodiment of the present invention involves constructing a first function and a second function. The first function uses parameter coordinates as variables to determine a first target value corresponding to the parameter coordinates, and the first target value is used to characterize the roundness of the cross-sectional edge corresponding to the parameter coordinates. The second function uses parameter coordinates as variables to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinates. Both the first and second functions are continuously differentiable mathematical operation functions. Based on the first and second functions, a third function is constructed. The third function uses parameter coordinates and polar angles in a polar coordinate system as variables to determine the polar radius corresponding to the parameter coordinates at the polar angle. The polar coordinate system is determined based on the local coordinate system corresponding to the parameter coordinates. The x-axis of the local coordinate system is perpendicular to the cross-section corresponding to the parameter coordinates and points to the direction of the guide vector of the spline component skeleton. The y-axis and z-axis of the local coordinate system are both orthogonal to the x-axis. The polar radius at different polar angles is the size of the cross-section corresponding to the parameter coordinates at different polar angles. Based on the third function, a topological description function for the three-dimensional spline component is constructed. Thus, the first and second functions are both continuously differentiable functions with parameter coordinates as variables, outputting the "roundness of the cross-section" and the "number of polygonal sides" respectively. This allows for the acquisition of a continuous field along the path (parameter coordinates), completely eliminating geometric sharp edges and additional design variables caused by piecewise jumps. The third function, in the same polar coordinate system, uses parameter coordinates and polar angles as variables to directly calculate the corresponding polar diameter. A single analytical expression can make the cross-sectional dimensions continuously change with higher orders of parameter coordinates, thereby reducing the complexity of the topological description function expression. Since the first, second, and third functions pass the "continuous differentiability" property step by step, the resulting topological description function ultimately possesses the capabilities of "single equation, higher order continuity, variable cross-section, and no splicing." Therefore, the method for constructing topological description functions using this invention can improve the effectiveness of topological description function construction. Attached Figure Description
[0022] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0023] in: Figure 1 A flowchart illustrating the method for constructing a topological description function for a three-dimensional spline component according to an embodiment of the present invention; Figure 2 This is a schematic diagram of a local coordinate system for a cross section provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of the centerline of a three-dimensional spline component determined by a component skeleton spline function, provided in an embodiment of the present invention. Figure 4 This is a schematic diagram of a first embodiment of the three-dimensional spline component provided in this invention. Figure 5 This is a schematic diagram of a second embodiment of the three-dimensional spline component provided in this invention. Figure 6 A structural block diagram of an apparatus for constructing a topological description function of a three-dimensional spline component, as provided in an embodiment of the present invention; Figure 7 This is a structural block diagram of a computer device in one embodiment. Detailed Implementation
[0024] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0025] refer to Figure 1 , Figure 1 This is a flowchart illustrating a method for constructing a topological description function for a three-dimensional spline component according to an embodiment of the present invention. Specifically, it includes the following steps S1-S3: Step S1: Construct the first function and the second function.
[0026] The first target value mentioned above is used to characterize the roundness of the cross-sectional edge corresponding to the parameter coordinate.
[0027] The first function P(u) uses the parameter coordinate u as a variable to determine the first target value corresponding to the parameter coordinate u on the spline component skeleton of the 3D spline component in the preset design domain. Therefore, for the first function, the parameter coordinate can be taken from the parameter coordinates corresponding to points on the spline component skeleton to determine the roundness of the cross-sectional edge corresponding to the parameter coordinate. Thus, the first function can use the parameter coordinates on the spline component skeleton of the 3D spline component in the preset design domain as variables to determine the first target value corresponding to the parameter coordinate.
[0028] The spline component skeleton described above can be understood as the centerline of the three-dimensional spline component.
[0029] The second function N(u) described above uses the parameter coordinate u as a variable to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinate u on the spline component skeleton of the 3D spline component in the preset design domain. Similarly, for the second function, the parameter coordinate can be taken from the parameter coordinates corresponding to points on the spline component skeleton to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinate. Therefore, the second function can use the parameter coordinates on the spline component skeleton of the 3D spline component in the preset design domain as variables to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinate.
[0030] The spline component skeleton described above can be understood as the centerline of the three-dimensional spline component.
[0031] Both the first and second functions mentioned above are continuously differentiable mathematical operation functions.
[0032] Both the first and second functions mentioned above can be user-defined and relate to the parameter coordinates. The functions are: the former is used to adjust the "roundness" of the cross-sectional edges, and the latter is used to control the number of sides of a polygon-like structure.
[0033] Step S2: Construct the third function based on the first and second functions.
[0034] The third function uses the parameter coordinates as variables to determine the dimensions of the cross-section corresponding to those coordinates. Once the dimensions of the cross-section are determined, the cross-sectional shape can be determined. Therefore, this third function can be a component cross-sectional shape function, used to control the variation of the component's cross-section along its framework.
[0035] In one implementation, the third function can be a generalized polar coordinate hyperelliptic function, or it can be a closed curve described in the form of a point set, parametric equation, polygonal mesh, etc., such as a circle / elliptic function, a closed spline function, an implicit function based on Fourier descriptors or R functions, etc.
[0036] Step S3: Construct the topological description function of the 3D spline component based on the third function.
[0037] The topology description function can determine the second target value based on the target parameter coordinates corresponding to the first three-dimensional coordinates of the material point in the global coordinate system and the second three-dimensional coordinates of the material point in the local coordinate system corresponding to the target parameter coordinates. The second target value is used to determine whether the material point is located within the geometric region of the three-dimensional spline component.
[0038] Any closed curve in a plane can be transformed into a topological description function.
[0039] In this embodiment of the invention, the first and second functions are both continuously differentiable functions with parameter coordinates as variables, outputting the "roundness of the cross-section" and the "number of polygonal sides" respectively. This allows for the acquisition of a continuous field along the path (parameter coordinates), completely eliminating geometric sharp edges and additional design variables caused by piecewise jumps. The third function, in the same polar coordinate system, uses parameter coordinates and polar angles as variables to directly calculate the corresponding polar diameter. A single analytical expression can make the cross-sectional dimensions continuously change with the parameter coordinates at higher orders, significantly reducing the complexity of the boundary expression. Since the first, second, and third functions progressively pass on the "continuous differentiability" property, the resulting topological description function ultimately possesses the capabilities of "single equation, higher-order continuity, variable cross-section, and no splicing." Therefore, the method for constructing a topological description function using this invention can improve the effectiveness of topological description function construction.
[0040] In some embodiments, a local coordinate system of the cross section can be used. The third function mentioned above is defined below, where, The axis is perpendicular to the cross-section and points towards the guide vector direction of the spline component skeleton. and The two axes are orthogonal to it. The location where the component skeleton passes through the cross-section is defined as the origin of the local coordinate system. , can be like Figure 2 As shown, Figure 2 This is a schematic diagram of a local coordinate system for a cross-section provided in an embodiment of the present invention. Therefore, the cross-sectional shape of the component can be defined as any shape varying with parameter coordinates. A changing function. Taking a component whose cross-section is adjusted by a generalized polar coordinate hyperelliptic function as an example, this function can control the cross-section as the parametric coordinates change. Gradient transitions are performed between polygons with different numbers of sides.
[0041] Specifically, the third function mentioned above uses the parametric coordinates and the polar angle in the polar coordinate system as variables to determine the polar radius corresponding to the parametric coordinates at the polar angle. The polar coordinate system is determined based on the local coordinate system corresponding to the parametric coordinates, where the x-axis of the local coordinate system ( The y-axis is perpendicular to the cross-section corresponding to the parametric coordinates and points towards the guide vector direction of the spline component skeleton. (axis) and z-axis ( The axes are all related to the x-axis. The axes are orthogonal, and the position where the spline component skeleton passes through the cross section is defined as the origin of the local coordinate system. The polar diameter at different polar angles is the size of the cross section corresponding to the parametric coordinates at different polar angles.
[0042] The spline component skeleton is an arbitrary smooth curve in space. A local polar coordinate system (r, θ) can be established through any point on the curve, where r represents the polar radius and θ represents the polar angle. θ can be rotated 0–360° tangentially around the spline component skeleton. r can be the distance from the direction at the polar angle θ to the cross-sectional boundary. Therefore, the cross-sectional dimension at the polar angle θ can be determined. For parametric coordinates, the polar radius determined at different polar angles θ can collectively describe the corresponding cross-sectional profile, thus determining the cross-sectional shape.
[0043] In the local coordinate system, the cross-sectional profile is represented by angles. With parameterization, the expression for the third function can be as follows: ; in, This represents the third function. Represents the first function, Indicates the second function, Indicates the coordinates of the parameters. Indicates the polar angle.
[0044] In some embodiments, a polynomial function may be used to define the first function. Second function To define functions using polynomials For example, that is: ; in, Let the degree be the polynomial. The coefficients are polynomial coefficients (denoted as the first polynomial coefficients), determined by a set of specified parameter coordinates. control value The Vandermonde matrix is uniquely determined and solved using the following system of linear equations with coefficient matrices: .
[0045] Therefore, the pre-defined first polynomial coefficients It can be obtained through the following steps: Obtain m+1 parameter coordinates from the preset range.
[0046] For the f-th parameter coordinate among m+1 parameter coordinates f Substituting the coordinates of the f-th parameter into the initial first function yields the expression corresponding to the coordinates of the f-th parameter. The polynomial coefficients in the initial first function Not yet determined. The value of f ranges from 1 to m+1, and f is a positive integer.
[0047] Solve the polynomial coefficients of the linear equations for the Vandermonde matrix using the following coefficient matrix. : .
[0048] Following the steps outlined above for defining the first function, the second function can also be defined using a polynomial. , The expression can be as follows: ; in, The second polynomial coefficients are preset and can be determined by referring to the method and steps for determining the first polynomial coefficients, which will not be repeated here.
[0049] In some embodiments, a level set function (i.e., a topological description function) for the cross section can be constructed in a local coordinate system. The expression for the topological description function can be as follows: ; ; in, u= , Indicates the coordinates of the target parameter. Represents the topology description function. This represents the y-axis coordinate value of the second three-dimensional coordinate system. This represents the z-axis coordinate value of the second three-dimensional coordinate system.
[0050] The target parameter coordinates are the parameter coordinates corresponding to the first three-dimensional coordinates of the material point in the global coordinate system within the preset design domain. That is, the first three-dimensional coordinates are the three-dimensional coordinates of the material point in the global coordinate system, and the target parameter coordinates are the parameter coordinates corresponding to the material point. As can be seen above, a corresponding local coordinate system can be established based on the cross-sections corresponding to each parameter coordinate. ,in, The axis is perpendicular to the cross-section and points towards the guide vector direction of the spline component skeleton. and The two axes are orthogonal to it, and the position where the component skeleton passes through the cross-section is defined as the origin of the local coordinate system. Therefore, the second three-dimensional coordinates are the three-dimensional coordinates of the material point in the local coordinate system corresponding to the target parameter coordinates.
[0051] In some embodiments, the topological description function for constructing the 3D spline component based on the third function can be defined as follows: We obtain the objective third function, and construct the horizontal set function of the cross section based on the objective third function. Let u = ... , = , = This yields the topological description function.
[0052] The level set function of the above cross section is as follows: ; in, Indicates the arctangent of the four quadrants. Represent arbitrary points in the local coordinate system y-axis coordinate value, z-axis coordinate value.
[0053] And for any point in the local coordinate system ,exist: .
[0054] In addition to the above expressions, the cross-sectional horizontal set function can also be constructed using other analytical or numerical methods, such as generating it using parametric curves, grids, or binary images.
[0055] In some embodiments, the above method may further include the following steps: Construct the fourth function.
[0056] By differentiating the fourth function with respect to the parameter coordinates, we can determine the derivative vector components of the x-axis, y-axis, and z-axis of the global coordinate system as they change with the parameter coordinates.
[0057] The fifth function is determined based on the fourth function and the derivative component.
[0058] The fourth function p(u) mentioned above uses the parameter coordinates as variables to determine the third three-dimensional coordinates of the corresponding point on the spline component skeleton in the global coordinate system. The third three-dimensional coordinates are the three-dimensional coordinates of the corresponding point on the spline component skeleton in the global coordinate system.
[0059] The aforementioned parameter coordinates u∈[u0, u1] are normalized one-dimensional variables defined within a preset design domain. u0 and u1 can be set according to requirements, and [u0, u1] is a preset range, for example, [u0, u1] can be [0, 1]. For the fourth function, multiple specific parameter coordinates determined from the preset range can be given, thereby the fourth function determines the third-dimensional coordinates corresponding to these multiple parameter coordinates. The points corresponding to these multiple third-dimensional coordinates can be used to determine the spline component skeleton. Therefore, the fourth function uses parameter coordinates as variables to determine the third-dimensional coordinates of the points corresponding to the parameter coordinates used to determine the spline component skeleton within the preset design domain, in the global coordinate system (world coordinate system). The fourth function p(u) can be a continuously differentiable function with u as the independent variable.
[0060] The fourth function p(u) mentioned above can be a quasi-uniform B-spline curve function, or it can be a parameterized curve in other analytical or numerical forms, such as a non-uniform B-spline curve (NURBS), a Bézier curve, a polynomial curve, a spiral, etc. The key is that the curve function has a parameterized form and is differentiable. The component skeleton spline function (i.e., the fourth function p(u)) in the global coordinate system... Define.
[0061] The fifth function mentioned above uses the first three-dimensional coordinates as variables to determine the target parameter coordinates corresponding to the first three-dimensional coordinates.
[0062] In some embodiments, with a Taking the quasi-uniform B-spline 3D component skeleton as an example, the expression for the fourth function mentioned above can be as follows: ; ; in, This represents the fourth function. , , () represents the third three-dimensional coordinate. = , = , = u represents the parameter coordinates. for The second-order B-spline basis function, its mathematical form is about polynomial, ( , , ) represents the three-dimensional coordinates of the i-th control point in the global coordinate system. Control points are used to determine the skeleton of the spline component, and n+1 is the preset number of control points.
[0063] for example, These are the parametric coordinates of the curve.
[0064] The above , and For B-spline curves with respect to parameter coordinates Changing three-dimensional coordinates.
[0065] Therefore, by differentiating the fourth function with respect to the parameter coordinates, the derivative components of the global coordinate system corresponding to the x-axis, y-axis, and z-axis, respectively, as they change with the parameter coordinates, can be expressed as follows (the derivative expression of the B-spline component skeleton):
[0066] ; in, , and For B-spline curves with respect to parameter coordinates The changing derivative components, This represents the parameter coordinate value corresponding to the (i+k+1)th node of the B-spline curve. This represents the parameter coordinate value corresponding to the (i+1)th node of the B-spline curve.
[0067] The cross-section of the component is perpendicular to its skeleton, and each cross-section has a unique corresponding parametric coordinate. The values, that is, the parameters of the cross-section, can be obtained through parametric coordinates. Mark it.
[0068] In some embodiments, determining the fifth function based on the fourth function and the derivative component may include the following steps: The inverse world transformation expression is constructed based on the fourth function and the derivative components. This expression is used to transform 3D coordinates (x, y, z) in the global coordinate system to 3D coordinates in the local coordinate system. , , ).
[0069] The inverse world transformation expression is as follows: ; ; Where u represents the parameter coordinates, Represents the three-dimensional coordinates in the global coordinate system. , , () represents the three-dimensional coordinates in the local coordinate system. Represents the scaling matrix. Represents the rotation matrix. This represents the translation matrix. Determined by the fourth function and the derivative components, specifically, From the fourth function, derivative components, , as well as Sure, Using parametric coordinates as variables, this method determines the dimension of the cross-section corresponding to the parametric coordinates along the y-direction of the corresponding local coordinate system. Using parametric coordinates as variables, this is used to determine the cross section corresponding to the parametric coordinates along the corresponding local coordinate system. Dimensions of direction Using parametric coordinates as variables, it is used to determine the local coordinate system around the corresponding parametric coordinates. The rotation angle of the direction.
[0070] Will , , Substituting the expression into the inverse world transformation expression, we obtain the first line of the simplified inverse world transformation expression as follows: ; in, This represents the fourth function. , , () represents the third three-dimensional coordinate. = = = They represent the methods used to determine , , The function, This represents the derivative component of the x-axis in the global coordinate system, which varies with the parametric coordinates. This represents the derivative component of the y-axis in the global coordinate system, which varies with the parameter coordinates. = This represents the derivative component of the z-axis of the global coordinate system, which varies with the parameter coordinates.
[0071] make , and u= , = = and z= This leads to the fifth function.
[0072] ( , () represent the first three-dimensional coordinates respectively Indicates the coordinates of the target parameter.
[0073] Therefore, the expression for the fifth function mentioned above can be as follows: =0; in, This represents the x-axis coordinates of the global coordinate system corresponding to the target parameter. The changing derivative components, This represents the derivative component of the y-axis in the global coordinate system, which varies with the target parameter coordinates. This represents the derivative component of the z-axis in the global coordinate system, which varies with the target parameter coordinates. This represents the target parameter coordinates corresponding to the first three-dimensional coordinates. , , () represents the first three-dimensional coordinate. .
[0074] In some embodiments, the above , The above ,Will , , and , , Substitute the expression And let u = Then we can get a result about Equation of one variable =0.
[0075] Based on an example of a component skeleton ( (sub-quasi-uniform B-spline) =0 can be rearranged as: ; ; In the formula: ; ; ; ; in, and The polynomial coefficients of the B-spline basis functions exist: ; equation , It is a univariate polynomial equation, which can be solved directly using the Matlab built-in function `roots` to obtain the material points. Parametric coordinates of the cross section That is, the point was determined. The corresponding cross section.
[0076] Therefore, the expression for the fifth function mentioned above can also be as follows: ; ; In the formula: ; ; , ; in, and The polynomial coefficients of the B-spline basis functions exist: .
[0077] The inverse world transformation expression constructed above based on the fourth function and the derivative vector components can also be constructed based on the fourth function and the derivative vector components. The world transformation expression is used to transform the three-dimensional coordinates in the local coordinate system ( , , ) is converted into three-dimensional coordinates (x, y, z) in the global coordinate system.
[0078] The world transformation expression is as follows: ; = It is determined by the fourth function and the derivative vector components.
[0079] The inverse world transformation function is determined based on the world transformation expression. The inverse world transformation function is as follows: ; .
[0080] In some embodiments, the scaling matrix is used to describe the size of the component's cross-section as a function of the parameter coordinates. Changes, Depend on , Sure, The expression is as follows: ; in, = Using the parametric coordinates as variables, this is used to determine the dimension of the cross-section corresponding to the parametric coordinates along the y-direction of the corresponding local coordinate system. = Using parametric coordinates as variables, it is used to determine the cross section corresponding to the parametric coordinates along the corresponding local coordinate system. Dimensions of direction.
[0081] The rotation matrix is used to describe the three azimuth angles of the component's cross-section as a function of the parametric coordinates. Changes, From the guide vector components, Sure, The expression is as follows: ; ; ; ; Local coordinate system After the axis is rotated through the above coordinate system, its direction in the global coordinate system points to the guide vector of the component skeleton, that is: ; The solution is: ; ; Therefore, the rotation matrix Parameters in and Parameters can be used , and express.
[0082] therefore, ; ; in, This represents the derivative component of the x-axis in the global coordinate system, which varies with the parametric coordinates. This represents the derivative component of the y-axis in the global coordinate system, which varies with the parameter coordinates. = This represents the derivative component of the z-axis in the global coordinate system, which varies with the parametric coordinates. = Using parametric coordinates as variables, it is used to determine the local coordinate system around the corresponding parametric coordinates. The rotation angle of the direction.
[0083] The above formula exists In this case, its geometric meaning is that the direction of the guide vector of the component skeleton is parallel to... When the axes are parallel, You can select any angle, for example, take .
[0084] The translation matrix is used to describe the coordinates of the center point of the component's cross-section as a function of the parameter coordinates. Changes, Determined by the fourth function, The expression is as follows: ; in, = , = , = These represent functions used to determine the x-axis, y-axis, and z-axis coordinates of the third three-dimensional coordinate system, respectively, where u represents the parameter coordinates.
[0085] The coordinates of any point in the global coordinate system can be obtained through the inverse world transformation expression. Transform to the local coordinate system of the cross section superior.
[0086] In some embodiments, after constructing the inverse world transformation expression based on the fourth function and the derivative components, the following steps may also be included: Will , , Substitute the expression into the inverse world transformation expression, and let u= in the inverse world transformation expression. , = = , = and z= This yields the inverse transformation expression for the target world transformation.
[0087] The inverse transformation expression of the target world transformation is used to determine the corresponding second three-dimensional coordinates based on the first three-dimensional coordinates of the material point and the target parameter coordinates. axis coordinate values and Axis coordinate values.
[0088] The inverse transform expression for the target world transformation can be expressed as follows: .
[0089] Component cross-sectional dimension function ( , ) is used to control the scaling of the component's cross-section along the dimensions of its skeleton, rotation angle function This is used to control the rotation of the component's cross-section around the skeleton. The component's cross-sectional dimensions and the rotation angle of the cross-section around the skeleton's guide vector direction can be defined as arbitrary coordinates that vary with parameters. A changing function.
[0090] In some embodiments, any definable first function, second function, etc., can be used. , or Functions in analytical or numerical form, for the first function, the second function, , or Define the function. Specifically, the first function, second function, etc., can be defined using any one of the following: polynomial function, B-spline function, piecewise linear function, or trigonometric function. , , At least one of them.
[0091] To control the cross section along the local rectangular coordinate system using a polynomial and Dimensions of direction, and around Taking the rotation angle of direction as an example, in some embodiments, a polynomial function definition can be used. , , .
[0092] The above The expression can be as follows:
[0093] in, This represents the coefficients of the pre-defined third polynomial.
[0094] The The expression is as follows:
[0095] in, This represents the coefficients of the predefined fourth polynomial.
[0096] The expression is as follows:
[0097] in, This represents the coefficients of the pre-defined fifth polynomial.
[0098] The coefficients of the above polynomials can all be determined by referring to the steps and methods for determining the coefficients of the first polynomial, which will not be elaborated here.
[0099] The specific usage of topology description functions can be introduced through the following content.
[0100] In some embodiments, after determining the topology description function, a topology optimization method based on the topology description function can be used for topology optimization.
[0101] In this embodiment, due to the constructed topological description function The excellent mathematical property that the design variables are continuously differentiable means that the function can be directly used for analytical sensitivity analysis, and its partial derivatives can be calculated accurately and efficiently. This provides a solid foundation for embedding the topology description function into gradient optimization algorithms, which can improve the efficiency of topology optimization.
[0102] In some embodiments, after determining the topology description function as described above, the following steps may also be included: Obtain the second three-dimensional coordinates of the target material point in the local coordinate system within the preset design domain. axis coordinate values and Axis coordinate values. The second and third-dimensional coordinates of the target material point in the local coordinate system are the three-dimensional coordinates of the target material point in the corresponding local coordinate system.
[0103] Based on the topological description function, according to the second three-dimensional coordinates of the target material point in the local coordinate system. axis coordinate values The second target value is determined by using the axis coordinate values and the target parameter coordinates corresponding to the target material point.
[0104] If the second target value is greater than 0, the target material point is determined to be inside the 3D spline assembly. If the second target value is equal to 0, the target material point is determined to be located at the boundary of the 3D spline assembly; if the second target value is less than 0, the target material point is determined to be located outside the 3D spline assembly.
[0105] The above is based on the topological description function, according to the second three-dimensional coordinates of the target material point in the local coordinate system. axis coordinate values The second target value is determined by using the axis coordinates and the target parameter coordinates corresponding to the target material point. This can be achieved by setting the second three-dimensional coordinates of the target material point in a local coordinate system. axis coordinate values The axis coordinates and target parameter coordinates are substituted into the topology description function to obtain the second target value.
[0106] In some embodiments, the above-described method for obtaining the second three-dimensional coordinates of the target material point in the local coordinate system within the preset design domain... axis coordinate values and The axis coordinate values include the following steps: Obtain the first three-dimensional coordinates of the target material point in the global coordinate system within the preset design domain. The first three-dimensional coordinates of the target material point in the global coordinate system are the three-dimensional coordinates of the target material point in the global coordinate system.
[0107] Based on the fifth function, the target parameter coordinates corresponding to the target material point are determined according to the first three-dimensional coordinates of the target material point in the global coordinate system. The fifth function uses the first three-dimensional coordinates of the material point in the preset design domain in the global coordinate system as variables to determine the target parameter coordinates corresponding to the first three-dimensional coordinates.
[0108] Based on the inverse transformation expression of the target world transformation, the second three-dimensional coordinates of the target material point in the local coordinate system are determined according to the first three-dimensional coordinates of the target material point in the global coordinate system and the target parameter coordinates corresponding to the target material point. axis coordinate values and Axis coordinate values. The inverse transformation expression of the target world transformation is used to determine the corresponding second three-dimensional coordinates based on the first three-dimensional coordinates of the material point and the target parameter coordinates. axis coordinate values and The first axis coordinate value is the second three-dimensional coordinate, which is the three-dimensional coordinate in the local coordinate system.
[0109] The first three-dimensional coordinates, target parameter coordinates, and second three-dimensional coordinates of the target material point mentioned above are all specific numerical values.
[0110] The above method, based on the fifth function, determines the target parameter coordinates corresponding to the target material point according to the first three-dimensional coordinates of the target material point in the global coordinate system. This can be achieved by substituting the first three-dimensional coordinates of the target material point in the global coordinate system into the fifth function to obtain the target parameter coordinates corresponding to the target material point.
[0111] The above method, based on the inverse transformation expression of the target world transformation, determines the second three-dimensional coordinates of the target material point in the local coordinate system according to the first three-dimensional coordinates of the target material point in the global coordinate system and the target parameter coordinates corresponding to the target material point. axis coordinate values and The axis coordinates can be obtained by substituting the first three-dimensional coordinates of the target material point in the global coordinate system and the corresponding target material point into the inverse transformation expression of the target world transformation, thus obtaining the second three-dimensional coordinates of the target material point in the local coordinate system. axis coordinate values and Axis coordinate values.
[0112] In one implementation, the first three-dimensional coordinates of the target material point in the global coordinate system are substituted into the fifth function to solve the fifth function. At this time, there may be cases where there are no real roots or multiple real roots that meet the requirements. The existence of no real roots indicates... It is not located on any cross-section of the component, which allows for direct judgment. Located outside the component, there are multiple valid real root representations. It may be located on multiple cross-sections of the component simultaneously. In this case, multiple [values] can be calculated based on the topological description function. Values, only the maximum value is retained.
[0113] Therefore, in solving the fifth function If there are no real roots (i.e., the target parameter coordinates corresponding to the target material point have no real roots based on the first three-dimensional coordinates of the target material point in the global coordinate system), then the target material point is determined to be outside the three-dimensional spline component. This is in the case of solving the fifth function. If at least one valid real root exists (i.e., based on the first three-dimensional coordinates of the target material point in the global coordinate system, it is determined that the target parameter coordinates corresponding to the target material point have at least one valid real root), then for each target parameter coordinate corresponding to the target material point, based on the topological description function, according to the second three-dimensional coordinates of the target material point... axis coordinate values The axis coordinates and the target parameter coordinates corresponding to the target material point are used to determine the second target value corresponding to the target parameter coordinates of the target material point. The maximum value among at least one second target value is obtained. If the maximum value is greater than 0, the target material point is determined to be inside the three-dimensional spline component; if the maximum value is equal to 0, the target material point is determined to be on the boundary of the three-dimensional spline component; if the maximum value is less than 0, the target material point is determined to be outside the three-dimensional spline component.
[0114] because The selection of is arbitrary, therefore the above topological description function can determine the affiliation of any material point in the design domain, and can be used for the topological description of three-dimensional variable cross-section spline components.
[0115] To better understand the above method, the embodiments of the present invention provide the following content as a complete embodiment to illustrate the above method: Step 1: Define the spline function for the skeleton (centerline) of the 3D spline component.
[0116] The component skeleton spline function (the fourth function mentioned above) in the global coordinate system Define it. With a... Taking a quasi-uniform B-spline 3D component skeleton as an example, such as Figure 3 As shown, Figure 3 This is a schematic diagram of the centerline of a 3D spline component determined by the component skeleton spline function.
[0117] Its mathematical expression is: , (1); in, for The second-order B-spline basis function, its mathematical form is about polynomials; These are the parametric coordinates of the curve; , and For B-spline curves with respect to parameter coordinates Changing three-dimensional coordinates; , and The three-dimensional coordinates of the control points +1 represents the number of control points.
[0118] The derivative expression for the skeleton of the above B-spline component is:
[0119] (2); in, , and For B-spline curves with respect to parameter coordinates The changing derivative component, i.e. , and The B-spline curves corresponding to the x, y, and z axes are respectively the coordinates of the parameters. The changing guide vector components.
[0120] The cross-section of the component is perpendicular to its skeleton, and each cross-section has a unique corresponding parametric coordinate. The values, that is, the parameters of the cross-section, can be obtained through parametric coordinates. Mark it.
[0121] Step 2: Define the component cross-sectional shape function that varies with the parameter coordinates.
[0122] The component cross-section shape function is used to control the variation of the component cross-section along its skeleton.
[0123] In the local coordinate system of the cross section The following defines it, where The axis is perpendicular to the cross-section and points in the direction of the guide vector towards the component skeleton. and The two axes are orthogonal to it. The location where the component skeleton passes through the cross-section is defined as the origin of the local coordinate system. ,like Figure 2 As shown.
[0124] The cross-sectional shape of a component can be defined as any shape that varies with the parameter coordinates. A changing function. Taking a component whose cross-section is adjusted by a generalized polar coordinate hyperelliptic function as an example, this function can control the cross-section as the parametric coordinates change. Gradient transitions are performed between polygons with different numbers of sides.
[0125] In the local coordinate system, the cross-sectional profile is represented by angles. The parameterized cross-sectional radius function (the third function mentioned above) is expressed as: (3); In the formula, and All are custom-defined, regarding parameter coordinates. The functions (the first function and the second function mentioned above) are used to adjust the "roundness" of the cross-sectional edges, and the second function is used to control the number of sides of the polygon-like shape.
[0126] To define functions using polynomials For example, that is: (4); in, Let the degree be the polynomial. The coefficients are polynomial coefficients, defined by a set of specified parameter coordinates. control value The Vandermonde matrix is uniquely determined and solved using the following system of linear equations with coefficient matrices: (5); Referring to equations (4) and (5), the function can also be defined using a polynomial. This will not be elaborated upon here.
[0127] In the local coordinate system, the level set function of the cross section can be constructed as: (6); in, This represents the arctangent of the four quadrants. For any point in the local coordinate system... ,exist: (7); Step 3: Define the component cross-sectional dimensions and rotation angle functions that vary with the parameter coordinates.
[0128] The component cross-section size function is used to control the scaling of the component cross-section along its skeleton, and the rotation angle function is used to control the rotation of the component cross-section about the skeleton.
[0129] The cross-sectional dimensions of the component, and the rotation angle of the cross-section about the guide vector direction of the skeleton, can be defined as arbitrary coordinates that vary with parameters. A function of variation. To control the cross-section along the curve using a polynomial in a local Cartesian coordinate system. and Dimensions of direction, and around Taking the rotation angle of the direction as an example, the above three functions can be defined by analogy with equations (4) and (5): (8); Step 4: Establish the transformation relationship between global coordinates and local coordinates of the cross section.
[0130] This step utilizes world transformation to establish a global coordinate system. With parametric coordinates Local coordinate system of cross section The connection between them.
[0131] The world transformation is an affine transformation that combines scaling, rotation, and translation operations, achieved through matrices. Implementation. For example... Figure 2 As shown, this transformation will change the points in the local coordinate system Mapped to world coordinate system : (9); In the formula, , and These are the scaling matrix, rotation matrix, and translation matrix, respectively.
[0132] The scaling matrix is used to describe the size of the component's cross-section as a function of the parameter coordinates. The change is expressed as follows: (10); The rotation matrix is used to describe the three azimuth angles of the component's cross-section as a function of the parametric coordinates. The change is expressed as follows:
[0133]
[0134] (11);
[0135] Local coordinate system After the axis is rotated through the above coordinate system, its direction in the global coordinate system points to the guide vector of the component skeleton, that is: (12); The solution is: , (13); Therefore, the rotation matrix Parameters in and Parameters can be used , and express.
[0136] The above formula exists In this case, its geometric meaning is that the direction of the guide vector of the component skeleton is parallel to... When the axes are parallel, You can select any angle, for example, take .
[0137] The translation matrix is used to describe the coordinates of the center point of the component's cross-section as a function of the parameter coordinates. The change is expressed as follows: (14); The inverse world transformation expression corresponding to equation (9) is: , (15); This formula can be used to determine the coordinates of any point in the global coordinate system. Transform to the local coordinate system of the cross section superior.
[0138] Step 5: Determine whether the node in the global coordinate system is located inside the component.
[0139] This step is used to determine any point in the global coordinate system. Whether it is located inside the spline component.
[0140] Step 5.1: Determine the point The corresponding cross section.
[0141] Substituting equations (10)-(14) into equation (15), the first row of the inverse world transformation can be rearranged as follows: (16); On point Located at a certain parameter coordinate value When on the cross-section, according to the definition of the local coordinate system of the cross-section (see step 2), the following exists: (17); Then take step 1 , , and , , Substitute the expressions, i.e. equations (1) and (2), into the above equation and take... You can then get a result about The one-variable equation of .
[0142] Based on the example of the component skeleton in step 1 ( (sub-quasi-uniform B-spline), equation (17) can be rearranged as: , (18); In the formula: , , , (19); in, and The polynomial coefficients of the B-spline basis functions exist: (20); Equation (18) is a univariate polynomial equation, which can be solved directly using the Matlab built-in function `roots` to obtain the points. Parametric coordinates of the cross section That is, the point was determined. The corresponding cross section.
[0143] Step 5.2: Determine the point Whether it is located inside a component.
[0144] The obtained parameter coordinate values and points Coordinates in the global coordinate system Substituting into equation (15), the point can be obtained. Coordinate values in the relative coordinate system of the corresponding cross section: (twenty one); Substituting this into the level set function of equation (6) in the local coordinate system, the point can be determined. Whether it is located inside a component, i.e.: (twenty two); in: , (twenty three); Solve using equation (17) or (18) There are cases where there are no real roots or multiple real roots that meet the requirements. The former indicates... It is not located on any cross-section of the component, which allows us to determine... Located outside the component; the latter indicates Simultaneously located on multiple cross-sections of the component, multiple [items] can be calculated according to equation (23). Values, only the maximum value is retained.
[0145] because The selection of is arbitrary, therefore the above topological description function can determine the affiliation of any material point in the design domain, and can be used for the topological description of three-dimensional variable cross-section spline components.
[0146] The skeleton spline function, cross-sectional shape function, cross-sectional size function, cross-sectional rotation angle function, and cross-sectional level set function of the component defined in this invention can all be selected with respect to the parametric coordinates. The continuously differentiable functions (the absolute value functions in equation (3) are also differentiable), and the topological description functions constructed from this are... The design variables are also continuously differentiable. This excellent mathematical property means that the function can be directly used for analytical sensitivity analysis, and its partial derivatives can be calculated accurately and efficiently. This provides a solid foundation for embedding the three-dimensional variable cross-section spline component of this invention into the gradient optimization algorithm, completely avoiding the problems of computational errors, instability, and convergence difficulties that may be caused by numerical difference methods or geometric approximation methods.
[0147] Explanation of alternative solutions for each step of the above implementation method: Regarding step 1 (defining the component skeleton spline function): Skeleton curve type: In addition to quasi-uniform B-spline curves, the centerline can also be a parametric curve in other analytical or numerical forms, such as non-uniform B-spline curves (NURBS), Bézier curves, polynomial curves, spirals, etc.
[0148] Regarding step 2 (defining the component cross-sectional shape function): Cross-sectional shape function form: In addition to using the generalized polar coordinate hyperelliptic function, other closed curves described in the form of point sets, parametric equations, polygonal meshes, etc. can also be used, such as circle / elliptic functions, closed spline functions, implicit functions based on Fourier descriptors or R functions, etc.
[0149] Cross-sectional horizontal set function form: In addition to using the expression of equation (6), other analytical or numerical methods can also be used to construct it, such as using parametric curves, grids or binary images to generate it.
[0150] Regarding step 3 (defining the component cross-sectional dimensions and rotation angle function): Cross-sectional dimensions and rotation angle functions: In addition to polynomial functions, other analytical or numerical functions can also be used, such as B-spline functions, piecewise linear functions, trigonometric functions, etc.
[0151] Regarding step 4 (establishing the transformation relationship between global and local coordinates): Transformation order and form: The order of scaling, rotation, and translation transformations can be adjusted. The mathematical expression of the world transformation is the core, and its specific matrix form can be equivalently transformed mathematically according to the above order and the coordinate system used (such as whether homogeneous coordinates are included).
[0152] Regarding step 5 (determining whether a node in the global coordinate system is located inside a component): Parameter coordinate values Determination methods: In addition to solving for the vertical projection point (minimum distance point), in some application scenarios, other methods such as chord length parameterization approximation and nearest control point parameters can also be used to determine the associated parameters. .
[0153] Parameter coordinate values Solution methods: In addition to using the roots function in MATLAB, equations (17) or (18) can also be solved by using the eigenvalue method of the adjoint matrix, the iterative method, the real root isolation method (such as Sturm's theorem), intelligent algorithms (such as genetic algorithms) or dedicated root-finding tools (such as MPSolve).
[0154] This invention provides two types of three-dimensional spline components determined by the topological description function constructed using this method. Figure 4 This is a schematic diagram of the first embodiment of the three-dimensional spline component provided in the present invention. Its skeleton is a three-dimensional spline component of a quasi-uniform B-spline curve of the third order. Its cross-sectional shape gradually changes from a circle to a square along the skeleton, and the cross-sectional dimensions remain unchanged (the radius of the circle is the same as the side length of the square). Figure 5 The second embodiment of the three-dimensional spline component provided in this invention achieves a complex synchronous change in cross-sectional shape, evolving from a triangular-quadrilateral to a pentagonal shape, with the cross-sectional dimensions shrinking in the middle, and periodic rotation around the component skeleton axis at ±180°. These two components generate smooth, seamless spatial geometries using only a small number of control points and parameter functions (27 and 38 control parameters respectively), directly demonstrating the powerful capability and flexibility of the method in three-dimensional geometric description.
[0155] To better implement the above method, embodiments of the present invention provide an apparatus for constructing a topological description function for a three-dimensional spline component, referring to... Figure 6 , Figure 6 A structural block diagram of the apparatus for constructing a topological description function of a three-dimensional spline component provided in an embodiment of the present invention is shown below. Figure 6 As shown, the apparatus 600 for constructing the topology description function of the three-dimensional spline component may specifically include the following: The first construction module 601 is used to construct a first function and a second function; the first function uses parameter coordinates as variables to determine a first target value corresponding to the parameter coordinates on the spline component skeleton of the three-dimensional spline component in the preset design domain, and the first target value is used to characterize the roundness of the cross-sectional edge corresponding to the parameter coordinates; the second function uses the parameter coordinates as variables to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinates; the first function and the second function are both continuously differentiable mathematical operation functions; The second construction module 602 is used to construct a third function based on the first function and the second function; the third function uses the parameter coordinates as variables to determine the shape of the cross section corresponding to the parameter coordinates; The third construction module 603 is used to construct the topological description function of the three-dimensional spline component according to the third function.
[0156] The apparatus 600 for constructing the topology description function of a three-dimensional spline component provided in this embodiment of the invention can execute the technical solution shown in the above method embodiment. Its implementation principle and beneficial effects are similar, and will not be described again here.
[0157] Figure 7 An internal structural diagram of a computer device in one embodiment is shown. This computer device can specifically be a terminal or a server. Figure 7 As shown, the computer device includes a processor, memory, and a network interface connected via a system bus. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and may also store a computer program that, when executed by the processor, enables the processor to implement an age recognition method. The internal memory may also store a computer program that, when executed by the processor, enables the processor to implement the age recognition method. Those skilled in the art will understand that... Figure 7 The structure shown is merely a block diagram of a portion of the structure related to the present invention and does not constitute a limitation on the computer device to which the present invention is applied. A specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0158] In one embodiment, a computer device is provided, including a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the steps of the method described above for constructing a topological description function for a three-dimensional spline component.
[0159] In one embodiment, a computer-readable storage medium is provided storing a computer program that, when executed by a processor, causes the processor to perform the steps of the method for constructing the topological description function of a three-dimensional spline component.
[0160] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided by this invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.
[0161] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0162] The above-described embodiments are merely illustrative of several implementations of the present invention, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and these all fall within the protection scope of the present invention. Therefore, the protection scope of this patent should be determined by the appended claims. Please enter the specific implementation details.
Claims
1. A method for constructing a topological description function for a three-dimensional spline component, characterized in that, The method includes: Construct a first function and a second function; the first function uses parameter coordinates as variables to determine a first target value corresponding to the parameter coordinates on the spline component skeleton of the three-dimensional spline component in the preset design domain, and the first target value is used to characterize the roundness of the cross-sectional edge corresponding to the parameter coordinates; the second function uses the parameter coordinates as variables to determine the number of polygonal sides of the cross-section corresponding to the parameter coordinates; both the first function and the second function are continuously differentiable mathematical operation functions; Based on the first function and the second function, a third function is constructed; the third function uses the parameter coordinates as variables to determine the shape of the cross section corresponding to the parameter coordinates; Based on the third function, construct the topological description function of the three-dimensional spline component.
2. The method according to claim 1, characterized in that, The third function uses the parameter coordinates and the polar angle in the polar coordinate system as variables to determine the polar radius corresponding to the parameter coordinates at the polar angle. The polar coordinate system is determined based on the local coordinate system corresponding to the parameter coordinates. The x-axis of the local coordinate system is perpendicular to the cross section corresponding to the parameter coordinates and points to the guide direction of the spline component skeleton. The y-axis and z-axis of the local coordinate system are both orthogonal to the x-axis. The polar radius at different polar angles is the size of the cross section corresponding to the parameter coordinates at different polar angles. The expression for the third function is as follows: ; in, This represents the third function. This represents the first function. This represents the second function. Indicates the coordinates of the parameter. Indicates the polar angle.
3. The method according to claim 2, characterized in that, The expression for the topology description function is as follows: ; ; in, u= , Indicates the coordinates of the target parameter. Represents the topology description function. This represents the y-axis coordinate value of the second three-dimensional coordinate system. The z-axis coordinate value represents the second three-dimensional coordinate. The target parameter coordinate is the parameter coordinate corresponding to the first three-dimensional coordinate of the material point in the global coordinate system in the preset design domain. The second three-dimensional coordinate is the three-dimensional coordinate of the material point in the local coordinate system corresponding to the target parameter coordinate.
4. The method according to claim 3, characterized in that, The method includes: Construct a fourth function; the fourth function uses parameter coordinates as variables to determine the third three-dimensional coordinates of the corresponding point on the spline component skeleton in the global coordinate system; The derivative of the fourth function with respect to the parameter coordinates is used to determine the derivative vector components of the x-axis, y-axis, and z-axis of the global coordinate system that vary with the parameter coordinates. Based on the fourth function and the guide vector components, a fifth function is determined; the fifth function uses the first three-dimensional coordinates as variables to determine the target parameter coordinates corresponding to the first three-dimensional coordinates.
5. The method according to claim 4, characterized in that, The expression for the fourth function is as follows: ; ; in, This represents the fourth function. , , () represents the third three-dimensional coordinate. = , = , = u represents the parameter coordinates. for B-spline basis functions, ( , , ) represents the three-dimensional coordinates of the i-th control point in the global coordinate system. The control point is used to determine the skeleton of the spline component, and n+1 is the preset number of control points.
6. The method according to claim 4, characterized in that, The step of determining the fifth function based on the fourth function and the derivative component includes: The inverse world transformation expression is constructed based on the fourth function and the derivative component; the inverse world transformation expression is as follows: ; ; Where u represents the parameter coordinates, Represents the three-dimensional coordinates in the global coordinate system. , , () represents the three-dimensional coordinates in the local coordinate system. Represents the scaling matrix. Represents the rotation matrix. Denotes the translation matrix, the Determined by the fourth function and the derivative component; Will , , Substituting the expression into the inverse world transformation expression, we obtain the first line of the simplified inverse world transformation expression as follows: ; in, This represents the fourth function. , , () represents the third three-dimensional coordinate. = = = They represent the methods used to determine , , The function, This represents the derivative component of the global coordinate system corresponding to the x-axis, which varies with the parameter coordinates. This represents the derivative component of the y-axis of the global coordinate system, which varies with the parameter coordinates. = This represents the derivative component of the global coordinate system corresponding to the z-axis, which varies with the parameter coordinates. make , and u= , = = and z= This yields the fifth function; , ) respectively represent the first three-dimensional coordinates The coordinates of the target parameter are represented.
7. The method according to claim 6, characterized in that, The The expression is as follows: ; in, = Using parameter coordinates as variables, this is used to determine the dimension of the cross-section corresponding to the parameter coordinates along the y-direction of the corresponding local coordinate system. = Using parameter coordinates as variables, it is used to determine the cross section corresponding to the parameter coordinates along the corresponding local coordinate system. Dimensions of direction; The The expression is as follows: ; ; ; ; ; ; in, This represents the derivative component of the x-axis in the global coordinate system, which varies with the parametric coordinates. This represents the derivative component of the y-axis in the global coordinate system, which varies with the parameter coordinates. = This represents the derivative component of the z-axis in the global coordinate system, which varies with the parametric coordinates. = Using parameter coordinates as variables, it is used to determine the local coordinate system around the parameter coordinates. The rotation angle of the direction; The The expression is as follows: 。 8. The method according to claim 6, characterized in that, After constructing the inverse world transformation expression based on the fourth function and the derivative component, the process includes: Will , , Substitute the expression into the inverse world transformation expression, and let u= in the inverse world transformation expression. , =0、 = = and z= The inverse transformation expression of the target world transformation is obtained; wherein, the inverse transformation expression of the target world transformation is used to determine the corresponding second three-dimensional coordinates based on the first three-dimensional coordinates of the material point and the target parameter coordinates. axis coordinate values and Axis coordinate values.
9. The method according to claim 7, characterized in that, The method includes: The first function, the second function, and the third function are defined using any one of the following: polynomial function, B-spline function, piecewise linear function, or trigonometric function. , , At least one of them.
10. The method according to claim 1, characterized in that, The method includes: Obtain the second three-dimensional coordinates of the target material point in the local coordinate system within the preset design domain. axis coordinate values and Axis coordinate values; Based on the topological description function, and according to the second three-dimensional coordinates of the target material point in the local coordinate system... axis coordinate values and The second target value is determined by using the axis coordinate values and the target parameter coordinates corresponding to the target material point; If the second target value is greater than 0, the target material point is determined to be located inside the three-dimensional spline component; if the second target value is equal to 0, the target material point is determined to be located at the boundary of the three-dimensional spline component; if the second target value is less than 0, the target material point is determined to be located outside the three-dimensional spline component.
11. The method according to claim 10, characterized in that, The second three-dimensional coordinates of the target material point in the preset design domain in the local coordinate system are obtained. axis coordinate values and Axis coordinate values, including: Obtain the first three-dimensional coordinates of the target material point in the preset design domain in the global coordinate system; Based on the fifth function, the target parameter coordinates corresponding to the target material point are determined according to the first three-dimensional coordinates of the target material point in the global coordinate system; the fifth function uses the first three-dimensional coordinates of the material point in the preset design domain in the global coordinate system as a variable to determine the target parameter coordinates corresponding to the first three-dimensional coordinates. Based on the inverse transformation expression of the target world transformation, the second three-dimensional coordinates of the target material point in the local coordinate system are determined according to the first three-dimensional coordinates of the target material point in the global coordinate system and the target parameter coordinates corresponding to the target material point. axis coordinate values and The axis coordinate values; the inverse transformation expression of the target world transformation is used to determine the corresponding second three-dimensional coordinates based on the first three-dimensional coordinates of the material point and the target parameter coordinates. axis coordinate values and The first three-dimensional coordinate is the axis coordinate value, and the second three-dimensional coordinate is the three-dimensional coordinate in the local coordinate system.