A random ice field generation method based on random circle cutting and power law distribution
By using random circular cutting and power-law distribution methods, irregular polygonal ice floes that conform to power-law laws are generated, which solves the problem of insufficient morphological and statistical realism of ice floes in existing technologies and realizes the realistic restoration of ice floes.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HARBIN ENG UNIV
- Filing Date
- 2026-03-08
- Publication Date
- 2026-06-19
Smart Images

Figure CN122244377A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of numerical modeling, specifically to a method for generating random ice floes based on random circular cutting and power-law distribution. Background Technology
[0002] The realistic generation of random ice floes is a fundamental and crucial technical challenge in polar navigation simulation and sea ice dynamics research. A highly realistic ice floe must simultaneously satisfy morphological and statistical realism: individual ice floes should exhibit natural, irregular polygonal geometries, while the size distribution of ice floes throughout the ice floe must conform to power-law statistical laws observed in nature. Existing generation methods have significant limitations in meeting these two requirements.
[0003] Traditional graphic segmentation methods introduce a degree of randomness in geometric shape generation, recursively cutting an initial rectangular region into smaller polygons using random line segments. However, the segmentation logic is often too regular, easily generating "family-style" polygons with similar subdivision patterns, lacking global morphological diversity. Summary of the Invention
[0004] This invention addresses the technical problems existing in the prior art by providing a method for generating random ice floes based on random circular cutting and power-law distribution.
[0005] The technical solution of this invention to solve the above-mentioned technical problems is as follows: A method for generating random ice floes based on random circular cutting and power-law distribution, the method comprising: S1. Based on the minimum and maximum areas of the target power-law distribution, the hierarchical size intervals are calibrated to obtain non-overlapping size levels. Controlled Poisson disk sampling is performed on each size level, and the samples are merged to form a global initial circular set. Multi-constraint random chord cutting is performed on each circle in the initial circular set to simulate the fracture morphology of natural floating ice and generate irregular polygons in the candidate floating ice pool. S2. Construct a target position sequence based on the target power law distribution, preprocess and rank transform the candidate floating ice pools, and complete the selection and matching of polygons and position sequences by integrating the rank transformation nonparametric matching strategy. Then, embed a two-way closed-loop correction mechanism into the sequential optimal stopping mechanism to perform forward and / or reverse correction on the floating ice area sequence obtained by the selection and matching, and finally output the floating ice pool set. S3. Perform multi-scale hierarchical classification and layout priority sorting on the output set of ice floes. After completing the construction of the skeleton layer, the filling extension layer and the gap completion layer, the entire scene is transformed into a spatial hash grid, and a dynamic neighbor list is set to output a set of three-dimensional ice floe meshes with complete physical properties and the coordinates of each ice floe. S4. Based on the coordinates of the three-dimensional ice floe mesh set and each individual ice floe, the thickness of the individual ice floe is assigned by the area-thickness coupled power law mapping. The irregular two-dimensional polygons of each individual ice floe are subjected to three-dimensional extrusion and edge refinement processing to obtain all the corresponding three-dimensional ice floes. The physical properties are then imported into the physical simulation engine to form a complete three-dimensional ice floe scene.
[0006] In a preferred embodiment, S1 further includes: Based on the minimum and maximum areas of the target power-law distribution, the size intervals are defined as follows: the area intervals are divided into three non-overlapping size levels: the large size level is defined as the area interval from one-tenth of the maximum area to the maximum area, corresponding to the circular radius interval from one-tenth of the maximum area divided by the square root of pi; the medium size level is defined as the area interval from ten times the minimum area to one-tenth of the maximum area, corresponding to the circular radius interval from ten times the minimum area divided by the square root of pi; and the small size level is defined as the area interval from the minimum area to ten times the minimum area, corresponding to the circular radius interval from ten times the minimum area divided by the square root of pi. After obtaining the non-overlapping size levels, Poisson disk sampling is performed on each size level. Specifically, the square root of two times the minimum radius of the corresponding size level is used as the side length of the sampling grid cell. There is at most one sampling point in each sampling grid to avoid sampling point clustering. Initial seed points are randomly generated within the target scene plane, and these seed points are stored in the active list and recorded in the corresponding grid cells. A seed point is randomly selected from the active list. Using the seed point as the center, a radius is randomly generated within the radius range of the corresponding level to form an initial circle.
[0007] In a preferred embodiment, after obtaining the initial circle of the corresponding level, candidate sampling points are generated in an annular area with twice the radius of the current initial circle, using the randomly selected seed point as the center, plus the minimum center distance of the corresponding level. For each candidate sampling point, check the existing seed points in the grid and the eight adjacent grids. If there is a circle center distance that is greater than or equal to the minimum circle center distance and less than or equal to the sum of the current circle radius multiplied by the minimum overlap threshold, then add the corresponding candidate point to the active list and grid record. If the active list is empty, the sampling of the corresponding level is completed. Repeat the operation to complete the sampling of the three levels, merge the initial circles of all levels, remove invalid circles that are completely overlapping and have an area of zero, and finally obtain the initial circle set. The number of circles in the set is not less than three times the expected total number of floating ice.
[0008] In a preferred embodiment, S1 further includes: For each circle within the initial circular geometry, randomly generate an integer within the range of the minimum to the maximum number of cutting chords, and use this integer as the total number of cutting chords for the corresponding circle. Each time, two non-overlapping points are randomly generated on the circumference of the corresponding circle to form a cutting chord, and recorded in the cutting chord set. At the same time, the coordinates of all intersection points between chords and between chords and the circumference in the cutting chord set are recorded. A planar topology is constructed based on cutting chords and intersections, with the circumference, cutting chords, and intersections all serving as topology nodes. Closed loops are constructed based on these topology nodes, with each closed loop corresponding to a polygon boundary. Calculate the area of each closed loop, remove invalid fragments whose area is smaller than the minimum area of the target power-law distribution, store all valid polygons in the candidate ice floe individual pool, assign a unique identification number to each polygon and record all attributes.
[0009] In a preferred embodiment, S2 further includes: Based on the target power-law distribution parameters, the equal probability quantile method is used to generate ordered target area values that are consistent with the total number of target ice floes. These values are arranged in descending order to form a target area sequence. The elements in the descending sequence are assigned positions, with the largest element having position one, the second largest element having position two, and the smallest element having position consistent with the total number of target ice floes, forming a target position sequence. A mapping table between target positions and areas is constructed as a benchmark for subsequent matching. Remove invalid polygons in the candidate ice floes pool whose area is smaller than the target minimum area and larger than the target maximum area. Arrange the remaining valid polygons in descending order of area to form a candidate area sequence. The length of the sequence is the number of candidate polygons after preprocessing and is not less than three times the total number of target ice floes. Assign positions to the candidate sequence elements arranged from largest to smallest, with the largest element having a position of one and the smallest element having a position consistent with the total number of candidate polygons after preprocessing, thus forming a candidate position sequence. Construct a mapping table corresponding to the candidate position, area, and polygons, and record the area value and full polygon attributes corresponding to each candidate position to complete the preprocessing and rank transformation of the candidate floating ice pool.
[0010] In a preferred embodiment, after constructing the target rank sequence and preprocessing and rank transformation of the candidate floating ice pools, step S2 further includes: The selection process proceeds sequentially from position 1 to the total number of target ice floes. First, the candidate polygon with the largest area corresponding to position 1 is selected, and then subsequent positions are selected in turn. For each target position, selection is only allowed within the candidate position range. The lower limit of the range is the current target position, and the upper limit of the range is the difference between the total number of candidates and the current target position, which is the difference between the total number of targets and the current target position. This ensures that there are enough candidate samples for subsequent positions and avoids the situation where there are no samples to choose from later. For the target position and the candidate polygon, the absolute value of the difference between the candidate position and the target position divided by the total number of target ice floes is used as the relative position deviation, and the absolute value of the difference between the candidate area and the area corresponding to the target position divided by the area corresponding to the target position is used as the relative area deviation. The obtained relative position deviation and relative area deviation are used to construct a joint matching degree function, which is: 1 minus the sum of the position weight multiplied by the relative position deviation and the area weight multiplied by the relative area deviation, as the matching degree value of the joint matching degree function. For each target position, the decision threshold is set to be equal to 1 minus 0.05 plus the sum of the current target position divided by twice the total number of targets. That is, the smaller the position and the larger the area, the higher the threshold. The matching requirements for large-sized ice floes are more stringent, and the matching of the heavy tail part of the power law distribution plays a decisive role in the overall distribution. For the target position, observe the polygons in the candidate interval sequentially in ascending order of candidate positions, calculate the joint matching degree, and when there is the first polygon that satisfies the matching degree greater than or equal to the decision threshold, immediately stop the observation of the corresponding candidate position, select the polygon as the matching iceberg of the corresponding target position, remove it from the candidate sequence, and proceed to the next candidate position screening, thus completing the screening and matching of the fusion rank transform nonparametric matching strategy.
[0011] In a preferred embodiment, after S2 completes the full-position sequential screening, a preliminary matching ice floe area sequence is obtained. Arranged in descending order, the Kolmogorov-Smirnov method is used to test the statistics of the ice floe area sequence and the target area sequence. If there is a statistic greater than zero and there is a polygon in the target position that does not meet the decision threshold, a two-way closed-loop correction is performed, including: Based on the relative position deviation and relative area deviation, as well as the corresponding matching degree values, when there is insufficient matching degree for large-size positions, the area weight of large-size positions is increased by a fixed gradient of one-fifth, while the position weight is simultaneously reduced accordingly. The sum of the position weight and the area weight is always 1. At the same time, the decrease of the decision threshold with the increase of position is narrowed by a fixed ratio of one-fifth each time, and the lower limit of the threshold for large-size positions is locked to prioritize the area matching accuracy of large-size ice floes. When there is insufficient matching degree between the position of medium and small size, the position weight of medium and small size is increased by a fixed gradient of one-fifth each time, and the area weight is adjusted down accordingly. The sum of position weight and area weight is always 1. After each round of parameter correction is completed, the sequential filtering of all positions is re-executed, and the matching sequence and overall matching degree are updated synchronously. If the overall matching degree still does not reach the preset threshold after three consecutive positive corrections, the positive correction process is stopped immediately and reverse correction is initiated.
[0012] In a preferred embodiment, S2 further includes: Based on the initial sampling density, the number of sampling points and sampling density of a large-size layer are increased by a fixed gradient each time, while keeping the original minimum spacing and maximum overlap constraints unchanged. At the same time, the upper and lower limits of the number of cutting chords of large-size circles are lowered by a fixed ratio, and the minimum length and minimum included angle constraints of cutting chords are increased by a fixed ratio to reduce the fragmentation of large-size circles and improve the effective output rate of large-size ice floes. The sampling radius range of medium and small-size layers is expanded and shrunk by a fixed ratio to ensure that the three-level ranges are continuous and do not overlap, and do not exceed the radius range corresponding to the target area. At the same time, the upper and lower limits of the number of cutting chords of the corresponding-level circles are increased by a fixed ratio to expand the effective sample size of medium and small-size polygons. After each reverse correction is completed, the S1 operation is re-executed to generate a new pool of candidate ice floes. The entire sequential screening process is then fully executed, and the matching sequence and overall matching degree are updated synchronously until the matching results meet the preset requirements. Finally, a set of ice floes is output.
[0013] In a preferred embodiment, S3 further includes: The ice floes were arranged in descending order of area and divided into three non-overlapping multi-scale layers, including a skeleton layer, a filling and expansion layer, and a gap-filling layer. The order for determining layout priority is skeleton layer, padding extension layer, and gap completion layer; Using the diameter of the circumscribed circle of the smallest floating ice in the target scene as the side length of the grid unit, the entire scene is divided into a uniform two-dimensional grid. For any coordinate point, the row number is the vertical coordinate divided by the side length of the grid unit and rounded down, and the column number is the horizontal coordinate divided by the side length of the grid unit and rounded down. The hash key value is the row number multiplied by the total number of columns in the scene plus the column number, thus constructing a spatial hash grid. Each ice floe in the ice floe set is placed in the spatial hash grid according to the layout priority. After each ice floe is placed, all grid cells covered by the outer rectangle of the corresponding ice floe are calculated. The full information of the corresponding ice floe is added to the hash list of the corresponding grid cell to form a dynamic neighbor list. The final output is a three-dimensional ice floe mesh set and the corresponding coordinates of each individual ice floe.
[0014] In a preferred embodiment, step S4 calculates the thickness power law exponent of the result of multiplying the minimum base thickness by the area of the ice floe and dividing by the target minimum area for each ice floe, and then outputs a random perturbation coefficient for the base thickness of each ice floe. Finally, the thickness of each ice floe is equal to the base thickness multiplied by the perturbation coefficient, thus completing the assignment of the ice floe thickness. For each individual ice floe, the 2D polygon is adjusted to a counter-clockwise vertex order, and vertex deduplication and collinear point removal are performed. After preprocessing, the final thickness is extruded along the upward direction perpendicular to the plane to generate a 3D main mesh. Specifically, the coordinates of the bottom vertex of the 2D polygon are the original plane coordinates plus a value with a height of 0, and the coordinates of the top vertex are the original plane coordinates plus a value with a height equal to the final thickness. The corresponding vertices are connected to generate a quadrilateral mesh on the side. The top and bottom surfaces are closed to form a 3D prism mesh. For each 3D ice floe, the boundary lines of the top, bottom and side surfaces generated after 3D extrusion of the 2D polygons are randomly chamfered. Specifically, the chamfer radius is 5% to 10% of the final thickness. A random offset of no more than 5% of the minimum side length of the ice floe is added to the planar coordinates of the side vertices to simulate the concave and convex shape formed by the fracture. The Loop subdivision surface algorithm is used to subdivide the top and bottom surfaces, and vertical height perturbations of no more than 10% of the final thickness are added to the subdivision vertices.
[0015] The beneficial effects of this invention are: by generating a global initial circular set through layered size interval calibration and controlled Poisson disk sampling, the clustering of sampling points is avoided. At the same time, random chord cutting with multiple constraints is performed on the initial circle to simulate the fracture morphology of natural floating ice. The irregular polygon non-family-style similar subdivision mode is constructed, and small and invalid fragments are effectively removed. The generated floating ice unit geometry and side number distribution are highly consistent with real natural floating ice, realizing the true restoration of the morphology of floating ice unit. Based on the target power-law distribution, a target rank sequence is constructed. The area numerical matching is transformed into rank matching through rank transformation. Combining the nonparametric matching strategy of fused rank transformation and the sequential optimal stopping mechanism, the ice floe samples are accurately screened. At the same time, a two-way closed-loop correction mechanism is embedded. For large-sized ice floes, positive parameter correction is performed first to ensure area accuracy, while for small and medium-sized ice floes, the distribution pattern is ensured. If positive correction fails, the candidate ice floe pool is reconstructed through reverse correction. Combined with the statistical test of the Kolmogorov-Smirnov method, the size distribution of the final ice floe set strictly follows the power-law law of ice floes in nature and accurately matches the heavy-tailed characteristics of the power-law distribution. This solves the problem that existing methods cannot take into account both the accuracy of large-sized ice floes and the overall distribution pattern. Attached Figure Description
[0016] Figure 1 This is a flowchart of the present invention. Detailed Implementation
[0017] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0018] As attached Figure 1 As shown, this embodiment provides a method for generating random ice floes based on random circular cutting and power-law distribution, including the following steps: S1. Based on the minimum and maximum areas of the target power-law distribution, the hierarchical size intervals are calibrated to obtain non-overlapping size levels. Controlled Poisson disk sampling is performed on each size level, and the samples are merged to form a global initial circular set. Multi-constraint random chord cutting is performed on each circle in the initial circular set to simulate the fracture morphology of natural floating ice and generate irregular polygons in the candidate floating ice pool. The specific steps are as follows: Based on the minimum and maximum areas of the target power-law distribution, the size intervals are defined as follows: the area intervals are divided into three non-overlapping size levels: the large size level is defined as the area interval from one-tenth of the maximum area to the maximum area, corresponding to the circular radius interval from one-tenth of the maximum area divided by the square root of pi; the medium size level is defined as the area interval from ten times the minimum area to one-tenth of the maximum area, corresponding to the circular radius interval from ten times the minimum area divided by the square root of pi; and the small size level is defined as the area interval from the minimum area to ten times the minimum area, corresponding to the circular radius interval from ten times the minimum area divided by the square root of pi. Furthermore, this application avoids serious deviations between the sampled circular set and the target distribution from the source by refining the area interval, thereby reducing the computational load of subsequent optimization; After obtaining the non-overlapping size levels, Poisson disk sampling is performed on each size level. Specifically, the square root of two times the minimum radius of the corresponding size level is used as the side length of the sampling grid cell. There is at most one sampling point in each sampling grid to avoid sampling point clustering. Initial seed points are randomly generated within the target scene plane, and these seed points are stored in the active list and recorded in the corresponding grid cells. A seed point is randomly selected from the active list. Using the seed point as the center, a radius is randomly generated within the radius range of the corresponding level to form an initial circle.
[0019] After obtaining the initial circle of the corresponding level, candidate sampling points are generated in an annular area with twice the radius of the current initial circle plus the minimum center distance of the corresponding level, using the randomly selected seed point as the center. It should be noted that in this application, the minimum center distance of the level is the difference between the current circle radius and the maximum overlap threshold. The purpose is to ensure that the overlapping area of the two circles does not exceed the maximum overlap threshold multiple of the smaller circle area. For each candidate sampling point, check the existing seed points in the grid and the eight adjacent grids. If there is a circle center distance that is greater than or equal to the minimum circle center distance and less than or equal to the sum of the current circle radius multiplied by the minimum overlap threshold, then add the corresponding candidate point to the active list and grid record. If the active list is empty, the sampling of the corresponding level is completed. Repeat the operation to complete the sampling of the three levels, merge the initial circles of all levels, remove invalid circles that are completely overlapping and have an area of zero, and finally obtain the initial circle set. The number of circles in the set is not less than three times the expected total number of floating ice.
[0020] In the above process, this application calibrated the layered size intervals based on the power-law distribution of the current ice floes, and performed a Poisson disk sampling operation on each size level to obtain a global initial set of circles, thereby completing random circle cutting. The purpose is to conform to the random state of the ice floes. Then, it is necessary to perform multi-constraint chord cutting on each circle within the initial set of circles to simulate the fracture morphology of natural ice floes and generate irregular polygons. Therefore, for each circle within the initial circular geometry, an integer is randomly generated within the range of the minimum to the maximum number of cutting chords as the total number of cutting chords for the corresponding circle. Each time, two non-overlapping points are randomly generated on the circumference of the corresponding circle to form a cutting chord, and recorded in the cutting chord set. At the same time, the coordinates of all intersection points between chords and between chords and the circumference in the cutting chord set are recorded. A planar topology is constructed based on cutting chords and intersections, with the circumference, cutting chords, and intersections all serving as topology nodes. Closed loops are constructed based on these topology nodes, with each closed loop corresponding to a polygon boundary. Calculate the area of each closed loop, remove invalid fragments whose area is smaller than the minimum area of the target power-law distribution, store all valid polygons in the candidate ice floe individual pool, assign a unique identification number to each polygon and record all attributes.
[0021] In some other specific embodiments, the multi-constraint random chord cutting performed in this application must satisfy the following constraints for all cutting operations: both endpoints of the chord must fall on the circumference of the target circle, and endpoints are prohibited from being inside the circle; the included angle between any two cutting chords must not be less than 15 degrees to avoid generating narrow and invalid polygons; the length of a single cutting chord must not be less than one-third of the radius of the target circle to avoid generating excessively fragmented pieces; the number of sides of the cut polygon must be between 3 and 12 to match the side distribution of real floating ice.
[0022] S2. Construct a target position sequence based on the target power law distribution, preprocess and rank transform the candidate floating ice pools, and complete the selection and matching of polygons and position sequences by integrating the rank transformation nonparametric matching strategy. Then, embed a two-way closed-loop correction mechanism into the sequential optimal stopping mechanism to perform forward and / or reverse correction on the floating ice area sequence obtained by the selection and matching, and finally output the floating ice pool set. The specific steps are as follows: Based on the target power-law distribution parameters, the equal probability quantile method is used to generate ordered target area values that are consistent with the total number of target ice floes. These values are arranged in descending order to form a target area sequence. The elements in the descending sequence are assigned positions, with the largest element having position one, the second largest element having position two, and the smallest element having position consistent with the total number of target ice floes, forming a target position sequence. A mapping table between target positions and areas is constructed as a benchmark for subsequent matching. Remove invalid polygons in the candidate ice floes pool whose area is smaller than the target minimum area and larger than the target maximum area. Arrange the remaining valid polygons in descending order of area to form a candidate area sequence. The length of the sequence is the number of candidate polygons after preprocessing and is not less than three times the total number of target ice floes. Assign positions to the candidate sequence elements arranged from largest to smallest, with the largest element having a position of one and the smallest element having a position consistent with the total number of candidate polygons after preprocessing, thus forming a candidate position sequence. Construct a mapping table corresponding to the candidate position, area, and polygons, and record the area value and full polygon attributes corresponding to each candidate position to complete the preprocessing and rank transformation of the candidate floating ice pool.
[0023] It should be noted that, based on the target power-law distribution parameters, the method of generating ordered target area values consistent with the total number of target ice floes using equal probability quantiles ensures that the generated area values are uniformly distributed within the target area range according to the probability characteristics of a power-law distribution. This ensures that the final descending target area sequence strictly conforms to the preset power-law distribution. Furthermore, by generating a target area sequence that strictly follows the preset power-law distribution using equal probability quantiles, and transforming the area value matching into positional matching through rank transformation, a unified and accurate matching benchmark is established for subsequent ice floe screening.
[0024] After constructing the target rank sequence and preprocessing and rank transformation of the candidate ice floe pools, the process also includes: The selection process proceeds sequentially from position 1 to the total number of target ice floes. First, the candidate polygon with the largest area corresponding to position 1 is selected, and then subsequent positions are selected in turn. For each target position, selection is only allowed within the candidate position range. The lower limit of the range is the current target position, and the upper limit of the range is the difference between the total number of candidates and the current target position, which is the difference between the total number of targets and the current target position. This ensures that there are enough candidate samples for subsequent positions and avoids the situation where there are no samples to choose from later. For the target position and the candidate polygon, the absolute value of the difference between the candidate position and the target position divided by the total number of target ice floes is used as the relative position deviation, and the absolute value of the difference between the candidate area and the area corresponding to the target position divided by the area corresponding to the target position is used as the relative area deviation. The obtained relative position deviation and relative area deviation are used to construct a joint matching degree function, which is: 1 minus the sum of the position weight multiplied by the relative position deviation and the area weight multiplied by the relative area deviation, as the matching degree value of the joint matching degree function. It should be noted that, considering the heavy-tailed characteristic of the power-law distribution, for the first 10% of large-size positions, the position weight is set to 0.3 and the area weight to 0.7, so as to prioritize the area accuracy of large-size ice floes; for the last 90% of small and medium-size positions, the position weight is set to 0.7 and the area weight to 0.3, so as to prioritize the matching of the overall distribution position shape. For each target position, the decision threshold is set to be equal to 1 minus 0.05 plus the sum of the current target position divided by twice the total number of targets. That is, the smaller the position and the larger the area, the higher the threshold. The matching requirements for large-sized ice floes are more stringent, and the matching of the heavy tail part of the power law distribution plays a decisive role in the overall distribution. For the target position, the polygons in the candidate interval are observed sequentially in ascending order of candidate positions. The joint matching degree is calculated. When there is the first polygon that satisfies the matching degree greater than or equal to the decision threshold, the observation of the corresponding candidate position is stopped immediately. The polygon is selected as the matching iceberg of the corresponding target position and removed from the candidate sequence. Then, the screening of the next candidate position begins. When there is no polygon that satisfies the decision threshold for the target position, the closed-loop correction stage is entered to complete the screening and matching of the fusion rank transform nonparametric matching strategy.
[0025] After completing the full-position sequential screening, a preliminary matching ice floe area sequence is obtained. Arranged in descending order, the Kolmogorov-Smirnov method is used to test the statistics of the ice floe area sequence and the target area sequence. If there is a statistic greater than zero and there is a polygon in the target position that does not meet the decision threshold, a two-way closed-loop correction is performed, including: Based on the relative position deviation and relative area deviation, as well as the corresponding matching degree values, when there is insufficient matching degree for large-size positions, the area weight of large-size positions is increased by a fixed gradient of one-fifth, while the position weight is simultaneously reduced accordingly. The sum of the position weight and the area weight is always 1. At the same time, the decrease of the decision threshold with the increase of position is narrowed by a fixed ratio of one-fifth each time, and the lower limit of the threshold for large-size positions is locked to prioritize the area matching accuracy of large-size ice floes. When there is insufficient matching degree between the position of medium and small size, the position weight of medium and small size is increased by a fixed gradient of one-fifth each time, and the area weight is adjusted down accordingly. The sum of position weight and area weight is always 1. After each round of parameter correction is completed, the sequential filtering of all positions is re-executed, and the matching sequence and overall matching degree are updated synchronously. If the overall matching degree still does not reach the preset threshold after three consecutive positive corrections, the positive correction process is stopped immediately and reverse correction is initiated.
[0026] It should be noted that the statistic obtained by the Kolmogorov-Smirnov test is greater than zero, indicating that there is a statistical deviation between the initially matched area sequence and the target area sequence. At the same time, when there is a polygon in the target position that does not meet the decision threshold, the matching result is determined to be unsatisfactory, so a two-way closed-loop correction is performed.
[0027] S3. Perform multi-scale hierarchical classification and layout priority sorting on the output set of ice floes. After completing the construction of the skeleton layer, the filling extension layer and the gap completion layer, the entire scene is transformed into a spatial hash grid, and a dynamic neighbor list is set to output a set of three-dimensional ice floe meshes with complete physical properties and the coordinates of each ice floe. The specific steps are as follows: Based on the initial sampling density, the number and density of sampling points at a large size level are increased by a fixed gradient each time, while maintaining the original minimum spacing and maximum overlap constraints. At the same time, the upper and lower limits of the number of cutting chords of large-sized circles are lowered by a fixed ratio, and the minimum length and minimum included angle constraints of the cutting chords are increased by a fixed ratio. This reduces the fragmentation of large-sized circles and improves the effective yield of large-sized ice floe bodies. Furthermore, this application not only expands the sample base of large-sized initial circles, but also maintains the distribution characteristics of ice floe density and dispersion in natural ice areas, avoiding excessive overlap of circles and deviation from the true shape due to increased density. At the same time, the upper and lower limits of the number of cutting chords of large-sized circles are lowered by a fixed ratio, and the minimum length and minimum included angle constraints of the cutting chords are increased by a fixed ratio. By reducing the number of cuttings and increasing the length and included angle of the cutting chords, the large-sized circles are prevented from being over-cut into fine fragments from the source of cutting, ensuring that more large-sized ice floe bodies that meet the area requirements can be cut from the large-sized circles, effectively improving their yield. The sampling radius range of the medium and small size levels is expanded and shrunk by a fixed ratio to ensure that the three level ranges are continuous and do not overlap, and do not exceed the radius range corresponding to the target area. At the same time, the upper and lower limits of the number of cutting chords of the corresponding level circle are increased by a fixed ratio to expand the effective sample size of medium and small size polygons. After each reverse correction is completed, the S1 operation is re-executed to generate a new pool of candidate ice floes. The entire sequential screening process is then fully executed, and the matching sequence and overall matching degree are updated synchronously until the matching results meet the preset requirements. Finally, a set of ice floes is output.
[0028] The ice floes were arranged from largest to smallest in area and divided into three non-overlapping multi-scale layers: the skeleton layer, the filling and expansion layer, and the gap filling layer. The skeleton layer consists of the largest ice floes in the top 10% of the area; the filling and expansion layer consists of the medium-sized ice floes in the top 10% to 50% of the area; and the gap filling layer consists of the smallest ice floes in the bottom 50% of the area. The priority order for layout is skeleton layer, fill extension layer and gap filling layer. Within the same layer, they are arranged from largest to smallest area to ensure that large-sized ice floes are laid out first and to avoid the problem of large-sized ice floes having no place to be placed. Using the diameter of the circumscribed circle of the smallest floating ice in the target scene as the side length of the grid unit, the entire scene is divided into a uniform two-dimensional grid. For any coordinate point, the row number is the vertical coordinate divided by the side length of the grid unit and rounded down, and the column number is the horizontal coordinate divided by the side length of the grid unit and rounded down. The hash key value is the row number multiplied by the total number of columns in the scene plus the column number, thus constructing a spatial hash grid. Each ice floe in the ice floe set is placed in the spatial hash grid according to the layout priority. After each ice floe is placed, all grid cells covered by the outer rectangle of the corresponding ice floe are calculated. The full information of the corresponding ice floe is added to the hash list of the corresponding grid cell to form a dynamic neighbor list. The final output is a three-dimensional ice floe mesh set and the corresponding coordinates of each individual ice floe.
[0029] In some other specific embodiments, the layout of the ice floes follows the following pattern when placing them: The core skeleton layer processes each ice floe in descending order of area, randomly generating an initial position and rotation angle within the scene. Collision detection and scene boundary verification are performed based on the neighbor list. If there is no collision, the position and angle are fixed and the neighbor list is updated. If a collision occurs, 50 candidate positions and angles are generated in a ring-shaped area with the initial position as the center and a radius of one-tenth of the scene length. The verification is repeated until a valid pose is found. After all this is completed, the overall skeleton of the ice floe field is formed. Filling the expansion layer - Each ice floe is processed from largest to smallest area. Based on the polygons of the placed ice floes, gap regions are identified. Initial positions and angles are generated in the gap regions first. Collision detection and minimum gap verification are performed to ensure that the gap between ice floes is greater than or equal to the minimum gap threshold. After finding the effective pose, it is fixed and the neighbor list is updated. After all this is completed, the main structure of the ice floe field is formed. Gap completion layer layout - For each ice floe, process them from largest to smallest area, traverse all gaps in the scene, filter out candidate gaps with a size larger than the diameter of the ice floe's outer circle, generate multiple candidate positions and angles within the gap, find the optimal pose that allows the ice floe to embed and the gap to be closest to the minimum gap threshold, fix it and update the neighbor list; after all this is done, maximize the utilization of gaps and improve scene density.
[0030] S4. Based on the coordinates of the three-dimensional ice floe mesh set and each individual ice floe, the thickness of the individual ice floe is assigned by the area-thickness coupled power law mapping. The irregular two-dimensional polygons of each individual ice floe are subjected to three-dimensional extrusion and edge refinement processing to obtain all the corresponding three-dimensional ice floes. The physical properties are then imported into the physical simulation engine to form a complete three-dimensional ice floe scene.
[0031] Specifically, for each ice floe unit, the thickness is calculated by multiplying the minimum base thickness by the area of the ice floe unit divided by the target minimum area, resulting in a power-law exponent of the thickness. This is then used as the base thickness of the corresponding ice floe unit. A random perturbation coefficient is output for the base thickness of each ice floe unit. The perturbation coefficient follows a normal distribution with a mean of 1 and a standard deviation of 0.1, and its value is limited to between 0.8 and 1.2 to avoid excessive thickness deviation. Finally, the thickness of each ice floe unit is equal to the base thickness multiplied by the perturbation coefficient, which serves as the thickness benchmark for three-dimensional extrusion, thus completing the assignment of the ice floe unit thickness. For each individual ice floe, the 2D polygon is adjusted to a counter-clockwise vertex order to ensure the correct extrusion normal direction. Vertex deduplication and collinear point removal are performed to simplify the number of vertices while retaining the core shape and avoiding mesh redundancy. After preprocessing, the final thickness is extruded along the upward direction perpendicular to the plane to generate the 3D main mesh. Specifically, the coordinates of the bottom vertex of the 2D polygon are the original plane coordinates plus a height of 0, and the coordinates of the top vertex are the original plane coordinates plus a height equal to the final thickness. Connecting the corresponding vertices generates the side quadrilateral mesh. Closing the top and bottom faces forms a 3D prism mesh. The normal direction of all faces is unified to point outward from the mesh, which meets the requirements of rendering and simulation. For each 3D ice floe unit, random chamfering is performed on the boundary lines of the top, bottom, and side surfaces generated after 3D extrusion of the 2D polygons. Specifically, the chamfer radius is 5% to 10% of the final thickness to simulate the wear pattern of natural ice floes. Random offsets of no more than 5% of the minimum side length of the ice floe are added to the planar coordinates of the side vertices to simulate the concave and convex shapes formed by fractures. The Loop subdivision surface algorithm is used to subdivide the top and bottom surfaces, and vertical height perturbations of no more than 10% of the final thickness are added to the subdivision vertices to simulate the shapes of snow accumulation, melt pools, and ice ridges, thereby enhancing the realism.
Claims
1. A method for generating random ice floes based on random circular cutting and power-law distribution, characterized in that, The method includes: S1. Based on the minimum and maximum areas of the target power-law distribution, the hierarchical size intervals are calibrated to obtain non-overlapping size levels. Controlled Poisson disk sampling is performed on each size level, and the samples are merged to form a global initial circular set. Multi-constraint random chord cutting is performed on each circle in the initial circular set to simulate the fracture morphology of natural floating ice and generate irregular polygons in the candidate floating ice pool. S2. Construct a target position sequence based on the target power law distribution, preprocess and rank transform the candidate floating ice pools, and complete the selection and matching of polygons and position sequences by integrating the rank transformation nonparametric matching strategy. Then, embed a two-way closed-loop correction mechanism into the sequential optimal stopping mechanism to perform forward and / or reverse correction on the floating ice area sequence obtained by the selection and matching, and finally output the floating ice pool set. S3. Perform multi-scale hierarchical classification and layout priority sorting on the output set of ice floes. After completing the construction of the skeleton layer, the filling extension layer and the gap completion layer, the entire scene is transformed into a spatial hash grid, and a dynamic neighbor list is set to output a set of three-dimensional ice floe meshes with complete physical properties and the coordinates of each ice floe. S4. Based on the coordinates of the three-dimensional ice floe mesh set and each individual ice floe, the thickness of the individual ice floe is assigned by the area-thickness coupled power law mapping. The irregular two-dimensional polygons of each individual ice floe are subjected to three-dimensional extrusion and edge refinement processing to obtain all the corresponding three-dimensional ice floes. The physical properties are then imported into the physical simulation engine to form a complete three-dimensional ice floe scene.
2. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 1, characterized in that, S1 further includes: Based on the minimum and maximum areas of the target power-law distribution, the size intervals are defined as follows: the area intervals are divided into three non-overlapping size levels: the large size level is defined as the area interval from one-tenth of the maximum area to the maximum area, corresponding to the circular radius interval from one-tenth of the maximum area divided by the square root of pi; the medium size level is defined as the area interval from ten times the minimum area to one-tenth of the maximum area, corresponding to the circular radius interval from ten times the minimum area divided by the square root of pi; and the small size level is defined as the area interval from the minimum area to ten times the minimum area, corresponding to the circular radius interval from ten times the minimum area divided by the square root of pi. After obtaining the non-overlapping size levels, Poisson disk sampling is performed on each size level. Specifically, the square root of two times the minimum radius of the corresponding size level is used as the side length of the sampling grid cell, and there is at most one sampling point in each sampling grid. Initial seed points are randomly generated within the target scene plane, and these seed points are stored in the active list and recorded in the corresponding grid cells. A seed point is randomly selected from the active list. Using the seed point as the center, a radius is randomly generated within the radius range of the corresponding level to form an initial circle.
3. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 2, characterized in that, After obtaining the initial circle of the corresponding level, candidate sampling points are generated in an annular area with twice the radius of the current initial circle, using the randomly selected seed point as the center, and the minimum center distance of the corresponding level is added to the radius of the current initial circle. For each candidate sampling point, check the existing seed points in the grid and the eight adjacent grids. If there is a circle center distance that is greater than or equal to the minimum circle center distance and less than or equal to the sum of the current circle radius multiplied by the minimum overlap threshold, then add the corresponding candidate point to the active list and grid record. If the active list is empty, the sampling of the corresponding level is completed. Repeat the operation to complete the sampling of the three levels, merge the initial circles of all levels, remove invalid circles that completely overlap and have zero area, and finally obtain the initial circle set.
4. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 1, characterized in that, S1 further includes: For each circle within the initial circular geometry, randomly generate an integer within the range of the minimum to the maximum number of cutting chords, and use this integer as the total number of cutting chords for the corresponding circle. Each time, two non-overlapping points are randomly generated on the circumference of the corresponding circle to form a cutting chord, and recorded in the cutting chord set. At the same time, the coordinates of all intersection points between chords and between chords and the circumference in the cutting chord set are recorded. A planar topology is constructed based on cutting chords and intersections, with the circumference, cutting chords, and intersections all serving as topology nodes. Closed loops are constructed based on these topology nodes, with each closed loop corresponding to a polygon boundary. Calculate the area of each closed loop, remove invalid fragments whose area is smaller than the minimum area of the target power-law distribution, store all valid polygons in the candidate ice floe individual pool, assign a unique identification number to each polygon and record all attributes.
5. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 1, characterized in that, S2 further includes: Based on the target power law distribution parameters, the equal probability quantile method is used to generate ordered target area values that are consistent with the total number of target ice floes. These values are arranged in descending order to form a target area sequence. The elements in the sequence are assigned positions, with the largest element having position one, the second largest element having position two, and the smallest element having position consistent with the total number of target ice floes, thus forming a target position sequence. A mapping table between target positions and areas is then constructed. Remove invalid polygons in the candidate ice floes pool whose area is smaller than the target minimum area and larger than the target maximum area. Arrange the remaining valid polygons in descending order of area to form a candidate area sequence. The length of the sequence is the number of candidate polygons after preprocessing and is not less than three times the total number of target ice floes. Assign positions to the candidate sequence elements arranged from largest to smallest, with the largest element having a position of one and the smallest element having a position consistent with the total number of candidate polygons after preprocessing, thus forming a candidate position sequence. Construct a mapping table corresponding to the candidate position, area, and polygons, and record the area value and full polygon attributes corresponding to each candidate position to complete the preprocessing and rank transformation of the candidate floating ice pool.
6. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 1, characterized in that, S2, after constructing the target rank sequence and preprocessing and rank transformation of the candidate floating ice pools, also includes: The selection process proceeds sequentially from position 1 to the total number of target ice floes. First, the candidate polygon with the largest area corresponding to position 1 is selected, and then subsequent positions are selected in turn. For each target position, selection is only allowed within the candidate position range. The lower limit of the range is the current target position, and the upper limit of the range is the difference between the total number of candidates and the total number of targets and the current target position. For the target position and the candidate polygon, the absolute value of the difference between the candidate position and the target position divided by the total number of target ice floes is used as the relative position deviation, and the absolute value of the difference between the candidate area and the area corresponding to the target position divided by the area corresponding to the target position is used as the relative area deviation. The obtained relative position deviation and relative area deviation are used to construct a joint matching degree function, which is: 1 minus the sum of the position weight multiplied by the relative position deviation and the area weight multiplied by the relative area deviation, as the matching degree value of the joint matching degree function. For each target position, set the decision threshold to be equal to 1 minus 0.05 plus the sum of the current target position divided by twice the total number of targets; For the target position, observe the polygons in the candidate interval sequentially in ascending order of candidate positions, calculate the joint matching degree, and when there is the first polygon that satisfies the matching degree greater than or equal to the decision threshold, immediately stop the observation of the corresponding candidate position, select the polygon as the matching iceberg of the corresponding target position, remove it from the candidate sequence, and proceed to the next candidate position screening, thus completing the screening and matching of the fusion rank transform nonparametric matching strategy.
7. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 6, characterized in that, After S2 completes the full-position sequential screening, a preliminary matching ice floe area sequence is obtained. Arranged in descending order, the Kolmogorov-Smirnov method is used to test the statistics of the ice floe area sequence and the target area sequence. If there is a statistic greater than zero and a polygon at the target position does not meet the decision threshold, a two-way closed-loop correction is performed, including: Based on the relative position deviation and relative area deviation, as well as the corresponding matching degree value, when there is insufficient matching degree of the large size position, the area weight of the large size position is increased by a fixed gradient of one-fifth, and the position weight is adjusted down accordingly. The sum of the position weight and the area weight is always 1. At the same time, the decrease of the decision threshold with the position increases is narrowed by a fixed ratio of one-fifth each time, and the lower limit of the threshold of the large size position is locked. When there is insufficient matching degree between the position of medium and small size, the position weight of medium and small size is increased by a fixed gradient of one-fifth each time, and the area weight is adjusted down accordingly. The sum of position weight and area weight is always 1. After each round of parameter correction is completed, the sequential filtering of all positions is re-executed, and the matching sequence and overall matching degree are updated synchronously. If the overall matching degree still does not reach the preset threshold after three consecutive positive corrections, the positive correction process is stopped immediately and reverse correction is initiated.
8. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 7, characterized in that, S2 further includes: Based on the initial sampling density, the number of sampling points and sampling density of a large-size layer are increased by a fixed gradient each time, while keeping the original minimum spacing and maximum overlap constraints unchanged. At the same time, the upper and lower limits of the number of cutting chords of large-size circles are lowered by a fixed ratio, and the minimum length and minimum included angle constraints of cutting chords are raised by a fixed ratio to reduce the fragmentation of large-size circles and improve the effective output rate of large-size floating ice bodies. The sampling radius range of the medium and small size levels is expanded and shrunk by a fixed ratio to ensure that the three level ranges are continuous and do not overlap, and do not exceed the radius range corresponding to the target area. At the same time, the upper and lower limits of the number of cutting chords of the corresponding level circle are increased by a fixed ratio to expand the effective sample size of medium and small size polygons. After each reverse correction is completed, the S1 operation is re-executed to generate a new pool of candidate ice floes. The entire sequential screening process is then fully executed, and the matching sequence and overall matching degree are updated synchronously until the matching results meet the preset requirements. Finally, a set of ice floes is output.
9. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 1, characterized in that, S3 further includes: The ice floes were arranged in descending order of area and divided into three non-overlapping multi-scale layers, including a skeleton layer, a filling and expansion layer, and a gap-filling layer. The order for determining layout priority is skeleton layer, padding extension layer, and gap completion layer; Using the diameter of the circumscribed circle of the smallest floating ice in the target scene as the side length of the grid unit, the entire scene is divided into a uniform two-dimensional grid. For any coordinate point, the row number is the vertical coordinate divided by the side length of the grid unit and rounded down, and the column number is the horizontal coordinate divided by the side length of the grid unit and rounded down. The hash key value is the row number multiplied by the total number of columns in the scene plus the column number, thus constructing a spatial hash grid. Each ice floe in the ice floe set is placed in the spatial hash grid according to the layout priority. After each ice floe is placed, all grid cells covered by the outer rectangle of the corresponding ice floe are calculated. The full information of the corresponding ice floe is added to the hash list of the corresponding grid cell to form a dynamic neighbor list. The final output is a three-dimensional ice floe mesh set and the corresponding coordinates of each individual ice floe.
10. The method for generating random ice floes based on random circular cutting and power-law distribution according to claim 1, characterized in that, S4 calculates the thickness power law exponent of the result of multiplying the minimum base thickness by the area of the ice floe and dividing by the target minimum area for each ice floe unit. This thickness is then used as the base thickness of the corresponding ice floe unit. A random perturbation coefficient is output for the base thickness of each ice floe unit. Finally, the thickness of each ice floe unit is equal to the base thickness multiplied by the perturbation coefficient, thus obtaining the final thickness and completing the assignment of the ice floe unit thickness. For each individual ice floe, the 2D polygon is adjusted to a counter-clockwise vertex order, and vertex deduplication and collinear point removal are performed. After preprocessing, the final thickness is extruded along the upward direction perpendicular to the plane to generate a 3D main mesh. Specifically, the coordinates of the bottom vertex of the 2D polygon are the original plane coordinates plus a value with a height of 0, and the coordinates of the top vertex are the original plane coordinates plus a value with a height equal to the final thickness. The corresponding vertices are connected to generate a quadrilateral mesh on the side. The top and bottom surfaces are closed to form a 3D prism mesh. For each 3D ice floe unit, the boundary lines of the top, bottom and side surfaces generated after 3D extrusion of the 2D polygons are randomly chamfered. Specifically, the chamfer radius is 5% to 10% of the final thickness. A random offset of no more than 5% of the minimum side length of the ice floe is added to the planar coordinates of the side vertices to simulate the concave and convex shape formed by the fracture. The Loop subdivision surface algorithm is used to subdivide the top and bottom surfaces, and vertical height perturbations of no more than 10% of the final thickness are added to the subdivision vertices.