Progressive iterative approximation optimization method for continuous splicing in vehicle shell modeling

Through the gradual iterative approximation optimization method, control points are adjusted to optimize the crop surface, and the compatibility and high-order continuity problems at multiple surface nodes are solved, and gap splicing and efficient calculation of the vehicle shell are realized.

CN119885433AActive Publication Date: 2025-04-25ZHEJIANG UNIV
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411948809.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-27
Publication Date
2025-04-25
Estimated Expiration
2044-12-27

AI Technical Summary

Technical Problem

The prior art is difficult to maintain high-order continuity when dealing with compatibility problems at nodes between multiple surfaces and crop surface splicing, especially under irregular boundary conditions.

Method used

The gradual iterative approximation optimization method is adopted to calculate the error between the surface and the data point, adjust the control points, so that the cropped surface gradually approaches the target data, realize gradual iterative approximation, and automatically insert new nodes in areas with large errors to optimize the distribution of control points.

Benefits of technology

It realizes effective splicing of gaps in the housing of the vehicle, ensuring convergence, and greatly reducing the consumption of computing memory. It also builds an iterative format of C0, C1, and C2 continuity, which is suitable for complex model design scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119885433A_ABST
    Figure CN119885433A_ABST
Patent Text Reader

Abstract

The invention discloses a progressive iterative approximation optimization method for continuous splicing in vehicle shell modeling. The method comprises the following steps: constructing a three-dimensional model of a to-be-spliced vehicle shell by using a computer, and obtaining equations of a plurality of to-be-fitted surface patch curved surfaces of the to-be-spliced vehicle shell and control points in each to-be-fitted surface patch curved surface according to the three-dimensional model; iteratively updating the equation of the curved surface of the to-be-fitted surface patch continuously according to the equation of the curved surface of the to-be-fitted surface patch and the control points in the curved surface of the to-be-fitted surface patch until an iteration error threshold value is met, and finally splicing the to-be-fitted surface patch of the vehicle shell to be spliced according to the final equation of the curved surface of the to-be-fitted surface patch. Therefore, the complete seamless vehicle shell is obtained. According to the method, progressive iteration of the tailored curved surface and the complete B-spline curved surface is achieved, the C0, C1 and C2 continuity of the curved surfaces is met, different curved surface smoothness and accuracy requirements are met, the method is efficient and convergent, and memory consumption of calculation is greatly reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a general curved surface continuous splicing technology, and in particular to a progressive iterative approximation optimization method for continuous splicing in vehicle shell modeling. Background Art

[0002] Given a model composed of multiple surfaces, based on a specific continuity condition, it is required to achieve continuous splicing between the surfaces that meet the condition. This type of problem is very important in the fields of shipbuilding, aerospace, etc., because the continuity of the surface will have a significant impact on its physical properties. Many scholars have studied this problem in depth and proposed many methods based on different types of surfaces. These methods can be roughly divided into the following categories:

[0003] A geometric continuity stitching method based on Bézier surfaces. This method achieves geometric continuity stitching of adjacent Bézier surface patches by accurately adjusting the control points of adjacent surface patches, effectively avoiding discontinuity in the transition area and ensuring smooth transition of surface patches at shared boundaries. This method has been widely used in surface modeling and geometric design, especially in scenarios where precise control of surface boundaries and curvature is required.

[0004] G based on B-spline surface 2 Continuous splicing method. This method is used for the G of adjacent B-spline surfaces. 2 The continuity condition is proposed, and a strategy for achieving smooth splicing by adjusting control points and weights is proposed, and the direction and curvature of adjacent surfaces at the boundary are ensured to be consistent through optimization algorithms. This method can effectively improve the smoothness of the surface and avoid discontinuities in the splicing area. This method has high practical value in industrial applications such as automotive and aviation design, and also provides a basis for subsequent research on the continuity of more complex surfaces.

[0005] G based on NURBS surface 1 Continuous splicing method. This method converts the G of the B-spline surface 2 The continuity is extended to NURBS surfaces. By constructing a uniform control point and weight distribution model, G-connection between NURBS surfaces of arbitrary structure is achieved. 1 Continuity ensures smooth transition between adjacent NURBS surfaces when they are joined. This method not only improves the design efficiency of complex NURBS surfaces, but also has important applications in engineering design and simulation.

[0006] Although existing methods have made significant progress in the continuous splicing of Bézier surfaces, B-spline surfaces, and NURBS surfaces, there are still some shortcomings. First, there is a compatibility problem when multiple surfaces are spliced ​​around the same node. To ensure the global G 2Continuity: The surfaces to be spliced ​​must be consistent in direction, curvature, and control points. However, existing research mainly focuses on the splicing of adjacent surfaces, lacks in-depth discussion of the compatibility of multiple surfaces at nodes, which limits its application in complex splicing scenarios. Secondly, existing methods mainly target regular surfaces, such as Bézier surfaces, complete B-spline surfaces, or NURBS surfaces. However, in practical applications, especially in the design of cars or aircraft, the splicing of trimmed surfaces often involves irregular boundary conditions. Existing continuous splicing methods are difficult to maintain high-order continuity under these irregular conditions, so they have obvious limitations when dealing with the splicing of trimmed surfaces. Summary of the invention

