WO2023051009A1 - 3d模型打印位置的确定方法、装置、设备及存储介质 - Google Patents
3d模型打印位置的确定方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- WO2023051009A1 WO2023051009A1 PCT/CN2022/109078 CN2022109078W WO2023051009A1 WO 2023051009 A1 WO2023051009 A1 WO 2023051009A1 CN 2022109078 W CN2022109078 W CN 2022109078W WO 2023051009 A1 WO2023051009 A1 WO 2023051009A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- model
- printing
- projection
- target
- plane
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
- B29C64/393—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
- B33Y50/02—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/10—Additive manufacturing, e.g. three-dimensional [3D] printing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/18—Manufacturability analysis or optimisation for manufacturability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P10/00—Technologies related to metal processing
- Y02P10/25—Process efficiency
Definitions
- the present application relates to 3D printing technology, in particular to a method, device, equipment and storage medium for determining a printing position of a 3D model.
- 3D printers can quickly print out any complex parts according to the data model file. Due to the advantages of wide application range, fast production speed, and intuitive operation, the application range of 3D printing is becoming wider and wider.
- the current 3D printers can only print one model at a time when slicing the model, and they are printed in the center. Repeated printing at one position of the printing plane will cause wear and tear on the local printing plane, which may cause local height changes of the printing plane. Reduce printing accuracy, or even cause printing failure.
- the first aspect of the embodiment of the present application discloses a method for determining a printing position of a 3D model, including: acquiring a target 3D model selected by a user, and determining the projection of a target area including the target 3D model to a printing plane; judging whether there is stored data ; Wherein, the stored data includes the printing position of the 3D model selected before the target 3D model on the printing plane; if the stored data does not exist, according to the projection, it is determined that the target 3D model is on the printing plane The first printing position of the printing plane; if the stored data exists, then according to the projection and the stored data, determine the second printing position of the target 3D model on the printing plane; wherein, the second printing The location does not intersect with the stored data.
- the determination includes the projection of the target area of the target 3D model to the printing plane, including: determining the target area including the target 3D model according to the bounding box of the target 3D model and the preset print head size area: projecting the target area to obtain a projection of the target area to a printing plane.
- the determining the second printing position of the target 3D model on the printing plane according to the projection and the stored data includes: when the target 3D model is the nth 3D model, n is greater than 1, obtain the maximum coordinate value x n-1 of the printing position of the (n-1)th 3D model in the x - axis direction and the minimum coordinate value y n-1 in the y-axis direction; press the projection from the origin Translate the distance of x n-1 in the x-axis direction, and judge whether the current projection position exceeds the printing plane; if not, then translate the distance of y n-1 in the y-axis direction, and judge whether the current projection position exceeds the printing plane, if No, the current projected position is used as the second printing position of the nth 3D model on the printing plane.
- the printing plane after translating the projection from the origin by a distance of x n-1 in the direction of the x-axis, and judging whether the position of the current projection exceeds the printing plane, it further includes: if yes, obtaining the (n-1)th 3D The maximum coordinate value y n-1 ⁇ of the printing position of the model in the y-axis direction, translate the projection from the origin by y n-1 ⁇ in the y-axis direction, and judge whether the position of the current projection exceeds the printing plane again; if No, the current projected position is used as the second printing position of the nth 3D model on the printing plane.
- the printing plane after translating the projection from the origin by a distance of x n-1 in the direction of the x-axis, and judging whether the location of the current projection exceeds the printing plane, it further includes: if yes, obtaining the first (n-1) 3D The maximum coordinate value y max of the printing position of the model in the y-axis direction; translate the projection from the origin by y max in the y-axis direction, and judge whether the current projection location exceeds the printing plane again; if not, the current projection location position as the second printing position of the nth 3D model on the printing plane.
- the judging whether the current projection position exceeds the printing plane again further includes: if yes, canceling the second printing position of the nth 3D model on the printing plane, and returning a prompt message.
- determining the first printing position of the target 3D model on the printing plane according to the projection includes: coincident a vertex of the projection with the origin of the printing plane, two of the projections The boundary lines coincide with the x-axis and the y-axis of the printing plane respectively, and determine the first printing position of the target 3D model on the printing plane.
- the embodiment of the present application also provides a 3D model printing position determination device, including: a model acquisition module, used to acquire the target 3D model selected by the user, and determine the direction of the target area including the target 3D model to the printing plane
- the projection of the stored data judging module is used to judge whether there is stored data; wherein, the stored data includes the printing position of the 3D model selected before the target 3D model on the printing plane; the first printing position determining module, If the stored data does not exist, determine the first printing position of the target 3D model on the printing plane according to the projection; the second printing position determination module is used to determine the first printing position of the target 3D model according to the stored data if there is the stored data The projection and the stored data determine a second printing position of the target 3D model on the printing plane; wherein, there is no intersection between the second printing position and the stored data.
- the embodiment of the present application also provides a computer device, the device includes: one or more processors; a storage device for storing one or more programs, when the one or more programs are executed The one or more processors are executed, so that the one or more processors implement the method for determining a 3D model printing position as described in any one of the first aspect.
- the embodiment of the present application also provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the method for determining the printing position of a 3D model as described in any one of the first aspects is implemented .
- This application obtains the target 3D model selected by the user, and determines the projection of the target area including the target 3D model; judges whether there is stored data; the stored data includes the printing position of the 3D model selected before the target 3D model; if there is no stored data , according to the projection, determine the first printing position of the target 3D model; if there is stored data, then determine the second printing position of the target 3D model according to the projection and the stored data; and there is no intersection between the second printing position and the stored data,
- the second printing position of the target 3D model is not the same as the printing position of the 3D model selected before the target 3D model, which solves the problem of printing accuracy reduction caused by repeated printing at one position of the printing plane, and realizes the goal of ensuring the printing accuracy of the model Effect.
- FIG. 1A is a schematic flowchart of a method for determining a printing position of a 3D model provided by an embodiment of the present application
- FIG. 1B is a schematic sub-flow diagram of a method for determining a printing position of a 3D model provided by an embodiment of the present application
- Fig. 1C is a schematic sub-flow diagram of a method for determining a printing position of a 3D model provided by an embodiment of the present application
- Fig. 2 is a schematic diagram of a printing plane in a method for determining a printing position of a 3D model provided by an embodiment of the present application;
- FIG. 3 is a schematic diagram of a printing plane in another method for determining a printing position of a 3D model provided by an embodiment of the present application;
- FIG. 4 is a schematic diagram of a printing plane in another method for determining a printing position of a 3D model provided by an embodiment of the present application;
- FIG. 5 is a schematic diagram of a printing plane in another method for determining a printing position of a 3D model provided by an embodiment of the present application
- FIG. 6 is a schematic diagram of a printing plane in another method for determining a printing position of a 3D model provided by an embodiment of the present application
- FIG. 7 is a schematic diagram of a printing plane in another method for determining a printing position of a 3D model provided by an embodiment of the present application.
- FIG. 8 is a schematic structural diagram of a device for determining a 3D model printing position according to an embodiment of the present application.
- FIG. 9 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- Fig. 1A is a schematic flow diagram of a 3D model printing position determination provided by an embodiment of the present application.
- the technical solution of this embodiment is applicable to the single-model printing mode of printing one 3D model at a time, and is also applicable to simultaneously printing multiple 3D models selected by the user.
- the multi-model printing mode of the 3D model, the method can be performed by the 3D model printing position determination device, as shown in Figure 1A, specifically including the following steps:
- Step 110 acquiring the target 3D model selected by the user, and determining the projection of the target area including the target 3D model to the printing plane.
- the printing plane is the projection of the space formed by the printing platform in the slicing software.
- step 110 specifically includes:
- Step 111 Determine a target area including the target 3D model according to the bounding box of the target 3D model and the preset print head size.
- Step 112 Project the target area to obtain a projection of the target area.
- the target 3D model currently selected by the user, and determine the projection of the target area of the model to the printing plane according to the data of the target 3D model, wherein, as shown in Figure 2, the target area consists of the bounding box 11 of the target 3D model and the preset printing
- the size of the print head is 12, specifically, the size of the bounding box 11 of the target 3D model is expanded outward by the print head size 12 to obtain the target area.
- the printing plane in this embodiment is the x-y plane projected by the printing platform in the slicing software, and the target area corresponding to the target 3D model is projected on the printing plane to obtain projection 1 of the target area, and the projection data of the target 3D model is saved.
- the target area of the target 3D model is determined by enlarging the size of the print head outwardly through the size of the bounding box of the target 3D model, which can prevent the target 3D model from contacting other 3D models during printing and ensure the printing safety of the target 3D model.
- Step 120 judging whether there is stored data; wherein, the stored data includes the printing position of the 3D model selected before the target 3D model on the printing plane. According to the judgment result of step 120, step 130 and step 140 are correspondingly executed respectively.
- the user selects the single-model printing mode of printing one 3D model at a time, the user selects the target 3D model as the only model data, and the printing position of the model can be any qualified area on the printing plane;
- the printing position of the model can be any qualified area on the printing plane;
- the multi-model printing mode of a 3D model when the user selects the target 3D model, some areas on the printing plane may have been set as the printing positions of other 3D models.
- the system According to the order in which the user selects the 3D models or the order in which the system automatically arranges, it is necessary Determine in turn the printing positions of multiple 3D models selected by the user on the printing plane; therefore, it is necessary to determine whether there is stored data, wherein the stored data includes the printing positions of the 3D models selected before the target 3D model, and the printing positions of the 3D models are in the form of Coordinates are saved.
- the printing plane and the print head size are determined according to the model of the printer selected by the user.
- the user selects the model of the printer to obtain the length, width and height of the corresponding printing area as X*Y*Z, the length and width of the printing plane as X*Y, and the print head size of the printer ⁇ x* ⁇ y* ⁇ z .
- the length, width and height of the printing area of this model can be obtained as 300mm*300mm*400mm.
- the printing position of the target 3D model on the printing plane can be quickly determined.
- Step 130 if the stored data does not exist, determine a first printing position of the target 3D model on the printing plane according to the projection.
- the stored data does not exist; when the user selects the multi-model printing mode, if the target 3D model selected by the user is the first 3D model in multiple 3D models, there is no stored data Data; according to the projection of the target 3D model, any area on the printing plane can be selected as the first printing position of the target 3D model.
- a vertex of the projection coincides with the origin of the printing plane, and two boundary lines of the projection coincide with the x-axis and y-axis of the printing plane respectively, to determine the first printing position of the target 3D model.
- a vertex of the projection of the target 3D model on the printing plane coincides with the origin of the printing plane, and the two boundary lines of the projection coincide with the x-axis and y-axis of the printing plane respectively to determine the first point of the target 3D model.
- Printing position and then determine the printing position of other 3D models in turn.
- Step 140 If the stored data exists, determine a second printing position of the target 3D model on the printing plane according to the projection and the stored data; wherein, the second printing position is the same as the stored data There is no intersection of data.
- the user selects the multi-model printing mode of printing multiple 3D models at a time, if the selected target 3D model is not the first 3D model, it needs to print according to the projection of the target 3D model on the printing plane and the previously selected 3D model on the printing plane
- the positions jointly determine the second printing position of the target 3D model on the printing plane, and there is no intersection between the second printing position and the stored data, that is, the second printing position of the target 3D model on the printing plane does not coincide with the printing position of the previously selected 3D model .
- step 140 specifically includes the following steps:
- Step 141 when the target 3D model is the nth 3D model, n is greater than 1, obtain the maximum coordinate value x n-1 and the y-axis of the printing position of the (n-1)th 3D model in the x-axis direction The minimum coordinate value y n-1 in the direction.
- Step 142 Translate the projection from the origin by a distance of x n-1 in the direction of the x-axis, and determine whether the location of the current projection exceeds the printing plane. Execute step 143 or step 146 or step 147 according to the judgment result. If the judgment result is no, enter step 143, if the judgment result is yes, enter step 146 or step 147.
- the printing positions are set in the direction of the x-axis on the printing plane.
- the target 3D model selected by the user is the nth 3D model
- the prior The printing position data of a 3D model is to obtain the maximum coordinate value x n-1 in the x-axis direction and the minimum coordinate value y n- 1 in the y-axis direction of the printing position of the (n-1)th 3D model.
- a vertex of the projection 2 of the target 3D model on the printing plane coincides with the origin x 0 of the printing plane, and the two boundary lines of the projection 2 coincide with the printing plane's
- the x-axis and the y-axis coincide, and then translate the distance of x 1 from the origin x 0 of the printing plane 10 in the direction of the x-axis.
- it is necessary to judge whether the position of the projection is The edge on the x-axis beyond the print plane.
- Step 143 and then translate the distance of y n-1 according to the y-axis direction, and judge whether the current projection location exceeds the printing plane. Execute step 144 or step 145 according to the judgment result. If the judgment result is yes, enter step 145 , if the judgment result is no, enter step 144 .
- the position of the current projection does not exceed the printing plane, adjust the setting of the printing position according to the y-axis.
- the position of the current projection is translated by a distance of y n-1 in the direction of the y-axis.
- Step 144 Use the current projected position as the second printing position of the nth 3D model on the printing plane.
- the current projection location does not exceed the printing plane, the current projection location meets the printing requirements of the nth 3D model, and the current projection location is used as the second printing location of the nth 3D model.
- the position of the current projection does not exceed the printing plane, and the position of the current projection 5 is used as the second printing position of the fifth 3D model.
- Step 145 cancel the second printing position of the nth 3D model on the printing plane, and return a prompt message.
- the position of the current projection exceeds the printing plane at this time, although the position of the current projection belongs to the printing plane in the x-axis direction, it exceeds the edge of the printing plane in the y-axis direction. Therefore, adjusting the current projection position again at this time cannot meet the printing requirements, and the printing position of the 3D model set on the printing plane has reached the upper limit.
- Step 146 Acquire the maximum coordinate value y n-1 ⁇ of the printing position of the (n-1)th 3D model in the y-axis direction, translate the projection from the origin by y n-1 ⁇ in the y-axis direction, and determine the current Whether or not the projection is located beyond said print plane again. Execute step 144 or step 145 according to the judgment result. If the judgment result is no, enter step 144, if the judgment result is yes, enter step 145.
- Step 147 Acquire the maximum coordinate value y max of the printing positions of the previous (n-1) 3D models in the y-axis direction; translate the projection from the origin to y max in the y-axis direction, and determine whether the current projection position exceeds the y-axis direction again.
- the print plane Execute step 144 or step 145 according to the judgment result. If the judgment result is no, enter step 144, if the judgment result is yes, enter step 145.
- the first adjustment method is shown in step 146.
- the minimum value of is to ensure that the projection of the target 3D model does not overlap with the 3D model of the previous 3D model in the y-axis direction.
- This method is suitable for the case of printing multiple 3D models of the same size at one time.
- the second adjustment method is shown in step 147. First obtain the maximum coordinate value x n of the projection of the nth 3D model in the x-axis direction, and find the maximum coordinate value y corresponding to the coordinate value x n in the stored data max ; translate the projection from the origin by y max in the direction of the y-axis.
- the projection 4 does not exceed the boundary of the printing plane in the x-axis direction, but in order to ensure that the printing positions are all on the printing plane, after the movement is completed, it is judged whether the position of the current projection exceeds the printing plane, that is, whether the projection is in the y-axis direction Beyond the bounds of the print plane. If the judgment result is no, the current projection location is used as the second printing location of the nth 3D model. If the judgment result is yes, cancel the second printing position of the nth 3D model, and return a prompt message. This method is suitable for the case of printing multiple 3D models of various sizes at one time.
- the prompt message reminds the user that it is impossible to continue adding 3D models, reminds the user that it needs to print multiple times, or the printer starts printing directly according to the 3D model whose printing position has been determined according to the returned prompt information.
- the target 3D model selected by the user by acquiring the target 3D model selected by the user, and determining the projection of the target area including the target 3D model; judging whether there is stored data; the stored data includes the printing position of the 3D model selected before the target 3D model; If there is no storage data, according to the projection, determine the first printing position of the target 3D model; if there is storage data, then determine the second printing position of the target 3D model according to the projection and the storage data; and the second printing position and the storage There is no intersection of data, so the second printing position of the target 3D model is not the same as the printing position of the 3D model selected before the target 3D model, so as to solve the problem of printing accuracy reduction caused by repeated printing at one position of the printing plane, and realize The effect of ensuring the printing accuracy of the model, and at the same time realizing the effect of making full use of the printing plane and improving the printing efficiency.
- it also includes receiving a clearing instruction, clearing the data of the 3D model on the printing plane, and initializing the printing plane.
- the user inputs a clear command through the clear button, and the 3D printer receives the clear command, clears the data of the 3D model on the printing plane, and then receives the user-selected multiple 3D models, rearrange them, determine the printing position of each 3D model, and print a new 3D model.
- FIG. 8 is a schematic structural diagram of an apparatus for determining a printing position of a 3D model according to an embodiment of the present application.
- the 3D model printing position determination device includes:
- the model acquisition module 210 is configured to acquire the target 3D model selected by the user, and determine the projection of the target area including the target 3D model to the printing plane.
- the stored data judging module 220 is configured to judge whether there is stored data; wherein, the stored data includes the printing position of the 3D model selected before the target 3D model on the printing plane. Wherein, the printing plane is determined according to the model of the printer selected by the user.
- the first printing position determining module 230 is configured to determine a first printing position of the target 3D model on the printing plane according to the projection if the stored data does not exist.
- the second printing position determining module 240 is configured to determine a second printing position of the target 3D model on the printing plane according to the projection and the stored data if the stored data exists; wherein, the first There is no intersection between the second printing position and the stored data.
- the target 3D model selected by the user by acquiring the target 3D model selected by the user, and determining the projection of the target area including the target 3D model; judging whether there is stored data; the stored data includes the printing position of the 3D model selected before the target 3D model; If there is no storage data, according to the projection, determine the first printing position of the target 3D model; if there is storage data, then determine the second printing position of the target 3D model according to the projection and the storage data; and the second printing position and the storage There is no intersection of data, so the second printing position of the target 3D model is not the same as the printing position of the 3D model selected before the target 3D model, so as to solve the problem of printing accuracy reduction caused by repeated printing at one position of the printing plane, and realize The effect of ensuring the printing accuracy of the model.
- the model acquisition module 210 includes:
- the target area acquiring unit is configured to determine the target area including the target 3D model according to the bounding box of the target 3D model and the preset print head size.
- a projection determining unit configured to project the target area to obtain a projection of the target area.
- the second printing position determining module 240 includes:
- a coordinate acquisition unit configured to obtain the maximum coordinate value x n-1 of the printing position of the (n-1)th 3D model in the x-axis direction when the target 3D model is the nth 3D model, n is greater than 1 and the minimum coordinate value y n-1 in the y-axis direction.
- the first horizontal movement judging unit is configured to translate the projection from the origin by a distance of x n-1 in the x-axis direction, and judge whether the current projection location exceeds the printing plane.
- the first vertical movement judging unit is configured to translate the distance of y n-1 according to the y-axis direction if the judging result of the first horizontal movement judging unit is No, and judge whether the current projection location exceeds the printing plane.
- the second printing position determination unit is configured to use the current projection position as the second printing position of the nth 3D model if the determination result of the first vertical movement determination unit is negative.
- the canceling unit is configured to cancel the second printing position of the nth 3D model if the judgment result of the first vertical movement judging unit is yes, and return a prompt message.
- the second movement judgment unit is used to obtain the maximum coordinate value y n-1 ⁇ of the printing position of the (n-1)th 3D model in the y-axis direction if the judgment result of the first horizontal movement judgment unit is yes, and set The projection is translated by y n-1 ⁇ from the origin in the y-axis direction, and it is judged whether the position of the current projection exceeds the printing plane again.
- the third movement judgment unit is used to obtain the maximum coordinate value y max of the printing position of the first (n-1) 3D models in the y-axis direction if the judgment result of the first horizontal movement judgment unit is yes; Translate y max from the origin in the y-axis direction, and judge whether the position of the current projection exceeds the printing plane again.
- the device for determining the printing position of a 3D model provided in an embodiment of the present application can execute the method for determining a printing position of a 3D model provided in any embodiment of the present application, and has corresponding functional modules and beneficial effects for executing the method.
- Fig. 9 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- the device includes a processor 300, a memory 310, an input device 320, and an output device 330; the processing in the 3D model printing position determination device
- the number of processors 300 can be one or more, and one processor 300 is taken as an example in FIG. Take connection via bus as an example.
- the memory 310 can be used to store software programs, computer-executable programs and modules, such as program instructions/modules corresponding to the method for determining a 3D model printing position in the embodiment of the present application (for example, 3D model printing position).
- the processor 300 executes various functional applications and data processing of the device by running the software programs, instructions and modules stored in the memory 310 , that is, realizes the above-mentioned method for determining the printing position of the 3D model.
- the memory 310 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application program required by at least one function; the data storage area may store data created according to the use of the terminal, and the like.
- the memory 310 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage devices.
- the memory 310 may further include memory located remotely relative to the processor 300, and these remote memories may be connected to the device through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
- the input device 320 can be used to receive input numbers or character information, and generate key signal input related to user settings and function control of the device.
- the output device 330 may include a display device such as a display screen.
- An embodiment of the present application also provides a storage medium containing computer-executable instructions, the computer-executable instructions are used to execute a method for determining a printing position of a 3D model when executed by a computer processor, the method comprising:
- the stored data includes the printing position of the 3D model selected before the target 3D model on the printing plane;
- the stored data exists, then according to the projection and the stored data, determine a second printing position of the target 3D model on the printing plane; wherein, the second printing position and the stored data do not exist intersection.
- the storage medium containing computer-executable instructions provided in the embodiments of the present application
- the computer-executable instructions are not limited to the method operations described above, and can also perform the 3D model printing position determination provided in any embodiment of the present application. Related operations in the method.
- the present application can be realized by means of software and necessary general-purpose hardware, and of course it can also be realized by hardware, but in many cases the former is a better implementation .
- the technical solution of the present application can be embodied in the form of a software product in essence or the part that contributes to the prior art, and the computer software product can be stored in a computer-readable storage medium, such as a floppy disk of a computer , read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), flash memory (FLASH), hard disk or optical disc, etc., including several instructions to make a computer device (which can be a personal computer) , server, or network device, etc.) execute the method described in each embodiment of the present application.
- a computer-readable storage medium such as a floppy disk of a computer , read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), flash memory (FLASH), hard disk or optical disc, etc.
- the included units and modules are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized;
- the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
Landscapes
- Engineering & Computer Science (AREA)
- Materials Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- Optics & Photonics (AREA)
- Mechanical Engineering (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
Abstract
本申请公开了一种3D模型打印位置确定方法、装置、设备及存储介质。该方法包括:获取用户选择的目标3D模型,并确定包括目标3D模型的目标区域向打印平面的投影;判断是否存在存储数据;若不存在存储数据,根据投影,确定目标3D模型在打印平面的第一打印位置;若存在存储数据,则根据投影和存储数据,确定目标3D模型在打印平面的第二打印位置;其中,第二打印位置与存储数据不存在交集,这样目标3D模型的第二打印位置与在目标3D模型之前选择的3D模型的打印位置不是一个位置,解决重复在打印平面的一个位置打印,导致的打印精度降低的问题,实现保证模型打印精度的效果。
Description
本申请涉及3D打印技术,具体涉及一种3D模型打印位置的确定方法、装置、设备及存储介质。
3D打印机可以按照数据模型文件快速打印出任意复杂的零件,由于具有适用范围广、生产速度快、操作直观等优点,3D打印应用范围越来越宽广。
目前的3D打印机对模型切片打印,每次只能打印一个模型,且都是居中打印,重复在打印平面的一个位置打印,会造成局部打印平面的磨损,可能会导致打印平面局部的高度变化,降低打印精度,甚至导致打印失败。
发明内容
鉴于以上内容,有必要提出一种3D模型打印位置确定方法、装置、设备及存储介质,以实现保证打印精度的效果。
本申请实施例第一方面公开了一种3D模型打印位置确定方法,包括:获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影;判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置;若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置;若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
可选的,所述确定包括所述目标3D模型的目标区域向打印平面的投影,包括:根据所述目标3D模型的包围盒和预设的打印喷头尺寸,确定包括所述目标3D模型的目标区域;将所述目标区域进行投影,得到所述目标区域向打印平面的投影。
可选的,所述根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置,包括:当所述目标3D模型为第n个3D模型时,n大于1,获取第(n-1)个3D模型的打印位置在x轴方向上的最大坐标值x
n-1和y轴方向上的最小坐标值y
n-1;将所述投影从原点按x轴方向平移x
n-1的距离,判断当前投影所在位置是否超出打印平面;若否,再按y轴方向平移y
n-1的距离,判断当前投影所在位置是否超出所述打印平面,若否,将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
可选的,在所述将所述投影从原点按x轴方向平移x
n-1的距离,判断当前投影所在位置是否超出打印平面之后,还包括:若是,获取第(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y
n-1`,将所述投影从原点按y轴方向平移y
n-1`,判断当前投影所在位置是否再次超出所述打印平面;若否,将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
可选的,在所述将所述投影从原点按x轴方向平移x
n-1的距离,判断当前投影所在位置是否超出打印平面之后,还包括:若是,获取前(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y
max;将所述投影从原点按y轴方向平移y
max,判断当前投影所在位置是否再次超出所述打印平面;若否,将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
可选的,所述判断当前投影所在位置是否再次超出所述打印平面,还包括:若是,则取消第n个3D模型在所述打印平面的第二打印位置,并返回提示信息。
可选的,所述根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置,包括:将所述投影的一个顶点与打印平面的原点重合,所述投影的两条边界线分别与打印平面的x轴和y轴重合,确定所述目标3D模型在所述打印平面的第一打印位置。
第二方面,本申请实施例还提供了一种3D模型打印位置确定装置,包括:模型获取模块,用于获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影;存储数据判断模块,用于判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置;第一打印位置确定模块,用于若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置;第二打印位置确定模块,用于若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
第三方面,本申请实施例还提供了一种计算机设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一所述的3D模型打印位置确定方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中任一所述的3D模型打印位置确定方法。
本申请通过获取用户选择的目标3D模型,并确定包括目标3D模型的目标区域的投影;判断是否存在存储数据;存储数据包括在目标3D模型之前选择的3D模型的打印位置;若不存在存储数据,根据投影,确定目标3D模型的第一打印位置;若存在存储数据,则根据投影和所述存储数据,确定目标3D模型的第二打印位置;而第二打印位置与存储数据不存在交集,这样目标3D模型的第二打印位置与在目标3D模型之前选择的3D模型的打印位置不是一个位置,解决重复在打印平面的一个位置打印,导致的打印精度降低的问题,实现保证模型打印精度的效果。
图1A为本申请一实施例提供的一种3D模型打印位置确定方法的流程示意图;
图1B为本申请一实施例提供的一种3D模型打印位置确定方法的子流程示意图;
图1C为本申请一实施例提供的一种3D模型打印位置确定方法的子流程示意图;
图2为本申请一实施例提供的一种3D模型打印位置确定方法中打印平面的示意图;
图3为本申请一实施例提供的另一种3D模型打印位置确定方法中打印平面的示意图;
图4为本申请一实施例提供的另一种3D模型打印位置确定方法中打印平面的示意 图;
图5为本申请一实施例提供的另一种3D模型打印位置确定方法中打印平面的示意图;
图6为本申请一实施例提供的另一种3D模型打印位置确定方法中打印平面的示意图;
图7为本申请一实施例提供的另一种3D模型打印位置确定方法中打印平面的示意图;
图8为本申请一实施例提供了一种3D模型打印位置确定装置的结构示意图;
图9为本申请一实施例提供的一种计算机设备的结构示意图。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
图1A为本申请一实施例提供的一种3D模型打印位置确定的流程示意图,本实施例的技术方案适用于一次打印一个3D模型的单模型打印模式,也适用于同时打印用户选择的多个3D模型的多模型打印模式,该方法可以由3D模型打印位置确定装置来执行,如图1A所示,具体包括如下步骤:
步骤110、获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影。
根据所述目标3D模型的包围盒,确定包括所述目标3D模型的目标区域;将所述目标区域向打印平面进行投影,得到所述目标区域的投影。其中,打印平面是打印平台在切片软件中形成的空间的投影。
可选的,步骤110具体包括:
步骤111、根据所述目标3D模型的包围盒和预设的打印喷头尺寸,确定包括所述目标3D模型的目标区域。
步骤112、将所述目标区域进行投影,得到所述目标区域的投影。
获取用户当前选择的目标3D模型,根据目标3D模型的数据确定该模型的目标区域向打印平面的投影,其中,如图2所示,目标区域由目标3D模型的包围盒11和预设的打印喷头尺寸12构成,具体为目标3D模型的包围盒11的尺寸向外扩大打印喷头尺寸12得到目标区域。本实施例中的打印平面为打印平台在切片软件中投影得到的x-y平面,将目标3D模型对应的目标区域在打印平面进行投影,得到目标区域的投影1,保存目标3D模型的投影数据。
通过目标3D模型的包围盒的尺寸向外扩大打印喷头尺寸确定目标3D模型的目标区域,可以避免目标3D模型在打印时与其他3D模型接触,保证了目标3D模型的打印安全。
步骤120、判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置。根据步骤120的判断结果,分别对应执行步骤130和步骤140。
当用户选择一次打印一个3D模型的单模型打印模式时,用户选择目标3D模型为唯一的模型数据,模型的打印位置可以为打印平面上任意一个符合条件的区域;当用户选择一次打印选择的多个3D模型的多模型打印模式时,用户选择目标3D模型时,打印平面上的部分区域可能已设定为其他3D模型的打印位置,根据用户选择3D模型的顺序或系统自动排列的顺序,需要依次确定用户选择的多个3D模型在打印平面的打印位置;因此需要判断是否存在存储数据,其中,存储数据包括在所述目标3D模型之前选择的3D模型的打印位置,3D模型的打印位置以坐标形式保存。
其中,所述打印平面和打印头尺寸根据用户选择的打印机的型号确定。如图2所示,用户选择打印机的型号,即可以获得对应的打印区域的长宽高为X*Y*Z,打印平面的长宽为X*Y,打印机的打印头尺寸Δx*Δy*Δz。示例性的,本实施例选择Ender 3机型,则可以获得该机型的打印区域长宽高为300mm*300mm*400mm。
通过判断是否存在存储数据,确定用户所选择打印模式,从而快速的确定目标3D模型在打印平面的打印位置。
步骤130、若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置。
当用户选择单模型打印模式时,不存在所述存储数据;当用户选择多模型打印模式时,若用户选择的目标3D模型为多个3D模型中的第一个3D模型时,也不存在存储数据;根据目标3D模型的投影可以在打印平面上选择任意区域作为目标3D模型的第一打印位置。
可选的,将所述投影的一个顶点与打印平面的原点重合,所述投影的两条边界线分别与打印平面的x轴和y轴重合,确定所述目标3D模型的第一打印位置。
如图2所示,将目标3D模型在打印平面的投影的一个顶点与打印平面的原点重合,投影的两条边界线分别与打印平面的x轴和y轴重合,确定目标3D模型的第一打印位置,而后依次确定其他3D模型的打印位置,在用户选择多模型打印模式时,有利于充分利用打印平面,提高同时打印模型的数量,提高模型的打印效率。
进一步的,确定目标3D模型的第一打印位置后,记录第一打印位置在x轴方向上的最大坐标值x
n,在y轴方向上的最小坐标值y
n和最大坐标值y
n`,将第一打印位置以坐标形式进行保存。
步骤140、若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
当用户选择一次打印多个3D模型的多模型打印模式时,选择的目标3D模型非第一个3D模型时,需要根据目标3D模型在打印平面的投影和之前选择的3D模型在打印平面的打印位置共同确定目标3D模型在打印平面的第二打印位置,并且第二打印位置与存储数据不存在交集,即目标3D模型在打印平面的第二打印位置与之前选择的3D模型的打印位置不重合。
可选的,如图1B和图1C所示,步骤140具体包括以下步骤:
步骤141、当所述目标3D模型为第n个3D模型时,n大于1,获取第(n-1)个3D模型的打印位置在x轴方向上的最大坐标值x
n-1和y轴方向上的最小坐标值y
n-1。
步骤142、将所述投影从原点按x轴方向平移x
n-1的距离,判断当前投影所在位置 是否超出打印平面。根据判断结果执行步骤143或步骤146或步骤147。若判断结果为否,进入步骤143,若判断结果为是,进入步骤146或步骤147。
如图3所示,在确定多个3D模型的打印位置时,在打印平面上优先按x轴方向进行打印位置的设定,当用户选择的目标3D模型为第n个3D模型时,获取前一个3D模型的打印位置数据,即获取第(n-1)个3D模型的打印位置在x轴方向上的最大坐标值x
n-1和y轴方向上的最小坐标值y
n-1。示例性的,当n=2时,如图3所示,首先将目标3D模型在打印平面的投影2的一个顶点与打印平面的原点x
0重合,投影2的两条边界线与打印平面的x轴和y轴重合,再从打印平面10的原点x
0按x轴方向平移x
1的距离,为了保证打印位置均在打印平面上,在移动完成后,需要判断此时投影所在的位置是否超出打印平面的在x轴上的边缘。
步骤143、再按y轴方向平移y
n-1的距离,判断当前投影所在位置是否超出所述打印平面。根据判断结果执行步骤144或步骤145。若判断结果为是,进入步骤145,若判断结果为否,进入步骤144。
若当前投影所在位置未超出打印平面,再按y轴进行打印位置调整设置,具体为将当前投影所在位置再按y轴方向平移y
n-1的距离。示例性的,当n=5时,如图4所示,将目标3D模型的投影5从打印平面10的原点x
0按x轴方向平移x
4的距离,再将当前投影所在位置再按y轴方向平移y
4的距离。为了保证打印位置均在打印平面上,在移动完成后,需要判断此时投影所在的位置是否超出打印平面的在y轴上的边缘。
步骤144、将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
若当前投影所在位置未超出打印平面,则当前投影所在位置满足第n个3D模型的打印需求,将当前投影所在位置作为第n个3D模型的第二打印位置。示例性的,当n=5时,如图4所示,当前投影所在位置未超出打印平面,当前投影5所在位置作为第5个3D模型的第二打印位置。
步骤145、取消第n个3D模型在所述打印平面的第二打印位置,并返回提示信息。
若此时当前投影所在位置超出打印平面,虽然当前投影所在位置在x轴方向属于打印平面,但在y轴方向超出打印平面的边缘,由于打印位置的确定为优先按x轴方向进行设定,因此,此时再次调整当前投影所在位置也无法满足打印要求,此时打印平面上所设定的3D模型的打印位置已经达到上限。示例性的,当n=7时,如图4所示,当前投影所在位置在x轴方向属于打印平面,但在y轴方向超出打印平面的边缘,无法再添加3D模型。因此,取消第n个3D模型的第二打印位置,并返回提示信息,提醒用户无法继续添加3D模型。
步骤146、获取第(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y
n-1`,将所述投影从原点按y轴方向平移y
n-1`,判断当前投影所在位置是否再次超出所述打印平面。根据判断结果执行步骤144或步骤145。若判断结果为否,进入步骤144,若判断结果为是,进入步骤145。
步骤147、获取前(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y
max;将所述投影从原点按y轴方向平移y
max,判断当前投影所在位置是否再次超出所述打印平面。根据判断结果执行步骤144或步骤145。若判断结果为否,进入步骤144,若判断结果为是,进入步骤145。
如图5所示,若此时当前投影所在位置在x轴方向上超出打印平面,则打印平面上 的当前位置无法满足3D模型的打印设置,则需要先调整当前投影在x轴方向上的位置,再按y轴方向设定打印位置。
调整当前投影在x轴方向上的位置存在两种调整方式,第一种调整方式如步骤146所示,先获取第(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y
n-1`,将所述投影从原点按y轴方向平移y
n-1`,即基于前一个3D模型的打印位置在y轴方向的最大值确定目标3D模型的投影在y轴方向上的最小值,保证目标3D模型的投影与前一个3D模型同行排列的3D模型在y轴方向上不存在交集。示例性的,如图6所示,n=4时,先获取第3个3D模型的打印位置在y轴方向上的最大坐标值y
3`,将投影从原点按y轴方向平移y
3`,得到当前投影4。此时投影4在x轴方向不超过打印平面的边界,但为了保证打印位置均在打印平面上,在移动完成后,判断当前投影所在位置是否超出所述打印平面,即投影在y轴方向是否超出打印平面的边界。若判断结果为否,如图6所示,将当前投影4所在位置作为第4个3D模型的第二打印位置。若判断结果为是,如图4所示,n=7时,当前投影所在位置在y轴方向超出打印平面的边界,则取消第7个3D模型的第二打印位置,并返回提示信息。此方法适用于一次打印的多个大小相同的3D模型的情况。
第二种调整方式如步骤147所示,先获取第n个3D模型的投影在x轴方向上的最大坐标值x
n,在所述存储数据中查找与坐标值x
n对应的最大坐标值y
max;将所述投影从原点按y轴方向平移y
max。由于当前投影在x轴方向上的最大坐标值x
n已超过打印平面,因此,如图7所示,在存储数据中找到对应的最大坐标值y
max即为所有之前的3D模型的打印位置在y轴方向的最大值,将投影从原点按y轴方向平移y
max,保证目标3D模型的投影4与存储数据中的各3D模型在y轴方向上不存在交集。此时投影4在x轴方向不超过打印平面的边界,但为了保证打印位置均在打印平面上,在移动完成后,判断当前投影所在位置是否超出所述打印平面,即投影在y轴方向是否超出打印平面的边界。若判断结果为否,将当前投影所在位置作为第n个3D模型的第二打印位置。若判断结果为是,则取消第n个3D模型的第二打印位置,并返回提示信息。此方法适用于一次打印的多个大小各异的3D模型的情况。
提示信息提醒用户无法继续添加3D模型,提醒用户需要分多次打印,或者打印机根据返回提示信息直接按已确定打印位置的3D模型开始打印。
本实施例的技术方案,通过获取用户选择的目标3D模型,并确定包括目标3D模型的目标区域的投影;判断是否存在存储数据;存储数据包括在目标3D模型之前选择的3D模型的打印位置;若不存在存储数据,根据投影,确定目标3D模型的第一打印位置;若存在存储数据,则根据投影和所述存储数据,确定目标3D模型的第二打印位置;而第二打印位置与存储数据不存在交集,这样目标3D模型的第二打印位置与在目标3D模型之前选择的3D模型的打印位置不是一个位置,解决重复在打印平面的一个位置打印,导致的打印精度降低的问题,实现保证模型打印精度的效果,同时实现充分利用打印平面,提高打印效率的效果。
在上述技术方案的基础上,还包括接收清除指令,对打印平面上的3D模型的数据进行清除,对打印平面进行初始化。
在一次打印完成后,在已移除所有打印完成的3D模型时,用户通过清除按钮输入清除指令,3D打印机接收清除指令,将打印平面上的3D模型的数据进行清除,再接收用户选择的多个3D模型,重新进行排列,确定各个3D模型的打印位置,进行新一次的 3D模型打印。
图8为本申请一实施例提供了一种3D模型打印位置确定装置的结构示意图。
如图8所示,3D模型打印位置确定装置包括:
模型获取模块210,用于获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影。
存储数据判断模块220,用于判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置。其中,打印平面根据用户选择的打印机的型号确定。
第一打印位置确定模块230,用于若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置。
第二打印位置确定模块240,用于若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
本实施例的技术方案,通过获取用户选择的目标3D模型,并确定包括目标3D模型的目标区域的投影;判断是否存在存储数据;存储数据包括在目标3D模型之前选择的3D模型的打印位置;若不存在存储数据,根据投影,确定目标3D模型的第一打印位置;若存在存储数据,则根据投影和所述存储数据,确定目标3D模型的第二打印位置;而第二打印位置与存储数据不存在交集,这样目标3D模型的第二打印位置与在目标3D模型之前选择的3D模型的打印位置不是一个位置,解决重复在打印平面的一个位置打印,导致的打印精度降低的问题,实现保证模型打印精度的效果。
在上述实施例的基础上,可选的,模型获取模块210包括:
目标区域获取单元,用于根据所述目标3D模型的包围盒和预设的打印喷头尺寸,确定包括所述目标3D模型的目标区域。
投影确定单元,用于将所述目标区域进行投影,得到所述目标区域的投影。
可选的,第二打印位置确定模块240包括:
坐标获取单元,用于当所述目标3D模型为第n个3D模型时,n大于1,获取第(n-1)个3D模型的打印位置在x轴方向上的最大坐标值x
n-1和y轴方向上的最小坐标值y
n-1。
第一水平移动判断单元,用于将所述投影从原点按x轴方向平移x
n-1的距离,判断当前投影所在位置是否超出打印平面。
第一竖直移动判断单元,用于若第一水平移动判断单元的判断结果为否,再按y轴方向平移y
n-1的距离,判断当前投影所在位置是否超出所述打印平面。
第二打印位置确定单元,用于若第一竖直移动判断单元的判断结果为否,将当前投影所在位置作为第n个3D模型的第二打印位置。
取消单元,用于若第一竖直移动判断单元的判断结果为是,则取消第n个3D模型的第二打印位置,并返回提示信息。
第二移动判断单元,用于若第一水平移动判断单元的判断结果为是,获取第(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y
n-1`,将所述投影从原点按y轴方向平移y
n-1`,判断当前投影所在位置是否再次超出所述打印平面。
第三移动判断单元,用于若第一水平移动判断单元的判断结果为是,获取前(n-1) 个3D模型的打印位置在y轴方向上的最大坐标值y
max;将所述投影从原点按y轴方向平移y
max,判断当前投影所在位置是否再次超出所述打印平面。
本申请实施例所提供的3D模型打印位置确定装置可执行本申请任意实施例所提供的3D模型打印位置确定方法,具备执行方法相应的功能模块和有益效果。
图9为本申请一实施例提供的一种计算机设备的结构示意图,如图9所示,该设备包括处理器300、存储器310、输入装置320和输出装置330;3D模型打印位置确定设备中处理器300的数量可以是一个或多个,图9中以一个处理器300为例;设备中的处理器300、存储器310、输入装置320和输出装置330可以通过总线或其他方式连接,图9中以通过总线连接为例。
存储器310作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的3D模型打印位置确定方法对应的程序指令/模块(例如,3D模型打印位置确定装置中的模型获取模块210、存储数据判断模块220、第一打印位置确定模块230和第二打印位置确定模块240)。处理器300通过运行存储在存储器310中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的3D模型打印位置确定方法。
存储器310可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器310可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器310可进一步包括相对于处理器300远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置320可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置330可包括显示屏等显示设备。
本申请一实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种3D模型打印位置确定方法,该方法包括:
获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影;
判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置;
若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置;
若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本申请任意实施例所提供的3D模型打印位置确定方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本申请可 借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
值得注意的是,上述3D模型打印位置确定装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (10)
- 一种3D模型打印位置的确定方法,其特征在于,所述方法包括:获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影;判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置;若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置;若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
- 根据权利要求1所述的3D模型打印位置的确定方法,其特征在于,所述确定包括所述目标3D模型的目标区域向打印平面的投影,包括:根据所述目标3D模型的包围盒和预设的打印喷头尺寸,确定包括所述目标3D模型的目标区域;将所述目标区域进行投影,得到所述目标区域向打印平面的投影。
- 根据权利要求1所述的3D模型打印位置的确定方法,其特征在于,所述根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置,包括:当所述目标3D模型为第n个3D模型时,n大于1,获取第(n-1)个3D模型的打印位置在x轴方向上的最大坐标值x n-1和y轴方向上的最小坐标值y n-1;将所述投影从原点按x轴方向平移x n-1的距离,判断当前投影所在位置是否超出打印平面;若否,再按y轴方向平移y n-1的距离,判断当前投影所在位置是否超出所述打印平面,若否,将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
- 根据权利要求3所述的3D模型打印位置的确定方法,其特征在于,在所述将所述投影从原点按x轴方向平移x n-1的距离,判断当前投影所在位置是否超出打印平面之后,还包括:若是,获取第(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y n-1`,将所述投影从原点按y轴方向平移y n-1`,判断当前投影所在位置是否再次超出所述打印平面;若否,将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
- 根据权利要求3所述的3D模型打印位置的确定方法,其特征在于,在所述将所述投影从原点按x轴方向平移x n-1的距离,判断当前投影所在位置是否超出打印平面之后,还包括:若是,获取前(n-1)个3D模型的打印位置在y轴方向上的最大坐标值y max;将所述投影从原点按y轴方向平移y max,判断当前投影所在位置是否再次超出所述打印平面;若否,将当前投影所在位置作为第n个3D模型在所述打印平面的第二打印位置。
- 根据权利要求4或权利要求5所述的3D模型打印位置的确定方法,其特征在于,所述判断当前投影所在位置是否再次超出所述打印平面,还包括:若是,则取消第n个3D模型的第二打印位置,并返回提示信息。
- 根据权利要求1所述的3D模型打印位置的确定方法,其特征在于,所述根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置,包括:将所述投影的一个顶点与打印平面的原点重合,所述投影的两条边界线分别与打印平面的x轴和y轴重合,确定所述目标3D模型在所述打印平面的第一打印位置。
- 一种3D模型打印位置的确定装置,其特征在于,包括:模型获取模块,用于获取用户选择的目标3D模型,并确定包括所述目标3D模型的目标区域向打印平面的投影;存储数据判断模块,用于判断是否存在存储数据;其中,所述存储数据包括在所述目标3D模型之前选择的3D模型在所述打印平面的打印位置;第一打印位置确定模块,用于若不存在所述存储数据,根据所述投影,确定所述目标3D模型在所述打印平面的第一打印位置;第二打印位置确定模块,用于若存在所述存储数据,则根据所述投影和所述存储数据,确定所述目标3D模型在所述打印平面的第二打印位置;其中,所述第二打印位置与所述存储数据不存在交集。
- 一种计算机设备,其特征在于,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至权利要求7中任一所述的3D模型打印位置的确定方法。
- 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至权利要求7中任一所述的3D模型打印位置的确定方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP22874405.8A EP4410518A4 (en) | 2021-09-30 | 2022-07-29 | METHOD AND APPARATUS FOR DETERMINING A 3D MODEL PRINTING POSITION, DEVICE AND RECORDING MEDIUM |
| US18/696,928 US20250033290A1 (en) | 2021-09-30 | 2022-07-29 | Method and device for determining print position of 3d model, computer device, and computer storage medium |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111162102.X | 2021-09-30 | ||
| CN202111162102.XA CN113799397B (zh) | 2021-09-30 | 2021-09-30 | 3d模型打印位置的确定方法、装置、设备及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023051009A1 true WO2023051009A1 (zh) | 2023-04-06 |
Family
ID=78897271
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/109078 Ceased WO2023051009A1 (zh) | 2021-09-30 | 2022-07-29 | 3d模型打印位置的确定方法、装置、设备及存储介质 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20250033290A1 (zh) |
| EP (1) | EP4410518A4 (zh) |
| CN (1) | CN113799397B (zh) |
| WO (1) | WO2023051009A1 (zh) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113799397B (zh) * | 2021-09-30 | 2023-11-03 | 深圳市创想三维科技股份有限公司 | 3d模型打印位置的确定方法、装置、设备及存储介质 |
| CN114750410B (zh) * | 2022-04-08 | 2025-07-22 | 上海轮廓科技有限公司 | 用于3d打印的方法、装置、设备、存储介质和程序产品 |
| CN115195117B (zh) * | 2022-06-09 | 2024-04-16 | 深圳市纵维立方科技有限公司 | 一种3d打印机的调平控制方法、3d打印机及存储介质 |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090130449A1 (en) * | 2007-10-26 | 2009-05-21 | Envisiontec Gmbh | Process and freeform fabrication system for producing a three-dimensional object |
| CN104210107A (zh) * | 2014-09-04 | 2014-12-17 | 王跃宣 | 双打印头的3d打印机的打印区域控制方法、打印方法 |
| JP2015145327A (ja) * | 2014-02-03 | 2015-08-13 | 伊藤 幸男 | 立体造形物の溶融積層造形法と立体造形物の溶融積層造形装置とこの立体造形物 |
| US20180133969A1 (en) * | 2015-07-31 | 2018-05-17 | Hewlett-Packard Development Company, L.P. | Parts arrangement determination for a 3d printer build envelope |
| CN109435227A (zh) * | 2018-12-27 | 2019-03-08 | 浙江大学 | 多模型三维打印装置和方法 |
| US20190104288A1 (en) * | 2017-09-29 | 2019-04-04 | Young Optics Inc. | Three-dimensional printing system and fabrication method thereof |
| CN113232303A (zh) * | 2021-05-26 | 2021-08-10 | 深圳市创想三维科技有限公司 | 三维模型支撑的生成方法、装置、计算机设备及存储介质 |
| CN113334767A (zh) * | 2021-06-16 | 2021-09-03 | 上海联泰科技股份有限公司 | 3d打印方法、设备、数据处理方法、系统及存储介质 |
| CN113799397A (zh) * | 2021-09-30 | 2021-12-17 | 深圳市创想三维科技股份有限公司 | 3d模型打印位置的确定方法、装置、设备及存储介质 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105931296A (zh) * | 2016-04-19 | 2016-09-07 | 中山大学 | 一种基于轮廓的3d打印物体的快速排样方法及其装置 |
| US10399280B1 (en) * | 2016-04-29 | 2019-09-03 | The Administrators Of The Tulane Educational Fund | Method and system for rapid and efficient three-dimensional printing |
| EP3681701A4 (en) * | 2018-01-19 | 2021-05-05 | Hewlett-Packard Development Company, L.P. | 3D COMPARTMENT POSITIONING |
| CN111382485A (zh) * | 2020-03-24 | 2020-07-07 | 上海漫格科技有限公司 | 一种基于三维打印的三维模型二维嵌套摆放方法 |
| CN113021900B (zh) * | 2021-03-19 | 2022-09-27 | 山东白令三维科技有限公司 | 一种3d打印中零件模型摆放方法及相关装置 |
-
2021
- 2021-09-30 CN CN202111162102.XA patent/CN113799397B/zh active Active
-
2022
- 2022-07-29 EP EP22874405.8A patent/EP4410518A4/en active Pending
- 2022-07-29 WO PCT/CN2022/109078 patent/WO2023051009A1/zh not_active Ceased
- 2022-07-29 US US18/696,928 patent/US20250033290A1/en active Pending
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090130449A1 (en) * | 2007-10-26 | 2009-05-21 | Envisiontec Gmbh | Process and freeform fabrication system for producing a three-dimensional object |
| JP2015145327A (ja) * | 2014-02-03 | 2015-08-13 | 伊藤 幸男 | 立体造形物の溶融積層造形法と立体造形物の溶融積層造形装置とこの立体造形物 |
| CN104210107A (zh) * | 2014-09-04 | 2014-12-17 | 王跃宣 | 双打印头的3d打印机的打印区域控制方法、打印方法 |
| US20180133969A1 (en) * | 2015-07-31 | 2018-05-17 | Hewlett-Packard Development Company, L.P. | Parts arrangement determination for a 3d printer build envelope |
| US20190104288A1 (en) * | 2017-09-29 | 2019-04-04 | Young Optics Inc. | Three-dimensional printing system and fabrication method thereof |
| CN109435227A (zh) * | 2018-12-27 | 2019-03-08 | 浙江大学 | 多模型三维打印装置和方法 |
| CN113232303A (zh) * | 2021-05-26 | 2021-08-10 | 深圳市创想三维科技有限公司 | 三维模型支撑的生成方法、装置、计算机设备及存储介质 |
| CN113334767A (zh) * | 2021-06-16 | 2021-09-03 | 上海联泰科技股份有限公司 | 3d打印方法、设备、数据处理方法、系统及存储介质 |
| CN113799397A (zh) * | 2021-09-30 | 2021-12-17 | 深圳市创想三维科技股份有限公司 | 3d模型打印位置的确定方法、装置、设备及存储介质 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4410518A4 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20250033290A1 (en) | 2025-01-30 |
| CN113799397B (zh) | 2023-11-03 |
| EP4410518A1 (en) | 2024-08-07 |
| EP4410518A4 (en) | 2025-10-01 |
| CN113799397A (zh) | 2021-12-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2023051009A1 (zh) | 3d模型打印位置的确定方法、装置、设备及存储介质 | |
| CN109226759B (zh) | 铺粉式激光3d打印的扫描路径设置方法、装置及控制设备 | |
| JP7613071B2 (ja) | 画像検査装置、及び画像検査プログラム | |
| US12361670B2 (en) | Image processing device, image processing method, moving device, and storage medium | |
| WO2023005852A1 (zh) | 3d打印文件的生成方法、装置、计算机设备和存储介质 | |
| CN111833399A (zh) | 基于鱼眼图像的目标检测方法及相关设备 | |
| US20200380250A1 (en) | Image processing method and apparatus, and computer storage medium | |
| CN113759342A (zh) | 一种激光雷达的扫描方法、装置、计算机设备和存储介质 | |
| WO2023098338A1 (zh) | 一种3d打印文件的生成方法、装置、设备及存储介质 | |
| WO2025107804A1 (zh) | 基于3d打印设备的模型打印方法、电子设备及存储介质 | |
| CN111638844A (zh) | 截屏方法、装置及电子设备 | |
| CN113538623B (zh) | 确定目标图像的方法、装置、电子设备及存储介质 | |
| JP3990147B2 (ja) | 投影制御処理装置およびコンピュータプログラム | |
| CN113421329A (zh) | 一种三维模型的生成方法、系统及装置 | |
| CN113836606A (zh) | 模型支撑点的确定方法、装置、设备及存储介质 | |
| CN113379763A (zh) | 图像数据处理方法、生成模型的方法及图像分割处理方法 | |
| CN117370104A (zh) | 一种操作记录处理方法、装置、计算机设备及存储介质 | |
| CN114842496A (zh) | 图档分区方法、激光加工方法、装置及存储介质 | |
| US10679409B2 (en) | Three-dimensional model creating device | |
| CN116643538A (zh) | 一种孔面加工的刀具轨迹生成方法、装置、设备及介质 | |
| JP2886702B2 (ja) | アウトラインフォント処理装置 | |
| CN112991221B (zh) | 用于对异形定制区域的uv展开图进行矫正的方法及装置 | |
| CN119131319B (zh) | 模型动态遮挡检测与调整方法、系统、存储介质及设备 | |
| US9761029B2 (en) | Display three-dimensional object on browser | |
| CN114491701B (zh) | 界面元素防碰撞方法、提供界面的方法及系统 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22874405 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18696928 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2022874405 Country of ref document: EP Effective date: 20240430 |