Data generation program and data generation device

The data generation program and device address the challenge of support misplacement in three-dimensional product manufacturing by providing precise positioning and deformation estimation, improving the manufacturing process's accuracy and reliability.

WO2026115985A1PCT designated stage Publication Date: 2026-06-04BROTHER KOGYO KK

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
BROTHER KOGYO KK
Filing Date
2025-10-28
Publication Date
2026-06-04

Smart Images

  • Figure JP2025037737_04062026_PF_FP_ABST
    Figure JP2025037737_04062026_PF_FP_ABST
Patent Text Reader

Abstract

Provided are a data generation program and a data generation device that are capable of disposing a beam at an appropriate position of a three-dimensional object. The data generation device acquires three-dimensional data pertaining to the shape of a three-dimensional product 83. The data generation device generates cutting data for fabricating a three-dimensional object 8C by means of a cutting device. The data generation device causes the three-dimensional object 8C to be displayed in a confirmation screen 31 of a display screen. The data generation device causes pieces 89A-89I of numerical information indicating the positions of coupling bodies 88A-88I of the three-dimensional object 8C to be displayed on the confirmation screen 31.
Need to check novelty before this filing date? Find Prior Art

Description

Data generation program and data generation device

[0001] The present invention relates to a data generation program and a data generation device.

[0002] A method has been proposed for quickly producing a prototype for evaluating the design items and functions of a final product without using a mold. For example, in the method for producing a three-dimensional product described in Patent Document 1, a three-dimensional product is produced based on three-dimensional product model data. The three-dimensional product model data consists of a model of the three-dimensional product, a frame, and a plurality of supports. The support is beam-shaped and supports the model of the three-dimensional product with respect to the frame.

[0003] Japanese Patent Application Laid-Open No. 2003-136605

[0004] In the three-dimensional product model data, the position of the support may be changed. However, in the method described in Patent Document 1, the position of the support can only be changed relying on the user's experience, and there is a possibility that the support cannot be arranged at an appropriate position.

[0005] An object of the present invention is to provide a data generation program and a data generation device capable of arranging a beam at an appropriate position in a three-dimensional object.

[0006] A data generation program according to a first aspect of the present invention causes a computer to execute an acquisition step of acquiring three-dimensional data regarding the shape of a three-dimensional product, a data generation step of generating processing data for performing cutting by a cutting device, the processing data being for producing a three-dimensional object obtained by adding a frame covering the outside of the three-dimensional product and a beam connecting the frame and the three-dimensional product to the three-dimensional product based on the three-dimensional data acquired in the acquisition step, a shape display step of displaying the three-dimensional object on a display screen of a display device, and a position display step of displaying numerical information indicating the position of the beam on the display screen.

[0007] According to the first embodiment, the data generation program displays numerical information indicating the position of the beam on the display screen. Since the position of the beam in the 3D object can be confirmed based on the displayed numerical information, the data generation program can place the beam in the appropriate position in the 3D object.

[0008] A data generation program according to a second aspect of the present invention is a data generation program that causes a computer to execute: an acquisition step of acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation step of generating processing data for performing cutting by a cutting device, which, based on the three-dimensional data acquired in the acquisition step, generates processing data for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and beams connecting the frame and the three-dimensional product are attached to the three-dimensional product; an estimation step of estimating the amount of deformation of the three-dimensional object when the cutting device performs the cutting process; a deformation amount determination step of determining whether the deformation amount estimated in the estimation step exceeds a predetermined threshold; and a warning display step of displaying on the display screen of a display device that the deformation amount exceeds the threshold if the deformation amount determination step determines that the deformation amount exceeds the threshold.

[0009] According to the second embodiment, the user of the data generation program can determine the location of a beam whose deformation amount exceeds a threshold for a 3D object. Therefore, the data generation program can place the beam in an appropriate position.

[0010] A data generation apparatus according to a third aspect of the present invention is characterized by comprising: an acquisition means for acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation means for generating processing data for performing cutting by a cutting device, which generates processing data for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and a beam connecting the frame and the three-dimensional product are added to the three-dimensional product based on the three-dimensional data acquired by the acquisition means; a shape display means for displaying the three-dimensional object on the display screen of a display device; and a position display means for displaying numerical information indicating the position of the beam on the display screen. The third aspect provides the same effects as the first aspect.

[0011] A data generation apparatus according to a fourth aspect of the present invention is characterized by comprising: an acquisition means for acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation means for generating processing data for performing cutting by a cutting device, which, based on the three-dimensional data acquired by the acquisition means, generates processing data for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and a beam connecting the frame and the three-dimensional product are added to the three-dimensional product; an estimation means for estimating the amount of deformation of the three-dimensional object when the cutting device performs the cutting; a deformation amount determination means for determining whether the deformation amount estimated by the estimation means exceeds a predetermined threshold; and a warning display means for displaying on the display screen of a display device that the deformation amount exceeds the threshold when the deformation amount determination means determines that the deformation amount exceeds the threshold. The fourth aspect provides the same effects as the second aspect.

[0012] This figure shows the configuration of system 9 and the electrical configuration of the data generation device 10. This figure shows the process by which a three-dimensional object is created in system 9. This is a perspective view of the three-dimensional product 83. This figure shows the first display of the confirmation screen 31. This figure shows the second display of the confirmation screen 31. This figure shows the third display of the confirmation screen 31. This figure shows the fourth display of the confirmation screen 31. This figure shows the fifth display of the confirmation screen 31. This is a cross-sectional view of the three-dimensional object 8C showing the connecting body 88E when it is not extended toward the three-dimensional product 83. This is a cross-sectional view of the three-dimensional object 8C showing the connecting body 88E when it is extended toward the three-dimensional product 83. This figure shows the sixth display of the confirmation screen 31. This figure shows the seventh display of the confirmation screen 31. This figure shows the eighth display of the confirmation screen 31. This figure shows the ninth display of the confirmation screen 31. This figure shows the tenth display of the confirmation screen 31. This figure shows the eleventh display of the confirmation screen 31. This figure shows the twelfth display of the confirmation screen 31. This figure shows the thirteenth display of the confirmation screen 31. This is a flowchart of the data generation process. This is a flowchart of the data generation process and is a continuation of Figure 19. This is a flowchart of the data generation process, a continuation of Figure 20. It shows a confirmation screen 31 displaying a modified 3D object 8C.

[0013] A three-dimensional modeling system 9 according to one embodiment of the present invention will be described with reference to the drawings. Hereinafter, the three-dimensional modeling system 9 will be simply referred to as "System 9". The drawings are used to explain the technical features that the present invention may adopt. The configuration of the apparatus etc. described is not intended to be the sole limiting factor, but is merely an illustrative example.

