CN111161420A - 3D printing-oriented rapid repairing method for shoemaking model - Google Patents

3D printing-oriented rapid repairing method for shoemaking model Download PDF

Info

Publication number
CN111161420A
CN111161420A CN201911394629.8A CN201911394629A CN111161420A CN 111161420 A CN111161420 A CN 111161420A CN 201911394629 A CN201911394629 A CN 201911394629A CN 111161420 A CN111161420 A CN 111161420A
Authority
CN
China
Prior art keywords
loop
triangle
point
cutting
cut
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911394629.8A
Other languages
Chinese (zh)
Other versions
CN111161420B (en
Inventor
梅敬成
武伟
邢胜南
杨亚伦
高新燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Hoteam Software Co ltd
Original Assignee
Shandong Hoteam Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Hoteam Software Co ltd filed Critical Shandong Hoteam Software Co ltd
Priority to CN201911394629.8A priority Critical patent/CN111161420B/en
Publication of CN111161420A publication Critical patent/CN111161420A/en
Application granted granted Critical
Publication of CN111161420B publication Critical patent/CN111161420B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data

Abstract

The invention provides a 3D printing-oriented rapid repairing method for a shoemaking model, which comprises the steps of converting a geometric model into a lightweight data model in JT format, analyzing the JT format model, calculating bounding boxes and area information of each surface, and deleting redundant overlapped repeated surfaces in the modeling process; intelligently identifying the surfaces of local overlapping and cross features based on accurate geometric data, automatically segmenting based on discrete geometric data, automatically judging the inside and the outside, and deleting the internal part; cutting, cutting and circumferential normal cutting are carried out, and internal shielding surface errors are processed; identifying gaps between the surfaces based on the accurate geometric data, and stitching the discrete geometric data; and holes formed by the edges are opened in the machining direction, classified, respectively filled, and corrected in the normal direction to obtain a model capable of being printed in a 3D mode, so that the shoe mold repairing efficiency can be greatly improved.

Description

3D printing-oriented rapid repairing method for shoemaking model
Technical Field
The disclosure belongs to the technical field of 3D printing, and relates to a 3D printing-oriented rapid repairing method for a shoemaking model.
Background
The statements in this section merely provide background information related to the present disclosure and may not necessarily constitute prior art.
Along with the development of 3D printing technology, shoe mold manufacturing begins to change to 3D printing mode, and 3D printing has fast, the cycle is short, easy volume production, the precision is high, the environmental protection is healthy, all-round no dead angle, do benefit to the advantage of style innovation. 3D prints and requires model water-tight, and under the traditional numerical control mode of processing, there is the problem that can not print such as gap, bridging, hole in the model of rhinoceros design.
At present, 3D printing repair software specially aiming at the shoe mold industry does not exist, the existing 3D printing repair software cannot well process the shoe mold, and the problems of poor operability, low data quality, low efficiency and the like exist. The problems of poor shoe mold quality, more defects, long repair time and the like which are caused by troubles of technicians in the shoe making industry in the model design conversion process are solved. Many repair software only consider discrete geometric data or accurate geometric data, model cutting needs single operation curve projection, thereby carries out Boolean operation, and because shoe mold decorative pattern is complicated, efficiency is extremely low.
Disclosure of Invention
The method comprises the steps of cutting, surface segmentation, gap sewing, hole filling and the like on the basis of accurate geometric data and discrete geometric data, and generating a 3D printable model. The cutting is carried out in batch, the surface is cut apart, the gap is sewed up, the hole is mended one key operation, the efficiency of shoe mold restoration has been improved greatly.
According to some embodiments, the following technical scheme is adopted in the disclosure:
A3D printing-oriented rapid repairing method for a shoemaking model comprises the following steps:
(1) converting the geometric model into a lightweight data model in JT format, analyzing the JT format model, and calculating bounding box and area information of each surface;
(2) deleting redundant overlapping surfaces in the modeling process;
(3) intelligently identifying the surfaces of local overlapping and cross features based on accurate geometric data, automatically segmenting based on discrete geometric data, automatically judging the inside and the outside, and deleting the internal part;
(4) cutting, cutting and circumferential normal cutting are carried out, and internal shielding surface errors are processed;
(5) identifying gaps between the surfaces based on the accurate geometric data, and stitching the discrete geometric data;
(6) and opening holes formed by edges in the machining direction, classifying, respectively filling, and correcting the normal direction to obtain a 3D printable model.
And after the model capable of being printed in 3D is obtained, 3D printing can be carried out.
In the step (1), each surface of the JT format model is parsed into precise geometric data and discrete geometric data. Analyzing the discrete geometric data into non-repeated vertexes and triangle vertex indexes, identifying a degenerated triangle according to the triangle indexes, judging whether the degenerated triangle is a degenerated triangle by judging whether the indexes of the triangles are repeated and whether the area of the triangle is smaller than a set threshold value or not, wherein at least two points of the degenerated triangle are the same or three points of the degenerated triangle are collinear; judging whether a repeated triangle exists according to the face index of the triangle, wherein the repeated triangle is characterized in that the indexes of the two triangles are the same and the directions are the same, after deleting the degenerated triangle and the repeated triangle, calculating the topological relation of the components, wherein the topological relation of the triangle and the side is the triangle adjacent to the side of the triangle, the topological relation of the side and the point is the side adjacent to the vertex of the triangle, calculating the bounding box and the area of the face, and analyzing the accurate geometric data into the non-repeated vertex and boundary vertex indexes.
In the step (2), the specific method for deleting the overlapped redundant faces overlapped in the modeling process comprises the following steps:
(i) all input structure surfaces are sorted by area.
(ii) (iv) determining whether the areas of adjacent components are equal, if so, performing (iii), and if not, performing (v);
(iii) (iv) determining whether the two component bounding boxes are equal, if so, performing (iv) and if not, performing (v);
(iv) the two parts are completely overlapped, and the repeated surface is deleted;
(v) and (3) whether all adjacent surfaces are judged, if yes, finishing the command, and if not, executing (ii).
In the step (3), the method for identifying the local overlapping and crossing features comprises the following steps: if the bounding boxes of the two surfaces are not intersected, the two surfaces are not considered to have local overlapping and crossing features, if the bounding boxes are intersected, whether the two surfaces are intersected or not is further judged, if the bounding boxes are not intersected, the two surfaces are considered to have no local overlapping and crossing features, if the bounding boxes are intersected, whether a small boundary is in the large boundary or not is judged according to accurate geometric boundary data, if the small boundary is in the large boundary, the two surfaces are considered to be locally overlapped, and the surface with a smaller area is removed; if not, one of the boundaries is scattered, the scattered point is projected to a broken line segment of the other boundary, and whether the projected point is on the broken line segment is judged.
As a further limitation, the minimum distance of each point of the small boundary corresponding to the large boundary is calculated by calculating the size relationship of the boundaries of the two structural plane bounding boxes, and if the minimum distance is not within the threshold range, the internal and external relationships are not considered to exist; if the normal directions of the corresponding points are within the threshold range, judging whether the normal directions of the corresponding points are consistent, if the normal directions are inconsistent, no internal and external relation exists, and if the normal directions are consistent, the internal and external relation exists. According to the calculation result, if the inside and outside relation exists, the coverage overlapping is considered, the surface with the smaller area is deleted, if the inside and outside relation does not exist, the broken line segment of the boundary of one structural surface bounding box towards the boundary of the other structural surface bounding box is scattered to be projected, whether the position parameter and the normal parameter of the calculation point and the projection point are in the threshold range or not is calculated, the calculation is circularly executed until all the points on the boundary of the structural surface bounding box are projected, and the corresponding relation between the result and the index is recorded.
As a further limitation, according to the correspondence between the recorded results and the indexes, the number of segments intersecting two boundaries within the normal threshold range and outside the normal threshold range is respectively calculated: and judging whether the number of the intersecting segments meeting the normal threshold is greater than 1, two surfaces which are greater than 1 are partially overlapped, and the number is less than or equal to 1, and then continuously judging whether the number of the intersecting segments which do not meet the normal threshold is greater than 1, two surfaces which are greater than 1 are crossed, and the number is less than or equal to 1, so that the intersecting segments are not overlapped or crossed.
In the step (3), the specific process of cross feature segmentation includes:
(a) calculating bounding boxes of the two structural surfaces Face1 and Face2, and expanding the length, the width and the height of the bounding boxes by a certain multiple;
(b) judging whether the bounding boxes of the Face1 and the Face2 are intersected, if so, executing the next step, otherwise, not intersecting, and not performing segmentation processing;
(c) respectively calculating a triangle set Tris1 in a Face1 in a Face2 bounding box and a triangle set Tris2 in a Face2 in a Face1 bounding box;
(d) whether a null set exists between the triangle set Tris1 and the triangle set Tris2 or not is not intersected if the null set exists, and if the null set does not exist, the step (e) is executed;
(e) creating an octree by Tris1, calculating the intersection point of each triangle in Tris2 and a Tris1 set, and recording the information of the intersected triangles;
(f) according to the information of the intersected triangles, the triangles in the Face1 are divided into two sets of faces 11-intersected and Face-disjoint according to whether the triangles are intersected or not;
(g) dividing the intersection part into elements again according to the intersection point by the Face 11;
(h) and (3) performing penetration treatment on the non-penetrated part: searching the end points of the intersecting lines, judging whether the end points are points on the boundary, if so, not processing, and if not, extending the end points to the boundary according to the intersecting line direction, so that the intersecting lines can cut the set;
(i) the surface is divided into a plurality of single connected regions according to intersecting lines.
In the step (3), the specific process of judging inside and outside includes:
(1) in an initial state, all current areas are set as invisible areas;
(2) judging Z, X, Y, -Z, -X and-Y directions in total, and firstly taking the Z direction as the ray direction to carry out the following operations;
(3) traversing all invisible areas, and taking out the triangle with the largest area: if the normal direction of the triangle is vertical to the current ray direction, the area is placed in a temporary invisible area, the next area is processed, the bounding box of the triangle is extended in the ray direction, when the bounding box is intersected with the bounding boxes of other surfaces F, the ray is led along the center of the triangle to be intersected with the F, if an intersection point exists, the occlusion is shown, and the occlusion is placed in the temporary invisible area;
(4) acquiring all temporary invisible areas;
(5) if the six directions are finished, deleting the invisible area if the six directions are finished, and executing (6) if the invisible area is not obtained;
(6) the next ray direction is set and then (3) is performed.
In the step (4), the process of cutting the cut surface comprises the following steps:
(i) when the cut surface is selected, automatically judging which cut surfaces are the cut surfaces, traversing other surfaces except the selected cut surface, firstly judging whether the bounding boxes on the two surfaces are intersected, if so, directly taking the intersected bounding boxes as the cut surfaces to be selected, and executing (iv) stretching; (iii) if not, performing (ii);
(ii) a bounding box extending the surface to be cut in the cutting direction;
(iii) judging whether the bounding box of the selected cutting surface is intersected with the extending bounding box;
(iv) stretching the surface to be cut to obtain a stretched body;
(v) whether the stretching body is intersected with the cut surface or not is judged, and if so, the stretching body is stored;
(vi) combining all stretching bodies and the cut surfaces to perform Boolean operation, and dividing to obtain a plurality of parts;
(vii) calculating an internal-external relation, and removing an internal part, wherein the internal-external judgment method comprises the following steps: selecting a triangle with the largest area in each part, taking the center of the triangle as a starting point, making rays in the opposite direction of the stretching direction, and judging whether the triangle intersects with the stretching body, wherein the intersection is an inner part, and the intersection is an outer part.
As a further limitation, wherein the creating of the stretched body comprises:
(a) calculating the boundary Loop of the cutting surface, and if a plurality of loops exist, executing the step (b); if only one Loop exists, the Loop is determined to be an outer Loop, and (e) is executed;
(b) judging inner and outer Loop, determining a plane according to the cutting direction, projecting the Loop onto the plane, and judging which belong to the outer Loop and which belong to the inner Loop according to the inclusion relation;
(c) projecting Loop onto a plane, and creating a bottom surface by using a plane component method;
(d) the original cutting surface is directly used as the top surface of the stretching body. Creating a side surface by a zipper hole filling mode according to the Loop corresponding to the top surface and the bottom surface;
(e) when only one Loop exists, the original cutting surface is directly used as the top surface of the stretching body, the top surface vertex is deviated along the cutting direction to be used as the bottom surface, and the loops of the top surface and the bottom surface are directly connected to form the side surface.
In the step (4), the circumferential normal cutting process includes:
(i) fitting the sphere by using the selected surface to obtain a sphere center;
(ii) and (iv) calculating whether the normal direction of the selected surface is correct according to the sphere center, correctly executing the step (v), incorrectly executing the step (iii), and judging whether the normal direction is correct or not: judging the relation between the vector formed by the upper point of the surface and the center of the sphere and the normal direction of the surface;
(iii) reversing the normal direction;
(iv) selecting a middle surface in a normal offset mode along the vertex, creating a side surface to form a body 1 for judging a cutting surface; offsetting the surface along the normal negative direction of the vertex to create a side surface to form a body 2 for cutting the interior of the cutting surface;
(v) traversing the residual surfaces, and calculating to obtain a surface to be cut according to the intersection with the body 1;
(vi) calculating the normal direction of the triangle with the minimum distance between the surface to be cut and the selection surface, and stretching the surface to be cut along the negative direction of the normal direction;
(vii) combining the stretching bodies, performing Boolean operation on the stretching bodies and the selected surface to obtain a plurality of single connected regions part, judging the inside and the outside, and removing the internal part;
(viii) the body 1 is used for cutting the surface to be cut and removing the internal part.
In the step (5), the gap suture identification and repair process includes:
(a) respectively storing the files according to the surfaces during file import, and firstly merging the files if the files are not merged;
(b) traversing each boundary Loop, deleting small sections in the threshold range, correspondingly deleting triangles, and updating the topological relation;
(c) taking out the end points of all Loop, setting a threshold value to remove the weight of the top points, and pinching the end points in the threshold value range together to form a suturable structure;
(d) the Loop with the same starting point and end point is put together to show that a suturable structure is formed, whether suturing is available is judged firstly, and the judgment condition is as follows: finding a closest point and a projection point from one Loop, and when the distance between the closest point and the projection point is greater than a threshold value, indicating that the seam is too large and cannot be sutured;
(e) calculating other Loop end points in the Loop bounding box, recording the corresponding relation between the Loop and the point to be cut, traversing each point pair of the Loop and the cut point in sequence, calculating the closest point and the projection point of the Loop, preferentially using the closest point to cut the Loop, and using the projection point to cut when the closest point is far away;
(f) after the division, a suturable structure is formed, and then suturing is performed in the same manner as in step (d).
In the step (6), the hole filling process includes:
(i) obtaining Loop of the whole model, calculating an intersection point, and segmenting a triangle;
(ii) acquiring the Loop of the grid after the elements are re-divided;
(iii) combining every two Loop, and judging whether the Loop is an annular hole; if so, (iv) is performed; not, (v) is performed;
(iv) repairing the annular hole by using a zipper hole repairing method;
(v) (vii) the remaining Loop is a single connected hole, and determining whether the Loop is a hole formed in the machining direction, if so, executing (vi); not, performing (vii);
(vi) according to the Loop shape, judging which direction of the holes are XYZ, splitting the holes into two sections, and filling the holes in a zipper hole filling mode;
(vi) and (5) filling holes in an angle mode.
The annular hole identification and repair process comprises the following steps:
(a) traversing each Loop, comparing with the following Loop, and taking two Loop pairs with the farthest closest point and less than a certain threshold value;
(b) continuously extracting Loop pairs with characteristic values basically consistent with characteristic vectors from the paired loops;
(c) extracting Loop pairs contained by the projection central points to serve as final Loop pairs of the annular holes;
(d) adjusting the annular holes, namely Loop pairs, to be in the same rotating direction;
(e) matching Loop1 and Loop2 break points in the Loop pair, and recording matching indexes;
(f) adjusting the index point which is closest to the first point in the Loop1 and does not exceed the corresponding break point in the Loop2 as a starting point;
(g) converting Loop1 and Loop2 to enable the number of the midpoints of Loop1 to be larger than or equal to that of Loop 2;
(h) searching the closest point in the Loop2 at the midpoint of the Loop1, not exceeding the index of the break point, taking the index of the closest point, and exceeding the index of the corresponding break point;
(i) and connecting triangles according to the index information, and finally completing hole filling.
A computer readable storage medium, wherein a plurality of instructions are stored, the instructions are suitable for being loaded by a processor of a terminal device and executing the steps of the 3D printing-oriented shoemaking model rapid repairing method.
A terminal device comprising a processor and a computer readable storage medium, the processor being configured to implement instructions; the computer readable storage medium is used for storing a plurality of instructions, and the instructions are suitable for being loaded by a processor and executing the steps of the 3D printing-oriented shoemaking model rapid repairing method.
Compared with the prior art, the beneficial effect of this disclosure is:
the method can solve the problems that the existing 3D printing repair software cannot better process the shoe mold, and has poor operability, low data quality, low efficiency and the like. The problems of poor shoe mold quality, more defects, long repair time and the like which are caused by troubles of technicians in the shoe making industry in the model design conversion process are solved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the disclosure, illustrate embodiments of the disclosure and together with the description serve to explain the disclosure and are not to limit the disclosure.
FIG. 1 is a flow diagram of the deletion of duplicate redundancy overlaid in a modeling process;
FIG. 2 is a flow chart of the identification of partially overlapping and intersecting features;
FIG. 3 is a cross feature segmentation flow diagram;
FIG. 4 is a flowchart of the determination of inside and outside;
FIG. 5 is a cut-out flow chart of the cut-out surface;
FIG. 6 is a cut surface cutting flow chart;
FIG. 7 is a flow chart of the creation of a stretched body;
FIG. 8 is a flow chart of circumferential normal cropping;
FIG. 9 is a gap closure identification and repair flow diagram;
FIG. 10 is a flow chart of hole filling;
FIG. 11 is a Loop cut flow diagram;
FIG. 12 is a flow chart of annular hole repair;
FIG. 13 is a flow chart of the process plane hole identification and repair;
FIGS. 14(a) - (f) are schematic views of the process of suturing;
FIG. 15 is a schematic diagram of the hole filling result.
The specific implementation mode is as follows:
the present disclosure is further described with reference to the following drawings and examples.
It should be noted that the following detailed description is exemplary and is intended to provide further explanation of the disclosure. Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs.
It is noted that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments according to the present disclosure. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, and it should be understood that when the terms "comprises" and/or "comprising" are used in this specification, they specify the presence of stated features, steps, operations, devices, components, and/or combinations thereof, unless the context clearly indicates otherwise.
The invention provides a rapid shoe mold repairing scheme based on precise geometric data and discrete geometric data, and generates a model capable of being printed in 3D, which is specially used for solving the problem that a model designed by rhinoceros and the like cannot be printed in the process of converting a shoe mold manufacturing mode from machining to 3D printing.
The technical scheme of the invention is as follows:
and converting the geometric models such as 3dm and igs into lightweight data models in JT format. The JT format model is analyzed to calculate information such as bounding boxes and areas for each component. And deleting the overlapped repeated redundant surfaces in the modeling process. The method comprises the steps of intelligently identifying surfaces with local overlapping and cross characteristics based on accurate geometric data, automatically segmenting based on discrete geometric data, automatically judging inside and outside, and deleting internal parts. The geometric shapes are stacked to form a large number of internal shielding surfaces, three functions of cutting, being cut and circumferential normal cutting are carried out, and internal shielding surface errors are processed. And small gaps among the surfaces are identified based on the precise geometric data, and the discrete geometric data are stitched. The holes formed by the opening edges in the processing direction are divided into annular holes and simple holes according to the geometric shapes of the holes; for each type of hole, a specific filling method is adopted to repair the hole according to the geometrical shape of the hole. And correcting the normal direction to obtain a model capable of being printed in 3D.
The method specifically comprises the following steps:
(1) and converting the geometric models such as 3dm and igs into lightweight data models in JT format. Analyzing the JT format model, and calculating information such as bounding boxes and areas of each surface.
(2) And deleting the overlapped repeated redundant surfaces in the modeling process.
(3) The method comprises the steps of intelligently identifying surfaces with local overlapping and cross characteristics based on accurate geometric data, automatically segmenting based on discrete geometric data, automatically judging inside and outside, and deleting internal parts.
(4) The geometric shapes are stacked to form a large number of internal shielding surfaces, three functions of cutting, being cut and circumferential normal cutting are carried out, and internal shielding surface errors are processed.
(5) And small gaps among the surfaces are identified based on the precise geometric data, and the discrete geometric data are stitched.
(6) And opening holes formed by edges in the machining direction, classifying, respectively filling, and correcting the normal direction to obtain a 3D printable model.
In the step (1), the specific method comprises the following steps: models designed by design software such as rhinoceros and the like are converted into JT format models, and each surface of the JT format models is analyzed into accurate geometric data and discrete geometric data. The discrete geometric data is analyzed into non-repeated vertexes and triangle vertex indexes, and the degraded triangle is identified according to the triangle indexes. The geometric form of the degenerated triangle is that at least two points are the same or three points are collinear, and whether the degenerated triangle is judged by judging whether the index of the triangle is repeated and whether the area of the triangle is smaller than a set threshold value. And judging whether repeated triangles exist or not according to the face indexes of the triangles. Repeating triangles are characterized by the same index and same direction for both triangles. And after the degenerated triangles and the repeated triangles are deleted, calculating the topological relation of the part, wherein the topological relation of the triangle and the side is a triangle adjacent to the side of the triangle, and the topological relation of the side and the point is an edge adjacent to the top point of the triangle. The bounding box and area of the surface are calculated. The exact geometric data is resolved into non-repeating vertex and boundary vertex indices.
In the step (2), a specific method for deleting the overlapped redundant faces overlapped in the modeling process is adopted, and all input structural faces are sorted according to the area as shown in fig. 1 (1).
【2】 And judging whether the areas of the adjacent parts are equal, if so, executing (3), and if not, executing (5).
【3】 And judging whether the two part bounding boxes are equal, if so, executing (4), and if not, executing (5).
【4】 The two parts are completely overlapped, and the repeated surface is deleted.
【5】 And (4) judging whether all adjacent surfaces are finished, if so, finishing the command, and if not, executing (2).
And (3) if the bounding boxes of the two surfaces are not intersected, considering that the two surfaces do not have local overlapping and intersecting characteristics, further judging whether the two surfaces are intersected or not if the bounding boxes are intersected, considering that the two surfaces do not have the local overlapping and intersecting characteristics if the bounding boxes are not intersected, judging whether a small boundary is in the large boundary or not according to accurate geometric boundary data if the two surfaces are intersected, considering that the two surfaces are locally overlapped if the two surfaces are intersected, and removing the surface with a smaller area. If not, one of the boundaries is dispersed, the dispersed point is projected to the broken line segment of the other boundary, whether the projected point is on the broken line segment is judged,
the identification flow of the partial overlapping and cross features is shown in fig. 2:
【1】 And judging whether the two structural surfaces Face1 and Face2 bounding boxes intersect or not, and judging that the two structural surfaces Face1 and the bounding boxes do not intersect, wherein the two structural surfaces Face2 bounding boxes do not overlap or intersect locally.
【2】 And calculating the size relationship between the boundary of the Face1 and the boundary of the Face2, calculating the minimum distance of each point of the small boundary corresponding to the large boundary, and if the minimum distance is not within the threshold range, determining that the internal and external relationships do not exist. If the normal directions of the corresponding points are within the threshold range, judging whether the normal directions of the corresponding points are consistent, if the normal directions are inconsistent, no internal and external relation exists, and if the normal directions are consistent, the internal and external relation exists. And if the internal and external relations exist according to the calculation result, the coverage overlapping is considered, the surface with the smaller area is deleted, and if the internal and external relations do not exist, the next step is executed.
【3】 And (3) projecting points on the boundary of the discrete Face1 to a broken line segment of the boundary of the Face2, calculating whether the position parameters and the normal parameters of the points and the projected points are within the threshold range, circularly executing (3) until all the points on the boundary of the Face1 are projected, and recording the corresponding relation between the result and the index.
【4】 And respectively calculating the number of sections intersected with the two boundaries outside the normal threshold range in the normal threshold range according to the recording result.
【5】 And judging whether the number of the intersecting segments meeting the normal threshold is more than 1, two surfaces which are more than 1 are partially overlapped and are less than or equal to 1, and executing the next step.
【6】 And judging whether the number of the intersecting segments which do not accord with the normal threshold is larger than 1, the two surfaces intersect, smaller than or equal to 1, and the intersecting segments do not overlap or intersect.
The cross feature segmentation flow is shown in fig. 3:
【1】 And calculating the bounding boxes of the two structural surfaces Face1 and Face2, and expanding the length, the width and the height of the bounding boxes by 0.2 times.
【2】 Whether the bounding boxes of Face1 and Face2 intersect is the next step, otherwise, the intersection is not performed, and no segmentation is performed.
【3】 Triangle set Tris1 in Face1 within the Face2 bounding box and triangle set Tris2 in Face2 within the Face1 bounding box were calculated, respectively.
【4】 And whether the triangle set Tris1 and the triangle set Tris2 have empty sets or not is determined, and if the empty sets exist, the triangle set Tris1 and the triangle set Tris2 are not intersected and are not subjected to segmentation processing. If no empty set exists, execute [ 5 ].
【5】 Tris1 was created into octree, the intersection of each triangle in Tris2 with Tris1 set was calculated, and the intersecting triangle information was recorded.
【6】 According to the intersecting triangle information. The triangles in Face1 are divided into two sets, Face11 (intersecting), Face12 (disjoint), according to whether they intersect or not.
【7】 Face11 is re-binned the intersection according to the intersection.
【8】 And (5) performing penetration treatment on the non-penetrated part. The method comprises the following steps: and searching the end points of the intersecting lines, judging whether the end points are points on the boundary, if so, not processing, and if not, extending the end points to the boundary according to the intersecting line direction, so that the intersecting lines can cut the set.
【9】 The surface is divided into a plurality of regions according to intersecting lines.
The internal and external flow is shown in FIG. 4:
【1】 In the initial state, all the surfaces are set as invisible surfaces at present.
【2】 The total of Z, X, Y, Z, X, and Y directions are determined, and the following operation is performed with the Z direction as the ray direction.
【3】 And traversing all invisible surfaces and taking out the triangle with the largest area. First, if the normal direction of the triangle is perpendicular to the current ray direction, the plane is placed in the temporary invisible plane, and the next plane is processed. When the bounding box of the triangle extends in the ray direction and intersects with the bounding box of the other plane F, the ray is led along the center of the triangle to intersect with the plane F, if an intersection point exists, the occlusion is shown, and the occlusion is placed in the temporary invisible plane.
【4】 All temporary invisible surfaces are acquired.
【5】 If the six directions are finished, the invisible surface is obtained for deletion. Otherwise [ 6 ].
【6】 The next ray direction is set and then performed [ 3 ].
In the step (4), the cutting flow of the cut surface is shown in fig. 5:
【1】 When the cutting surface is selected, it is automatically determined which cutting surfaces are used. Traversing other surfaces except the selected cut surface, firstly judging whether the bounding boxes on the two surfaces are intersected or not, if so, directly taking the bounding boxes as the cut surface to be selected (generally, the bounding boxes on the two surfaces can be identified at this time), and executing (4) stretching the object. If not, perform [ 2 ].
【2】 A bounding box extending the surface to be cut in the cutting direction.
【3】 And judging whether the selected cutting surface bounding box intersects with the extension bounding box or not. (for the case of levitation on the surface to be cut).
【4】 And stretching the surface to be cut to obtain a stretched body. (stretching method described in detail later)
【5】 And if the stretching body and the cut surface are intersected, storing the stretching body.
【6】 And combining all the stretching bodies and the cut surfaces to perform Boolean operation, and dividing to obtain a plurality of single connected regions part.
【7】 Calculating the internal and external relations and removing internal part. The internal and external judgment method comprises the following steps: selecting a triangle with the largest area in each part, taking the center of the triangle as a starting point, making rays in the opposite direction of the stretching direction, and judging whether the triangle intersects with the stretching body, wherein the intersection is an inner part, and the intersection is an outer part.
The cutting process of the cutting surface is shown in fig. 6:
【1】 And when the cutting surface is selected, judging which surfaces are used as one surface to be processed according to the connectivity.
【2】 And stretching each group of surfaces to obtain a cut body.
【3】 Traversing other surfaces, and if the stretching body is intersected with the other surfaces, executing (4); if not, the surface is not the cut surface.
【4】 The stretched body and the cut surface are subjected to Boolean calculation to remove the inner surface.
The creating process of the stretching body is shown in FIG. 7:
【1】 And calculating the boundary Loop of the cutting surface. If a plurality of Loop exist, executing (2); if there is only one Loop, then it is definitely the outer Loop, and execute [ 5 ].
【2】 And judging the inner Loop and the outer Loop, determining a plane according to the cutting direction, projecting the loops onto the plane, and judging which loops belong to the outer Loop and which loops belong to the inner Loop according to the inclusion relation.
【3】 And projecting Loop onto a plane, and creating a bottom surface by using a plane component interface.
【4】 The original cutting surface is directly used as the top surface of the stretching body. And the corresponding Loop of the top surface and the bottom surface creates a side surface in a zipper hole filling mode.
【5】 When there is only one Loop, the way to create the stretched body is relatively simple. The original cutting surface is directly used as the top surface of the stretching body, the top point of the top surface is deviated along the cutting direction to be used as the bottom surface, and the Loop of the top surface and the Loop of the bottom surface are directly connected to form the side surface.
The circumferential normal cutting process is shown in fig. 8:
【1】 And fitting the sphere by using the selected surface to obtain the sphere center.
【2】 And (4) calculating whether the normal direction of the selected surface is correct or not according to the center of the sphere, and carrying out correct execution [ 4 ] and incorrect execution [ 3 ]. The method for judging whether the normal direction is correct or not comprises the following steps: and judging the relation between the vector formed by the upper point of the surface and the center of the sphere and the normal direction of the surface.
【3】 The normal direction is reversed.
【4】 And (3) offsetting the selected surfaces along the normal direction of the vertex, and creating side surfaces to form a body 1 for judging the cutting surfaces. The surface is offset in the negative direction normal to the vertex, creating a side surface, forming a body 2, for clipping the inside of the clipping surface.
【5】 Traversing the residual surfaces, and calculating to obtain the cutting surfaces according to the intersection with the body 1.
【6】 And calculating the normal direction of the triangle with the minimum distance between the cutting surface and the selection surface, and stretching the cutting surface along the normal direction.
【7】 Combining the stretching bodies, performing Boolean operation on the stretching bodies and the selected surface to obtain a plurality of single connected regions part, judging the inside and the outside, and removing the internal part. And judging an internal and external method: and calculating the triangle with the largest part area, the center and the normal direction of the triangle, taking the center as a starting point, making a ray along the normal direction, and judging whether the triangle intersects with the stretching body, wherein the intersection is an inner part and the intersection is an outer part.
【8】 The body 1 is cut to remove the cutting surface and the inner surface of the cutting surface.
In the step (5), the gap suture identification and repair process is as shown in fig. 9:
【1】 Stitching is done on all the boundary Loop in the model as a whole. When the files are imported, the files are respectively stored according to the surfaces, and if the files are not merged, merging is firstly carried out.
【2】 And traversing each Loop, deleting small sections in the threshold range, correspondingly deleting triangles, and updating the topological relation. There are at least two points (start and end points) per Loop, and even if the distance between the two points is short, there is no deletion. I.e. the number of loops does not change.
【3】 And (4) taking out endpoints of all Loop, and setting a threshold value to perform de-duplication on the vertex. The ends within the threshold range are pinched together to form a stitchable structure.
【4】 Loop's with the same start and end points are put together to indicate that a stitchable structure is formed. Firstly, judging whether the suture can be sewed, wherein the judgment conditions are as follows: and finding the closest point and the projection point from the point on one Loop to the other Loop. When the distance to the nearest point and the distance to the projection point are both larger than the threshold value, the seam is too large to be sutured.
【5】 And calculating other Loop end points in the Loop bounding box, and recording the corresponding relation between the Loop and the point to be cut. And traversing each Loop and cutting point pair in sequence, calculating the closest point and the projection point of the Loop, preferentially using the closest point to divide the Loop, and using the projection point to divide when the closest point is far away.
【6】 After the division, a suturable structure is formed, and then, as in step [ 4 ], suturing is performed.
The method of suturing is as in fig. 14(a) - (f):
assume two loops to be stitched, Loop1 and Loop2, respectively. To be consistent with the code, Si, Ei, Sj, and Ej are also used here to denote points on Loop. Si denotes the last point on Loop1 that has been stitched, Ei denotes the point on Loop1 at which stitching is to be started, Ei ═ Si + 1. Sj denotes the last point on Loop2 that has been stitched, Ej denotes the point on Loop2 at which stitching is to be started, and Ej > -Sj.
Traversing each point Ei in Loop1, first find the point Ej closest to Ei in Loop 2.
【1】 First, whether to delete a patch is determined. Two cases are: (i) ei in Loop1 to the closest point in Loop2, and the next point Ei +1 in Ei to the closest point in Loop 2. And whether the two closest points are the same or not and the distance is less than a threshold value, and if the two closest points are the same and the distance is less than the threshold value, deleting the patch connected by the EiEi + 1. At this time, the distance between Ei and Ei +1 should be small (the current point and the next point find the same point); (ii) ei in Loop1 to the closest point in Loop2 is Sj, and within a threshold, then the SiEi connected patches are deleted. At this point the Si and Ei distances should be small (the current point finds the same point as the previous one).
【2】 When the distance between Ei and Ej is smaller than the threshold value, there are two cases according to the position of Ej:
direct drag Ej ═ Sj + 1: and directly dragging Ei and Ej together, namely changing the index of Ei into Ej.
Divide triangle Ej! Sj + 1: there are a number of points between Sj and Ej. Firstly, calculating points Sm (a plurality of points) between Sj and Ej, connecting each point with Di, merging Ei and Ej, and deleting the original triangle DiSiEi.
【3】 When the distance between Ei and Ej is greater than the threshold, there are three conditions according to the position of Ej:
(i) ej ═ Sj: and calculating a projection point Proj of the Ei on the EjEj +1, if the distance between the Ei and the Proj is less than a threshold value, merging the Ei and the Proj, and segmenting a triangle EjEj +1 Dj.
(ii) And (3) calculating a projection point Proj of Ei on the SjSj +1 if the SiEi is less than the SjSj +1, namely Sj +1 equals Ej, merging the points Ei and Proj if the distance from the Ei to the Proj is less than a threshold value, and segmenting the triangle SjSj +1 Dj.
(iii) And (3) calculating a projection point Proj of Sj +1 on the SiEi, if the distance from the Sj +1 to the Proj is less than a threshold value, merging the points Sj +1 and Proj, and segmenting the triangle SiDiEi.
In the step (6), the process of hole filling is shown in fig. 10:
【1】 And acquiring Loop of the whole model, calculating an intersection point and segmenting the triangle.
【2】 And acquiring the Loop of the grid after the elements are re-divided.
【3】 And combining every two Loop to judge whether the holes are annular holes. If yes, executing [ 4 ]; not, perform [ 5 ].
【4】 And repairing the annular hole by using a zipper hole repairing method.
【5】 The remaining Loop is a single connected hole, and it is determined whether the hole is formed in the machining direction. If yes, executing [ 6 ]; not, perform [ 7 ].
【6】 According to the Loop shape, the hole in the XYZ direction is judged, the hole is split into two sections, and the hole is repaired in a zipper hole repairing mode.
【7】 And (5) filling holes in an angle mode.
Cleavage of Loop is divided into two types, one is cleavage between loops, and one is cleavage by Loop itself. Taking the example of cleavage between Loop, Loop itself cleaves similarly. The Loop cleavage flow is shown in fig. 11:
【1】 And calculating the combination of two loops intersected by the bounding box.
【2】 And (3) solving the common vertical line footings of the two line segments in each group of Loop, wherein if the footings corresponding to the two line segments are on the line segment, are not at the starting point and the ending point and are very close to each other. At this point we consider that two lines need to be cut at the foot and record the relationship of the line index to the foot (whichever one is from the two line drop).
【3】 After sorting the dividing points (drop foot points), the triangle is cut.
The method for identifying the annular hole is shown as the following graph:
【1】 And traversing each Loop, comparing with the following Loop, and taking the pair of two loops with the farthest closest point and less than a certain threshold value.
【2】 And continuously extracting the Loop pairs with the characteristic values basically consistent with the characteristic vectors in the paired loops.
【3】 And extracting Loop pairs (convex transformation is carried out on the concave Loop and then whether the Loop pairs are included mutually is judged) included by the projection central points to serve as final Loop pairs of the annular holes.
The annular hole repair process is shown in fig. 12:
【1】 The ring-shaped holes, i.e., the Loop pair (Loop1, Loop2), are aligned in the same rotational direction.
【2】 And matching Loop1 and Loop2 break points, and recording a matching index.
【3】 And adjusting the index point which is closest to the first point in the Loop1 and does not exceed the corresponding break point in the Loop2 as a starting point.
【4】 And (4) converting Loop1 and Loop2 to enable the number of the midpoints of Loop1 to be larger than or equal to that of Loop 2.
【5】 The closest point in the Loop2 is searched by the midpoint of the Loop1, the index of the closest point is not exceeded, and the index of the closest point is taken and the index of the corresponding break point is exceeded.
【6】 And connecting triangles according to the index information, and finally completing hole filling.
The process of identifying and repairing the holes on the machining plane is shown in fig. 13:
【1】 And (4) respectively projecting the Loop in a single direction of Z, X, Y, calculating the area of the projected polygon, and when the minimum area is larger than a certain threshold value, considering the polygon as a defect hole, otherwise, determining the direction with the minimum area as the processing direction.
【2】 And calculating the included angle between the projected line segments. Theoretically, in the folded back position, the two-segment angle is almost 0. In the actual model, the included angle is smaller but may not be the minimum due to the nonstandard design or the error of the cutting result. Firstly, preliminary elimination is carried out according to the cross multiplication direction of the two line segment vectors, and elimination is carried out when the included angle between the cross multiplication direction and the machining direction is small.
【3】 At two positions of the minimum angle, Loop is broken apart.
【4】 And repairing the annular hole by adopting a hole repairing mode.
The defect hole repairing method comprises the following steps:
【1】 The sum of the internal angles at each vertex associated triangle on Loop at that point is calculated.
【2】 A weight is set for each point. When the sum of the internal angles is smaller than PI, adding triangles causes wrinkles, so a small weight is given at this time. When this point has associated many triangle patches (set to 8), the triangles are preferentially added.
【3】 And (4) increasing the triangle at the position with the maximum weight, and updating the Loop and the weight until the number of the points is less than 3.
As will be appreciated by one skilled in the art, embodiments of the present disclosure may be provided as a method, system, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and so forth) having computer-usable program code embodied therein.
The present disclosure is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present disclosure and is not intended to limit the present disclosure, and various modifications and changes may be made to the present disclosure by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present disclosure should be included in the protection scope of the present disclosure.
Although the present disclosure has been described with reference to specific embodiments, it should be understood that the scope of the present disclosure is not limited thereto, and those skilled in the art will appreciate that various modifications and changes can be made without departing from the spirit and scope of the present disclosure.