[0007] The purpose of the present invention is to address the deficiencies of the prior art and to propose a progressive iterative approximation optimization method for continuous splicing in vehicle shell modeling.

[0008] 1. A progressive iterative approximation optimization method for continuous splicing in vehicle shell modeling, comprising the following steps:

[0009] S1. Use a computer to construct a three-dimensional model of the vehicle shell to be spliced, and obtain equations of several patch surfaces to be fitted and control points in each patch surface to be fitted of the vehicle shell to be spliced ​​according to the three-dimensional model.

[0010] S2. Traverse all edges of a patch surface to be fitted to obtain several gap edges, perform comprehensive processing on each gap edge, and according to the result of the comprehensive processing, repeatedly perform difference vector processing and update processing on the control points of the patch surface to be fitted in turn to obtain the coordinates of the new control points, update the equation of the patch surface to be fitted according to the coordinates of the new control points, and obtain the error according to the coordinate processing of the new control points, and stop the iteration until the error meets the requirement of stopping iteration, and use the last updated equation of the patch surface to be fitted as the splicing equation of the patch surface to be fitted.

[0011] S3, using the same method as step S2 to traverse all the patch surfaces to be fitted to obtain the splicing equations of all the patch surfaces to be fitted.

[0012] S4. According to the obtained splicing equations of all the patch surfaces to be fitted, the patch surfaces to be fitted of the vehicle shell are spliced, so as to fill the existing gaps and finally obtain a complete vehicle shell without gaps.

[0013] The step S2 is specifically as follows:

[0014] S201, traversing all edges of a patch surface to be fitted to obtain a plurality of gap edges, sampling each gap edge to obtain a plurality of sampling points and parameters of each sampling point.

[0015] S202, projecting each sampling point onto the edge of an adjacent patch surface to obtain a projection point corresponding to each sampling point, and taking each projection point as a target point, that is, obtaining a target point corresponding to each sampling point.

[0016] S203 , performing derivative processing on each target point to obtain a first-order directional derivative and a second-order directional derivative of each target point on the patch surface where the target point is located.

[0017] S204. Take each target point, first-order directional derivative and second-order directional derivative obtained in step S203 as a target data set for each target point.

[0018] S205. According to the equation of the patch surface to be fitted and the target data set obtained in step S204, difference vector processing is performed on each target point to obtain a zero-order continuity difference vector, a first-order continuity difference vector and a second-order continuity difference vector of each target point.

[0019] S206. Perform difference vector processing on each control point of the patch surface to be fitted according to the obtained zero-order continuity difference vector, first-order continuity difference vector and second-order continuity difference vector of each target point, and obtain the fitting vector of zero-order continuity, the fitting vector of first-order continuity and the fitting vector of second-order continuity of each control point.

[0020] S207. Update all control points according to the preset zero-order continuity weight, first-order continuity weight and second-order continuity weight of the control points and the fitting vector of zero-order continuity, the fitting vector of first-order continuity and the fitting vector of zero-order continuity of each control point obtained in step S206 to obtain new coordinates of all control points.

[0021] S208, substituting the obtained new coordinates of all control points into the equation of the patch surface to be fitted for processing, to obtain a new equation of the patch surface to be fitted.

[0022] S209: Perform error processing based on the new coordinates of all control points obtained in step S206 and the target data set obtained in step S24 to obtain a zero-order continuity error, a first-order continuity error and a second-order continuity error.

[0023] S210, judging whether the error meets the requirement of stopping iteration:

[0024] If the zero-order continuity error, the first-order continuity error and the second-order continuity error are not less than the preset iteration error threshold, the above steps S206 to S209 are repeated.

[0025] If the zero-order continuity error, the first-order continuity error and the second-order continuity error are all less than the preset iterative error threshold, the iteration is stopped, and the equation of the new patch surface to be fitted obtained in step S208 is used as the final equation of the patch surface to be fitted, that is, the splicing equation of the patch surface to be fitted is obtained.

[0026] The patch surface to be fitted in step S1 is a trimmed surface or a complete B-spline surface.

[0027] In step S205:

[0028] The zero-order continuity difference vector of the target point is set according to the following formula:

[0029]

[0030] The first-order continuity difference vector of the target point is set according to the following formula:

[0031]

[0032] The second-order continuity difference vector of the target point is set according to the following formula:

[0033]