[0014] <Overview of System 9> Referring to Figure 1, the configuration of System 9 will be described. As shown in Figure 1, System 9 comprises a 3D printer 21, a cutting device 22, and a data generation device 10. The 3D printer 21 is a photopolymerization type device. The 3D printer 21 produces a stereolithographic object by curing a photocurable resin by irradiating it with light based on the molding data. In this invention, the molding method by the 3D printer 21 is not limited to the photopolymerization type, but may be any other molding method. For example, the molding method by the 3D printer 21 may be any of the known powder bed fusion type, directed energy type, binder spray type, sheet lamination type, material extrusion type, and material spray type. The cutting device 22 produces a cut object by performing cutting processing using a cutting tool such as a cutting blade based on the cutting data.

[0015] The data generation device 10 is a well-known personal computer. The data generation device 10 generates molding data and cutting data from 3D data by executing a data generation program described later. The 3D data is data generated by a 3D CAD, 3D modeler, 3D scanner, etc. The 3D data may be generated by the data generation device 10 or by an external device. The data generation device 10 includes a CPU 11, ROM 12, RAM 13, storage device 14, external communication IF 15, display unit 16, and bus 18.

[0016] The CPU 11 controls the data generation device 10. The CPU 11 is electrically connected to the ROM 12, RAM 13, storage device 14, external communication IF 15, and display unit 16 via the bus 18. The ROM 12 stores programs such as the BIOS executed by the CPU 11. The RAM 13 temporarily stores various data. The storage device 14 is a non-volatile storage device that stores the data generation program and various setting values. The display unit 16 is a device that displays images, for example, a liquid crystal display. The display unit 16 has a display screen 19 and displays various information on the display screen 19. The external communication IF 15 connects the data generation device 10 to external devices such as a 3D printer 21, a cutting device 22, a pointing device 23, and a keyboard 24. In this embodiment, the pointing device 23 is a mouse, but it may also be a touch panel, touchpad, etc. The pointing device 23 and keyboard 24 output signals to the CPU 11 in response to user operations.

[0017] The data generation program may also be stored in the storage device of an external device connected via the external communication IF 15. The data generation device 10 may receive the data generation program from the external device and store it in the storage device 14. Alternatively, the data generation program may be stored in a well-known storage medium that can be connected to the external communication IF 15. The data generation device 10 may read the data generation program from the storage medium and store it in the storage device 14.

[0018] <Creation of 3D Objects> Referring to Figure 2, the operation overview when a 3D object is created by System 9 will be described. The 3D object is created by either a first manufacturing method using only the cutting device 22, or a second manufacturing method using both the 3D printer 21 and the cutting device 22.

[0019] When a three-dimensional object is manufactured by the first manufacturing method, the data generation device 10 performs data generation processing (S201) and generates cutting data based on the three-dimensional data. The data generation device 10 transmits the generated cutting data to the cutting device 22 via the external communication IF 15 (S203: YES, S205). The cutting device 22 receives the cutting data from the data generation device 10. Based on the received cutting data, the cutting device 22 cuts the workpiece held in the holder to manufacture a three-dimensional object (S207). Three-dimensional object 8A shows an example of a three-dimensional object manufactured by the cutting device 22.

[0020] On the other hand, when a three-dimensional object is manufactured by the second manufacturing method, the data generation device 10 performs a data generation process (S201) and generates molding data and cutting data based on the three-dimensional data. The data generation device 10 transmits the generated molding data to the 3D printer 21 via the external communication IF 15, and transmits the generated cutting data to the cutting device 22 via the external communication IF 15 (S203:NO, S209). The 3D printer 21 receives the molding data from the data generation device 10. The cutting device 22 receives the cutting data from the data generation device 10.

[0021] The 3D printer 21 produces an intermediate from a photocurable resin based on the received molding data (S211). Intermediate 8B is an example of an intermediate produced by the 3D printer 21. The produced intermediate is removed from the 3D printer 21 and held on the holder of the cutting device 22. Based on the received cutting data, the cutting device 22 produces a three-dimensional object by cutting the intermediate held on the holder and performing surface finishing, etc. (S213).

[0022] <Three-dimensional object, intermediate> As shown in Figure 2, the three-dimensional object 8A has a three-dimensional product 81 and a holding assembly 82. The directions of the three-dimensional object 8A are defined as mutually orthogonal X, Y, and Z directions. The cutting device 22 holds the workpiece in a holder and performs cutting by bringing the cutting blade into contact with the workpiece to produce the three-dimensional object 8A.

[0023] The three-dimensional product 81 has a three-dimensional shape. The three-dimensional data referenced in the data generation process (S201) shows the three-dimensional shape of the three-dimensional product 81. The holding assembly 82 holds the three-dimensional product 81 from the outside in the XY direction. The holding assembly 82 has a frame 82A and a connecting body 82B. The frame 82A covers the outside of the three-dimensional product 81 in the XY direction. When viewed from the Z direction, the shape of the frame 82A is rectangular. The length of the frame 82A in the Z direction is shorter than the lengths in the X and Y directions, respectively. A gap of a certain width is provided between the three-dimensional product 81 and the frame 82A. The connecting body 82B extends across the space between the three-dimensional product 81 and the frame 82A. The three-dimensional product 81 is held in the frame 82A by the connecting body 82B.

[0024] The intermediate body 8B has a three-dimensional product 86 and a holding assembly 87. The shape of the three-dimensional product 86 is identical to that of the three-dimensional product 81 of the three-dimensional object 8A. As with the case of the three-dimensional object 8A, mutually orthogonal X, Y, and Z directions are defined for the intermediate body 8B.

[0025] The holding assembly 87 holds the three-dimensional product 86 from the outside in the XY direction. The holding assembly 87 has a frame 87A, an auxiliary frame 87B, and a connecting body 87C. The frame 87A has a shape formed by assembling plates into a rectangular shape. When viewed from the Z direction, the shape of the frame 87A is a square. The frame 87A covers the outside of the three-dimensional product 86 in the XY direction. The auxiliary frame 87B is located between the three-dimensional product 86 and the frame 87A. The auxiliary frame 87B is located at a constant distance from the outside of the three-dimensional product 86 in the XY direction. The connecting body 87C extends between the three-dimensional product 86 and the frame 87A. The three-dimensional product 86 and the auxiliary frame 87B are held in the frame 87A by the connecting body 87C.

[0026] <Confirmation Screen 31> As shown in Figure 4, the data generation device 10 displays the confirmation screen 31 on the display screen 19 of the display unit 16. The confirmation screen 31 displays an image of the three-dimensional object. The user confirms the shape of the three-dimensional object via the confirmation screen 31. In the following explanation, we will use the three-dimensional object 8C having a three-dimensional product 83 and a holding assembly 84 shown in Figure 3.

[0027] The holding assembly 84 includes a frame 85 and connecting members 88A to 88I. The frame 85 covers the outside of the three-dimensional product 83 in the XY direction. When viewed from the Z direction, the shape of the frame 85 is rectangular.

[0028] The connecting members 88A to 88I are beam-shaped and extend between the three-dimensional product 83 and the frame 85. The connecting members 88A to 88I connect the frame 85 and the three-dimensional product 83. As shown in Figure 7, the cross-sectional shape of the connecting members 88A to 88I perpendicular to the extension direction is rectangular with the Z direction as the longer side.

[0029] As shown in Figure 4, the connecting bodies 88A to 88E extend parallel to the Y direction. Connecting bodies 88A and 88B are connected to one end of the three-dimensional product 83 in the Y direction. Connecting bodies 88C to 88E are connected to the other end of the three-dimensional product 83 in the Y direction.

[0030] The connecting bodies 88F to 88I extend parallel to the X direction. Connecting body 88F connects to one end of the three-dimensional product 83 in the X direction. Connecting bodies 88G to 88I connect to the other end of the three-dimensional product 83 in the X direction. Hereinafter, the direction in which the connecting bodies 88A to 88I extend from the frame 85 toward the three-dimensional product 83 will be referred to as the extension direction. The extension direction of connecting bodies 88A to 88E is the Y direction, and the extension direction of connecting bodies 88F to 88I is the X direction.

[0031] <Window 32> As shown in Figures 4 to 8 and 11 to 14, the confirmation screen 31 has windows 32 and 33, and a cursor 35. Window 32 displays a three-dimensional object 8C, a direction indicator 34, coordinate axes 37, and numerical information 89A to 89I.

[0032] The direction indicator 34 displays the X, Y, and Z directions, respectively. The coordinate axes 37 extend in the X, Y, and Z directions, respectively, with the center of the 3D object 8C as the origin. In this embodiment, the center of the 3D object 8C is the geometric center of the 3D object 8C, but it may also be the centroid, for example.

[0033] Numerical information 89A is located near the connector 88A and indicates the position of the connector 88A in the X direction and the position of the connector 88A in the Z direction. Numerical information 89B is located near the connector 88B and indicates the position of the connector 88B in the X direction and the position of the connector 88B in the Z direction. Numerical information 89C is located near the connector 88C and indicates the position of the connector 88C in the X direction and the position of the connector 88C in the Z direction. Numerical information 89D is located near the connector 88D and indicates the position of the connector 88E in the X direction and the position of the connector 88D in the Z direction. Numerical information 89E is located near the connector 88E and indicates the position of the connector 88E in the X direction and the position of the connector 88E in the Z direction.

[0034] Numerical information 89F is located near the connector 88F and indicates the Y-direction position of the connector 88F and the Z-direction position of the connector 88F. Numerical information 89G is located near the connector 88G and indicates the Y-direction position of the connector 88G and the Z-direction position of the connector 88G. Numerical information 89H is located near the connector 88H and indicates the Y-direction position of the connector 88H and the Z-direction position of the connector 88H. Numerical information 89I is located near the connector 88I and indicates the Y-direction position of the connector 88I and the Z-direction position of the connector 88I.

[0035] The positions of the connecting bodies 88A to 88I indicated by the numerical information 89A to 89I are the geometric centers of the cross-sections perpendicular to the extension direction of the connecting bodies 88A to 88I. Alternatively, the positions of the connecting bodies 88A to 88I indicated by the numerical information 89A to 89I may be, for example, the corners of the cross-sections perpendicular to the extension direction of the connecting bodies 88A to 88I. The numerical information 89A to 89I omits the display of the position of the 3D object 8C in the viewing direction. In Figures 4 to 6, the numerical information 89A to 89I omits the display of the position of the connecting bodies 88A to 88I in the Z direction.

[0036] The cursor 35 is controlled by the pointing device 23. The cursor 35 moves within the confirmation screen 31 according to position information indicating the direction and amount of movement input from the pointing device 23.

[0037] With the cursor 35 positioned over one of the linked units 88A to 88I, the user performs a predetermined operation on the pointing device 23 to select the linked unit over which the cursor 35 is positioned. In this embodiment, the predetermined operation on the pointing device 23 is a click operation, but it may also be a double-click operation, for example.

[0038] In the connected units 88A to 88I, the selected connected unit is displayed separately from the other unselected connected units. In this embodiment, the selected connected unit is displayed in black. However, it is sufficient for the selected connected unit to be displayed separately from the other unselected connected units; for example, the other unselected connected units could be displayed in black, or the selected connected unit could be displayed by blinking.

[0039] <Window 33> Window 33 has regions 33A to 33F. Region 33A is the region for handling the content of operations related to the connected object and for accepting those operations. Region 33A accepts "add," "move," and "delete" as operations related to the connected object. When the "add" radio button in region 33A is selected and the cursor 35 is inside window 32, the pointing device 23 clicks, and the connected object is added to the 3D object 8C. When the "delete" radio button in region 33A is selected and the cursor 35 is over any of the connected objects 88A to 88I, the pointing device 23 clicks, and the selected connected object is deleted from the 3D object 8C.

[0040] As shown in FIG. 5, when a user performs a predetermined operation on the pointing device 23 with the radio button "Move" in the area 33A selected, the selected connected body moves within the window 32. In the present embodiment, when the user performs a drag-and-drop operation on the pointing device 23, the selected connected body moves within the window 32. For example, when the user performs a click operation on the pointing device 23, the selected connected body may move to the position of the window 32 specified by the click operation.

[0041] The selected connected body moves according to the position information indicating the moving direction and the moving amount input from the pointing device 23. The numerical information corresponding to the selected connected body is changed according to the position information of the moved connected body. In FIG. 5, according to the position information input from the pointing device 23, the selected connected body 88C moves and the numerical information 89C is changed.

[0042] Note that when the three-dimensional product 83 and the frame 85 cannot be connected at the position after the selected connected body has moved, the display of the selected connected body is erased. The determination as to whether the selected connected body can be connected or not is made based on the position of the connected body after movement, the shape data of the selected connected body, the shape data of the three-dimensional product 83, and the shape data of the frame 85.

[0043] In FIG. 12, since the three-dimensional product 83 and the frame 85 cannot be connected at the position after the selected connected body 88E has moved, the display of the selected connected body 88E and the display of the numerical information 89E shown in FIG. 8 are erased. Note that it may be displayed that the three-dimensional product 83 and the frame 85 cannot be connected at the position after the selected connected body has moved, in such a manner that the selected connected body blinks or a warning message is additionally displayed.

[0044] Returning to the description of the window 33. The area 33B is an area for changing the viewing direction of the three-dimensional object 8C. The user can change the viewing direction of the three-dimensional object 8C in the window 3 to select a direction from the drop-down box in the area 33B.

[0045] Region 33C is a region for receiving the length by which the connector extends. The end of the selected connector may be arranged to protrude from the three-dimensional product 83. In FIG. 8, the end of the selected connector 88E protrudes from the three-dimensional product 83. Also, in region 33C, the length by which the connector extends is set to "5.0 mm". In this case, as shown in FIG. 11, the end of the selected connector 88E on the three-dimensional product 83 side extends 5.0 mm toward the three-dimensional product 83 side from the end of the connector 88E on the three-dimensional product 83 side shown in FIG. 10.