Claims (10)

1. A3D printing-oriented rapid repairing method for a shoemaking model is characterized by comprising the following steps: the method comprises the following steps:
(1) converting the geometric model into a lightweight data model in JT format, analyzing the JT format model, and calculating bounding box and area information of each surface;
(2) deleting redundant overlapping surfaces in the modeling process;
(3) intelligently identifying the surfaces of local overlapping and cross features based on accurate geometric data, automatically segmenting based on discrete geometric data, automatically judging the inside and the outside, and deleting the internal part;
(4) cutting, cutting and circumferential normal cutting are carried out, and internal shielding surface errors are processed;
(5) identifying gaps between the surfaces based on the accurate geometric data, and stitching the discrete geometric data;
(6) and opening holes formed by edges in the machining direction, classifying, respectively filling, and correcting the normal direction to obtain a 3D printable model.
2. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (1), each surface of the JT format model is analyzed into precise geometric data and discrete geometric data;
analyzing the discrete geometric data into non-repeated vertexes and triangle vertex indexes, identifying a degenerated triangle according to the triangle indexes, judging whether the degenerated triangle is a degenerated triangle by judging whether the indexes of the triangles are repeated and whether the area of the triangle is smaller than a set threshold value or not, wherein at least two points of the degenerated triangle are the same or three points of the degenerated triangle are collinear; judging whether a repeated triangle exists according to the face index of the triangle, wherein the repeated triangle is characterized in that the indexes of the two triangles are the same and the directions are the same, and after deleting the degenerated triangle and the repeated triangle, calculating the topological relation of the components, wherein the topological relation of the triangle and the side is the triangle adjacent to the side of the triangle, and the topological relation of the side and the point is the side adjacent to the vertex of the triangle, and calculating the bounding box and the area of the face;
the precise geometric data is analyzed into non-repeated vertex and boundary vertex indexes;
or, in the step (2), the specific method for deleting the overlapped redundant faces overlapped in the modeling process comprises the following steps:
(i) all input structure surfaces are sorted by area.
(ii) (iv) determining whether the areas of adjacent components are equal, if so, performing (iii), and if not, performing (v);
(iii) (iv) determining whether the two component bounding boxes are equal, if so, performing (iv) and if not, performing (v);
(iv) the two parts are completely overlapped, and the repeated surface is deleted;
(v) and (3) whether all adjacent surfaces are judged, if yes, finishing the command, and if not, executing (ii).
3. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (3), the method for identifying the local overlapping and crossing features comprises the following steps: if the bounding boxes of the two surfaces are not intersected, the two surfaces are not considered to have local overlapping and crossing features, if the bounding boxes are intersected, whether the two surfaces are intersected or not is further judged, if the bounding boxes are not intersected, the two surfaces are considered to have no local overlapping and crossing features, if the bounding boxes are intersected, whether a small boundary is in the large boundary or not is judged according to accurate geometric boundary data, if the small boundary is in the large boundary, the two surfaces are considered to be locally overlapped, and the surface with a smaller area is removed; if not, one of the boundaries is scattered, the scattered point is projected to a broken line segment of the other boundary, and whether the projected point is on the broken line segment is judged.
4. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: respectively calculating the number of sections intersected with two boundaries outside the normal threshold range in the normal threshold range according to the corresponding relation between the recording result and the index: and judging whether the number of the intersecting segments meeting the normal threshold is greater than 1, two surfaces which are greater than 1 are partially overlapped, and the number is less than or equal to 1, and then continuously judging whether the number of the intersecting segments which do not meet the normal threshold is greater than 1, two surfaces which are greater than 1 are crossed, and the number is less than or equal to 1, so that the intersecting segments are not overlapped or crossed.
5. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (3), the specific process of cross feature segmentation includes:
(a) calculating bounding boxes of the two structural surfaces Face1 and Face2, and expanding the length, the width and the height of the bounding boxes by a certain multiple;
(b) judging whether the bounding boxes of the Face1 and the Face2 are intersected, if so, executing the next step, otherwise, not intersecting, and not performing segmentation processing;
(c) respectively calculating a triangle set Tris1 in a Face1 in a Face2 bounding box and a triangle set Tris2 in a Face2 in a Face1 bounding box;
(d) whether a null set exists between the triangle set Tris1 and the triangle set Tris2 or not is not intersected if the null set exists, and if the null set does not exist, the step (e) is executed;
(e) creating an octree by Tris1, calculating the intersection point of each triangle in Tris2 and a Tris1 set, and recording the information of the intersected triangles;
(f) according to the intersecting triangle information, the triangles in the Face1 are divided into two sets of Face 11-intersection and Face-disjointness according to whether the intersections exist or not;
(g) dividing the intersection part into elements again according to the intersection point by the Face 11;
(h) and (3) performing penetration treatment on the non-penetrated part: searching the end points of the intersecting lines, judging whether the end points are points on the boundary, if so, not processing, and if not, extending the end points to the boundary according to the intersecting line direction, so that the intersecting lines can cut the set;
(i) the surface is divided into a plurality of single connected regions according to intersecting lines.
6. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (3), the specific process of judging inside and outside includes:
(1) in an initial state, all current areas are set as invisible areas;
(2) judging Z, X, Y, -Z, -X and-Y directions in total, and firstly taking the Z direction as the ray direction to carry out the following operations;
(3) traversing all invisible areas, and taking out the triangle with the largest area: if the normal direction of the triangle is vertical to the current ray direction, the area is placed in a temporary invisible area, the next area is processed, the bounding box of the triangle is extended in the ray direction, when the bounding box intersects with the bounding boxes of other areas F, the ray is led along the center of the triangle to intersect with the area F, if the intersection point exists, the occlusion is shown, and the occlusion is placed in the temporary invisible area;
(4) acquiring all temporary invisible areas;
(5) if the six directions are finished, deleting the invisible area if the six directions are finished, and executing (6) if the invisible area is not obtained;
(6) the next ray direction is set and then (3) is performed.
7. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (4), the process of cutting the cut surface comprises the following steps:
(i) when the cut surface is selected, automatically judging which cut surfaces are the cut surfaces, traversing other surfaces except the selected cut surface, firstly judging whether the bounding boxes on the two surfaces are intersected, if so, directly taking the intersected bounding boxes as the cut surfaces to be selected, and executing (iv) stretching; (iii) if not, performing (ii);
(ii) a bounding box extending the surface to be cut in the cutting direction;
(iii) judging whether the bounding box of the selected cutting surface is intersected with the extending bounding box;
(iv) stretching the surface to be cut to obtain a stretched body;
(v) whether the stretching body is intersected with the cut surface or not is judged, and if so, the stretching body is stored;
(vi) combining all stretching bodies and the cut surfaces to perform Boolean operation, and dividing to obtain a plurality of parts;
(vii) calculating an internal-external relation, and removing an internal part, wherein the internal-external judgment method comprises the following steps: selecting a triangle with the largest area in each part, taking the center of the triangle as a starting point, making rays in the opposite direction of the stretching direction, and judging whether the triangle intersects with the stretching body, wherein the intersection is an inner part and the intersection is an outer part;
or further wherein the creating of the stretched body comprises:
(a) calculating the boundary Loop of the cutting surface, and if a plurality of loops exist, executing the step (b); if only one Loop exists, the Loop is determined to be an outer Loop, and (e) is executed;
(b) judging inner and outer Loop, determining a plane according to the cutting direction, projecting the Loop onto the plane, and judging which belong to the outer Loop and which belong to the inner Loop according to the inclusion relation;
(c) projecting Loop onto a plane, and creating a bottom surface by using a plane component method;
(d) the original cutting surface is directly used as the top surface of the stretching body, the corresponding Loop of the top surface and the bottom surface creates a side surface in a zipper hole filling mode;
(e) when only one Loop exists, the original cutting surface is directly used as the top surface of the stretching body, the top surface vertex is deviated along the cutting direction to be used as the bottom surface, and the loops of the top surface and the bottom surface are directly connected to form the side surface.
8. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (4), the circumferential normal cutting process includes:
(i) fitting the sphere by using the selected surface to obtain a sphere center;
(ii) and (iv) calculating whether the normal direction of the selected surface is correct according to the sphere center, correctly executing the step (v), incorrectly executing the step (iii), and judging whether the normal direction is correct or not: judging the relation between the vector formed by the upper point of the surface and the center of the sphere and the normal direction of the surface;
(iii) reversing the normal direction;
(iv) selecting a middle surface in a normal offset mode along the vertex, creating a side surface to form a body 1 for judging a cutting surface; offsetting the surface along the normal negative direction of the vertex to create a side surface to form a body 2 for cutting the interior of the cutting surface;
(v) traversing the residual surfaces, and calculating to obtain a surface to be cut according to the intersection with the body 1;
(vi) calculating the normal direction of the triangle with the minimum distance between the surface to be cut and the selection surface, and stretching the surface to be cut along the negative direction of the normal direction;
(vii) combining the stretching bodies, performing Boolean operation on the stretching bodies and the selected surface to obtain a plurality of single connected regions part, judging the inside and the outside, and removing the internal part;
(viii) the body 1 is used for cutting the surface to be cut and removing the internal part.
9. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (5), the gap suture identification and repair process includes:
(a) respectively storing the files according to the surfaces during file import, and firstly merging the files if the files are not merged;
(b) traversing each boundary Loop, deleting small sections in the threshold range, correspondingly deleting triangles, and updating the topological relation;
(c) taking out the end points of all Loop, setting a threshold value to remove the weight of the top points, and pinching the end points in the threshold value range together to form a suturable structure;
(d) the Loop with the same starting point and end point is put together to show that a suturable structure is formed, whether suturing is available is judged firstly, and the judgment condition is as follows: finding a closest point and a projection point from one Loop, and when the distance between the closest point and the projection point is greater than a threshold value, indicating that the seam is too large and cannot be sutured;
(e) calculating other Loop end points in the Loop bounding box, recording the corresponding relation between the Loop and the point to be cut, traversing each point pair of the Loop and the cut point in sequence, calculating the closest point and the projection point of the Loop, preferentially using the closest point to cut the Loop, and using the projection point to cut when the closest point is far away;
(f) after the division, a suturable structure is formed, and then suturing is performed in the same manner as in step (d).
10. The 3D printing-oriented rapid repairing method for the shoemaking model as claimed in claim 1, characterized in that: in the step (6), the hole filling process includes:
(i) obtaining Loop of the whole model, calculating an intersection point, and segmenting a triangle;
(ii) acquiring the Loop of the grid after the elements are re-divided;
(iii) combining every two Loop, and judging whether the Loop is an annular hole; if so, (iv) is performed; not, (v) is performed;
(ib) repairing the annular hole by using a zipper hole repairing method;
(v) (vii) the remaining Loop is a single connected hole, and determining whether the Loop is a hole formed in the machining direction, if so, executing (vi); not, performing (vii);
(vi) according to the Loop shape, judging which direction of the holes are XYZ, splitting the holes into two sections, and filling the holes in a zipper hole filling mode;
(vi) filling holes in an angle mode;
or, the annular hole identification and repair process comprises:
(a) traversing each Loop, comparing with the following Loop, and taking two Loop pairs with the farthest closest point and less than a certain threshold value;
(b) continuously extracting Loop pairs with characteristic values basically consistent with characteristic vectors from the paired loops;
(c) extracting Loop pairs contained by the projection central points to serve as final Loop pairs of the annular holes;
(d) adjusting the annular holes, namely Loop pairs, to be in the same rotating direction;
(e) matching Loop1 and Loop2 break points in the Loop pair, and recording matching indexes;
(f) adjusting the index point which is closest to the first point in the Loop1 and does not exceed the corresponding break point in the Loop2 as a starting point;
(g) converting Loop1 and Loop2 to enable the number of the midpoints of Loop1 to be larger than or equal to that of Loop 2;
(h) searching the closest point in the Loop2 at the midpoint of the Loop1, not exceeding the index of the break point, taking the index of the closest point, and exceeding the index of the corresponding break point;
(i) and connecting triangles according to the index information, and finally completing hole filling.
CN201911394629.8A 2019-12-30 2019-12-30 3D printing-oriented rapid repairing method for shoemaking model Active CN111161420B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911394629.8A CN111161420B (en) 2019-12-30 2019-12-30 3D printing-oriented rapid repairing method for shoemaking model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911394629.8A CN111161420B (en) 2019-12-30 2019-12-30 3D printing-oriented rapid repairing method for shoemaking model