[0034] Where (1, α), (2, α), and (3, α) represent the zero-order continuity, first-order continuity, and second-order continuity of the αth iteration, respectively; l represents the difference vector at parameter t l Department; They represent the surface to be fitted at the parameter t at the αth iteration. l At the point, the difference vector between the first-order directional derivative and the target data, and the difference vector between the second-order directional derivative and the target data; t l represents the parameter corresponding to the lth sampling point on the boundary of the patch surface to be fitted; u(t l ) represents the horizontal coordinate of the lth sampling point on the boundary of the patch surface to be fitted in the parameter domain, v(t l ) represents the ordinate of the lth sampling point on the boundary of the patch surface to be fitted in the parameter domain. represents the (i, j)th control point at the αth iteration, B i () represents the i-th basis function of the patch surface to be fitted in the u direction, B j () represents the jth basis function of the patch surface to be fitted in the v direction, D i,j () indicates the relationship between u(t l ) and v(t l ) function, E i,j () indicates the relationship between u(t l ) and v(t l) set the function, p l represents the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted, p′ l Represents the first-order derivative value of the normal at the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted, p″ l Represents the normal second-order derivative value at the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted.

[0035] In step S206:

[0036] The fitting vector of the zero-order continuity of the control point is set according to the following formula:

[0037]

[0038] The fitting vector of the first-order continuity of the control point is set according to the following formula:

[0039]

[0040] The fitting vector of the second-order continuity of the control point is set according to the following formula:

[0041]

[0042] Where (1, α), (2, α), and (3, α) represent the zero-order continuity, first-order continuity, and second-order continuity of the αth iteration, respectively; l represents the difference vector at parameter t l Department; They represent the control point S at the αth iteration. i,j The corresponding difference vector of the zero-order partial derivative, the difference vector of the first-order partial derivative and the difference vector of the second-order partial derivative; k represents the number of sampling points on the boundary of the patch surface to be fitted.

[0043] In step S207:

[0044] The new coordinates of the control point are set according to the following formula:

[0045]

[0046] In the formula, denote the (i, j)th control point at the αth and α+1th iterations respectively; μ denotes the convergence coefficient; k1 denotes the preset zero-order continuity weight; k2 denotes the preset first-order continuity weight; k3 denotes the preset second-order continuity weight; λ max (A) represents the maximum eigenvalue of matrix A; A1 represents the zero-order continuity collocation matrix; A2 represents the first-order continuity collocation matrix; A3 represents the second-order continuity collocation matrix; represents the transpose of matrix A1; represents the transpose of matrix A2; represents the transpose of matrix A3; t k represents the parameter corresponding to the kth sampling point on the surface boundary; B1(u(t1))B1(v(t1)) represents the product of the value of the first basis function in the u direction and the value of the first basis function in the v direction at parameter t1; B1(u(t k ))B1(v(t k )) represents parameter t k The product of the value of the first basis function in the u direction of the surface and the value of the first basis function in the v direction; It represents the product of the value of the n1th basis function in the u direction of the surface at parameter t1 and the value of the n2th basis function in the v direction; Indicates that the parameter t k The value of the n1th and n2th basis functions of the surface at; Representation function In the parameter t k The value at Representation function In the parameter t k The value at D 1,1 (u(t1), v(t1)) represents the function D 1,1 The value at parameter t1; D 1,1 (u(t k ), v(t k )) represents the function D 1,1 In the parameter t k The value at Representation function The value at parameter t1; E 1,1 (u(t1), v(t1)) represents the function E 1,1 The value at parameter t1; E 1,1 (u(t k ), v(t k )) represents the function E 1,1 In the parameter t k The value at Representation function The value at parameter t1.

[0047] In step S209:

[0048] The zero-order continuity error is set according to the following formula:

[0049]

[0050] The first-order continuity error is set according to the following formula:

[0051]

[0052] The second-order continuity error is set according to the following formula:

[0053]

[0054] Wherein, err1 represents the zero-order continuity error; err2 represents the zero-order continuity error; err3 represents the zero-order continuity error; represents the maximum value of l from 1 to k; ||·||2 represents the bi-norm of the vector; p l , p′ l , p″ l They represent the target point, the first-order directional derivative of the target point, and the second-order directional derivative of the target point respectively.

[0055] 2. A computer device comprises a memory and a processor, wherein the memory stores a computer program, and the processor executes the steps of the above method when executing the computer program.

[0056] 3. A computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the steps of the above method when executed by a processor.

[0057] The innovation of the present invention lies in the progressive iterative approximation optimization method that adopts the progressive iterative characteristics of the clipped surface, which achieves the beneficial effect of splicing the gaps existing in the shell of the vehicle, brings the advantage of greatly reducing the consumption of computing memory while ensuring convergence, and also realizes the iterative format of C0, C1, and C2 continuity, providing a basis for more complex model design scenarios.