[0046] Region 33D is a region for displaying numerical information indicating the position of the selected connector. Region 33D has an input box capable of displaying and inputting numerical information. In FIG. 4, region 33D displays numerical information corresponding to the selected connector 88C in the input box. As shown in FIG. 5, when the connector selected by a predetermined operation of the pointing device 23 moves, the numerical information displayed in region 33D is changed according to the position of the moved connector.

[0047] Region 33D omits the display of the position in the viewing direction of the three-dimensional object 8C. For example, region 33D in FIG. 7 displays the numerical information in the X direction and the numerical information in the Z direction of the selected connector 88E. On the other hand, region 33D in FIG. 4 displays the numerical information in the X direction of the selected connector 88C and omits the numerical information in the Z direction.

[0048] Also, region 33D accepts the change of numerical information about the selected connector. As shown in FIGS. 6 and 8, when a numerical value is input into the input box of region 33D, the selected connector is arranged at a position corresponding to the input numerical value. The numerical information in window 32 is changed according to the change in the position of the selected connector.

[0049] Region 33E is a region for displaying information on the shape of the selected connector. For example, region 33E in FIG. 7 displays that the shape of the cross-section orthogonal to the extending direction of the selected connector 88E has a width of 5.0 mm and a thickness of 10.0 mm.

[0050] Furthermore, region 33E accepts changes to the shape of the selected connector. As shown in Figure 13, when a numerical value is entered into the input box of region 33E, the shape of the selected connector is changed according to the entered value. In Figure 13, based on the numerical value received in region 33E, the cross-sectional shape of the selected connector 88E is changed to a width of 11.3 mm and a thickness of 4.1 mm.

[0051] Furthermore, region 33E accepts changes to the shape of the tip of the selected connector. As shown in Figure 14, when the "tapered" radio button is selected, the end of the selected connector 88A on the 3D product 83 side becomes tapered, tapering towards the 3D product 83.

[0052] When the "tapered" radio button is selected, an input box for entering a numerical value that defines the tapered shape appears in area 33E. In Figure 14, based on the numerical value received in area 33E, the length of the tapered shape of the connecting body 88A becomes 3.4 mm and the tapering angle becomes 27 degrees.

[0053] <Estimation of Deformation Amount> When cutting is performed by the cutting device 22, deformation occurs in each part that makes up the 3D object 8C. Region 33F is a region for estimating the amount of deformation of the 3D object 8C. When the selection button for region 33F is selected, the CPU 11 estimates the amount of deformation of the 3D object 8C when the cutting device 22 performs cutting. The amount of deformation of the 3D object 8C is estimated based on cutting data, shape data of the 3D object 8C, material of the 3D object 8C, cutting conditions, etc.

[0054] The CPU 11 determines whether the estimated deformation amount exceeds a predetermined threshold for each part of the 3D object 8C. The threshold is stored in the ROM 12.

[0055] As shown in Figure 15, areas where the estimated deformation amount exceeds a threshold are displayed separately from areas where the deformation amount does not exceed the threshold. In this embodiment, areas in the 3D object 8C where the deformation amount exceeds the threshold are displayed with a hatching pattern that slopes downward to the left. It is sufficient that areas where the deformation amount exceeds the threshold are displayed separately from areas where the deformation amount does not exceed the threshold. For example, areas where the deformation amount exceeds the threshold may be displayed in red, or a warning message may be displayed near the areas where the deformation amount exceeds the threshold.

[0056] Furthermore, if the estimated deformation exceeds a predetermined threshold, a window 36 is additionally displayed on the confirmation screen 31. Window 36 is displayed below window 32, in front of the confirmation screen 31.

[0057] Patterns 36A, 36B, and 36C are displayed in window 36. Patterns 36A, 36B, and 36C are patterns of connected objects in which the number, arrangement, shape, etc. of connected objects are changed so that the deformation amount of the 3D object 8C does not exceed a threshold. Patterns 36A, 36B, and 36C are generated by the CPU 11 based on the shape data of the 3D object 8C, the material of the 3D object 8C, the machining conditions for cutting, etc.

[0058] When one of patterns 36A, 36B, or 36C is selected, the 3D object 8C of the selected connected pattern is displayed in window 32. The confirmation screen 31 in Figure 16 is the confirmation screen 31 when the connected pattern of pattern 36A is selected.

[0059] Pattern 36A is a pattern in which the number of connecting elements has been changed. More specifically, in Pattern 36A, connecting elements 88J, 88K, and 88L are added near connecting elements 88B, 88F, and 88G, where the amount of deformation exceeds a threshold, compared to the connecting element pattern in Figure 4. Numerical information 89J, 89K, and 89L indicating the position of connecting elements 88J, 88K, and 88L is added near connecting elements 88J, 88K, and 88L. The additional connecting elements 88J, 88K, and 88L can be modified in terms of their position, added or deleted, extended toward the 3D product 83, or their shape.

[0060] The confirmation screen 31 in Figure 17 is the confirmation screen 31 when the connected body pattern 36B is selected. Pattern 36B is a pattern in which the arrangement of connected bodies has been changed. More specifically, in pattern 36B, the arrangement of connected bodies 88A, 88B, 88F, 88G, and 88H is changed from the connected body pattern in Figure 4. The numerical information 89A, 89B, 89F, 89G, and 89H is changed in accordance with the change in the arrangement of connected bodies 88A, 88B, 88F, 88G, and 88H.

[0061] The confirmation screen 31 in Figure 18 is the confirmation screen 31 when the connecting body pattern 36C is selected. Pattern 36C is a pattern in which the shape of the connecting body has been changed. More specifically, in pattern 36C, the shapes of the connecting bodies 88B, 88F, and 88G are changed from the connecting body pattern in Figure 4. The shapes of the connecting bodies 88B, 88F, and 88G are changed, for example, based on the magnitude of the second moment of area of ​​the cross section perpendicular to the extension direction.

[0062] The CPU 11 generates training data based on the connected body pattern selected from patterns 36A, 36B, and 36C. The training data is used to obtain a connected body pattern with small variation in deformation amount at each part of the 3D object 8C through machine learning. The training data is stored in the memory device 14 by the CPU 11. Based on the training data, the CPU 11 generates cutting data for fabricating the 3D object.

[0063] Furthermore, if the position of a connecting element is changed, a connecting element is added or deleted, the 3D product 83 is extended, or the shape of the connecting element is changed from the connecting element pattern selected from patterns 36A, 36B, and 36C, the CPU 11 estimates the amount of deformation in the 3D object 8C based on the modified 3D object 8C and the training data.

[0064] <Data Generation Process> Referring to Figures 19 to 21, the data generation process performed in S201 of Figure 2 will be described. The data generation process is performed by the CPU 11 of the data generation device 10. It is started when an operation to start the generation of cutting data, or molding data and cutting data, is detected via the pointing device 23 or keyboard 24. When the data generation process is started, the CPU 11 reads the data generation program stored in the storage device 14 into the RAM 13 and executes it.