Publications (2)

Publication Number Publication Date
CN111161420A true CN111161420A (en) 2020-05-15
CN111161420B CN111161420B (en) 2020-10-02

Family

ID=70559190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911394629.8A Active CN111161420B (en) 2019-12-30 2019-12-30 3D printing-oriented rapid repairing method for shoemaking model

Country Status (1)

Country Link
CN (1) CN111161420B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112184893A (en) * 2020-10-15 2021-01-05 洛阳众智软件科技股份有限公司 Drawing method, device and equipment for integration of linear surface body and storage medium
CN112580154A (en) * 2021-01-05 2021-03-30 东风汽车股份有限公司 Automobile stamping part modeling method based on CATIA software
CN117456110A (en) * 2023-12-25 2024-01-26 北京飞渡科技股份有限公司 Three-dimensional scene metamorphosis grid data lightweight processing method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653773A (en) * 2015-12-28 2016-06-08 西安交通大学 Repairing method of prism and lens compound eyeglass STL (Standard Template Library) model suitable for 3D (Three-dimensional) printing
CN107048596A (en) * 2017-03-22 2017-08-18 青岛小步科技有限公司 A kind of preparation method and system for customizing footwear
WO2019086546A1 (en) * 2017-11-03 2019-05-09 Allado Edem Damping element and method for modeling the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653773A (en) * 2015-12-28 2016-06-08 西安交通大学 Repairing method of prism and lens compound eyeglass STL (Standard Template Library) model suitable for 3D (Three-dimensional) printing
CN107048596A (en) * 2017-03-22 2017-08-18 青岛小步科技有限公司 A kind of preparation method and system for customizing footwear
WO2019086546A1 (en) * 2017-11-03 2019-05-09 Allado Edem Damping element and method for modeling the same

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
JASON A. INZANA等: "3D Printing of Composite Calcium Phosphate and Collagen Scaffolds for Bone Regeneration", 《NIH PUBLIC ACCESS》 *
梅敬成等: "CAD 数据转换技术在归档方面的研究与应用", 《学术研究》 *
董毅: "3D 打印中的建模软件应用与模型修复问题的研究", 《软件与应用》 *
陈盛贵等: "基于生物相容性材料的 3D 打印骨骼修复技术的研究与应用", 《塑料工业》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112184893A (en) * 2020-10-15 2021-01-05 洛阳众智软件科技股份有限公司 Drawing method, device and equipment for integration of linear surface body and storage medium
CN112580154A (en) * 2021-01-05 2021-03-30 东风汽车股份有限公司 Automobile stamping part modeling method based on CATIA software
CN112580154B (en) * 2021-01-05 2023-06-06 东风汽车股份有限公司 Modeling method for automobile stamping part based on CATIA software
CN117456110A (en) * 2023-12-25 2024-01-26 北京飞渡科技股份有限公司 Three-dimensional scene metamorphosis grid data lightweight processing method
CN117456110B (en) * 2023-12-25 2024-03-19 北京飞渡科技股份有限公司 Three-dimensional scene metamorphosis grid data lightweight processing method