[0058] Compared with the background technology, the present invention has the following advantages:

[0059] 1. The present invention uniquely discovers and utilizes the progressive iterative characteristics of the trimmed surface. By calculating the error between the surface and the data points and adjusting the control points, the trimmed surface gradually approaches the target data, thus achieving progressive iterative approximation. New nodes are automatically inserted into areas with large errors, and the distribution of control points is optimized to improve fitting accuracy. This makes up for the shortcomings of traditional methods in processing trimmed surface splicing, and is more suitable for scenes requiring complex boundary conditions in the fields of automobiles and aviation.

[0060] 2. The method of the present invention is an efficient and convergent iterative algorithm, which greatly reduces the consumption of computing memory while ensuring convergence. The method in the background art is more resource-saving, especially showing performance advantages when processing large-scale data and complex shapes.

[0061] 3. The method of the present invention constructs a method for realizing C 0 , C 1 , C 2The iterative format of continuity allows users to set weight coefficients based on each order of continuity, so that the surface can simultaneously meet the zero-order, first-order, and second-order continuity requirements during iterative optimization, thus achieving simultaneous optimization of multi-order continuity (C0, C1, C2) of the surface. This unified framework of multi-order continuity can be flexibly adjusted during the iterative optimization process to adapt to different surface smoothness and accuracy requirements. This feature is significantly better than the single continuity method in the background technology and is suitable for more complex model design scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] Figure 1 is a flow chart of the present invention;

[0063] Figure 2 Schematic diagram of a vehicle before zero-order continuity repair in an embodiment of the present invention;

[0064] Figure 3 Schematic diagram of a vehicle after zero-order continuity repair in an embodiment of the present invention;

[0065] Figure 4 A schematic diagram of a vehicle before high-order continuity repair in an embodiment of the present invention;

[0066] Figure 5 Schematic diagram of a vehicle after high-order continuity repair in an embodiment of the present invention. DETAILED DESCRIPTION

[0067] The present invention is described in more detail below in conjunction with the accompanying drawings and embodiments, but the present invention is not limited thereto. For those skilled in the art, several improvements and modifications can be made without departing from the principles of the present invention, and these improvements and modifications are also considered to be within the scope of protection of the present invention. The contents not described in detail in this specification belong to the prior art known to professional and technical personnel in the field.

[0068] like Figure 1 As shown, a specific embodiment of a progressive iterative approximation optimization method for continuous splicing in a vehicle shell modeling of the present invention is as follows:

[0069] S1. Use a computer to construct a three-dimensional model of the shell of the vehicle to be spliced, and obtain the equations of several patch surfaces to be fitted and the control points in each patch surface to be fitted of the shell of the vehicle to be spliced ​​according to the three-dimensional model; the schematic diagram of the vehicle before zero-order continuity repair in this embodiment is as follows Figure 2 As shown, the schematic diagram of the vehicle before the high-order continuous repair in this embodiment is as follows Figure 4 shown.

[0070] The patch surface to be fitted is a clipping surface.

[0071] The equation of the clipping surface shown is specifically:

[0072] C(t)=S(u(t), v(t)), t∈[0,1]

[0073]

[0074] Where u and v are the parameters of the two-dimensional directions on the cutting surface; n1 and n2 are the number of control points on the cutting surface in the u and v directions respectively; B i (u), B j (v) represents the i-th basis function in the u direction and the j-th basis function in the v direction respectively; S i,j Represents the basis function B of the surface S(u, v) i (u)B j (v) is the coordinate of the control point corresponding to the clipping edge; t is the parameter of the clipping edge; (u(t), v(t)) is the parametric curve corresponding to the clipping edge; S(u, v) represents the equation of the B-spline surface; C(t) represents the clipping edge of the surface.

[0075] S2. Traverse all edges of a patch surface to be fitted to obtain several gap edges, perform comprehensive processing on each gap edge, and according to the result of the comprehensive processing, repeatedly perform difference vector processing and update processing on the control points of the patch surface to be fitted in turn to obtain the coordinates of the new control points, update the equation of the patch surface to be fitted according to the coordinates of the new control points, and obtain the error according to the coordinate processing of the new control points, and stop the iteration until the error meets the requirement of stopping iteration, and use the last updated equation of the patch surface to be fitted as the splicing equation of the patch surface to be fitted.

[0076] Step S2 is specifically as follows:

[0077] S201, traversing all edges of a patch surface to be fitted to obtain a plurality of gap edges, sampling each gap edge to obtain a plurality of sampling points and parameters of each sampling point.

[0078] In the specific implementation, according to the equation of the clipped surface in step S1, sampling is performed on the gap edge of the patch surface to be fitted to obtain sampling points {S(u(t i )v(t i ))} i=1,2,...,k and the corresponding parameters {t1, t2, …, t k}.