[0065] As shown in Figure 19, the CPU 11 acquires three-dimensional data relating to the shape of the three-dimensional product 83 (S1). The CPU 11 may acquire the data by reading it from the storage device 14, or by receiving the data transmitted from an external device via the external communication IF 15.

[0066] The CPU 11 defines the reference axes (S5). The reference axes are the X, Y, and Z directions of the 3D object 8C. The user performs operations to define each direction of the 3D object 8C via the pointing device 23 or keyboard 24. The CPU 11 receives the user's operations and defines the X, Y, and Z directions of the 3D object 8C.

[0067] The CPU 11 displays the confirmation screen 31 on the display screen 19 of the display unit 16 (S7). The CPU 11 determines whether or not the 3D object 8C is manufactured by the first manufacturing method (S9).

[0068] If the CPU 11 determines that the 3D object 8C is manufactured by the first manufacturing method (S9: YES), it adds a holding assembly 84 to the 3D product 83 to determine the 3D object 8C (S11).

[0069] The CPU 11 sets the orientation of the Z-axis among the reference axes of the 3D data of the 3D object 8C (S15). The CPU 11 then proceeds to S31.

[0070] If the CPU 11 determines that the 3D object 8C is not produced by the first production method but by the second production method (S9: NO), it determines the intermediate and the 3D object 8C (S21).

[0071] The CPU 11 sets the orientation of the Z-axis among the reference axes of the 3D data of the 3D object 8C (S25). The CPU 11 then proceeds to S31.

[0072] The CPU 11 displays the 3D object 8C in the window 32 of the confirmation screen 31 (S31). The CPU 11 displays numerical information indicating the position of each connected element in the window 32 (S33). The CPU 11 then proceeds to S41 in Figure 20.

[0073] As shown in Figure 20, the CPU 11 determines whether or not to change the position of the selected connection (S41). When changing the position of the selected connection, the user either drags and drops the selected connection via the pointing device 23 or inputs numerical information into the input box in area 33D via the keyboard 24. If the CPU 11 determines that the position of the selected connection should not be changed (S41: NO), the process proceeds to S49.

[0074] If the CPU 11 determines that the position of the selected connecting body should be changed (S41: YES), it determines whether the connecting body after the change in position can connect the 3D product 83 and the frame 85 (S43). The CPU 11 makes the determination in S43 based on the position of the connecting body, the shape data of the connecting body, the shape data of the frame, and the 3D data input via the pointing device 23 or keyboard 24.

[0075] If the CPU 11 determines that the repositioned connecting body can connect the 3D product 83 and the frame 85 (S43: YES), it updates the display on the confirmation screen 31 for the repositioned connecting body (S45). The CPU 11 then proceeds to S49. If the CPU 11 determines that the repositioned connecting body cannot connect the 3D product 83 and the frame 85 (S43: NO), it clears the display of the repositioned connecting body and updates the display on the confirmation screen 31 (S47). The CPU 11 then proceeds to S49.

[0076] The CPU 11 determines whether or not to change the extension length of the selected connection (S49). When changing the extension length of the selected connection, the user inputs numerical information into the input box in area 33C via the keyboard 24. If the CPU 11 determines that the extension length of the selected connection should not be changed (S49: NO), the process proceeds to S55.

[0077] If the CPU 11 determines that the extension length of the selected connector should be changed (S49: YES), it determines whether the selected connector can be extended toward the 3D product 83 at its current position (S51). The CPU 11 makes the determination in S51 based on the position of the selected connector, the shape data of the connector, and the 3D data.

[0078] If the CPU 11 determines that the selected connecting body can be extended toward the 3D product 83 at its current position (S51: YES), it extends the end of the connecting body toward the 3D product 83 toward the 3D product 83 and updates the display on the confirmation screen 31 (S53). The connecting body is extended to a length based on the numerical value entered in the input box of region 33C. The CPU 11 then proceeds to S55. If the CPU 11 determines that the selected connecting body cannot be extended toward the 3D product 83 at its current position (S51: NO), it proceeds to S55. A case in which the connecting body cannot be extended toward the 3D product 83 is, for example, when the end of the connecting body toward the 3D product 83 enters the interior of the 3D product 83 due to the extension.

[0079] The CPU 11 determines whether or not to change the shape of the selected connection (S55). If the user wants to change the shape of the selected connection, they input it into area 33E via the keyboard 24. If the CPU 11 determines that the shape of the selected connection should not be changed (S55: NO), the process proceeds to S63.

[0080] If the CPU 11 determines that the shape of the selected connector should be changed (S55: YES), it determines whether or not to make the tip of the connector tapered (S57). The CPU 11 makes the determination in S57 based on the state of the "tapered" radio button in area 33E.

[0081] If the CPU 11 determines that the shape of the tip of the connecting body should be tapered (S57: YES), it updates the display on the confirmation screen 31 for the connecting body after the change to the tapered shape (S59). The CPU 11 changes the tapered shape based on the numerical value that defines the tapered shape entered in area 33E. The CPU 11 then proceeds to process S63.

[0082] If the CPU 11 determines that the shape of the tip of the connecting body should not be tapered (S57: NO), it changes the cross-sectional shape of the connecting body and updates the display on the confirmation screen 31 (S61). Based on the numerical value entered in area 33E, the CPU 11 changes the shape of the cross section perpendicular to the extension direction in the connecting body. The CPU 11 then proceeds to S63.

[0083] The CPU 11 determines whether or not to make any other changes to the selected connective (S63). Other changes include, for example, deleting the selected connective or adding a connective. If the CPU 11 determines to make any other changes to the selected connective (S63: YES), it makes the changes and updates the display on the confirmation screen 31 (S65). The CPU 11 then proceeds to S67. If the CPU 11 determines not to make any other changes to the selected connective (S63: NO), it proceeds to S67 in Figure 21.

[0084] As shown in Figure 21, the CPU 11 determines whether or not to perform deformation estimation of the 3D object 8C when cutting by the cutting device 22 (S67). When estimating the deformation amount of the 3D object 8C, the user selects a region 33F selection button via the pointing device 23. If the CPU 11 determines that it will not perform deformation estimation of the 3D object 8C when cutting (S67: NO), the process moves to S90.

[0085] If the CPU 11 determines that it is appropriate to estimate the deformation amount of the 3D object 8C when performing cutting (S67: YES), it estimates the deformation amount of the 3D object 8C (S71). The CPU 11 determines whether the estimated deformation amount of the 3D object 8C is below a threshold (S73). If the CPU 11 determines that there are parts of the 3D object 8C where the deformation amount exceeds the threshold (S73: NO), it displays a warning (S75). In the warning display, the CPU 11 distinguishes between parts where the threshold has been exceeded and parts where the threshold has not been exceeded. If the CPU 11 determines that the deformation amount of parts of the 3D object 8C is below the threshold (S73: YES), it proceeds to S90.