Also Published As

Publication number Publication date
CN111161420B (en) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111161420B (en) 3D printing-oriented rapid repairing method for shoemaking model
Leong et al. A study of stereolithography file errors and repair. Part 1. Generic solution
US7814441B2 (en) System and method for identifying original design intents using 3D scan data
CN101785032B (en) Method of computer-aided design of edges connecting faces of a modeled object
EP1710720B1 (en) Method of computer-aided design of a modeled object having several faces
US7613539B2 (en) System and method for mesh and body hybrid modeling using 3D scan data
CN104750913B (en) A method of realizing that DWG threedimensional model is automatically converted to X threedimensional model
JP4764663B2 (en) Method for automatically recognizing geometric shape in virtual three-dimensional coordinate space, three-dimensional CAD system and three-dimensional CAD program
CN101807308A (en) Three-dimensional model segmenting device and method
US20150294501A1 (en) Methods and Systems for Generating and Editing Surfaces
US20030214503A1 (en) Methods using specific attributes and graph grammars in graph-based techniques for feature recognition
JP3955368B2 (en) How to incorporate a fused or chamfered surface into a solid model
JP3361946B2 (en) Solid model automatic generation apparatus and method
US20070132757A1 (en) Constrained model composition
JP3968056B2 (en) Shape creation apparatus, control method for operating computer apparatus as shape creation apparatus, and computer-executable program for causing computer apparatus to execute control method
WO2006097926A2 (en) Methods and systems for creating and altering cad models
Cui et al. An efficient algorithm for recognizing and suppressing blend features
JP2002207504A (en) Method and apparatus for producing three-dimensional shape data
US7236168B2 (en) Method for removing blends in B-rep models
Melero et al. On the Interactive 3D Reconstruction of Iberian Vessels.
Chen et al. Fast computation of tunnels in corneal collagen structure
US6597355B1 (en) Automatic recognition and suppression of complex interacting holes
CN114549795A (en) Parameterization reconstruction method, parameterization reconstruction system, parameterization reconstruction medium and parameterization reconstruction equipment for shoe tree curved surface
Patel et al. Stitching and filling: Creating conformal faceted geometry
Foucault et al. An extension of the advancing front method to composite geometry

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant