A controllable modeling method for non-spherical true sand particles based on programmable geometry
The generation of sand and soil particles through programmatic geometric methods solves the problems of large amount of calculation and difficult morphological characterization in the prior art, and realizes the rapid generation of realistic and complex morphological and rich details.
Patent Information
- Application Number
- CN202411243222.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-05
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2044-09-05
AI Technical Summary
The prior art is difficult to generate sandy soil particles that accurately characterize complex forms, and traditional methods have a large amount of calculation, so it is impossible to generate particle surfaces with rich details.
Using a programmatic geometry-based method, particles with roughness characteristics are generated by generating particle skeletons with controllable elongation, flatness and roundness, combined with a small-scale fractal displacement field, and particles with roughness characteristics are controlled using the Catmull-Clark algorithm and fractal vertex displacement field.
The rapid generation of controllable and realistic sand particles on macro-fine scales is achieved, reducing the calculation amount and enabling the generation of particle surfaces with complex morphology and details.
Smart Images

Figure CN119203513B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of three-dimensional sand particle generation, and in particular to a controllable modeling method for non-spherical true sand particles based on programmable geometry. Background Art
[0002] The discrete element method (DEM) is a simulation scheme based on micromechanical models and is widely used to investigate the influence of sand particle shape on granular soil behavior. In DEM simulations of granular soils, there are two common approaches to consider the effects of particle morphology. The first is to establish a rheological rolling resistance model for interparticle contact to simulate the counter-rotation phenomenon caused by friction between particle surface textures. Although this method uses surface roughness to characterize particle shape to simulate physical phenomena such as inertial friction and shear banding, its free parameters are difficult to determine, resulting in an inaccurate representation of particle roughness. The second approach is to directly import simplified non-spherical particles (ellipsoids, ellipsoids, polyhedrons, simplified agglomerates, etc.) into DEM modeling. This method can simulate the behavior of realistic particles with simple shapes, but it cannot generate realistic particles with complex morphologies commonly found in geotechnical engineering.
[0003] Traditional particle generation methods first reconstruct real particles from X-ray CT scans and then apply feature analysis algorithms to modify the coefficients of mathematical descriptors to generate new particles with homogeneous morphology. However, in the first reconstruction step, solving the descriptor coefficients and expansion functions is computationally intensive. Furthermore, reconstruction methods are unable to characterize the detailed morphology of particles at small scales, resulting in a relatively smooth surface for particles generated based on the descriptor coefficients. Finally, fitting the descriptor coefficients is difficult, making it impossible to generate particles with uniform morphological distribution. Summary of the Invention
[0004] In view of the shortcomings of the existing technology, the present invention provides a controllable modeling method for non-spherical true sand particles based on programmable geometry, which has the advantages of fast and controllable morphology for generating soil particle point clouds.
[0005] To achieve the above objectives, the technical solution of the present invention is implemented through the following technical solutions:
[0006] A controllable modeling method for non-spherical true sand particles based on programmable geometry, the controllable modeling method comprising the following steps:
[0007] S1. Generate particle skeleton with controllable elongation EI, flatness FI and roundness:
[0008] S1-1. Parametrically generate two basic shapes, a cuboid and a pyramid, as the initial skeleton of sand particles. Then, use the Catmull-Clark algorithm to subdivide and smooth the mesh of these basic shapes to increase the number of mesh vertices and generate a more continuous vertex displacement field. Finally, under the action of a large-scale fractal vertex displacement field, particles with controllable roundness characteristics are generated.
[0009] S1-2. Controlling the elongation and flatness indexes of the sand particles according to the mapping relationship between the elongation and flatness of the sand particles and the geometric parameters of the basic shape;
[0010] S1-3, controlling the roundness of the particles according to the mapping relationship between the intensity of the large-scale fractal vertex displacement field and the roundness of the generated particles;
[0011] S2. Generate realistic sand particles with controllable surface roughness details:
[0012] S2-1. Under the action of a small-scale mixed fractal displacement field, the details of the particle surface are increased to generate true sand particles with roughness characteristics; based on the mapping relationship between the intensity of the mixed fractal vertex displacement field and the roughness of the generated particles, the roughness of the particles is controlled.
[0013] Preferably, the specific operation of S1-1 includes the following steps:
[0014] S1-1-1. Generate two basic shapes, a cuboid and a tetrahedron, as the initial skeleton of sand particles using random parameterization. The parameters of the cuboid are length, width, and height, while the parameters of the tetrahedron are ground length and width, as well as the height of the facade.
[0015] S1-1-2. Use the Catmull-Clark algorithm to subdivide and smooth the generated basic shape mesh in order to increase the number of mesh vertices and generate a more continuous vertex displacement field;
[0016] S1-1-3, under the action of the large-scale cellular fractal vertex displacement field, particles with roundness characteristics are generated; wherein the number of iterations n of the fractal vertex displacement field is 5, i.e., from Play A total of 5 iterations are performed, with the amplitude reduction factor a and the frequency multiplication factor b both being 5. The noise function is a cellular function with a scale of 1 / 2 the particle size, and the calculation formula can be defined as:
[0017] .
[0018] Preferably, the specific operation in S1-1-2 is:
[0019] S1-1-2-1, Catmull-Clark algorithm creates smoothly interpolated vertices for each edge and face in each iteration; a new vertex is added to each face, called the face center vertex, such as Figure 4 Yellow vertices are shown; assuming a face has n vertices , then the position of the newly added face vertex The calculation is as shown in the following formula (1):
[0020] (1);
[0021] Each edge adds a new vertex, called the edge vertex, and the position of the newly added edge vertex is the average value of the vertices at both ends of the edge and the vertices of the two adjacent faces, as shown in formula (2):
[0022] (2);
[0023] For each edge, calculate its two endpoints and the vertices of its two adjacent faces The average value of , generates a new edge vertex E;
[0024] S1-1-2-2. After adding vertices, update the positions of all vertices to make the mesh smoother. The new vertex positions Calculated by formula (3):
[0025] (3);
[0026] in: ; ;
[0027] Assume that the number of vertices of the initial triangle mesh is , the number of edges is , the number of faces is , then after each iteration the new number is , as shown in formulas (4), (5) and (6):
[0028] (4);
[0029] (5);
[0030] (6);
[0031] in, is the face vertices of all faces adjacent to the vertex The average value of The midpoints of all edges adjacent to the vertex The average value of is the position of the old vertex, is the number of adjacent faces.
[0032] Preferably, the specific operation of S1-2 includes the following steps:
[0033] S1-2-1. Set different ratio1 and ratio2 for rectangular parallelepiped and tetrahedron primitives respectively; specifically set 20 parameter values from 0 to 1 with an interval of 0.05; generate 50 different particles according to each ratio1 and ratio2 parameter value, calculate the average value of EI and FI of the particles, and use the interpolation method to fit the mapping relationship between ratio1, ratio2 and the average value; where ratio1 and ratio2 are the ratio of the middle value to the maximum value and the ratio of the middle value to the minimum value of the three length, width and height shape parameters of the primitive respectively. If ratio1, ratio2 and the maximum value are known, the middle value and minimum value can be calculated. The shape parameter value can control the size of the generated particles;
[0034] S1-2-2. Set different displacement field intensity coefficients for the smooth bodies of rectangular parallelepiped and tetrahedron primitives; specifically set 40 parameter values from 0 to 200 with an interval of 5; generate 50 different particles based on each displacement field intensity coefficient, calculate the average roundness of the particles, and use the interpolation method to fit the mapping relationship between the intensity coefficient and the average roundness. .
[0035] Preferably, the specific operation of S1-3 includes the following steps:
[0036] S1-3-1. Given the particle size, EI and FI cumulative probability distribution of the particles to be generated, calculate the three shape indices of the particles to be generated with the same distribution, set the particle size value of the same distribution as the maximum value of the primitive shape parameter, obtain the EI and FI parameter values of the same distribution, and combine And the mapping relationship between EI and FI of generated particles , calculate the primitive shape parameter ratio ;according to The definition of , given the maximum value, find the middle value and minimum value;
[0037] S1-3-2. Given the cumulative probability distribution of the roundness of the particles to be generated, calculate the roundness value r of the particles to be generated; combine the mapping relationship between the intensity coefficient of the fractal large-scale cellular displacement field and the roundness value of the generated particles , calculate the displacement field intensity coefficient to be set;
[0038] S1-3-3. Generate sand particles with given EI, FI and roundness based on the obtained primitive shape parameter values and large-scale fractal cellular displacement field intensity coefficients.
[0039] Preferably, the specific operation of S2-2 includes the following steps:
[0040] S2-2-1. Set different displacement field intensity coefficients for the synthetic vertex displacement field; specifically set 40 parameter values from 0 to 12 with an interval of 0.3; generate 50 different particles based on each displacement field intensity coefficient, calculate the average value of the particle roughness, and use the interpolation method to fit the mapping relationship between the intensity coefficient and the roughness average value ;
[0041] S2-2-2. Given the cumulative probability distribution of roughness of the particles to be generated, calculate the roughness of the particles to be generated; combine the intensity coefficient of the synthetic vertex displacement field and the mapping relationship between the roughness of the generated particles , calculate the intensity coefficient of the synthetic vertex displacement field to be set;
[0042] S2-2-3. Generate sand particles of given roughness based on the obtained intensity coefficient of the synthetic vertex displacement field. The synthetic vertex displacement field calculation can be defined as:
[0043]
[0044] in are different vertex displacement fields; F1 and F2 are both cellular fractal vertex displacement fields with scales of 30 and 20 respectively; F3 is a turbulent texture with a scale of 20; They are The corresponding transparency.
[0045] The present invention provides a controllable modeling method for non-spherical true sand particles based on programmable geometry, which has the following advantages over the prior art:
[0046] This method utilizes procedural geometry to generate a three-dimensional particle mesh. The idea behind this approach is to develop a three-dimensional programmatic geometry algorithm to generate irregular sand particles with fractal characteristics by repeatedly displacing the vertices of a basic shape. Compared to traditional particle generation methods, this method requires far less computational effort, primarily in generating vertex displacement textures, than in solving mathematical descriptor coefficients and expansion functions. Furthermore, it can generate realistic sand particles with controllable EI, Fl, roundness, and roughness at both macro and micro scales. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Figure 1 A framework diagram for implementing the sand particle program generation process of the present invention;
[0048] Figure 2 This is a schematic diagram of parameterized primitive generation in Example 1 of the present invention;
[0049] Figure 3The primitive grid subdivision and smoothing graph in Example 1 of the present invention;
[0050] Figure 4 This is a diagram of the mesh subdivision and smoothing process in Example 1 of the present invention;
[0051] Figure 5 Schematic diagram of the macroscopic profile generation process of sand particles in Example 1 of the present invention;
[0052] Figure 6 This is a schematic diagram of the principle of generating the cellular vertex displacement field in Example 1 of the present invention;
[0053] Figure 7 This is a schematic diagram of the vertex mapping principle of the vertex displacement field mesh in Example 1 of the present invention;
[0054] Figure 8 Schematic diagram of particle roundness values at different displacement field intensity coefficients in Example 1 of the present invention;
[0055] Figure 9 The mapping relationship between EI, FI and roundness values and program generation parameters in Example 1 of the present invention;
[0056] Figure 10 Schematic diagram of Leighton Buzzard sand particles with controllable EI, FI, roughness and roundness values in Example 1 of the present invention;
[0057] Figure 11 This is a solid image of Ottawa sand particles with controllable EI, FI, roughness and roundness values in Example 1 of the present invention;
[0058] Figure 12 Schematic diagram of particle mesh vertex displacement of a cellular vertex displacement field with a transparency of 0.8 in Example 2 of the present invention;
[0059] Figure 13 Schematic diagram of particle grid vertex displacement of a turbulent vertex displacement field with a transparency of 0.5 in Example 2 of the present invention;
[0060] Figure 14 This is a schematic diagram of the Peilin noise function in Example 2 of the present invention;
[0061] Figure 15 The 2D Peilin noise and fractal Perlin vertex displacement field graph in Example 2 of the present invention;
[0062] Figure 16 Schematic diagram of particle mesh vertex displacement of a cellular vertex displacement field with a transparency of 0.95 in Example 2 of the present invention;
[0063] Figure 17Schematic diagram of the mapping relationship between roughness and synthetic displacement field intensity coefficient in Example 2 of the present invention. DETAILED DESCRIPTION
[0064] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention are clearly and completely described below in conjunction with the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present invention without making any creative efforts shall fall within the scope of protection of the present invention.
[0065] Example 1:
[0066] (1) The parameterization of Box (rectangular block) and Pyramid (quadrangular pyramid) primitives is as follows: Figure 2 As shown, specifically:
[0067] Both Pyramid and Box are polyhedrons generated by three parameters. The shape parameters of Pyramid are the length and width of the base, and the height perpendicular to the base. Box has three parameters: length, width, and height. The parameters max1, mid2, and min3 are defined from largest to smallest according to the shape parameter values. Figure 1 As shown in the box in (a-1), the height is mid2, the length is max1, and the width is min3. Define two ratios, ratio1 and ratio2, as mid2 / max1 and min3 / mid3, respectively, corresponding to the definitions of EI and FI. Figure 1 In (a-1), the length, width, and height of the box are all 100, so ratio1 and ratio2 are both 1.00. The ratio1 and ratio2 of the box are consistent with EI and FI, respectively. Figure 1 The ratio 1 of the pyramid in (b-1) and (b-2) is 1 and 0.83, respectively; the ratio 2 is 1 and 0.80, respectively. Because the method of the present invention slightly alters the EI and FI of the primitives when generating particles, the EI and FI of the generated particles are positively correlated with the ratio 1 and ratio 2 of the primitives, the cuboid and pyramid, respectively. Therefore, the shape parameter ratios of the box and pyramid, ratio 1 and ratio 2, can influence and control the EI and FI of the generated particles, respectively.
[0068] (2) The Catmull-Clark algorithm subdivides and smoothes the generated basic shape mesh to increase the number of mesh vertices and generate a more continuous vertex displacement field. The generated subdivided smooth mesh is as follows: Figure 3 As shown, specifically:
[0069] The Catmull-Clark algorithm creates smoothly interpolated vertices for each edge and face in each iteration. A new vertex is added to each face, called a face vertex, such as Figure 4 The position of a face vertex is the average of all the vertex positions on that face. Assume a face has n vertices. , then the position of the newly added face vertex The calculation is shown in formula (1). Each edge adds a new vertex, called the edge vertex, such as Figure 4 (b) The green point shows the location of the newly added edge vertex. is the average value of the vertices at both ends of the edge and the vertices of the two adjacent faces, as shown in formula (2). For each edge, calculate its two endpoints and the vertices of its two adjacent faces The average value of , generates a new edge vertex E.
[0070] ;
[0071] After adding vertices, update the positions of all vertices to make the mesh smoother, such as Figure 4 (c) is shown. The new vertex position is calculated by formula (3). Assume that the number of vertices of the initial triangle mesh is , the number of edges is , the number of faces is , then after each iteration the new number is , as shown in formulas (6), (7) and (8).
[0072] ;
[0073] in, is the face vertices of all faces adjacent to the vertex The average value of is as shown in formula (4), The midpoints of all edges adjacent to the vertex The average value of is as shown in formula (5), is the position of the old vertex, is the number of adjacent faces.
[0074] (3) Under the action of the large-scale cellular fractal vertex displacement field, particles with roundness characteristics are generated, such as Figure 5 As shown, specifically:
[0075] After the primitive grid is subdivided and smoothed, only a regular smooth body is obtained. In order to simulate the macroscopic outline of natural sand particles, the vertices of the smooth body need to be displaced to generate a random, variable and irregular particle skeleton. The fractal vertex displacement field is self-similar by combining multiple noise layers of different scales, frequencies and amplitudes. By adjusting the intensity coefficient of the fractal displacement field, the complexity and details of the fractal displacement field can be further adjusted. The number of iterations n of the fractal displacement field is 4, and the amplitude reduction factor a and the frequency multiplication factor b are both 5. The noise function is a cellular function with a scale of 1 / 2 the particle size, and intensity is the intensity coefficient that is most sensitive to the control of detail and complexity. The calculation formula can be defined as:
[0076] ;
[0077] The principle of cellular algorithm is introduced by taking the two-dimensional cellular noise function as an example. First, the distribution in space A random seed point, is the size of the random spacing of the seed points. Calculate each spatial point The distance to the nearest seed point. is a two-dimensional space point, is the seed point set, for To The distance between seed points, the closest distance As shown in formula (10). Distance The Euclidean distance is used, as shown in formula (11). Figure 6 The 8 seed points marked in (a) correspond to 8 cell-like shapes, and the black area indicates that the minimum distance from the 8 center points is small. Figure 6 As shown in (b), any point Strength value yes The minimum distance from one point to 8 points. Obviously The distance to point s8 is the shortest, so .
[0078] ;
[0079] The mesh vertices of the particle are in the displacement field Under the action of , it displaces along the normal direction, forming new particles with displacement field characteristics. are vertex coordinates, The displacement field is The strength of the point. is the displacement value of the vertex along the normal direction, is the intensity coefficient of the displacement field and is between 0 and 200. The larger the value, the greater the change in the shape of the sand particles. Figure 7 As shown, the sand particles Under the action of the displacement field, the point moves along the normal direction to point.
[0080] Figure 5 (b) is the cellular vertex displacement field of a smooth body whose primitives are cuboid and tetrahedron at the 1 / 2 particle size scale. Figure 5 (c) is the particle skeleton generated under the action of the vertex displacement field in (b). Figure 5 The surface of (c) has random irregular bumps, which also solves the problem that mathematical descriptors are difficult to generate concave geometry. Figure 5 The more obvious the color change in (c), the corresponding Figure 5 The more discontinuous the displacement of the vertex in (d), the more irregular the corners are. It is worth noting that the larger the intensity coefficient, the sharper the corners are. Therefore, the intensity coefficient of the large-scale cellular fractal displacement field can be used to control the roundness of sand particles. Figure 8 The roundness of the particles generated by the cuboids and quadrangular pyramids shown increases with the increase of the displacement field intensity coefficient.
[0081] (4) Calculate the mapping relationship between the morphological characteristics EI, FI and roundness of the generated particle skeleton and the generation parameters, such as Figure 9 The specific method includes the following steps:
[0082] Set different ratio1 and ratio2 for the cuboid and pyramid primitives. Specifically, set 20 parameter values from 0 to 1 with an interval of 0.05. Generate 50 different particles based on each ratio1 and ratio2 parameter value, calculate the average EI and FI of the particles, and use the interpolation method to fit the mapping relationship between ratio1, ratio2 and the average value, as shown in the following example: Figure 9 (a) and (b) of Figure 2. Ratio1 and ratio2 are the median / maximum and median / minimum values of the three shape parameters of the primitive, respectively, corresponding to the definitions of EI and FI.
[0083] Different displacement field intensity coefficients are set for the smooth bodies of rectangular parallelepiped and pyramid primitives. Specifically, 40 parameter values are set from 0 to 200 with an interval of 5. 50 different particles are generated according to each displacement field intensity coefficient, and the average roundness of the particles is calculated. The mapping relationship between the intensity coefficient and the average roundness is fitted using the interpolation method. ,like Figure 9 (c).
[0084] (5) Generate sand particle skeleton with controllable EI, FI and roundness, such as Figure 10 and Figure 11The specific method includes the following steps:
[0085] Given the particle size, EI and FI cumulative probability distribution of the particles to be generated, calculate the three shape indices of the particles to be generated. Set the particle size value of the same distribution as the maximum value of the primitive shape parameter. Get the EI and FI parameter values of the same distribution, and combine them And the mapping relationship between EI and FI of generated particles , calculate the primitive shape parameter ratio .according to Given the maximum value, find the middle value and the minimum value.
[0086] Given the cumulative probability distribution of the roundness of the particles to be generated, calculate the roundness value r of the particles to be generated. Combined with the mapping relationship between the intensity coefficient of the fractal large-scale cellular displacement field and the roundness value of the generated particles , calculate the displacement field intensity coefficient to be set.
[0087] The Leighton Buzzard and Ottawa sand particles with given EI, FI and roundness are generated according to the obtained primitive shape parameter values and the large-scale fractal cellular displacement field intensity coefficient, as shown in the following example: Figure 10 and Figure 11 As shown in the figure, the roundness of Leighton Buzzard sand particles is relatively low, while the roundness of Ottawa sand particles is relatively high.
[0088] Example 2:
[0089] Based on the above-mentioned embodiment 1, after generating sand particle contours with controllable EI, FI, and roundness, it is necessary to add more details to the smaller-scale particle surfaces. Synthesizing vertex displacement fields allows different small-scale vertex displacement fields to be superimposed together according to different transparencies and blending modes. As transparency increases, the visibility of the corresponding vertex displacement fields decreases. Small-scale synthetic textures have more varied, continuous, and natural details in space. Using two small-scale cellular fractal displacement fields and one turbulent displacement field to synthesize a vertex displacement field, details are added to the particle surface.
[0090] (1) First, define the formula for the synthetic vertex displacement field as follows:
[0091] ;
[0092] in are the different vertex displacement fields. The types of F3 and F4 are cellular fractal vertex displacement fields, with scales of 30 and 20 respectively. The type of F3 is turbulence texture, with a scale of 20. They are The corresponding transparency.
[0093] (2) Generate a cellular fractal vertex displacement field with a transparency of 0.8, such as Figure 12 As shown in (b), the microscopic cellular structure is smaller, which is conducive to the formation of microscopic concave and convex surfaces of sand, such as Figure 12 As shown in (c), the specific method includes the following steps:
[0094] The calculation of the fractal vertex displacement field of a fractal cellular with a transparency of 0.8 is shown in formula (13), where the number of fractal iterations n, the amplitude reduction factor a, and the frequency multiplication factor b are all 3. The noise function is a cellular function with a scale of 1 / 8 GS.
[0095] ;
[0096] Fractal Function The 3D displacement field formed is as follows Figure 12 Based on Figure 12 The irregular particle skeleton in (a) Figure 12 The 3D fractal cellular in (b) is generated under the action of the fractal vertex displacement field Figure 12 The grains in (c) are not continuous enough, however, and differ from the meso-texture of natural grains. Therefore, more textures are mixed to generate more complex and continuous grain surface details.
[0097] (3) Generate a turbulent vertex displacement field with a transparency of 0.5, such as Figure 13 As shown in (b), the microscopic cellular structure is smaller, which is conducive to generating microscopic turbulent details of sand, such as Figure 13 As shown in (c), the specific method includes the following steps:
[0098] The calculation of the turbulence fractal vertex displacement field with a transparency of 0.5 is shown in formula (14), where the number of fractal iterations n is 20, the amplitude reduction factor a and the frequency multiplication factor b are both 2. The noise function is a Perlin function with a scale of 1 / 8 GS.
[0099] ;
[0100] Perlin Noise is a continuous, smooth random function used to generate textures with a natural appearance. For ease of demonstration, a two-dimensional Perlin noise is used as an example. A regular grid is defined in two-dimensional space, and the size of the cell grid is specified by the scale parameter, such as Figure 14The scale shown is 100. The smaller the scale, the greater the noise variation in the same size space. A vector with random direction and magnitude is generated at each grid point, called the gradient vector g. The random gradient g can ensure the randomness and diversity of the noise, thereby making the particle shape more complex and varied. The value of g is as follows Figure 14 As shown by the arrow in , the direction of the arrow indicates the direction of the gradient, and the length indicates the magnitude of the gradient.
[0101] like Figure 14 As shown, for any sampling point in 2D space , find the four nearest grid points where the point is located ,in , Output the integer part of the real number. The distance vector d from the sampling point to the four grid points is shown in formula (15). It represents the random influence of each corner point on the calculation point. The random value p of the four corner points on the calculation point is shown in formula (16).
[0102]
[0103] The random value p is weighted to obtain the noise value of the sampling point. In order to make the noise value transition smoothly between grid points, the smooth interpolation fade function is used to adjust the interpolation parameters so that the value transitions smoothly to ensure the continuity and smoothness of the particle surface details. The fade function is shown in formula (17), and the interpolation parameters are calculated as shown in formula (18). The weighting adopts bilinear interpolation in the X direction first and then in the Y direction. That is, first use and Weighted , as shown in formula (19), and then using and Weighted , as shown in the formula; finally and Weighted , the weighted formula is.
[0104]
[0105] like Figure 15 (b) and (d) are two-dimensional fractal vertex displacement fields generated by Perlin noise and fractal Perlin noise, respectively. Compared with Perlin noise, fractal Perlin fractal vertex displacement field retains the randomness of the noise function and has stronger continuity and self-similarity. Figure 15 (c) and (e) are planes (a) and Figure 15 (b) and (d) Irregular surfaces formed by the displacement of vertices in the z direction under the action of the fractal vertex displacement field. Figure 15 The fractal surface of (e) shows a more natural, varied, and self-similar surface protrusion.
[0106] Fractal Function The 3D displacement field formed is as follows Figure 13 As shown in (b). Based on Figure 13 (a) The microscopic concave-convex surface of the particles, Figure 13 The 3D fractal cellular in (b) is generated under the action of the fractal vertex displacement field Figure 13 However, the raised and recessed details on the particle surface are mostly long strips, which still does not look natural enough.
[0107] (4) Generate a fractal cellular vertex displacement field with a transparency of 0.95, such as Figure 16 As shown in (b), it is beneficial to generate details of the concave-convex transition area with fractal characteristics, such as Figure 16 As shown in (c), the specific method includes the following steps:
[0108] The calculation of the turbulent fractal vertex displacement field with a transparency of 0.95 is shown in formula (20), where the number of fractal iterations n is 10, the amplitude reduction factor a and the frequency multiplication factor b are both 5. The noise function is a cellular function with a scale of 1 / 8 GS.
[0109] ;
[0110] Fractal Function The 3D displacement field formed is as follows Figure 16 As shown in (b). Based on Figure 15 The sand particle with bumps and turbulence details in (a) is Figure 16 The 3D fractal cellular in (b) is generated under the action of the fractal vertex displacement field Figure 16 The grains in (c) have smaller-scale bumpy boundaries, which makes the sand particles look more realistic and natural.
[0111] (5) Calculate the mapping relationship between the synthetic vertex displacement field intensity coefficient and the roughness average value, such as Figure 17 As shown, the specific method includes the following steps:
[0112] Set different displacement field intensity coefficients for the synthetic vertex displacement field. Specifically, set 40 parameter values from 0 to 12 with an interval of 0.3. Generate 50 different particles based on each displacement field intensity coefficient, calculate the average roughness of the particles, and use the interpolation method to fit the mapping relationship between the intensity coefficient and the average roughness. .
[0113] Given the cumulative probability distribution of roughness of the particles to be generated, calculate the roughness of the particles to be generated. Combine the mapping relationship between the intensity coefficient of the synthetic vertex displacement field and the roughness of the generated particles , calculate the intensity coefficient of the synthetic vertex displacement field to be set.
[0114] The sand particles with given roughness are generated according to the obtained synthetic vertex displacement field intensity coefficient, such as Figure 10 and Figure 11 The calculation of the synthetic vertex displacement field is shown in formula (21).
[0115] ;
[0116] in are the different vertex displacement fields. The types are all cellular fractal vertex displacement fields, and the scales are 30 and 20 respectively. The type is turbulence texture and the scale is 20.
[0117] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A controllable modeling method for non-spherical true sand particles based on programmable geometry, characterized in that: The controllable modeling method comprises the following steps: S1. Generate particle skeleton with controllable elongation EI, flatness FI and roundness: S1-1. Parametrically generate two basic shapes, a cuboid and a pyramid, as the initial skeleton of sand particles; then use the Catmull-Clark algorithm to subdivide and smooth the mesh of the basic shapes in order to increase the number of mesh vertices and generate a more continuous vertex displacement field; S1-2. Controlling the elongation and flatness indexes of the sand particles according to the mapping relationship between the elongation and flatness of the sand particles and the geometric parameters of the basic shape; Specifically, different ratio1 and ratio2 are set for the rectangular parallelepiped and tetrahedron primitives respectively; a total of 20 parameter values are set from 0 to 1 with an interval of 0.05; 50 different particles are generated according to each ratio1 and ratio2 parameter value, the average values of the particles' EI and FI are calculated, and the mapping relationship between ratio1, ratio2 and the average value is fitted using the interpolation method; where ratio1 and ratio2 are the ratios of the middle value to the maximum value and the ratios of the middle value to the minimum value of the three shape parameters of the primitive, namely length, width, and height, respectively. Given ratio1, ratio2 and the maximum value, the middle value and minimum value can be calculated, and the shape parameter value can control the size of the generated particles; S1-3, controlling the roundness of the particles according to the mapping relationship between the intensity of the large-scale fractal vertex displacement field and the roundness of the generated particles; Specifically, different displacement field intensity coefficients are set for the smooth bodies of rectangular parallelepiped and tetrahedron primitives; 40 parameter values are set from 0 to 200 with an interval of 5; 50 different particles are generated according to each displacement field intensity coefficient, the average roundness of the particles is calculated, and the mapping relationship between the intensity coefficient and the average roundness is fitted using the interpolation method. ; S2. Generate realistic sand particles with controllable surface roughness details: The details of the particle surface are increased under the action of a small-scale mixed fractal displacement field to generate realistic sand particles with roughness characteristics. The roughness of the particles is controlled based on the mapping relationship between the intensity of the mixed fractal vertex displacement field and the roughness of the generated particles. S2-1-1. Set different displacement field intensity coefficients for the synthetic vertex displacement field; specifically set 40 parameter values from 0 to 12 with an interval of 0.3; generate 50 different particles based on each displacement field intensity coefficient, calculate the average value of the particle roughness, and use the interpolation method to fit the mapping relationship between the intensity coefficient and the roughness average value. ; S2-1-2. Given the cumulative probability distribution of roughness of the particles to be generated, calculate the roughness of the particles to be generated; combine the intensity coefficient of the synthetic vertex displacement field and the mapping relationship between the roughness of the generated particles , calculate the intensity coefficient of the synthetic vertex displacement field to be set; S2-1-3. Generate sand particles of given roughness based on the obtained intensity coefficient of the synthetic vertex displacement field. The synthetic vertex displacement field calculation can be defined as: ; in are different vertex displacement fields; F1 and F2 are both cellular fractal vertex displacement fields with scales of 30 and 20 respectively; F3 is a turbulent texture with a scale of 20; They are The corresponding transparency.
2. The controllable modeling method of non-spherical true sand particles based on programmable geometry according to claim 1 is characterized in that: The specific operation of S1-1 includes the following steps: S1-1-1. Generate two basic shapes, a cuboid and a tetrahedron, as the initial skeleton of sand particles using random parameterization. The parameters of the cuboid are length, width, and height, while the parameters of the tetrahedron are ground length and width, as well as the height of the facade. S1-1-2. Use the Catmull-Clark algorithm to subdivide and smooth the generated basic shape mesh in order to increase the number of mesh vertices and generate a more continuous vertex displacement field; S1-1-3, under the action of the large-scale cellular fractal vertex displacement field, particles with roundness characteristics are generated; wherein the number of iterations n of the fractal vertex displacement field is 5, i.e., from Play A total of 5 iterations are performed, with the amplitude reduction factor a and the frequency multiplication factor b both being 5. The noise function is a cellular function with a scale of 1 / 2 the particle size, and the calculation formula can be defined as: 。 3. The controllable modeling method of non-spherical true sand particles based on programmable geometry according to claim 2 is characterized in that: The specific operation in S1-1-2 is as follows: S1-1-2-1, Catmull-Clark algorithm creates smoothly interpolated vertices for each edge and face in each iteration; a new vertex is added to each face, called a face vertex; Assume a face has n vertices , then the position of the newly added face vertex The calculation is as shown in the following formula (1): (1); Each edge adds a new vertex, called the edge vertex, and the position of the newly added edge vertex is the average value of the vertices at both ends of the edge and the vertices of the two adjacent faces, as shown in formula (2): (2); For each edge, calculate its two endpoints and the vertices of its two adjacent faces The average value of , generates a new edge vertex E; S1-1-2-2. After adding vertices, update the positions of all vertices to make the mesh smoother. The new vertex positions Calculated by formula (3): (3) in: ; ; Assume that the number of vertices of the initial triangle mesh is , the number of edges is , the number of faces is , then after each iteration the new number is , as shown in formulas (4), (5) and (6): (4); (5); (6); in, is the face vertices of all faces adjacent to the vertex The average value of The midpoints of all edges adjacent to the vertex The average value of is the position of the old vertex, is the number of adjacent faces.
4. The controllable modeling method for non-spherical true sand particles based on programmable geometry according to claim 1 is characterized in that: The specific operations of S1-2 and S1-3 include the following steps: S1-3-1. Given the particle size, EI and FI cumulative probability distribution of the particles to be generated, calculate the three shape indices of the particles to be generated with the same distribution, set the particle size value of the same distribution as the maximum value of the primitive shape parameter, obtain the EI and FI parameter values of the same distribution, and combine And the mapping relationship between EI and FI of generated particles , calculate the primitive shape parameter ratio ;according to The definition of , given the maximum value, find the middle value and minimum value; S1-3-2. Given the cumulative probability distribution of the roundness of the particles to be generated, calculate the roundness value r of the particles to be generated; combine the mapping relationship between the intensity coefficient of the fractal large-scale cellular displacement field and the roundness value of the generated particles , calculate the displacement field intensity coefficient to be set; S1-3-3. Generate sand particles with given EI, FI and roundness based on the obtained primitive shape parameter values and large-scale fractal cellular displacement field intensity coefficients.
Citation Information
Patent Citations
Method for predicting permeability coefficient of coarse-grained soil based on three-dimensional characteristics of particles
CN116306350A
Real particle shape breakable model modeling method and device based on stereolithography curved surface grid division, storage medium and equipment
CN118378466A