[0086] The CPU 11 generates multiple patterns of connected structures by changing the number, arrangement, shape, etc. of the connected structures within a range where the deformation amount of the 3D object 8C does not exceed a threshold (S77). The CPU 11 displays patterns 36A, 36B, and 36C corresponding to each of the generated connected structure patterns on the confirmation screen 31 via window 36 (S79).

[0087] The CPU 11 determines whether or not one of the displayed patterns 36A, 36B, or 36C has been selected (S81). If the CPU 11 determines that none of the displayed patterns 36A, 36B, or 36C have been selected (S81: NO), it returns to processing S81.

[0088] If the CPU 11 determines that one of the displayed patterns 36A, 36B, or 36C has been selected (S81: YES), it determines the pattern of the connected 3D object 8C to be the pattern of the selected connected object (S83). The CPU 11 updates the display of the confirmation screen 31 based on the selected pattern (S89). The CPU 11 determines whether or not it has received an operation to start generating cutting data (S90). The user performs the operation to start generating cutting data via the pointing device 23 or the keyboard 24.

[0089] If the CPU 11 determines that it has not received an operation to start generating cutting data (S90: NO), it returns to S41 in Figure 20. In S41 to S65, the position of the connected bodies, the extension length of the connected bodies, the shape of the connected bodies, etc., are changed for the 3D object 8C having the selected connected body pattern.

[0090] If the CPU 11 determines that it has received an operation to start generating cutting data (S90: YES), it generates learning data based on the pattern of the connected body and stores it in the storage device 14 (S91). The CPU 11 generates cutting data (S93). In the next data generation process, the CPU 11 estimates the amount of deformation of the 3D object into which the connected body has been attached to the 3D product 83 based on the learning data (S71). The CPU 11 generates cutting data for the 3D object into which the connected body has been attached to the 3D product 83 based on the learning data (S93).

[0091] The CPU 11 transmits the generated cutting data to the cutting device 22 (S95). The 3D printer 21 receives the molding data from the data generation device 10. The cutting device 22 receives the cutting data from the data generation device 10.

[0092] The 3D printer 21 is driven based on the received molding data and selectively irradiates light onto a photocurable resin to create an intermediate (S211, see Figure 2). The user removes the created intermediate from the 3D printer 21 and holds it on the holder of the cutting device 22. The cutting device 22 is driven based on the received cutting data and cuts the intermediate held on the holder to create a three-dimensional object (S213, see Figure 2).

[0093] <Operation and Effects of This Embodiment> The data generation device 10 acquires three-dimensional data relating to the shape of the three-dimensional product 83 (S1). The data generation device 10 generates cutting data for manufacturing the three-dimensional object 8C using the cutting device 22 (S93). The data generation device 10 displays the three-dimensional object 8C on the confirmation screen 31 of the display screen 19 (S31). The data generation device 10 displays numerical information 89A to 89I indicating the positions of the connecting bodies 88A to 88I on the confirmation screen 31 (S33). The data generation device 10 displays numerical information 89A to 89I indicating the positions of the connecting bodies 88A to 88I on the display screen 19. Since the positions of the connecting bodies 88A to 88I can be confirmed based on the displayed numerical information 89A to 89I, the data generation device 10 can place the connecting bodies 88A to 88I in appropriate positions in the three-dimensional object 8C.

[0094] The data generation device 10 generates cutting data for creating a three-dimensional object 8C in which multiple connecting members 88A to 88I are attached to a three-dimensional product 83. On the confirmation screen 31, the numerical information of the selected connecting member is changed according to the change in the position of one of the connecting members 88A to 88I. Therefore, the data generation device 10 can position the desired connecting member from among the multiple connecting members 88A to 88I in an appropriate position.

[0095] The data generation device 10 displays the selected connection from among the connections 88A to 88I separately from the other connections that have not been selected. Therefore, the user of the data generation device 10 can easily distinguish between the selected connection from among the connections 88A to 88I and the other connections.

[0096] The data generation device 10 displays the 3D object 8C in window 32 on the confirmation screen 31. The data generation device 10 displays numerical information for one of the connected bodies 88A to 88I selected in window 33 on the confirmation screen 31. Therefore, the user of the data generation device 10 can easily grasp the numerical information for the selected connected body by checking window 33.

[0097] In the data generation device 10, area 33D of window 33 accepts changes to the numerical information of the selected connective. When a numerical value is entered into the input box of area 33D, the selected connective is placed at a position corresponding to the entered numerical value, and the numerical information in window 32 is changed according to the change in the position of the selected connective. The user of the data generation device 10 can place the selected connective at a desired position by entering a numerical value into the input box of area 33D.

[0098] In the data generation device 10, the connected body selected from connected bodies 88A to 88I moves according to position information indicating the direction and amount of movement input from the pointing device 23. The numerical information corresponding to the selected connected body is changed according to the position information of the moved connected body. The user of the data generation device 10 can place the selected connected body at a desired position by inputting position information using the pointing device 23.

[0099] The data generation device 10 extends the end of the selected connector from the connectors 88A to 88I that is on the side of the three-dimensional product 83 toward the three-dimensional product 83. Therefore, the data generation device 10 can position the selected connector at a desired location by connecting it to the three-dimensional product 83 with the connector extended toward the three-dimensional product 83.

[0100] In the data generation device 10, window 33 is displayed on the confirmation screen 31. Window 33 has a region 33C for receiving the length to which the connecting body will be extended. Therefore, the data generation device 10 can extend the connecting body to the three-dimensional product 83 by the length desired by the user.

[0101] The data generation device 10 changes the shape of the cross-section perpendicular to the extension direction for the connecting body selected from connecting bodies 88A to 88I. Therefore, the data generation device 10 can individually set the shape of the cross-section perpendicular to the extension direction of the connecting bodies.

[0102] The data generation device 10 changes the shape of the selected connecting body so that the end on the 3D product 83 side tapers towards the 3D product 83. Thus, the data generation device 10 can change the shape of the tip of the connecting body to a tapered shape.

[0103] The data generation device 10 displays window 33 on the confirmation screen 31. Window 33 has an area 33E for inputting numerical values ​​that define the tapered shape. Therefore, the data generation device 10 can change the shape of the tip of the connecting body to a shape desired by the user.

[0104] When the position of the selected connecting body is changed, the data generation device 10 determines whether the connected body can connect the 3D product 83 and the frame 85 after the position change (S43). If the data generation device 10 determines that the connected body cannot connect after the position change, it clears the display of the selected connecting body and updates the display on the confirmation screen 31 (S47). Therefore, the user of the data generation device 10 can understand that the connected body whose position has been changed cannot connect the frame and the 3D product.

[0105] The data generation device 10 generates cutting data for the three-dimensional product 83, which includes a frame 85 covering the outside of the three-dimensional product 83 in the X and Y directions, and connecting bodies 88A to 88I, which include connecting bodies 88F to 88I extending parallel to the X direction and connecting bodies 88A to 88E extending parallel to the Y direction. The data generation device 10 displays numerical information 89F to 88I indicating the Y direction position of the connecting bodies 88F to 88I, and numerical information 89A to 88E indicating the X direction position of the connecting bodies 88A to 88E. Therefore, the data generation device 10 can position the connecting bodies appropriately even when the connecting bodies extend in both the X and Y directions in the three-dimensional object 8C.

[0106] The data generation device 10 estimates the amount of deformation of the 3D object 8C when cutting is performed by the cutting device 22 (S71). The data generation device 10 determines whether the estimated amount of deformation of the 3D object 8C is below a predetermined threshold (S73). If the data generation device 10 determines that there are parts of the 3D object 8C where the amount of deformation exceeds the threshold, it displays the parts where the amount of deformation exceeds the threshold separately from the parts where the amount of deformation does not exceed the threshold (S75). The user of the data generation device 10 can understand the location of the connected parts of the 3D object 8C where the amount of deformation exceeds the threshold. Therefore, the data generation device 10 can place the connected parts in the 3D object 8C in the appropriate position.

[0107] If the data generation device 10 determines that the deformation amount of any part of the 3D object 8C exceeds a threshold, it generates multiple patterns of connected structures by changing the number, arrangement, shape, etc. of the connected structures within a range where the deformation amount of the 3D object 8C does not exceed the threshold (S77). The data generation device 10 determines the connected structure pattern of the 3D object 8C to be the pattern of connected structures selected from the generated patterns 36A, 36B, and 36C (S83). The user of the data generation device 10 can select the desired pattern from multiple patterns in which the deformation amount of the 3D object 8C does not exceed the threshold.

[0108] The data generation device 10 generates training data based on the determined pattern of the connected body (S85). The training data is used to obtain a pattern of connected body with small variation in the amount of deformation at each part of the 3D object 8C through machine learning. Based on the training data, the data generation device 10 generates cutting data for the 3D object 8C with the connected body attached to the 3D product 83 (S93). By generating cutting data based on the training data, the data generation device 10 can position the connected body in an appropriate location.

[0109] The data generation device 10 estimates the amount of deformation of the 3D object 8C, which has the connecting body attached to the 3D product 83, based on the training data (S71). The data generation device 10 can also place the connecting body in an appropriate position even if the position of the connecting body is further changed from the 3D object 8C generated based on the training data.

[0110] <Modifications> The present invention is not limited to the above embodiments, and various modifications are possible. System 9 may include only the cutting device 22 and not include the 3D printer 21. System 9 may not include the data generation device 10, and the cutting device 22 may generate cutting data, or the 3D printer 21 may generate molding data and cutting data. The specific examples and magnitude relationships of lengths and intervals in the above embodiments are examples only, and other values ​​and other relationships may be used.

[0111] In the above, the frame 85, the connecting members 88F to 88I extending in the X direction, and the connecting members 88A to 88E extending in the Y direction were added to the 3D product 83 to form a 3D object 8C. Alternatively, the frame 85 and the connecting members 88F to 88I extending in the X direction may be added to the 3D product 83 to form a 3D object 8C, and the connecting members 88A to 88E extending in the Y direction may be deleted. Alternatively, the frame 85 and the connecting members 88A to 88E extending in the Y direction may be added to the 3D product 83 to form a 3D object 8C, and the connecting members 88F to 88I extending in the X direction may be deleted.

[0112] As shown in Figure 22, the data generation device 10 may add connecting bodies 188A to 188G that extend radially from the three-dimensional product 83 to the three-dimensional object 8C, instead of the connecting bodies 88A to 88E. In this case, numerical information 189A to 189G may be displayed as numerical information indicating the position of the connecting bodies 188A to 188G. Numerical information 189A to 189G displays the angle of the connecting bodies 188A to 188G. This allows the user of the data generation device 10 to grasp numerical information about the connecting bodies that extend radially from the three-dimensional product 83.

[0113] In the above example, the user selected a pattern for the connected body from multiple patterns 36A, 36B, and 36C generated by the CPU 11. Alternatively, the CPU 11 may determine a pattern for the connected body from multiple patterns 36A, 36B, and 36C that minimizes the variation in deformation between each part constituting the three-dimensional object 8C. In this case, the data generation device 10 can automatically determine a pattern for the connected body from multiple patterns and generate cutting data based on the determined pattern.

[0114] In the above, the CPU 11 generated three patterns of connected bodies, patterns 36A, 36B, and 36C, in which the deformation amount does not exceed the threshold, but the number of patterns generated may be changed as appropriate. Patterns of connected bodies in which the deformation amount does not exceed the threshold may be generated by combining multiple patterns based on the number of connected bodies, the arrangement of connected bodies, and the shape of connected bodies.

[0115] The display mode of the confirmation screen 31 may be changed as appropriate. In the above embodiment, areas 33A to 33F were displayed in window 33, but any of areas 33A to 33F may be displayed in window 32. Window 33 may be displayed as a dialog window in front of window 32.

[0116] In the above description, the connecting bodies 88A to 88I were beam-shaped with a rectangular cross-section perpendicular to the extension direction, but the shape of the connecting bodies 88A to 88I may be changed as appropriate. For example, the connecting bodies 88A to 88I may be beam-shaped with a circular cross-section perpendicular to the extension direction.

[0117] <Other> The process in S1 is an example of the "acquisition step" of the present invention. Cutting data is an example of the "processing data" of the present invention. Connecting body is an example of the "beam" of the present invention. The processes in S17 and S27 are examples of the "data generation step" of the present invention. The process in S31 is an example of the "shape display step" of the present invention. The process in S33 is an example of the "position display step" of the present invention. Window 32 is an example of the "first window" of the present invention. Window 33 is an example of the "second window," "third window," and "fourth window" of the present invention. Region 33D is an example of the "numerical editing region" of the present invention. Region 33C is an example of the "extension editing region" of the present invention. Region 33E is an example of the "tapering editing region" of the present invention. The X direction is an example of the "first direction" of the present invention. The process in S43 is an example of the "connection determination step" of the present invention. The process in S47 is an example of the "disconnection display step" of the present invention. The Y direction is an example of the "second direction" of the present invention. Connecting members 88F to 88I are examples of the "first beam" of the present invention. Connecting members 88A to 88E are examples of the "second beam" of the present invention. The process in S71 is an example of the "estimation step" of the present invention. The process in S73 is an example of the "deformation amount determination step" of the present invention. The process in S75 is an example of the "warning display step" of the present invention. The process in S77 is an example of the "pattern generation step" of the present invention. The process in S83 is an example of the "determination step" of the present invention. The process in S85 is an example of the "learning step" of the present invention. The CPU 11 that performs the process in S1 is an example of the "acquisition means" of the present invention. The CPU 11 that performs the processes in S17 and S27 is an example of the "data generation means" of the present invention. The CPU 11 that performs the process in S31 is an example of the "shape display means" of the present invention. The CPU 11 that performs the process in S33 is an example of the "position display means" of the present invention. The CPU 11 that performs the process in S71 is an example of the "estimation means" of the present invention. The CPU 11 that performs the processing in S73 is an example of the "deformation amount determination means" of the present invention. The CPU 11 that performs the processing in S75 is an example of the "warning display means" of the present invention.