[0079] S202, projecting each sampling point onto the edge of the adjacent patch surface to obtain the projection point and the parameters of the projection point corresponding to each sampling point, and taking each projection point as a target point, that is, obtaining the target point corresponding to each sampling point.

[0080] In a specific implementation, the sampling points in step S201 are projected onto the boundary of the adjacent surface to obtain the corresponding projection points {p1, p2, ..., p k}.

[0081] S203, performing derivative processing on each target point to obtain a first-order directional derivative and a second-order directional derivative of each target point.

[0082] In the specific implementation, the first-order directional derivatives {p′1, p′2, …, p′ k} and the second-order directional derivatives {p″1, p″2, …, p″ k}.

[0083] S204. Take each target point, first-order directional derivative and second-order directional derivative obtained in step S203 as a target data set for each target point.

[0084] S205. According to the equation of the patch surface to be fitted and the target data set obtained in step S204, difference vector processing is performed on each target point to obtain a zero-order continuity difference vector, a first-order continuity difference vector and a second-order continuity difference vector of each target point.

[0085] The zero-order continuity difference vector of the target point is set according to the following formula:

[0086]

[0087] The first-order continuity difference vector of the target point is set according to the following formula:

[0088]

[0089] The second-order continuity difference vector of the target point is set according to the following formula:

[0090]

[0091] Where (1, α), (2, α), and (3, α) represent the zero-order continuity, first-order continuity, and second-order continuity of the αth iteration, respectively; l represents the difference vector at parameter t l Department; They represent the surface to be fitted at the parameter t at the αth iteration. l At the point, the difference vector between the first-order directional derivative and the target data, and the difference vector between the second-order directional derivative and the target data; t l represents the parameter corresponding to the lth sampling point on the boundary of the patch surface to be fitted; u(t l ) represents the horizontal coordinate of the lth sampling point on the boundary of the patch surface to be fitted in the parameter domain, v(t l) represents the ordinate of the lth sampling point on the boundary of the patch surface to be fitted in the parameter domain. represents the (i, j)th control point at the αth iteration, B i () represents the i-th basis function of the patch surface to be fitted in the u direction, B j () represents the jth basis function of the patch surface to be fitted in the v direction, D i,j () indicates the relationship between u(t l ) and v(t l ) function, E i,j () indicates the relationship between u(t l ) and v(t l ) set the function, p l represents the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted, p′ l Represents the first-order derivative value of the normal at the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted, p″ l Represents the normal second-order derivative value at the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted.

[0092] Among them, the function D i,j (u(t l ), v(t l ))、E i,j (u(t l ), v(t l )) are calculated by the following formula:

[0093] D i,j (u(t),v(t))=v t (t)B′ i (u(t))B j (v(t))-u t (t)B i (u(t))B′ j (v(t))

[0094]

[0095] Where, the subscripts i and j correspond to the basis functions of the (i, j)th patch surface to be fitted, and u t (t), v t (t) are the derivatives of the parameter curve of the clipped surface in step S1 with respect to t, B′ i (u(t)),B″ i (u(t)) are the first-order and second-order derivatives of the ith basis function at u(t).

[0096] S206. Perform difference vector processing on each control point of the patch surface to be fitted according to the obtained zero-order continuity difference vector, first-order continuity difference vector and second-order continuity difference vector of each target point to obtain the difference vector of the zero-order partial derivative, the difference vector of the first-order partial derivative and the difference vector of the second-order partial derivative of each control point.

[0097] The fitting vector for zero-order continuity of the control points is set as follows:

[0098]

[0099] The fitting vector of the first-order continuity of the control points is set as follows:

[0100]

[0101] The fitting vector of the second-order continuity of the control points is set as follows:

[0102]

[0103] Where (1, α), (2, α), and (3, α) represent the zero-order continuity, first-order continuity, and second-order continuity of the αth iteration, respectively; l represents the difference vector at parameter t l Department; They represent the control point S at the αth iteration. i,j The corresponding difference vector of the zero-order partial derivative, the difference vector of the first-order partial derivative and the difference vector of the second-order partial derivative; k represents the number of sampling points on the boundary of the original surface.

[0104] S207. Update all control points according to the preset zero-order continuity weight, first-order continuity weight and second-order continuity weight of the control points and the fitting vector of zero-order continuity, first-order continuity and second-order continuity of each control point obtained in step S206 to obtain new coordinates of all control points.

[0105] The new coordinates of the control points are set according to the following formula:

[0106]

[0107] In the formula, denote the (i, j)th control point at the αth and α+1th iterations respectively; μ denotes the convergence coefficient; k1 denotes the preset zero-order continuity weight; k2 denotes the preset first-order continuity weight; k3 denotes the preset second-order continuity weight; λ max (A) represents the maximum eigenvalue of matrix A; A1 represents the zero-order continuity collocation matrix; A2 represents the first-order continuity collocation matrix; A3 represents the second-order continuity collocation matrix; represents the transpose of matrix A1; represents the transpose of matrix A2; represents the transpose of matrix A3; t k represents the parameter corresponding to the kth sampling point on the surface boundary; B1(u(t1))B1(v(t1)) represents the product of the value of the first basis function in the u direction and the value of the first basis function in the v direction at parameter t1; B1(u(t k ))B1(v(t k )) represents parameter t k The product of the value of the first basis function in the u direction of the surface and the value of the first basis function in the v direction; It represents the product of the value of the n1th basis function in the u direction of the surface at parameter t1 and the value of the n2th basis function in the v direction; Indicates that the parameter t k The value of the n1th and n2th basis functions of the surface at; Representation function In the parameter t k The value at Representation function In the parameter t k The value at D 1,1 (u(t1), v(t1)) represents the function D 1,1 The value at parameter t1; D 1,1 (u(t K ), v(t K )) represents the function D 1,1 In the parameter t k The value at Representation function The value at parameter t1; E 1,1 (u(t1), v(t1)) represents the function E 1,1 The value at parameter t1; E 1,1 (u(t k ), v(t k )) represents the function E 1,1 In the parameter t k The value at Representation function The value at parameter t1.

[0108] Among them, the function D i,j (u(t l ), v(t l ))、E i,j (u(t l ), v(t l )) are calculated by the following formula:

[0109] D i,j (u(t),v(t))=v t (t)B′i (u(t))B j (v(t))-u t (t)B i (u(t))B′ j (v(t))

[0110]

[0111] Where, the subscripts i and j correspond to the basis functions of the (i, j)th original surface, and u t (t), v t (t) are the derivatives of the parameter curve of the clipped surface in step S1 with respect to t, B′ i (u(t)),B″ i (u(t)) are the first-order and second-order derivatives of the ith basis function at u(t).

[0112] S208, substituting the obtained new coordinates of all control points into the equation of the patch surface to be fitted to perform fitting processing, so as to obtain a new equation of the patch surface to be fitted.

[0113] S209: Perform error processing based on the new coordinates of all control points obtained in step S206 and the target data set obtained in step S24 to obtain a zero-order continuity error, a first-order continuity error and a second-order continuity error.

[0114] The zero-order continuity error is set according to the following formula:

[0115]

[0116] The first-order continuity error is set according to the following formula:

[0117]

[0118] The second-order continuity error is set according to the following formula:

[0119]

[0120] Wherein, err1 represents the zero-order continuity error; err2 represents the zero-order continuity error; err3 represents the zero-order continuity error; represents the maximum value of l from 1 to k; ||·||2 represents the bi-norm of the vector; p l , p′ l , p″ l They represent the target point, the first-order directional derivative of the target point, and the second-order directional derivative of the target point respectively.

[0121] S210, judging whether the error meets the requirement of stopping iteration:

[0122] If the zero-order continuity error, the first-order continuity error and the second-order continuity error are not less than the preset iteration error threshold, then repeat the above steps S206 to S209;

[0123] If the zero-order continuity error, the first-order continuity error and the second-order continuity error are all less than the preset iterative error threshold, the iteration is stopped, and the equation of the new patch surface to be fitted obtained in step S208 is used as the final equation of the patch surface to be fitted, that is, the splicing equation of the patch surface to be fitted is obtained.

[0124] In the specific implementation, the iteration is stopped only when err1<∈, err2<∈, and err3<∈ are all satisfied. If the condition cannot be satisfied under the given number of iterations, the node insertion algorithm is used for the area with large errors, and nodes are inserted as needed to obtain new control points and return to step S206 for the next iteration. Thus, the iteration is continued until the equation of the final patch surface to be fitted meets the preset iteration error threshold ∈ requirement.

[0125] S3, using the same method as step S2 to traverse all the patch surfaces to be fitted to obtain the splicing equations of all the patch surfaces to be fitted.

[0126] S4. According to the obtained splicing equations of all the patch surfaces to be fitted, the patch surfaces to be fitted of the vehicle shell are spliced, thereby splicing the existing gaps, and finally obtaining a complete vehicle shell without gaps.

[0127] In a specific implementation, the present invention is used when the vehicle shell has been constructed, but there are gaps between the facets, and splicing is required to manufacture a complete vehicle shell without gaps. Therefore, step S4 is specifically: according to the splicing equations of all the facet surfaces to be fitted, all the facets with gaps are spliced ​​so that there are no gaps in the vehicle shell, thereby obtaining a complete vehicle shell without gaps. The vehicle schematic diagram after zero-order continuity repair in this embodiment is finally as follows Figure 3 As shown, the schematic diagram of the vehicle after high-order continuity repair in the embodiment of the present invention is finally as shown in Figure 5 shown.

[0128] The present invention also provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.

[0129] The present invention also provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the above method are implemented.

[0130] The innovation of the present invention lies in the progressive iterative approximation optimization method that adopts the progressive iterative characteristics of the clipped surface, which achieves the beneficial effect of splicing the gaps existing in the shell of the vehicle, brings the advantage of greatly reducing the consumption of computing memory while ensuring convergence, and also realizes the iterative format of C0, C1, and C2 continuity, providing a basis for more complex model design scenarios.

Claims

1. A progressive iterative approximation optimization method for continuous splicing in vehicle shell modeling, characterized in that: The following steps are involved: S1. Use a computer to construct a three-dimensional model of the vehicle shell to be spliced, and obtain equations of several patch surfaces to be fitted and control points in each patch surface to be fitted of the vehicle shell to be spliced ​​according to the three-dimensional model; S2. Traverse all edges of a patch surface to be fitted to obtain a number of gap edges, perform comprehensive processing on each gap edge, and according to the result of the comprehensive processing, repeatedly perform difference vector processing and update processing on the control points of the patch surface to be fitted in turn to obtain the coordinates of the new control points, update the equation of the patch surface to be fitted according to the coordinates of the new control points, and obtain the error according to the coordinate processing of the new control points, and stop the iteration until the error meets the requirement of stopping iteration, and use the last updated equation of the patch surface to be fitted as the splicing equation of the patch surface to be fitted; S3, using the same method as step S2 to traverse all the patch surfaces to be fitted to obtain the splicing equations of all the patch surfaces to be fitted; S4. According to the obtained splicing equations of all the patch surfaces to be fitted, the patch surfaces to be fitted of the vehicle shell are spliced, thereby splicing the existing gaps, and finally obtaining a complete vehicle shell without gaps.

2. The method for progressive iterative approximation optimization of continuous splicing in vehicle shell modeling according to claim 1, characterized in that: The step S2 is specifically as follows: S201, traversing all edges of a patch surface to be fitted to obtain a plurality of gap edges, sampling each gap edge to obtain a plurality of sampling points and parameters of each sampling point; S202, projecting each sampling point onto the edge of an adjacent patch surface to obtain a projection point corresponding to each sampling point, and taking each projection point as a target point, that is, obtaining a target point corresponding to each sampling point; S203, performing a derivative process on each target point to obtain a first-order directional derivative and a second-order directional derivative of each target point on the patch surface where the target point is located; S204, taking each target point, the first-order directional derivative and the second-order directional derivative obtained in step S203 as a target data set for each target point; S205, performing difference vector processing on each target point according to the equation of the patch surface to be fitted and the target data set obtained in step S204, to obtain a zero-order continuity difference vector, a first-order continuity difference vector and a second-order continuity difference vector of each target point; S206, performing difference vector processing on each control point of the patch surface to be fitted according to the obtained zero-order continuity difference vector, first-order continuity difference vector and second-order continuity difference vector of each target point, to obtain a fitting vector of zero-order continuity, a fitting vector of first-order continuity and a fitting vector of second-order continuity of each control point; S207, updating all control points according to the preset zero-order continuity weight, first-order continuity weight and second-order continuity weight of the control point and the fitting vector of zero-order continuity, the fitting vector of first-order continuity and the fitting vector of zero-order continuity of each control point obtained in step S206, to obtain new coordinates of all control points; S208, substituting the obtained new coordinates of all control points into the equation of the patch surface to be fitted for processing, to obtain a new equation of the patch surface to be fitted; S209, performing error processing according to the new coordinates of all control points obtained in step S206 and the target data set obtained in step S24 to obtain a zero-order continuity error, a first-order continuity error and a second-order continuity error; S210, judging whether the error meets the requirement of stopping iteration: If the zero-order continuity error, the first-order continuity error and the second-order continuity error are not less than the preset iteration error threshold, then repeat the above steps S206 to S209; If the zero-order continuity error, the first-order continuity error and the second-order continuity error are all less than the preset iterative error threshold, the iteration is stopped, and the equation of the new patch surface to be fitted obtained in step S208 is used as the final equation of the patch surface to be fitted, that is, the splicing equation of the patch surface to be fitted is obtained.

3. The method for progressive iterative approximation optimization of continuous splicing in vehicle shell modeling according to claim 1, characterized in that: The patch surface to be fitted in step S1 is a trimmed surface or a complete B-spline surface.

4. The method for progressive iterative approximation optimization of continuous splicing in vehicle shell modeling according to claim 2, characterized in that: In step S205: The zero-order continuity difference vector of the target point is set according to the following formula: The first-order continuity difference vector of the target point is set according to the following formula: The second-order continuity difference vector of the target point is set according to the following formula: Where (1, α), (2, α), and (3, α) represent the zero-order continuity, first-order continuity, and second-order continuity of the αth iteration, respectively; l represents the difference vector at parameter t l Department; They represent the surface to be fitted at the parameter t at the αth iteration. l At the point, the difference vector between the first-order directional derivative and the target data, and the difference vector between the second-order directional derivative and the target data; t l represents the parameter corresponding to the lth sampling point on the boundary of the patch surface to be fitted; u(t l ) represents the horizontal coordinate of the lth sampling point on the boundary of the patch surface to be fitted in the parameter domain, v(t l ) represents the ordinate of the lth sampling point on the boundary of the patch surface to be fitted in the parameter domain. represents the (i, j)th control point at the αth iteration, B i () represents the i-th basis function of the patch surface to be fitted in the u direction, B j () represents the jth basis function of the patch surface to be fitted in the v direction, D i,j () indicates the relationship between u(t l ) and v(t l ) function, E i,j () indicates the relationship between u(t l ) and v(t l ) set the function, p l represents the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted, p′ l Represents the first-order derivative value of the normal at the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted, p″ l Represents the normal second-order derivative value at the projection point corresponding to the lth sampling point on the boundary of the patch surface to be fitted.

5. The method for progressive iterative approximation optimization of continuous splicing in vehicle shell modeling according to claim 2, characterized in that: In step S206: The fitting vector of the zero-order continuity of the control point is set according to the following formula: The fitting vector of the first-order continuity of the control point is set according to the following formula: The fitting vector of the second-order continuity of the control point is set according to the following formula: Where (1, α), (2, α), and (3, α) represent the zero-order continuity, first-order continuity, and second-order continuity of the αth iteration, respectively; l represents the difference vector at parameter t l Department; They represent the control point S at the αth iteration. i,j The corresponding difference vector of the zero-order partial derivative, the difference vector of the first-order partial derivative and the difference vector of the second-order partial derivative; k represents the number of sampling points on the boundary of the patch surface to be fitted.

6. The method for progressive iterative approximation optimization of continuous splicing in vehicle shell modeling according to claim 2, characterized in that: In step S207: The new coordinates of the control point are set according to the following formula: In the formula, represents the (i, j)th control point at the αth and α+1th iterations respectively; μ represents the convergence coefficient; k1 represents the preset zero-order continuity weight; k2 represents the preset first-order continuity weight; k3 represents the preset second-order continuity weight; λ max (A) represents the maximum eigenvalue of matrix A; A1 represents the zero-order continuity configuration matrix; A2 represents the first-order continuity configuration matrix; A3 represents the second-order continuity configuration matrix; represents the transpose of matrix A1; represents the transpose of matrix A2; represents the transpose of matrix A3; t k represents the parameter corresponding to the kth sampling point on the surface boundary; B1(u(t1))B1(v(t1)) represents the product of the value of the first basis function in the u direction and the value of the first basis function in the v direction at parameter t1; B1(u(t k ))B1(v(t k )) represents parameter t k The product of the value of the first basis function in the u direction of the surface and the value of the first basis function in the v direction; It represents the product of the value of the n1th basis function in the u direction of the surface at parameter t1 and the value of the n2th basis function in the v direction; Indicates that the parameter t k The value of the n1th and n2th basis functions of the surface at; Representation function In the parameter t k The value at Representation function In the parameter t k The value at D 1,1 (u(t1), v(t1)) represents the function D 1,1 The value at parameter t1; D 1,1 (u(t k ), v(t k )) represents the function D 1,1 In the parameter t k The value at Representation function The value at parameter t1; E 1,1 (u(t1), v(t1)) represents the function E 1,1 The value at parameter t1; E 1,1 (u(t k ), v(t k )) represents the function E 1,1 In the parameter t k The value at Representation function The value at parameter t1.

7. The method for progressive iterative approximation optimization of continuous splicing in vehicle shell modeling according to claim 2, characterized in that: In step S209: The zero-order continuity error is set according to the following formula: The first-order continuity error is set according to the following formula: The second-order continuity error is set according to the following formula: Wherein, err1 represents the zero-order continuity error; err2 represents the zero-order continuity error; err3 represents the zero-order continuity error; represents the maximum value of l from 1 to k; ||·||2 represents the bi-norm of the vector; p l , p′ l , p″ l They represent the target point, the first-order directional derivative of the target point, and the second-order directional derivative of the target point respectively.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • B spline curved surface reconstruction method

    CN110211201A

  • NURBS curve surface fairing generation method in vehicle shell modeling

    CN115358009A

  • Systems for generalizing non-uniform rational b-spline and application of systems

    US20180225871A1