Method and device for adaptive full free rotation of parts in nest feeding, electronic device
By using an adaptive, fully free rotation method for nesting parts, and utilizing OBB bounding box information and angular step rotation for nesting, the problem of inaccurate part rotation calculation in existing technologies is solved, and the optimal nesting angle is found quickly.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-20
- Publication Date
- 2026-03-27
AI Technical Summary
In existing technologies, the rotation calculation of parts cannot achieve true free rotation, the amount of calculation is large, and it is impossible to accurately find the optimal insertion angle.
The method of adaptive and completely free rotation of parts in nesting is adopted. By obtaining the OBB bounding box information of the parts to be nested, the initial state rotation is performed, and the rotation is performed sequentially according to the preset angle step. The optimal rotation angle is determined by the bisection method or the golden section method.
It quickly determines the insertion angle of parts, reducing the amount of calculation and improving the accuracy of the insertion angle.
Smart Images

Figure CN117008537B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of nesting, in particular to a method and device for adaptive complete free rotation of parts in nesting, and an electronic device. BACKGROUND
[0002] Current CAD (Autodesk Computer Aided Design) / CAM (Computer Aided Manufacturing) software widely uses nesting technology, and the nesting technology is usually the core of such software. In nesting, in order to improve the nesting utilization rate, various nesting strategies are usually used, and the rotation of the parts is the most commonly used and key technology. However, so far, the free rotation calculation of the parts used on the market is based on a certain step length for rotation, and cannot achieve true free rotation. Moreover, even in the free rotation with a step length, the parts are arranged in a trial manner at each angle, and then an optimal angle is found from the angles as the arrangement angle. This not only greatly increases the calculation amount, but also cannot accurately obtain an optimal arrangement angle.
[0003] Therefore, how to find a rotation of the parts that can achieve true free rotation and find the optimal arrangement angle in a relatively short time is crucial. SUMMARY
[0004] (I) Technical problems to be solved
[0005] In view of the above-mentioned shortcomings and deficiencies of the prior art, the present application provides a method for adaptive complete free rotation of parts in nesting, which solves the technical problems in the prior art that the parts cannot be freely rotated during the nesting process, and the calculation amount is large and an optimal rotation angle cannot be accurately obtained in the prior art.
[0006] (II) Technical solutions
[0007] In order to achieve the above-mentioned purposes, the main technical solutions adopted by the present application include:
[0008] In a first aspect, the present application provides a method for adaptive complete free rotation of parts in nesting, which is applied to the process of arranging a drawing corresponding to a cutting plate by taking a part to be processed as a part to be arranged in a cutting machine when the cutting machine cuts the cutting plate, and the method comprises:
[0009] S1, obtaining OBB bounding box information of the part to be arranged in a two-dimensional coordinate system;
[0010] The OBB bounding box information comprises a principal axis direction vector;
[0011] S2, rotating the part to be laid out by an angle β based on the OBB bounding box information of the part to be laid out in a two-dimensional coordinate system, to obtain an initial state of the part to be laid out;
[0012] The initial state of the part to be laid out is that the principal axis direction vector of the part to be laid out in the two-dimensional coordinate system is the same as the transverse axis direction of the two-dimensional coordinate system;
[0013] S3, for the initial state of the part to be laid out, the part to be laid out in the initial state is sequentially rotated and laid out according to a pre-set angle step from the initial state, and the result of each rotation and laying is sequentially obtained;
[0014] S4, if the first to Mth rotation and laying results of the part to be laid out are all unable to be laid in, and the M+1th rotation and laying result of the part to be laid out is able to be laid in, a first rotation angle is determined within a first angle range, and the part to be laid out is laid in at the first laying angle;
[0015] The first laying angle = the first rotation angle + β;
[0016] The first angle range is Mxθ to (M+1)xθ;
[0017] θ is a pre-set angle step; M is a pre-set value.
[0018] Preferably,
[0019] The result of the rotation and laying further includes the vertical coordinate of the highest point of the OBB bounding box corresponding to the part to be laid out in the two-dimensional coordinate system.
[0020] Preferably, the method further comprises:
[0021] S5, if the first to Nth rotation and laying results of the part to be laid out are all able to be laid in, a second rotation angle is determined according to the vertical coordinate of the highest point of the OBB bounding box corresponding to the part to be laid out in the two-dimensional coordinate system in the first to Nth rotation and laying results;
[0022] N satisfies Nxθ≥360°;
[0023] S6, judging whether the part to be laid out and the laid part have a common edge according to the part to be laid out and the laid part;
[0024] If there is a common edge, the part to be laid out is laid in at the second laying angle;
[0025] The second laying angle = the second rotation angle + β.
[0026] Preferably,
[0027] The second rotation angle is k x θ.
[0028] 0° < θ ≤ 180°;
[0029] Wherein, k is the rotation number corresponding to the minimum vertical coordinate of the highest point of the OBB bounding box of the part to be laid out in the first to N times of rotation in the two-dimensional coordinate system.
[0030] Preferably, the method further comprises:
[0031] S7, if there is no common side, obtaining a first side on the part to be laid out and a second side of the laid part or plate;
[0032] The first side on the part to be laid out is the side where the nearest distance point corresponding to the minimum vertical coordinate in the two-dimensional coordinate system among the nearest distance points on the part to be laid out and the laid part or plate;
[0033] The second side of the laid part or plate is the side where the nearest distance point corresponding to the minimum vertical coordinate in the two-dimensional coordinate system among the nearest distance points on the laid part or plate and the part to be laid out;
[0034] S8, obtaining the minimum included angle of the first side and the second side, and then reversing the part to be laid out by the minimum included angle to be laid into, to obtain the first coordinate corresponding to the part to be laid out after being laid into;
[0035] The first coordinate is the vertical coordinate in the two-dimensional coordinate system of the highest point of the OBB bounding box corresponding to the part to be laid out;
[0036] S9, repeating S6-S8 for X times, until the first coordinate corresponding to the part to be laid out obtained in the Xth time is greater than or equal to the first coordinate corresponding to the part to be laid out obtained in the X-1th time, and the minimum included angle of the first side and the second side corresponding to each of the first to X-1th times is obtained, further, according to the minimum included angle of the first side and the second side corresponding to each of the first to X-1th times, the third laying-in angle is determined by formula (1), and the part is laid into the third laying-in angle;
[0037] The formula (1) is:
[0038] The third laying-in angle = the second rotation angle + β + φ;
[0039] φ is the sum of the minimum included angles of the first side and the second side corresponding to each of the first to X-1th times;
[0040] Wherein, X ≥ 2.
[0041] Preferably,
[0042] The nearest distance point on the part to be laid out to the nearest part or plate is obtained by using the GJK algorithm.
[0043] Preferably,
[0044] The S4 specifically comprises: if the part cannot be laid out from the first to the Mth rotation layout result information, and the part M+1th rotation layout result is capable of being laid out, then the bisection method or the golden section method is used to determine the angle capable of being laid out in the first angle range, and a first rotation angle is determined in the angle capable of being laid out.
[0045] 1≤M<N;
[0046] The bisection method or the golden section method stops when the first angle range is divided to a pre-set threshold value.
[0047] The first rotation angle is the smallest angle capable of being laid out.
[0048] Preferably,
[0049] The principal component analysis method is used to obtain the OBB bounding box information of the part in the two-dimensional coordinate system in the S1.
[0050] The θ is 90°.
[0051] In a second aspect, the embodiment further provides a device for laying out parts in a set of parts in a self-adaptive complete free rotation manner, which comprises:
[0052] A bounding box information obtaining module is configured to obtain OBB bounding box information of a part to be laid out in a two-dimensional coordinate system, wherein the OBB bounding box information comprises a principal axis direction vector.
[0053] An initial state obtaining module is configured to rotate the part to be laid out by an angle β based on the OBB bounding box information of the part to be laid out in the two-dimensional coordinate system, and obtain an initial state of the part to be laid out.
[0054] The initial state of the part to be laid out is that the principal axis direction vector of the part to be laid out in the two-dimensional coordinate system is the same as the horizontal axis direction of the two-dimensional coordinate system.
[0055] A rotation layout module is configured to rotate the part to be laid out in the initial state according to a pre-set angle step from the initial state for the initial state of the part to be laid out, and obtain a result of each rotation layout.
[0056] The module is used for determining a first rotation angle in a first angle range when the part to be arranged cannot be arranged from the first to Mth rotation arrangement results, and the part to be arranged can be arranged in the (M+1)th rotation arrangement result; the first arrangement angle is equal to the first rotation angle plus β; the first angle range is Mxθ to (M+1)xθ; θ is a preset angle step; and M is a preset value.
[0057] In a third aspect, the embodiment further provides an electronic device, comprising a processor and a memory;
[0058] The memory is configured to store codes.
[0059] The processor is configured to execute the codes in the memory to implement the part adaptive complete free rotation arrangement method in the first aspect.
[0060] (Three) beneficial effects
[0061] The part adaptive complete free rotation arrangement method has the advantages that: the part to be arranged is rotated according to a preset angle step from an initial state, and the result of each rotation arrangement is obtained; when the part to be arranged cannot be arranged from the first to Mth rotation arrangement results, and the part to be arranged can be arranged in the (M+1)th rotation arrangement result, a first rotation angle in a first angle range is determined, and the part to be arranged is arranged at a first arrangement angle; compared with the prior art, the first rotation angle for part arrangement can be quickly determined in the first angle range, the calculation amount of the arrangement angle of the part to be arranged in the sleeve is reduced, and the accuracy of the arrangement angle is improved compared with the prior art. BRIEF DESCRIPTION OF DRAWINGS
[0062] Figure 1 It is a part adaptive complete free rotation arrangement method flow chart in the sleeve of the present application;
[0063] Figure 2 It is a part adaptive complete free rotation arrangement method flow chart in the sleeve of the embodiment of the present application;
[0064] Figure 3 It is a position diagram of the part to be arranged and the arranged part in the embodiment of the present application;
[0065] Figure 4 It is another part adaptive complete free rotation arrangement method flow chart in the sleeve of the embodiment of the present application;
[0066] Figure 5 Fig. 1 is a schematic diagram of the positional relationship between the parts to be laid out and the laid-out parts in the embodiment of the present application;
[0067] Figure 6 Fig. 2 is a schematic diagram of the structure of the part self-adaptive complete free rotation laying-in device in the embodiment of the present application;
[0068] Figure 7 Fig. 3 is a schematic diagram of the electronic device structure in the embodiment of the present application.
[0069]
BRIEF DESCRIPTION OF THE DRAWINGS
[0070] 1: part to be laid out;
[0071] A: first laid-out part;
[0072] B: second laid-out part;
[0073] C: third laid-out part;
[0074] D: fourth laid-out part;
[0075] E: fifth laid-out part;
[0076] F: sixth laid-out part;
[0077] 8: frame of the plate;
[0078] 11: position of the closest distance point between the part to be laid out and the second laid-out part B;
[0079] 12: position of the closest distance point between the part to be laid out and the fourth laid-out part D;
[0080] B1: position of the closest distance point between the second laid-out part B and the part to be laid out;
[0081] D1: position of the closest distance point between the fourth laid-out part D and the part to be laid out;
[0082] D2: second side;
[0083] 13: one side of the part to be laid out where the closest distance point between the part to be laid out and the fourth laid-out part D is located;
[0084] 14: another side of the part to be laid out where the closest distance point between the part to be laid out and the fourth laid-out part D is located. DETAILED DESCRIPTION
[0085] In order to better explain the present application and facilitate understanding, the present application is described in detail below through specific embodiments in combination with the accompanying drawings.
[0086] For a better understanding of the above technical solutions, the exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present application are shown in the accompanying drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to enable a clearer, more thorough understanding of the present application and to fully convey the scope of the present application to those skilled in the art.
[0087] The adaptive free rotation arrangement method in nesting is widely used in manufacturing and engineering fields, especially in industries that require a large amount of plate, pipe, wire and other materials, such as steel structure, construction, automobile manufacturing, shipbuilding, machinery manufacturing, etc. The following are some application scenarios of this method: metal structure manufacturing: in metal structure manufacturing, a large amount of plate is needed to manufacture steel members, steel plates, etc. The adaptive rotation arrangement method in nesting can maximize the use of materials and reduce material waste. Woodworking manufacturing: in woodworking manufacturing, raw materials need to be cut into various shaped parts. The adaptive rotation arrangement method can maximize the use of wood, reduce waste and reduce costs. Textile manufacturing: in textile manufacturing, square or rectangular fabric needs to be cut into various shaped cloth and clothing. The adaptive rotation arrangement method can maximize the use of fabric and reduce costs. Plastic product production: in plastic product production, plastic sheet or pipe needs to be cut into various shaped parts. The adaptive rotation arrangement method can improve material utilization and reduce waste. In summary, the adaptive free rotation arrangement method in nesting is widely used in various industries due to its precision, efficiency, material saving and other advantages.
[0088] Embodiment one
[0089] Referring to Figure 1 , the embodiment provides an adaptive free rotation arrangement method in nesting, which is applied to the process of arranging the corresponding drawing of the to-be-cut plate by taking the part to be processed as the to-be-arranged part when the cutting machine tool cuts the to-be-cut plate. The method comprises the following steps:
[0090] S1, obtaining OBB bounding box information of the to-be-arranged part in a two-dimensional coordinate system.
[0091] The OBB bounding box information comprises a principal axis direction vector.
[0092] In the embodiment, the principal component analysis method is used to obtain the OBB bounding box information of the part in the two-dimensional coordinate system in the S1.
[0093] S2, rotating the to-be-arranged part by an angle β based on the OBB bounding box information of the to-be-arranged part in the two-dimensional coordinate system, and obtaining the initial state of the to-be-arranged part.
[0094] The initial state of the part to be laid out is that the main axis direction vector of the part to be laid out in a two-dimensional coordinate system is the same as the transverse axis direction of the two-dimensional coordinate system.
[0095] S3, for the initial state of the part to be laid out, the part to be laid out in the initial state is rotated and laid out in sequence starting from the initial state according to a pre-set angle step, and the result of each rotation and layout is obtained in sequence.
[0096] S4, if the first to M times of rotation and layout results of the part to be laid out are all unable to be laid out, and the M+1 times of rotation and layout result of the part to be laid out is able to be laid out, the first rotation angle is determined in the first angle range, and the part to be laid out is laid out at the first layout angle.
[0097] The first layout angle is equal to the first rotation angle plus β.
[0098] The first angle range is Mxθ to (M+1)xθ.
[0099] θ is a pre-set angle step, and in the embodiment, the θ is 90°; M is a pre-set value.
[0100] In specific application, S4 specifically includes: if the first to M times of rotation and layout result information of the part is all unable to be laid out, and the M+1 times of rotation and layout result of the part is able to be laid out, the bisection method or the golden section method is used to determine the angle that can be laid out in the first angle range, and the first rotation angle is determined in the angle that can be laid out.
[0101] Wherein, the bisection method or the golden section method stops dividing when the first angle range is divided to a pre-set threshold; wherein the first rotation angle is the smallest angle that can be laid out.
[0102] In the embodiment, the result of the rotation and layout further includes the vertical coordinate of the highest point of the OBB bounding box corresponding to the part to be laid out in the two-dimensional coordinate system.
[0103] The method for adaptively arranging parts in a nest and freely rotating in the embodiment is characterized in that the parts to be arranged are rotated according to a preset angle step from an initial state, and the result of each rotation is obtained. If the results of the first to Mth rotation of the parts to be arranged are all unable to be arranged, and the result of the M+1th rotation is able to be arranged, a first rotation angle is determined in the first angle range, and the parts to be arranged are arranged at the first arrangement angle. Compared with the prior art, the first rotation angle for arranging the parts can be quickly determined in the first angle range, the calculation amount of the arrangement angle of the parts to be arranged is reduced, and the accuracy of the arrangement angle is improved compared with the prior art.
[0104] Referring to Figure 2 The method further includes:
[0105] S5, if the results of the first to Nth rotation of the parts to be arranged are all able to be arranged, a second rotation angle is determined according to the vertical coordinate of the highest point of the OBB bounding box corresponding to the parts in the first to Nth rotation result in the two-dimensional coordinate system.
[0106] The N satisfies N x θ≥360°.
[0107] In the embodiment, 1≤M<N.
[0108] S6, according to the parts to be arranged and the arranged parts, it is judged whether the parts to be arranged and the arranged parts have a common side. If there is a common side, the parts to be arranged are arranged at the second arrangement angle.
[0109] The second arrangement angle=second rotation angle+β.
[0110] The second rotation angle is k x θ.
[0111] 0°<θ≤180°.
[0112] Wherein, k is the rotation arrangement number corresponding to the minimum vertical coordinate of the highest point of the OBB bounding box corresponding to the parts to be arranged in the first to Nth rotation result information in the two-dimensional coordinate system.
[0113] Referring to Figure 3 The plate frame 8 of the part to be arranged 1 is equal to the part spacing from the frame distance of the second arranged part B and the fourth arranged part D, and the part to be arranged 1 has no common side with the second arranged part B and the fourth arranged part D. The common side refers to the parallel straight side of two parts and the distance equal to the part spacing, as shown in Figure 3There are also common edges between the first arranged part A and the second arranged part B, between the third arranged part C and the fourth arranged part D, and between the fifth arranged part E and the sixth arranged part F; and the first arranged part A, the second arranged part B, the third arranged part C, and the fifth arranged part E all have common edges with the frame 8 of the plate.
[0114] Referring to Figure 4 In the actual application of the embodiment, the method further comprises:
[0115] S7, if there is no common edge, obtaining a first edge on the to-be-arranged part and a second edge of the arranged part or the plate.
[0116] The first edge on the to-be-arranged part is an edge on which a nearest distance point corresponding to the to-be-arranged part has the smallest vertical coordinate in a two-dimensional coordinate system.
[0117] The second edge of the arranged part or the plate is an edge on which a nearest distance point corresponding to the to-be-arranged part has the smallest vertical coordinate in a two-dimensional coordinate system.
[0118] The nearest distance point between the to-be-arranged part and the arranged part is obtained by using the GJK algorithm.
[0119] Referring to Figure 5 The nearest distance point between the to-be-arranged part and the arranged part is obtained by using the GJK algorithm. Figure 5 As shown in FIG. 6, the nearest distance point between the to-be-arranged part and the second arranged part B is at point 11, the nearest distance point between the second arranged part B and the to-be-arranged part is at point B1, the nearest distance point between the to-be-arranged part and the fourth arranged part D is at point 12, and the nearest distance point between the fourth arranged part D and the to-be-arranged part is at point D1. In this embodiment, an edge 13 (that is, an edge on which the nearest distance point between the to-be-arranged part and the fourth arranged part D is located) and an edge 14 (another edge on which the nearest distance point between the to-be-arranged part and the fourth arranged part D is located) corresponding to the to-be-arranged part and having the smallest vertical coordinate in a two-dimensional coordinate system are taken as the first edge on the to-be-arranged part; and the edge D2 of the fourth arranged part D on which the nearest distance point between the fourth arranged part D and the to-be-arranged part is located is taken as the second edge.
[0120] S8, obtaining the smallest included angle of the first edge and the second edge, and then arranging the part in reverse rotation by the smallest included angle to obtain a first coordinate corresponding to the to-be-arranged part after the arrangement.
[0121] The first coordinate is the vertical coordinate of the highest point of the OBB bounding box corresponding to the part to be laid out in the two-dimensional coordinate system.
[0122] Referring to Figure 5 In the embodiment, the minimum included angle of the first edge and the second edge is obtained (in the embodiment, the included angle of the first edge and the second edge on the part to be laid out is the same, so one of them is randomly taken), and the part is reversely rotated by the minimum included angle for laying in to obtain the first coordinate corresponding to the part to be laid out after laying in.
[0123] S9, repeating S6-S8 X times until the first coordinate corresponding to the part to be laid out obtained in the Xth time is greater than or equal to the first coordinate corresponding to the part to be laid out obtained in the X-1th time, and the minimum included angle of the first edge and the second edge corresponding to each of the first time to the X-1th time is obtained, further, the third laying-in angle is determined according to the minimum included angle of the first edge and the second edge corresponding to each of the first time to the X-1th time by using formula (1), and the part is laid in at the third laying-in angle.
[0124] The formula (1) is:
[0125] The third laying-in angle = the second rotation angle + β + φ.
[0126] φ is the sum of the minimum included angles of the first edge and the second edge corresponding to each of the first time to the X-1th time.
[0127] Wherein, X≥2.
[0128] The self-adaptive completely free rotation laying-in method of the parts in the set material in the embodiment, since the part to be laid out in the initial state is rotated and laid out according to the pre-set angle step in sequence from the initial state, the result of each rotation and laying-in is obtained in sequence; if the results of the first to Mth rotation and laying-in of the part to be laid out are all unable to be laid in, and the result of the M+1th rotation and laying-in of the part to be laid out is able to be laid in, the first rotation angle is determined in the first angle range, and the part to be laid out is laid in at the first laying-in angle, compared with the prior art, it can quickly determine the first rotation angle for laying in the part in the first angle range, reducing the calculation amount of finding the laying-in angle of the part in the set material, and since the first rotation angle is determined according to the M+1th rotation and laying-in result, and then the first laying-in angle is determined according to the first laying-in angle, the accuracy of the laying-in angle is also improved compared with the prior art.
[0129] Embodiment two
[0130] Referring to Figure 6The embodiment also provides a part adaptive full free rotation arrangement device for nesting, which comprises:
[0131] An OBB information acquisition module is configured to acquire OBB information of the part to be nested in a two-dimensional coordinate system, wherein the OBB information comprises a main axis direction vector.
[0132] An initial state acquisition module is configured to rotate the part to be nested by an angle β based on the OBB information of the part to be nested in the two-dimensional coordinate system, and acquire an initial state of the part to be nested.
[0133] The initial state of the part to be nested is that the main axis direction vector of the part to be nested in the two-dimensional coordinate system is the same as the horizontal axis direction of the two-dimensional coordinate system.
[0134] A rotation nesting module is configured to, for the initial state of the part to be nested, rotate the part to be nested in the initial state by a preset angle step from the initial state, and acquire a result of each rotation nesting.
[0135] An arrangement module is configured to, when the part to be nested cannot be arranged from the first to Mth rotation nesting results, and the part to be nested can be arranged in the M+1th rotation nesting result, determine a first rotation angle in a first angle range, and arrange the part to be nested at the first rotation angle, wherein the first angle range is Mxθ to (M+1)xθ, θ is a preset angle step, and M is a preset value.
[0136] The arrangement module is also configured to, when the part to be nested can be arranged from the first to Nth rotation nesting results, determine a second rotation angle according to the vertical coordinate of the highest point of the OBB of the part to be nested in the first to Nth rotation nesting results in the two-dimensional coordinate system.
[0137] N satisfies Nxθ≥360°, and in the embodiment, 1≤M<N.
[0138] According to the part to be nested and the arranged part, it is determined whether the part to be nested and the arranged part have a common side, and if so, the part to be nested is arranged at a second arrangement angle.
[0139] The second arrangement angle=the second rotation angle+β.
[0140] The second rotation angle is kxθ.
[0141] 0°<θ≤180°.
[0142] The k is the highest point of the OBB bounding box corresponding to the to-be-laid-out part in the first to Nth rotation layout result information in the two-dimensional coordinate system The longitudinal coordinate is the minimum value corresponding to the rotation layout number.
[0143] If the to-be-laid-out part and the laid-out part do not have a common edge, a first edge on the to-be-laid-out part and a second edge of the laid-out part or the plate are obtained.
[0144] The first edge on the to-be-laid-out part is the edge on which the closest distance point between the to-be-laid-out part and the laid-out part or the plate is located.
[0145] The second edge of the laid-out part or the plate is the edge on which the closest distance point between the to-be-laid-out part and the laid-out part or the plate is located.
[0146] The minimum included angle of the first edge and the second edge is obtained, and then the part is reversed and rotated by the minimum included angle for layout to obtain the first coordinate corresponding to the to-be-laid-out part after layout.
[0147] The first coordinate is the longitudinal coordinate of the highest point of the OBB bounding box corresponding to the to-be-laid-out part in the two-dimensional coordinate system.
[0148] Returning to the step of judging whether the to-be-laid-out part and the laid-out part have a common edge according to the to-be-laid-out part and the laid-out part, repeating X times until the first coordinate corresponding to the to-be-laid-out part obtained in the Xth time is greater than or equal to the first coordinate corresponding to the to-be-laid-out part obtained in the X-1th time, and the minimum included angle of the first edge and the second edge corresponding to each of the first time to the X-1th time is obtained, further, according to the minimum included angle of the first edge and the second edge corresponding to each of the first time to the X-1th time, the third layout angle is determined by formula (1), and the part is laid out at the third layout angle;
[0149] The formula (1) is:
[0150] The third layout angle = the second rotation angle + β + φ;
[0151] φ is the sum of the minimum included angles of the first edge and the second edge corresponding to each of the first time to the X-1th time.
[0152] Wherein, X≥2.
[0153] Referring to Figure 7 , the embodiment also provides an electronic device, comprising a processor and a memory; the memory is used to store code; the processor is used to execute the code in the memory to realize the part adaptive complete free rotation layout method in the embodiment one. In the embodiment, the processor can communicate with the memory through a bus.
[0154] Those skilled in the art will appreciate that embodiments of the present application can be readily used as a method, a system or a computer program product. Accordingly, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) embodying computer readable program code thereon for use by or in connection with an instruction execution system. For the purposes of this description, a computer-usable or computer readable storage medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
[0155] The present application is described in reference to the flowchart and / or block diagram illustrations of the method, apparatus (system) and computer program product according to embodiments of the present application. It will be understood that each block of the flowchart and / or block diagrams, and combinations of blocks in the flowchart and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, 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 of the flowchart and / or block diagrams.
[0156] It should be noted that any references made herein to elements or components should not be construed as limiting the scope of the claims to having only those specific elements. Rather, the language is intended to encompass all possible combinations of elements, even if not explicitly listed. It is intended that each element recited in a claim can be substituted with alternative elements or combinations of elements, as appropriate. It is further noted that the use of "a", "an" or "the" to describe a singular entity should not be construed as limiting the scope of the claims to having only that specific singular entity. Rather, the language is intended to encompass all possible combinations of elements, even if not explicitly listed. It is intended that each element recited in a claim can be substituted with alternative elements or combinations of elements, as appropriate. It is further noted that the use of the terms "first", "second", "third", etc. to describe a particular element or step should not be construed as limiting the scope of the claims to having only those specific elements. Rather, the language is intended to encompass all possible combinations of elements, even if not explicitly listed. It is intended that each element recited in a claim can be substituted with alternative elements or combinations of elements, as appropriate.
[0157] Furthermore, it is to be understood that the use of certain terms to describe the present application is neither meant to limit the scope of the present application nor to imply that the terms are meant to be synonymous. For example, the terms "comprising", "comprises" and "comprised of" as well as "including", "includes" and "included of" are used synonymously to mean that the element listed is present in the item, combination of items, article or compositions of matter which is described by the rest of the sentence even though the other elements of that item, combination of items, article or compositions of matter are not necessarily listed. As used herein, "comprising" means "including, but not limited to". It is further noted that the claims can be drafted to exclude any essential elements of the application. As such, these terms are intended to be as broad as reasonably permitted by the Federal Judges Association and any other regulatory bodies.
[0158] While the preferred embodiments of the application have been described, additional variations and modifications can be made to the embodiments by those skilled in the art once they learn of the basic inventive concepts. Therefore, the particular embodiments are not to be taken as limiting the scope of the present application, but the scope of the present application should be given the broadest interpretation of the appended claims and their equivalents.
[0159] It will be apparent to those skilled in the art that various modifications and variations can be made to the present application without departing from the spirit or scope of the application. Thus, it is intended that the present application cover modifications and variations of this application provided they come within the scope of the appended claims and their equivalents.
Claims
1. A method for adaptive, fully free-rotation insertion of parts in a nesting process, wherein the method is applied to the process of nesting the parts to be processed as nesting parts in the drawing corresponding to the sheet material to be cut by a cutting machine tool, characterized in that, The method includes: S1. Obtain the OBB bounding box information of the part to be laid out in the two-dimensional coordinate system; The OBB bounding box information includes: principal axis direction vector; S2. Based on the OBB bounding box information of the part to be arranged in the two-dimensional coordinate system, rotate the part to be arranged by an angle β to obtain the initial state of the part to be arranged. The initial state of the part to be arranged is that the principal axis direction vector of the part to be arranged in the two-dimensional coordinate system is the same as the horizontal axis direction of the two-dimensional coordinate system. S3. For the initial state of the parts to be arranged, the parts to be arranged in the initial state are rotated and arranged sequentially according to a preset angle step, and the result of each rotation and arrangement is obtained sequentially. S4. If the result of the rotation and arrangement of the part to be arranged is that it cannot be arranged from the first to the Mth rotation and arrangement, and the result of the rotation and arrangement of the part to be arranged is that it can be arranged after the M+1th rotation, then the first rotation angle is determined within the first angle range, and the part to be arranged is arranged at the first arrangement angle. First discharge angle = First rotation angle + β; The first angle range is from M×θ to (M+1)×θ; θ is a preset angle step size; M is a preset value; The result of the rotational nesting also includes the ordinate of the highest point of the OBB bounding box corresponding to the part to be nested in the two-dimensional coordinate system; The method further includes: S5. If the part to be arranged can be arranged in all the rotations from the 1st to the Nth rotation, then the second rotation angle is determined according to the ordinate of the highest point of the OBB bounding box corresponding to the part in the two-dimensional coordinate system from the 1st to the Nth rotations; where N satisfies N×θ≥360°. S6. Based on the parts to be arranged and the parts already arranged, determine whether the parts to be arranged and the parts already arranged share a common edge; If there is a common edge, the part to be sorted will be sorted at the second sorting angle; The second discharge angle = the second rotation angle + β; S7. If there are no common edges, obtain the first edge of the part to be arranged and the second edge of the arranged part or plate. The first edge on the part to be arranged is the edge containing the nearest point with the smallest ordinate in the two-dimensional coordinate system corresponding to the nearest point on the part to be arranged and the nearest point on the already arranged part or plate. The second side of the arranged parts or plates is: the side containing the nearest point with the smallest ordinate in the two-dimensional coordinate system corresponding to the nearest point on the arranged parts or plates and the parts to be arranged. S8. Obtain the minimum included angle between the first side and the second side, and then rotate the part in the opposite direction by the minimum included angle to insert it, so as to obtain the first coordinate corresponding to the part to be inserted after insertion. The first coordinate is the ordinate of the highest point of the OBB bounding box corresponding to the part to be arranged in the two-dimensional coordinate system; S9. Repeat S6-S8 X times until the first coordinate of the part to be arranged obtained in the Xth time is greater than or equal to the first coordinate of the part to be arranged obtained in the X-1th time. Obtain the minimum included angle between the first side and the second side corresponding to each time from the 1st time to the X-1st time. Further, determine the third placement angle according to the minimum included angle between the first side and the second side corresponding to each time from the 1st time to the X-1st time using formula (1), and place the part in the third placement angle. The formula (1) is: Third insertion angle = Second rotation angle ; Let X be the sum of the minimum included angles of the first and second sides corresponding to each of the first to X-1th iterations; where X ≥ 2.
2. The method for adaptive, fully free rotation and insertion of parts in a nesting process according to claim 1, characterized in that, The second rotation angle is k×θ; 0°<θ≤180°; Where k is the number of rotational layouts corresponding to the minimum vertical coordinate of the highest point of the OBB bounding box of the part to be laid out in the two-dimensional coordinate system in the information of the first to Nth rotational layout results.
3. The method for adaptive, fully free rotation and insertion of parts in a nesting process according to claim 2, characterized in that, in, The nearest distance point between the part to be sorted and the already sorted parts or plates is obtained using the GJK algorithm.
4. The method for adaptive, fully free rotation and insertion of parts in a nesting process according to claim 3, characterized in that, S4 specifically includes: if the part cannot be placed in the layout results from the first to the Mth rotations, and the part can be placed in the layout results from the M+1th rotation, then the bisection method or the golden section method is used to determine the angle that can be placed in the layout within the first angle range, and the first rotation angle is determined from the angle that can be placed in the layout. 1≤M<N; The segmentation stops when the first angular range is divided to a predetermined threshold using the dichotomy method or the golden section method. The first rotation angle is the smallest angle at which the material can be discharged.
5. The method for adaptive, fully free rotation and insertion of parts in a nesting process according to claim 4, characterized in that, In step S1, principal component analysis is used to obtain the OBB bounding box information of the part in a two-dimensional coordinate system; The value of θ is 90°.
6. A device for adaptive, fully free-rotation feeding of parts in a nesting process, characterized in that, The apparatus is used to perform the adaptive fully free rotation insertion method for parts in a nesting process as described in claim 1, the apparatus comprising: The bounding box information acquisition module is used to acquire the OBB bounding box information of the part to be laid out in a two-dimensional coordinate system; the OBB bounding box information includes: principal axis direction vector; The initial state acquisition module, based on the OBB bounding box information of the part to be arranged in the two-dimensional coordinate system, rotates the part to be arranged by an angle β to obtain the initial state of the part to be arranged. The initial state of the part to be arranged is that the principal axis direction vector of the part to be arranged in the two-dimensional coordinate system is the same as the horizontal axis direction of the two-dimensional coordinate system. The rotating layout module is used to rotate the parts to be laid out sequentially according to a preset angular step size, starting from the initial state of the parts to be laid out, and to obtain the result of each rotation layout sequentially. The placement module is used to determine a first rotation angle within a first angle range if the part to be placed cannot be placed after the first to M rotations, but can be placed after the M+1th rotation. The first placement angle is equal to the first rotation angle plus β. The first angle range is from M×θ to (M+1)×θ, where θ is a preset angle step and M is a preset value.
7. An electronic device, characterized in that, Including processor and memory; The memory is used to store code; The processor is configured to execute code in the memory to implement the adaptive fully free rotation insertion method for parts in a nesting assembly as described in any one of claims 1-5.
Citation Information
Patent Citations
Plate stock layout method and device and storage medium
CN115631347A
Method and device for type setting and recording medium recording program for executing processing
JP2000090075A