[0118] 9: 3D modeling system 10: Data generation device 21: 3D printer 22: Cutting device

Claims

1. A data generation program for causing a computer to execute the following steps: an acquisition step for acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation step for generating processing data for performing cutting by a cutting device, which, based on the three-dimensional data acquired in the acquisition step, generates processing data for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and beams connecting the frame and the three-dimensional product are attached to the three-dimensional product; a shape display step for displaying the three-dimensional object on the display screen of a display device; and a position display step for displaying numerical information indicating the position of the beams on the display screen.

2. The data generation program according to claim 1, characterized in that the computer is instructed to perform an operation step on one of the beams selected from one or more beams, the operation on the selected beam includes changing the position of the beam, and the position display step modifies the numerical information in accordance with the change in the position of the selected beam.

3. The data generation program according to claim 2, characterized in that, in the shape display step, the selected beam is displayed on the display screen in distinction from the other beams that have not been selected.

4. The data generation program according to claim 2, characterized in that, in the shape display step, the three-dimensional object is displayed in a first window on the display screen, and in the position display step, the numerical information for the selected beam is displayed in a second window different from the first window on the display screen.

5. The data generation program according to claim 4, wherein the second window has a numerical editing area for receiving numerical editing instructions for editing the numerical information, and in the position display step, the numerical information is modified based on the numerical editing instructions.

6. The data generation program according to claim 1, characterized in that, in the position display step, the numerical information is modified based on position information indicating the direction and amount of movement input from the pointing device.

7. The data generation program according to claim 2, characterized in that the operation on the selected beam includes extending the end of the beam on the three-dimensional product side in the extension direction toward the three-dimensional product side.

8. The data generation program according to claim 7, characterized in that, in the shape display step, the three-dimensional object is displayed in a first window for displaying the three-dimensional object on the display screen, and a third window, different from the first window, is displayed on the display screen, the third window having an extension editing area for receiving the length to which the selected beam extends.

9. The data generation program according to claim 2, characterized in that the operation on the selected beam includes changing the cross-sectional shape perpendicular to the extension direction of the beam.

10. The data generation program according to claim 2, characterized in that the operation on the selected beam includes changing the tip of the selected beam on the three-dimensional product side in the extension direction to a tapered shape that tapers towards the three-dimensional product.

11. The data generation program according to claim 10, characterized in that, in the shape display step, the three-dimensional object is displayed in a first window for displaying the three-dimensional object on the display screen, and is displayed in a fourth window different from the first window, which has a tapered editing area for accepting tapered editing to change the tapered shape.

12. The data generation program according to claim 2, characterized in that the computer is further made to perform a connection determination step of determining whether one of the selected beams, which extends parallel to the first direction, connects the frame and the three-dimensional product at the modified position based on the numerical information; and a non-connection display step of displaying on the display screen that the beam does not connect the frame and the three-dimensional product at the modified position if the connection determination step determines that the beam does not connect the frame and the three-dimensional product at the modified position.

13. The data generation program according to claim 1, characterized in that in the data generation step, the processing data is generated by adding to the three-dimensional product the frame that covers the outside of the three-dimensional product in a first direction and the outside of the three-dimensional product in a second direction perpendicular to the first direction, the beams including a first beam extending from the frame parallel to the first direction and a second beam extending from the frame parallel to the second direction, and in the position display step, the numerical information indicating the position of the first beam in the second direction and the numerical information indicating the position of the second beam in the first direction are displayed on the display screen.

14. The data generation program according to claim 1, characterized in that, in the data generation step, processing data is generated in which a plurality of beams extending radially from the three-dimensional product are added, and in the position display step, the angles of the plurality of beams extending radially are displayed as numerical information on the display screen.

15. A data generation program for causing a computer to execute: an acquisition step for acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation step for generating processing data for performing cutting by a cutting device, which, based on the three-dimensional data acquired in the acquisition step, generates processing data for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and beams connecting the frame and the three-dimensional product are attached to the three-dimensional product; an estimation step for estimating the amount of deformation of the three-dimensional object when the cutting device performs the cutting process; a deformation amount determination step for determining whether the deformation amount estimated in the estimation step exceeds a predetermined threshold; and a warning display step for displaying on the display screen of a display device that the deformation amount exceeds the threshold if the deformation amount determination step determines that the deformation amount exceeds the threshold.

16. The data generation program according to 15, characterized in that, if the deformation amount determination step determines that the deformation amount exceeds the threshold, the computer is further instructed to perform a pattern generation step of generating multiple beam patterns in which the deformation amount does not exceed the threshold, and a determination step of determining one beam pattern from the multiple beam patterns generated in the pattern generation step.

17. The data generation program according to claim 16, characterized in that the determination step determines, from among the plurality of beam patterns generated in the pattern generation step, the beam pattern that minimizes the variation in the amount of deformation among the parts constituting the three-dimensional object.

18. The data generation program according to 17, characterized in that the computer is further instructed to perform a learning step to generate learning data for obtaining a beam pattern with small variation in the amount of deformation in the three-dimensional data by machine learning, based on the beam pattern determined in the determination step, and in the data generation step, the processing data for the three-dimensional object obtained by adding the beam to the three-dimensional product is generated based on the learning data.

19. The data generation program according to claim 18, characterized in that the estimation step estimates the amount of deformation based on the three-dimensional object obtained by adding the beam to the three-dimensional product based on the learning data.

20. A data generation device comprising: an acquisition means for acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation means for generating processing data for performing cutting by a cutting device, wherein the processing data is generated based on the three-dimensional data acquired by the acquisition means, and the processing data is generated for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and a beam connecting the frame and the three-dimensional product are added to the three-dimensional product; a shape display means for displaying the three-dimensional object on the display screen of a display device; and a position display means for displaying numerical information indicating the position of the beam on the display screen.

21. A data generation device comprising: an acquisition means for acquiring three-dimensional data relating to the shape of a three-dimensional product; a data generation means for generating processing data for performing cutting processing by a cutting device, wherein the processing data is generated based on the three-dimensional data acquired by the acquisition means, and the processing data is generated for creating a three-dimensional object in which a frame covering the outside of the three-dimensional product and a beam connecting the frame and the three-dimensional product are added to the three-dimensional product; an estimation means for estimating the amount of deformation of the three-dimensional object when the cutting device performs the cutting processing; a deformation amount determination means for determining whether the deformation amount estimated by the estimation means exceeds a predetermined threshold; and a warning display means for displaying on the display screen of a display device that the deformation amount exceeds the threshold when the deformation amount determination means determines that the deformation amount exceeds the threshold.