ABSTRACT
Abstract
A system and a method visualize three dimensional (3D) printability of a 3D model. A 3D printing process of the 3D model is simulated to generate a layered 3D model describing the 3D model as printed. A visual rendering of the layered 3D model is generated, and the visual rendering of the layered 3D model is displayed on a display device.
Description
BACKGROUND
The present application relates generally to design and manufacturing. It finds particular application in conjunction with three dimensional (3D) printing, and will be described with particular reference thereto. However, it is to be appreciated that the present application is also amenable to other like applications.
3D printing, also known as additive or layered manufacturing, is the process of building 3D solid shapes by accumulating material laid out in cross sectional layers. The printing process is driven by the controlled planar translation of a print head in stacked layers that determines the spatial accumulation of material. Depending on the process, the print head typically either deposits material (e.g., in fused deposition modeling (FDM)), cures powder by applying a focused laser (e.g., in selective laser sintering (SLS) and stereolithography (SLA)), sprays liquid binding onto particles (e.g., in inkjet printing), or applies some combination of these methods.
Over the last two decades, the quality and speed of 3D printers has improved, design software for 3D printers has improved, and the costs of 3D printers have fallen. Compared to conventional manufacturing, 3D printing now includes a more automated nature in the manufacturing process, and a higher range of complexity in parts that can be produced. These advantages have led to increased adoption by eclectic groups of users who are not just using 3D printed parts as prototypes, but also as final products in a wide variety of applications ranging from clothing and art to prosthetics and topologically optimized functional parts. Hence, the aesthetic qualities and visual properties of the output of a 3D printing process are increasingly important.
Unfortunately, the democratization of additive manufacturing coupled with the feasibility of producing complex geometries has led to the widespread but often erroneous belief among many users that any model that can be designed in a computer-aided design (CAD) system can be manufactured using a 3D printer. In reality, the quality of a printed model is sensitive to a combination of the chosen build orientation, material, and printer parameters. Poor understanding of how the printing parameters affect the printed model in relation to the original model often leads to failures that are only apparent after printing, even to experts. For example, a home 3D printer user will often have to print multiple attempts in order to get the desired output. As another example, service providers for 3D printed parts often have significant scrap from print failures that are a result of this poor understanding.
Printer resolution in the stacking direction dictates the deviation from the intended shape due to stair stepping artifacts in the build, and parameters such as the nozzle diameter in FDM or the beam width and/or offset in SLS influence the resolution of the smallest feature printable by the translating print head. Furthermore, the printed size of structures, such as thin walls, bridges, and spikes, affect the integrity of these structures. The printed size is also influenced by printer resolution. Hence, 3D printer manufacturers often recommend minimum material-specific sizes for these structures. The various resolutions and minimum size recommendations mentioned are unrelated to the numerical resolution chosen to triangulate solid models for representation in a stereolithography (STL) file format. This lack of coordination between the printer-related resolutions/minimum-sizes and the numerical resolutions of the STL file leads to the discrepancies between the final 3D printed object and the designed CAD model.
Users often attempt to manually predict and correct defects or deficiencies of printed parts relative to corresponding CAD models with design heuristics and rules. Predicting and correcting defects or deficiencies saves time, material, energy, and labor by not producing parts from designs with unexpected flaws that manifest themselves in the manufacturing process. However, the ability to manually predict and correct defects or deficiencies is becoming increasingly difficult as the number of printers, materials, and manufacturing services available grows.
Existing software solutions for previewing a 3D model (that is intended to be 3D printed) show the original 3D model without showing any differences that might occur due to the 3D printing process. No geometric differences are shown, and no simulation of the texture of the 3D printed object from the layered nature of the process is shown. Also, no realistic rendering of the material is shown. Typically, photos of example objects printed using specific 3D printers are available for reference, but no such photo may exist for the specific part the user intends to print.
Further, existing software to analyze and prepare models for 3D printing are often intended to accompany a specific printer (e.g. MAKERWARE for the MAKERBOT printer, OBJET STUDIO for the OBJET line of printers from STRATASYS) and typically enable some combination of model cleanup, build orientation optimization, and tool path generation. Sometimes, computational support is further provided to hollow and thicken models to minimize material wastage and reinforce thin walls.
Model cleanup refers to geometric processing of a 3D model (e.g., specified in the STL file format) to create watertight manifold shapes that do not possess duplicate vertices, self-intersections, and other types of geometric errors that can arise due to numerical problems during creation, and particularly during the process of converting the file format of the 3D model to the STL format accepted by most printers. After cleanup, models may then be analyzed to either automatically or manually select a build orientation. If chosen automatically, the software tries to find an orientation near the specified pose that minimizes the additional material required to support the model during the build. Subsequently the models are sent to a tool path generator that generates low-level G-code instructions to run the 3D printer.
In view of the foregoing, manufacturability analysis for 3D printing is typically restricted to preparing the model for printing. This analysis typically happens in prototyping shops (i.e., downstream from design engineering) or not at all. Such shops have expertise in various software tools that are bundled with 3D printers to perform optimizations or manual corrections to part geometries, such as fixing bad models, making minor design changes, etc. As mentioned earlier, these tools are machine specific, making it difficult for designers to access them. Hence, there is a need for more general design software that can predict and correct defects or deficiencies in models.
The present application provides new and improved methods and systems which improve on the above-referenced technique and address the above-referenced challenges.
INCORPORATION BY REFERENCE
U.S. patent application Ser. No. 14/217,854 for âAUTOMATED METROLOGY AND MODEL CORRECTION FOR THREE DIMENSIONAL (3D) PRINTABILITYâ, by Nelaturi et al., filed Mar. 18, 2014, U.S. patent application Ser. No. 14/217,891 for âAUTOMATED DESIGN AND MANUFACTURING FEEDBACK FOR THREE DIMENSIONAL (3D) PRINTABILITYâ, by Nelaturi et al., filed on Mar. 18, 2014 (now U.S. Pat. No. 9,747,394 issued on Aug. 29, 2017), Ahn et al. Anisotropic material properties of fused deposition modeling abs. Rapid Prototyping Journal, 8(4):248-257, 2002, and Nelaturi. Configuration modeling. PhD thesis, UNIVERSITY OF WISCONSIN, 2011, are all incorporated herein by reference in their entirety.
BRIEF DESCRIPTION
In accordance with one aspect of the present application, a system for visualizing three dimensional (3D) printability of a 3D model is provided. The system includes at least one processor configured to simulate a 3D printing process of the 3D model to generate a layered 3D model describing the 3D model as printed. The at least one processor is further configured to generate a visual rendering of the layered 3D model, and display the visual rendering of the layered 3D model on a display device.
In accordance with another aspect of the present application, a method for visualizing 3D printability of a 3D model is provided. A 3D printing process of the 3D model is simulated by at least one processor to generate a layered 3D model describing the 3D model as printed. Further, a visual rendering of the layered 3D model is generated by the at least one processor, and the visual rendering of the layered 3D model is displayed on a display device by the at least one processor.
In accordance with another aspect of the present application, a system for visualizing 3D printability of a 3D model is provided. The system includes at least one processor configured to simulate a 3D printing process of the 3D model to generate a layered 3D model describing the 3D model as printed The at least one processor is further configured to select a material shader for a print material selected by a user and generate a displacement map mapped to a surface of the layered 3D model from a shape of a segment of 3D printed material generated according to the 3D printing process. Even more, the at least one processor is configured to generate a visual rendering of the layered 3D model with the displacement map and the material shader and display the visual rendering of the layered 3D model on a display device.
In accordance with another aspect of the present application, a system for visualizing 3D printability of a 3D model is provided. The system includes at least one processor configured to receive or generate slices of the 3D model. The slices represent two dimensional (2D) solids of the 3D model to be printed in corresponding print layers. The at least one processor is further configured to simulate printing of the slices to identify corresponding printable slices and to combine the printable slices into a layered 3D model describing the 3D model as printed.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a design system for interactive analysis and preparation of a three dimensional (3D) model for 3D printing.
FIG. 2 illustrates a flow chart of the operation of the design system of FIG. 1 .
FIG. 3 illustrates a method for optimizing build orientation of a 3D model.
FIG. 4A illustrates a virtual representation of a printer workspace with a 3D model displayed according to its build orientation and with regions requiring support material displayed on the 3D model.
FIG. 4B illustrates the 3D model of FIG. 4A , with updated regions requiring support material, after a user interactively adjusts the build orientation of the 3D model.
FIG. 5A illustrates a printability map of a slice computed using a circular feature model.
FIG. 5B illustrates a printability map of the slice of FIG. 5A computed using an elliptical feature model.
FIG. 6A illustrate a tool path for a shape of Austria.
FIG. 6B illustrates a Minkowski sum generated using the tool path of FIG. 6A .
FIG. 7A illustrates a tool path for a floral shape.
FIG. 7B illustrates a Minkowski sum generated using the tool path of FIG. 7A .
FIG. 7C illustrates a printability map of the floral shape of FIG. 7A .
FIG. 8 illustrates a method for generating a printability map.
FIG. 9A illustrates a zoomed-out rendering of a layered model displayed to a user.
FIG. 9B illustrates a zoomed-in rendering of the layered model of FIG. 9A .
FIG. 10A illustrates the rendering of a model without a displacement map.
FIG. 10B illustrates the rendering of the model of FIG. 10A with a displacement map.
FIG. 11 illustrates a displacement map.
FIG. 12 illustrates a flow chart for visualizing a 3D model as it would look if printed using a 3D printing process.
FIG. 13 illustrates 3D printed cats with increasing layer thickness from left to right.
FIG. 14A illustrates the visualization of a 3D cat model with a 0.1 millimeter (mm) layer thickness.
FIG. 14B illustrates the visualization of the 3D cat model of FIG. 14A with a 0.2 mm layer thickness.
FIG. 14C illustrates the visualization of the 3D cat model of FIG. 14A with a 0.4 mm layer thickness.
FIG. 15A illustrates a slice of a 3D model before model correction.
FIG. 15B illustrates the slice of FIG. 15A after global model correction.
FIG. 15C illustrates the slice of FIG. 15A after local model correction.
FIG. 16 illustrates a pruned medial axis of a slice.
FIG. 17 illustrates local model correction at thin walls and protrusions.
FIG. 18 illustrates local model correction at bridges.
FIG. 19 illustrates a change in connectivity after local model correction.
FIG. 20A illustrates a slice with the medial axis overlaid on the slice.
FIG. 20B illustrates the slice of FIG. 19A after local model correction.
FIG. 21 illustrates a method for local model correction.
FIG. 22 illustrates a representation of a family of sets O(S, k 2 B)âO(S, k 1 B), where k 1 âk 2 =1.
DETAILED DESCRIPTION
The present application describes a system to perform design evaluation for three dimensional (3D) printing using manufacturing simulation and to provide feedback prior to printing a 3D solid model. The system evaluates process plans by rapidly analyzing the solid and simulating the layered manufacturing process to identify expected deviations from the intended design. Parameters for the simulation may be tuned based on process and printer specific values. The result of the simulation provides interactive visual feedback that highlights r
BACKGROUND
The present application relates generally to design and manufacturing. It finds particular application in conjunction with three dimensional (3D) printing, and will be described with particular reference thereto. However, it is to be appreciated that the present application is also amenable to other like applications.
3D printing, also known as additive or layered manufacturing, is the process of building 3D solid shapes by accumulating material laid out in cross sectional layers. The printing process is driven by the controlled planar translation of a print head in stacked layers that determines the spatial accumulation of material. Depending on the process, the print head typically either deposits material (e.g., in fused deposition modeling (FDM)), cures powder by applying a focused laser (e.g., in selective laser sintering (SLS) and stereolithography (SLA)), sprays liquid binding onto particles (e.g., in inkjet printing), or applies some combination of these methods.
Over the last two decades, the quality and speed of 3D printers has improved, design software for 3D printers has improved, and the costs of 3D printers have fallen. Compared to conventional manufacturing, 3D printing now includes a more automated nature in the manufacturing process, and a higher range of complexity in parts that can be produced. These advantages have led to increased adoption by eclectic groups of users who are not just using 3D printed parts as prototypes, but also as final products in a wide variety of applications ranging from clothing and art to prosthetics and topologically optimized functional parts. Hence, the aesthetic qualities and visual properties of the output of a 3D printing process are increasingly important.
Unfortunately, the democratization of additive manufacturing coupled with the feasibility of producing complex geometries has led to the widespread but often erroneous belief among many users that any model that can be designed in a computer-aided design (CAD) system can be manufactured using a 3D printer. In reality, the quality of a printed model is sensitive to a combination of the chosen build orientation, material, and printer parameters. Poor understanding of how the printing parameters affect the printed model in relation to the original model often leads to failures that are only apparent after printing, even to experts. For example, a home 3D printer user will often have to print multiple attempts in order to get the desired output. As another example, service providers for 3D printed parts often have significant scrap from print failures that are a result of this poor understanding.
Printer resolution in the stacking direction dictates the deviation from the intended shape due to stair stepping artifacts in the build, and parameters such as the nozzle diameter in FDM or the beam width and/or offset in SLS influence the resolution of the smallest feature printable by the translating print head. Furthermore, the printed size of structures, such as thin walls, bridges, and spikes, affect the integrity of these structures. The printed size is also influenced by printer resolution. Hence, 3D printer manufacturers often recommend minimum material-specific sizes for these structures. The various resolutions and minimum size recommendations mentioned are unrelated to the numerical resolution chosen to triangulate solid models for representation in a stereolithography (STL) file format. This lack of coordination between the printer-related resolutions/minimum-sizes and the numerical resolutions of the STL file leads to the discrepancies between the final 3D printed object and the designed CAD model.
Users often attempt to manually predict and correct defects or deficiencies of printed parts relative to corresponding CAD models with design heuristics and rules. Predicting and correcting defects or deficiencies saves time, material, energy, and labor by not producing parts from designs with unexpected flaws that manifest themselves in the manufacturing process. However, the ability to manually predict and correct defects or deficiencies is becoming increasingly difficult as the number of printers, materials, and manufacturing services available grows.
Existing software solutions for previewing a 3D model (that is intended to be 3D printed) show the original 3D model without showing any differences that might occur due to the 3D printing process. No geometric differences are shown, and no simulation of the texture of the 3D printed object from the layered nature of the process is shown. Also, no realistic rendering of the material is shown. Typically, photos of example objects printed using specific 3D printers are available for reference, but no such photo may exist for the specific part the user intends to print.
Further, existing software to analyze and prepare models for 3D printing are often intended to accompany a specific printer (e.g. MAKERWARE for the MAKERBOT printer, OBJET STUDIO for the OBJET line of printers from STRATASYS) and typically enable some combination of model cleanup, build orientation optimization, and tool path generation. Sometimes, computational support is further provided to hollow and thicken models to minimize material wastage and reinforce thin walls.
Model cleanup refers to geometric processing of a 3D model (e.g., specified in the STL file format) to create watertight manifold shapes that do not possess duplicate vertices, self-intersections, and other types of geometric errors that can arise due to numerical problems during creation, and particularly during the process of converting the file format of the 3D model to the STL format accepted by most printers. After cleanup, models may then be analyzed to either automatically or manually select a build orientation. If chosen automatically, the software tries to find an orientation near the specified pose that minimizes the additional material required to support the model during the build. Subsequently the models are sent to a tool path generator that generates low-level G-code instructions to run the 3D printer.
In view of the foregoing, manufacturability analysis for 3D printing is typically restricted to preparing the model for printing. This analysis typically happens in prototyping shops (i.e., downstream from design engineering) or not at all. Such shops have expertise in various software tools that are bundled with 3D printers to perform optimizations or manual corrections to part geometries, such as fixing bad models, making minor design changes, etc. As mentioned earlier, these tools are machine specific, making it difficult for designers to access them. Hence, there is a need for more general design software that can predict and correct defects or deficiencies in models.
The present application provides new and improved methods and systems which improve on the above-referenced technique and address the above-referenced challenges.
INCORPORATION BY REFERENCE
U.S. patent application Ser. No. 14/217,854 for âAUTOMATED METROLOGY AND MODEL CORRECTION FOR THREE DIMENSIONAL (3D) PRINTABILITYâ, by Nelaturi et al., filed Mar. 18, 2014, U.S. patent application Ser. No. 14/217,891 for âAUTOMATED DESIGN AND MANUFACTURING FEEDBACK FOR THREE DIMENSIONAL (3D) PRINTABILITYâ, by Nelaturi et al., filed on Mar. 18, 2014 (now U.S. Pat. No. 9,747,394 issued on Aug. 29, 2017), Ahn et al. Anisotropic material properties of fused deposition modeling abs. Rapid Prototyping Journal, 8(4):248-257, 2002, and Nelaturi. Configuration modeling. PhD thesis, UNIVERSITY OF WISCONSIN, 2011, are all incorporated herein by reference in their entirety.
BRIEF DESCRIPTION
In accordance with one aspect of the present application, a system for visualizing three dimensional (3D) printability of a 3D model is provided. The system includes at least one processor configured to simulate a 3D printing process of the 3D model to generate a layered 3D model describing the 3D model as printed. The at least one processor is further configured to generate a visual rendering of the layered 3D model, and display the visual rendering of the layered 3D model on a display device.
In accordance with another aspect of the present application, a method for visualizing 3D printability of a 3D model is provided. A 3D printing process of the 3D model is simulated by at least one processor to generate a layered 3D model describing the 3D model as printed. Further, a visual rendering of the layered 3D model is generated by the at least one processor, and the visual rendering of the layered 3D model is displayed on a display device by the at least one processor.
In accordance with another aspect of the present application, a system for visualizing 3D printability of a 3D model is provided. The system includes at least one processor configured to simulate a 3D printing process of the 3D model to generate a layered 3D model describing the 3D model as printed The at least one processor is further configured to select a material shader for a print material selected by a user and generate a displacement map mapped to a surface of the layered 3D model from a shape of a segment of 3D printed material generated according to the 3D printing process. Even more, the at least one processor is configured to generate a visual rendering of the layered 3D model with the displacement map and the material shader and display the visual rendering of the layered 3D model on a display device.
In accordance with another aspect of the present application, a system for visualizing 3D printability of a 3D model is provided. The system includes at least one processor configured to receive or generate slices of the 3D model. The slices represent two dimensional (2D) solids of the 3D model to be printed in corresponding print layers. The at least one processor is further configured to simulate printing of the slices to identify corresponding printable slices and to combine the printable slices into a layered 3D model describing the 3D model as printed.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a design system for interactive analysis and preparation of a three dimensional (3D) model for 3D printing.
FIG. 2 illustrates a flow chart of the operation of the design system of FIG. 1 .
FIG. 3 illustrates a method for optimizing build orientation of a 3D model.
FIG. 4A illustrates a virtual representation of a printer workspace with a 3D model displayed according to its build orientation and with regions requiring support material displayed on the 3D model.
FIG. 4B illustrates the 3D model of FIG. 4A , with updated regions requiring support material, after a user interactively adjusts the build orientation of the 3D model.
FIG. 5A illustrates a printability map of a slice computed using a circular feature model.
FIG. 5B illustrates a printability map of the slice of FIG. 5A computed using an elliptical feature model.
FIG. 6A illustrate a tool path for a shape of Austria.
FIG. 6B illustrates a Minkowski sum generated using the tool path of FIG. 6A .
FIG. 7A illustrates a tool path for a floral shape.
FIG. 7B illustrates a Minkowski sum generated using the tool path of FIG. 7A .
FIG. 7C illustrates a printability map of the floral shape of FIG. 7A .
FIG. 8 illustrates a method for generating a printability map.
FIG. 9A illustrates a zoomed-out rendering of a layered model displayed to a user.
FIG. 9B illustrates a zoomed-in rendering of the layered model of FIG. 9A .
FIG. 10A illustrates the rendering of a model without a displacement map.
FIG. 10B illustrates the rendering of the model of FIG. 10A with a displacement map.
FIG. 11 illustrates a displacement map.
FIG. 12 illustrates a flow chart for visualizing a 3D model as it would look if printed using a 3D printing process.
FIG. 13 illustrates 3D printed cats with increasing layer thickness from left to right.
FIG. 14A illustrates the visualization of a 3D cat model with a 0.1 millimeter (mm) layer thickness.
FIG. 14B illustrates the visualization of the 3D cat model of FIG. 14A with a 0.2 mm layer thickness.
FIG. 14C illustrates the visualization of the 3D cat model of FIG. 14A with a 0.4 mm layer thickness.
FIG. 15A illustrates a slice of a 3D model before model correction.
FIG. 15B illustrates the slice of FIG. 15A after global model correction.
FIG. 15C illustrates the slice of FIG. 15A after local model correction.
FIG. 16 illustrates a pruned medial axis of a slice.
FIG. 17 illustrates local model correction at thin walls and protrusions.
FIG. 18 illustrates local model correction at bridges.
FIG. 19 illustrates a change in connectivity after local model correction.
FIG. 20A illustrates a slice with the medial axis overlaid on the slice.
FIG. 20B illustrates the slice of FIG. 19A after local model correction.
FIG. 21 illustrates a method for local model correction.
FIG. 22 illustrates a representation of a family of sets O(S, k 2 B)âO(S, k 1 B), where k 1 âk 2 =1.
DETAILED DESCRIPTION
The present application describes a system to perform design evaluation for three dimensional (3D) printing using manufacturing simulation and to provide feedback prior to printing a 3D solid model. The system evaluates process plans by rapidly analyzing the solid and simulating the layered manufacturing process to identify expected deviations from the intended design. Parameters for the simulation may be tuned based on process and printer specific values. The result of the simulation provides interactive visual feedback that highlights regions that are expected to deviate from design intent, either in appearance or in structural integrity.
Further, the present application describes a system to perform automated metrology and model correction for 3D printability. Using techniques from mathematical morphology, printability in terms of local size measurements is determined and used to partition the 3D model into regions that can be manufactured up to specified resolutions. Local size is defined in terms of the medial axis transform and used to automatically identify regions that require a differential addition of material to ensure manufacturability, such as, but not limited to, at regions such as thin walls, bridges, protrusions, and holes. Topological consistency between the parts before and after manufacture is also maintained.
The present application also describes a system to visually render a 3D model as it would appear if printed with a 3D printing process. To determine the rendering, the user specifies the material to be used in the 3D printing process and the parameters of the 3D printing process, either by specifying the 3D printer to be used or by directly specifying the 3D printing process type, the layer thickness, and the relevant parameters defining the size and shape of the minimum feature (e.g., the nozzle or laser beam diameter). The material and parameters are then used to simulate the 3D printing process to determine the appearance of the 3D model after printing.
With reference to FIG. 1 , a design system 10 for interactive analysis and preparation of a 3D model for 3D printing is provided. The system 10 includes one or more client devices 12 communicating with a design service 14 over a communications network 16 . The communications network 16 is typically the Internet, but can be any communications network, such as a local area network or a wide area network. While the design system 10 is not dependent on any specific printer, the system 10 can further include a 3D printer 17 connected to the communications network 16 for printing the 3D model. The 3D printer 17 can print the 3D model by any 3D printing process, such as fused deposition modeling (FDM).
Each client device 12 includes at least one processor 18 , at least one program memory 20 , a display device 22 and a user input device 24 . The at least one processor 18 executes processor executable instructions stored in the at least one program memory 20 to provide a user with a graphical user interface (GUI) with the display device 22 and the user input device 24 . The processor executable instructions include a client- side design application 26 for client side functionality of the design system 10 , discussed hereafter. The client- side design application 26 can be a standalone application or a web application. Where the client- side design application 26 is a web application, the client- side design application 26 is executed within a web browser 28 of the processor executable instructions. The client devices 12 are typically portable devices, such as smartphones, laptops, or tablet computers, but other devices, such as desktop computers, are amenable.
With reference to the flow chart of FIG. 2 , when a user initializes the client- side design application 26 on the client device 12 corresponding to the user, the user uses the client- side design application 26 to upload 30 a 3D model to the design service 14 over the communications network 16 . The 3D model is, in one embodiment, generated using a computer-aided design (CAD) software tool. Further, the 3D model is, in one embodiment, formatted in a stereolithography (STL) file format or a standard for the exchange of product model data (STEP) file format. Other formats are, however, contemplated.
Referring back to FIG. 1 , the design service 14 includes one or more server devices 32 including at least one processor 34 , at least one program memory 36 , and at least one storage memory 38 . The at least one processor 34 executes processor executable instructions stored in the at least one program memory 36 . The processor executable instructions include a server- side design application 40 for server side functionality of the design system 10 , discussed hereafter. In some embodiments, execution of the server-side design application 40 (i.e., the corresponding computations) is distributed across multiple processors in a distributed network. The at least one storage memory 38 stores data uploaded to the design service 14 by the client devices 12 . The one or more server devices 32 are typically one or more computer servers, but one or more application specific devices are additionally or alternatively contemplated.
In some embodiments, where the client- side design application 26 is a web application, at least one of the server devices 32 stores the client- side design application 26 in the at least one storage memory 38 . Further, the at least one program memory 36 includes processor executable instructions embodying a web server 42 . The at least one processor 34 then executes the processor executable instructions embodying the web server 42 to provide the client- side design application 26 stored in the at least one storage memory 38 to the client devices 12 as a web application.
Referring back to FIG. 2 , the server- side design application 40 receives the 3D model uploaded by the user and determines 44 the file format of the 3D model. If the 3D model is formatted in anything other than an STL file format, the 3D model is converted 46 to an STL file format. For example, if the 3D model is formatted in a STEP file format, the 3D model is converted to an STL file format.
With the 3D model in an STL file format, a determination 48 is made as to whether the build orientation of the 3D model should be optimized. In some instances, this is automatically determined from predefined preferences of the user. Alternatively, the user is prompted to identify whether the build orientation of the 3D model should be optimized through cooperation with the client- side design application 26 . If it is determined that the build orientation of the 3D model should be optimized, the server- side design application 40 optimizes 50 the build orientation of the 3D model. Otherwise the user may interactively choose the orientation in which the model should be printed.
Choosing build orientation amounts to a central planning problem for 3D printing, which can directly influence the build quality and subsequent structural integrity of the 3D model. For example, in a FDM process where a nozzle head extrudes a plastic filament, additional material must be printed on the part to support overhangs and other features that can cause warping or accessibility issues. This creates a planning problem where it is important to print the 3D model in an orientation where the amount of support material is minimized, while avoiding supports on functional or aesthetic surfaces. It is often possible to print the 3D model in multiple orientations with substantially different material properties. The planning problem extends to a situation where multiple discrete components are printed in a single printer workspace and where the components need to be packed in a manner that optimizes the build quality of each component.
The build orientation can be optimized using an algorithm that searches the space of orientations to optimize (e.g., minimize or maximize) an objective function. Typically, the objective is to minimize the amount of support material on surfaces of the 3D model that are not marked as functional or aesthetic by the user. However, any objective related to build orientation, such as minimizing the volume of the support material or minimizing the volume of regions below printer resolution, can be employed. The markings can be included with the 3D model or obtained through coordination with the client- side design application 26 . As to the latter, the client- side design application 26 can, for example, be employed to display the 3D model to the user, receive user input marking regions of the displayed 3D model, and relay the user input to the server- side design application 40 .
With reference to FIG. 3 , an algorithm (or method) 100 that searches the space of orientations of the 3D model to optimize an objective function is provided. As discussed in greater detail hereafter, the algorithm 100 globally and adaptively searches the rotation space of the 3D model.
According to the algorithm 100 , an initial coarse set of orientations is generated 102 by a uniform global sampling of the 3D rotation space. The set of orientations is then searched 104 to optimize an objective function and find the best orientation of the set. For example, the search can be for a minimum value of an objective function, which returns, as a function of orientation, surface area of contact with support material on surfaces of the 3D model that are not marked as functional or aesthetic, and the search can return the orientation associated with the minimum value. The amount of support material can be calculated using any approach that identifies the visible surfaces to be supported, and covers that surface with support material, printed from the ground up. In some embodiments, the amount of support is calculated according to a well-known heuristic adopted in 3D printing where support material is provided for any facet with an overhang greater than 45 degrees with respect to the build orientation. See, for example, Ahn et al. Anisotropic material properties of fused deposition modeling abs. Rapid Prototyping Journal, 8(4):248-257, 2002.
After searching the set, the best orientation is locally and adaptively sampled 106 using the properties of the configuration product on the group of three dimensional rotations SO(3) up to convergence defined by relative changes in the objective function. For example, where the objective is to minimize the support material on surfaces of the part that are not marked as functional or aesthetic, the best orientation is locally and adaptively sampled until the objective function converges at a value. See, e.g., Nelaturi. Configuration modeling . PhD thesis, UNIVERSITY OF WISCONSIN, 2011.
Referring back to FIG. 2 , the user is next given the option to interactively adjust 52 the build orientation. This is performed regardless of whether the build orientation is optimized. The user can interactively adjust the build orientation through coordination with the client- side design application 26 . By way of the client- side design application 26 , the user is displayed a virtual representation of the printer workspace with the 3D model oriented within the virtual representation and the support material arranged around the 3D model in the virtual representation. The user then manipulates the orientation of the 3D model with a user input device 24 and the adjusted build orientation is relayed to the server- side design application 40 .
With reference to FIGS. 4A and 4B , a virtual representation 402 of a printer workspace is illustrated with a 3D model 404 and support regions 406 for the 3D model 404 . FIG. 4A illustrates the 3D model 404 oriented in a first build orientation, and FIG. 4B illustrates the 3D model 404 orientated in a second build orientation. The 3D model 404 was orientated according to the first build orientation by the optimization algorithm, and reoriented according to the second build orientation by the user.
Referring back to FIG. 2 , in addition to using the client- side design application 26 to upload the 3D model to the design service 14 , the user uses the client- side design application 26 to generate and upload 54 configuration data describing the print material and parameters of the 3D printing process, such as layer thickness, process type (e.g., FDM or selective laser sintering (SLS)), and the size of the smallest printable feature (e.g., nozzle diameter for FDM or laser diameter for SLS). The parameter data can be generated by, for example, user selection of a 3D printer from a list of 3D printers supported by the design service 14 . Each 3D printer of the list is associated with parameter values. Further, the print material data can be generated by, for example, user selection of a print material from a list of materials supported by 3D printers or the selected 3D printer. The generated configuration data is then uploaded to the design service 14 over the communications network 16 .
The server- side design application 40 receives the configuration data uploaded by the user and slices 56 the 3D model into a plurality of slices along the build orientation. A slice is the intersection of a plane, translated along the build orientation, with the 3D model oriented according to the build orientation, and represents the two dimensional solid to be printed in a layer. Each slice is determined by intersecting a two dimensional (2D) plane having a normal parallel to the build orientation at the height of the corresponding print layer. The number of such slices is equal to the height of the 3D model divided by the layer thickness of the 3D printing process, and the distance between subsequent slices is equal to the layer thickness. The parameters pertaining to the 3D printing process, such as the layer thickness, are determined from the configuration data.
Subsequent to or concurrent with slicing the 3D model, the slices are regularized. A regularized slice is the topological closure of the interior of a slice. Regularization of a slice can be performed through application of Boolean operations to the slice to automatically merge disjoint but overlapping components in the slice. Overlapping components create non-manifold points, which are known to cause problems while simulating tool paths (discussed below) because it is difficult to distinguish points inside and outside the slice. The result of the merging gives a set of regularized planar solids or regions (in the most general case) for the slice, where each solid is bounded by a polygon and has a well-defined interior.
The interior of each of the regularized slices is next partitioned into disjoint sets of regions that constitute a printability map. Typically, the printability map for a regularized slice includes three disjoint sets of weakly printable, strongly printable, and unprintable regions, discussed hereafter, but more or less disjoint sets are amenable.
A region unable to contain the smallest printable feature is unprintable. Such a region is so small that it may be covered by excessive print material if printing is attempted, or other unexpected results may occur. The smallest printable feature is determined from the configuration data. The unprintable regions of the regularized slice constitute a first set T of the printability map.
A region where a smallest printable feature is completely contained within the slice, and where every point of the region on the boundary of the regularized slice has a local feature size higher than the recommended size for the print material, is strongly printable. The print material is determined from the uploaded configuration data. The local feature size at a location x on the boundary of the regularized slice is defined by the shortest distance from x to the medial axis of the regularized slice. The medial axis of the regularized slice is the set of all points having more than one closest point on the boundary of the regularized slice. The strongly printable regions of the regularized slice constitute the second set G of the printability map.
A region where a smallest printable feature is completely contained within the slice, but where any point of the region on the boundary of the regularized slice has a local feature size lower than the recommended feature size for the print material, is weakly printable. Such a region is prone to structural failure due to the thin or flimsy nature of the region. The weakly printable regions of the regularized slice constitute the third set F of the printability map.
In some instances, the printability map includes a set of user-defined regions. A user-defined region is a region where any point of the region on the boundary of the regularized slice has a local feature size greater than a user-defined local feature size. The user-defined local feature size can be included in the configuration parameters. In this way, the user can define a minimum feature size and identify the set of regions of the regularized slice that are able to accommodate this minimum feature size.
A printability map for a regularized slice is generated by simulating 56 the layered manufacturing of the slice by tracing the motion of a feature model of the smallest printable feature as a translating print head attempts to print the slice. In one embodiment, the simulated layered manufacturing process is FDM, but other layered manufacturing processes, such SLS, can also be simulated. The feature model includes both the shape and size of the smallest printable feature and is typically a circular disc. For example, where the layered manufacturing process is FDM, the circular disc represents the cross section of print material extruded through a nozzle. As another example, where the layered manufacturing process is SLS, the circular disc represents the cross section of the laser beam fusing print material. The shape and size of the feature model is determined from the configuration data (e.g., using print resolution).
The tracing can be done with or without tool paths. A tool path is the path that the translating print head follows while attempting to print a slice. Where a tool path is unavailable and the feature model is a circular disc B d with a diameter d, the tracing is performed by using morphological operations, in particular the opening and white-hat transform.
Unlike conventional approaches to computing morphological operations that require the specification of a 2D or 3D image to compute the morphological operations, modeling the smallest printable feature with a circular disc allows computations to be directly formulated on polygons that define the boundary of a slice. There are two aspects of directly computing the morphological operations on polygons. First, using the slice boundary ensures the representation of the 3D model is not altered, whereas using image processing operations requires the rasterization (i.e., sampling) of the solid into points on the image, which inherently induces discretization error in the printability map. Second, the opening can be expressed as a composition of an inward and outward polygon offset that will automatically capture rounded corners, and the white-hat transform, which is the set difference between the polygon and its opening, which will capture the low resolution regions of the model. These offset and subtraction operations can be efficiently and robustly computed in the plane to give an accurate simulation of the feature model.
To compute the set of unprintable regions T, the white hat transform T=Sâδ(ϵ(S,B d ),B d ) of the set of regularized planar solids S in the slice is computed (again B d being a circular disc with a diameter d). δ(X,Y) and ϵ(X,Y) represent the dilation and erosion, respectively, of a set X by a set Y. The set of regions SâT represents regions whose local feature size is above the printer resolution (i.e., the set of strongly and weakly printable regions). This set can further be partitioned into two disjoint sets F=(SâT)âδ(ϵ(SâT),B f ),B f ) and G=SâTâF. B f represents a circular disc with a diameter being the minimum recommended feature size for the print material. Therefore, F represents the set of weakly printable regions, G represents the set of strongly printable regions, and the printability map can be represented by the disjoint sets of T, F, and G.
The polygon offsetting approach described above frees the printability map computation from resolution dependent problems associated with image based approaches. However, despite freeing the printability map computation from resolution dependent problems, the polygon approach is limited in that the feature model being circular. If the feature model is a shape other than a circular disc (e.g., an ellipse to accurately represent flattened filaments in printers with very high resolution), the printability map is computed best in terms of image based morphological operations. With traditional algorithms, the efficiency of the computations significantly reduces with the complexity of the feature model because traditional computations operate in a pixel-pairwise fashion and this quadratic complexity cannot be avoided in the general case.
To trace the motion of a non-circular feature model, fast algorithms using convolutions of binary images and the correspondence to mathematical morphology are typically used to effectively outline the printability map. The highest level set of the convolution of the indicator functions gives the morphological erosion of the polygon by the feature model. Effectively, the erosion outlines the path traced by the feature model along a space-filling curve, while remaining within the slice boundary.
After computing the white hat transform on an image representation of the slice to identify the set of unprintable regions T in the printability map, an iso-surface extraction algorithm, such as marching squares, is used to extract a polygonal representation of the set of unprintable regions T. With the polygon representation, the sets of regions F and G in the printability map are computed in the same manner described above (i.e., using the circular disc B f ). Alternatively, the sets of regions F and G are computed on the image representation and converted to polygonal representations using the iso-surface extraction algorithm. FIGS. 5A and 5B illustrate a comparison between printability maps
500 , 500 â² generated using circular and elliptical feature models, respectively. Strongly printable regions 502 , weakly printable regions 504 , and unprintable regions 506 are color coded.
Where a tool path is available, the tool path can be explicitly or implicitly defined. If the tool path is implicitly defined, the tool path is reconstructed to explicitly define the tool path. For example, where the tool path is formatted in G-code, the tool path is reconstructed by linearly interpolating poses of the print head specified in G-code. With the explicit tool path, a printable slice (i.e., the set of strongly and weakly printable regions F+G) is determined as the well-known Minkowski sum of the feature model and the tool path. In other words, the feature model is traced along the tool path to determine the resulting shape. The Minkowski sum can be calculated as a morphological dilation or as the zero level set of the convolution of the indicator function of the two shapes.
As above, the morphological operations can be performed in the polygon domain or the image domain. Further, the latter requires converting the boundary of the printable slice to the polygon domain. A standard marching squares algorithm with well-known cleanup and post processing can be used to convert the printable slice to the polygon domain. FIG. 6B illustrates a Minkowski sum of Austria (country) generated using the tool path of FIG. 6A .
The printable slice is formed by the sets of printable regions of the regularized slice (i.e., the sets of strongly and weakly printable regions). The unprintable regions can be determined by taking the difference between the regularized and the printable slices. Furthermore, to distinguish between the strongly and weakly printable regions, the same approach as defined earlier is employed by computing a white hat transform of the printable slice with a disc having a diameter equal to the minimum recommended feature size. As above, the sets of different region types collectively define the printability map. FIGS. 7A-C illustrates the print simulation of a floral shape. FIG. 7A corresponds to a tool path of the floral shape, FIG. 7B corresponds to a Minkowski sum of the floral shape, and FIG. 7C corresponds to a printability of the floral shape.
With reference to FIG. 8 , a method 150 summarizes the approach to generating the printability maps. According to the method 150 , a 3D model is divided 152 into a set of slices. The slices are then regularized 154 and partitioned 156 into printability maps by simulating the translation of a print head within the boundaries of the regularized slices. The translation for a slice can be performed without a user-defined tool path, but it can also be performed along such a tool path. The simulation identifies the printable region of each of the regularized slice. In some embodiments, the <figure-callout id="150" label="met
CLAIMS
Claims ( 20 )
What is claimed is:
1. A system for visualizing three dimensional (3D) printability of a 3D model, said system comprising:
at least one processor configured to:
simulate an actual 3D printing process of the 3D model to generate a layered simulated 3D model describing the 3D model as it is to be printed, wherein operations to simulate the actual 3D printing process of the 3D model includes for the simulation, (i) selection of a printing material to be used in the actual 3D printing process and for the simulation, (ii) selection of (a) a type of 3D printing process to be used in the actual 3D printing process, (b) a thickness of layers for the actual 3D printing process, and (c) a smallest printable feature defined by one of a nozzle and a laser beam to be used in the actual 3D printing process;
generate a visual rendering of the layered simulated 3D model including highlighting of regions of the layered simulated 3D model differing from the 3D model, wherein the 3D model is an originally received model; and
display the visual rendering of the layered simulated 3D model on a display device, wherein the layered 3D model is generated with unprintable regions and displayed with color coding to allow a user to identify defects in the original 3D model;
control a 3D printer to physically print the 3D model according to the layered simulated 3D model.
2. The system according to claim 1 , wherein the at least one processor is further configured to:
receive or generate slices of the 3D model, the slices representing two dimensional (2D) solids of the 3D model to be printed in corresponding print layers;
simulate printing of the slices to identify corresponding printable slices; and
combine the printable slices into the layered simulated 3D model.
3. The system according to claim 2 , wherein the at least one processor is further configured to:
generate one of the slices by intersecting a 2D plane with a normal parallel to a build orientation of the 3D model at a height of the corresponding print layer.
4. The system according to claim 2 , wherein the simulation simulates printing of one of the slices to identify a corresponding printable slice by translating the smallest printable feature within a boundary of the slice or along a user-defined tool path, wherein the smallest printable feature is modeled with a circular disc, allowing computations to be directly formulated on polygons that define the boundary of the slice.
5. The system according to claim 2 , wherein the simulation simulates printing of one of the slices to identify a corresponding printable slice by calculating a morphological opening of the slice by a structuring element representing the smallest printable feature.
6. The system according to claim 2 , wherein the combining includes:
extruding the printable slices in a print direction by a distance equal to layer thickness of 3D printing process; and
placing the extruded printable slices in the layered simulated 3D model at heights of the corresponding print layers.
7. The system according to claim 1 , wherein the at least one processor is further configured to:
generate a displacement map, as part of the simulation of the actual 3D printing process, mapped to a surface of the layered simulated 3D model from a shape of a segment of 3D printed material generated according to the 3D printing process, wherein the displacement map is given by an image, data in the image determining displacement geometry at a stage of rendering pixels, and the data being used to calculate normals per-pixel to compute lighting effects and to calculate displacement to determine which part of the geometry will be visible to a camera for each pixel that is rendered, wherein noise is incorporated into an image defining the displacement map, an amount of the noise incorporated being determined to reflect roughness inherent in surfaces of an object produced by the actual 3D printing process; and
generate the visual rendering with the displacement map.
8. The system according to claim 1 , wherein the at least one processor is further configured to:
select a material shader for a print material selected by a user; and
generate the visual rendering with the material shader.
9. The system according to claim 1 , wherein the at least one processor is further configured to:
receive or generate slices of the 3D model, the slices representing two dimensional (2D) solids of the 3D model to be printed in corresponding print layers;
simulate printing of the slices to identify corresponding printability maps, the printability maps partitioning the slices into at least two sets of disjoint regions, the at least two sets of regions including a set of regions formed of features smaller than a minimum printable feature and a set of regions formed of features larger than the minimum printable feature;
combine the printability maps into the layered simulated 3D model; and
generate a visual rendering of the layered simulated 3D model in which the at least two sets of regions are displayed differently.
10. The system according to claim 1 , wherein the at least one processor includes a plurality of processors, and wherein the plurality of processors are configured to simultaneously simulate printing of multiple layers of the 3D model in parallel to generate the layered simulated 3D model.
11. A method for visualizing three dimensional (3D) printability of a 3D model, said method comprising:
simulating by at least one processor an actual 3D printing process of the 3D model to generate a layered simulation 3D model describing the 3D model as it is to be printed, wherein operations to simulate the actual 3D printing process of the 3D model includes, for the simulation, (i) selection of a printing material to be used in the actual 3D printing process and, for the simulation, (ii) selection of (a) a type of actual 3D printing process to be used in the actual 3D printing process, (b) a thickness of layers of the actual printing process in the actual 3D printing process, and (c) a smallest printable feature defined by one of a nozzle and a laser beam to be used in the actual 3D printing process for the simulation;
generating by the at least one processor a visual rendering of the layered simulated 3D model including highlighting of regions of the layered simulated 3D model differing from the 3D model, wherein the 3D model is an originally received model; and
displaying by the at least one processor the visual rendering of the layered 3D model on a display device, wherein the layered 3D model is generated with unprintable regions and displayed with color coding to allow a user to identify defects in the original 3D model;
controlling a 3D printer to physically print the 3D model according to the layered simulated 3D model.
12. The method according to claim 11 , further including
receiving or generating slices of the 3D model, the slices representing two dimensional (2D) solids of the 3D model to be printed in corresponding print layers;
simulating printing of the slices to identify corresponding printable slices; and
combining the printable slices into the layered simulated 3D model.
13. The method according to claim 12 , further including:
generating one of the slices by intersecting a 2D plane with a normal parallel to a build orientation of the 3D model at a height of the corresponding print layer.
14. The method according to claim 12 , wherein the simulation simulates printing of one of the slices to identify a corresponding printable slice by translating the smallest printable feature within a boundary of the slice or along a user-defined tool path and wherein the smallest printable feature is modeled with a circular disc, allowing computations to be directly formulated on polygons that define the boundary of the slice.
15. The method according to claim 12 , wherein the simulation simulates printing of one of the slices to identify a corresponding printable slice by calculating a morphological opening of the slice by a structuring element representing the smallest printable feature.
16. The method according to claim 12 , wherein the combining includes:
extruding the printable slices in a print direction by a distances equal to layer thickness of 3D printing process; and
placing the extruded printable slices in the layered simulated 3D model at heights of the corresponding print layers.
17. The method according to claim 11 , further including:
generating a displacement map mapped to a surface of the layered 3D model from a shape of a segment of 3D printed material generated according to the 3D printing process, wherein noise is incorporated into an image defining the displacement map, an amount of the noise incorporated being determined to reflect roughness inherent in surfaces of an object produced by the actual 3D printing process; and
generating the visual rendering with the displacement map.
18. The method according to claim 11 , further including:
selecting a material shader for a print material selected by a user; and
generating the visual rendering with the material shader.
19. A system for visualizing three dimensional (3D) printability of a 3D model, said system comprising:
at least one processor configured to:
simulate an actual 3D printing process of the 3D model to generate a layered simulated 3D model describing the 3D model as it is to be printed, wherein operations to simulate the actual 3D printing process of the 3D model includes for the simulation, (i) selection of a printing material to be used in the actual 3D printing process and for the simulation, (ii) selection of (a) a type of 3D printing process to be used in the actual 3D printing process, (b) a thickness of layers for the actual 3D printing process, and (c) a smallest printable feature model defined by one of a nozzle and a laser beam to be used in the actual 3D printing process;
select a material shader for a print material selected by a user;
generate a displacement map as part of the simulation of the 3D printing process mapped to a surface of the layered 3D model from a shape of a segment of 3D printed material generated according to the 3D printing process, wherein the displacement map is given by a greyscale image, data in the greyscale image determining displacement geometry at a stage of rendering pixels, and the data being used to calculate normals per-pixel to compute lighting effects and to calculate displacement to determine which part of the geometry will be visible to a camera for each pixel that is rendered;
generate a visual rendering of the layered 3D model with the displacement map and the material shader including highlighting of regions of the layered 3D model differing from the 3D model, wherein the 3D model is an originally received model; and
display the visual rendering of the layered 3D model on a display device, wherein the layered 3D model is generated with unprintable regions and displayed with color coding to allow a user to identify defects in the original 3D model;
control a 3D printer to physically print the 3D model according to the layered simulated 3D model.
20. The system according to claim 7 , wherein the image which gives the displacement map is a greyscale image.
US14/217,811
2014-03-18
2014-03-18
System for visualizing a three dimensional (3D) model as printed from a 3D printer
Active
2035-09-06
US9946816B2
( en )
Priority Applications (4)
Application Number
Priority Date
Filing Date
Title
US14/217,811
US9946816B2
( en )
2014-03-18
2014-03-18
System for visualizing a three dimensional (3D) model as printed from a 3D printer
EP15157226.0A
EP2922029B1
( en )
2014-03-18
2015-03-02
System for visualizing a three dimensional (3D) model as printed from a 3D printer
SG10201808077YA
SG10201808077YA
( en )
2014-03-18
2015-03-06
System for visualizing a three dimensional (3d) model as printed from a 3d printer
SG10201501738YA
SG10201501738YA
( en )
2014-03-18
2015-03-06
System for visualizing a three dimensional (3d) model as printed from a 3d printer
Applications Claiming Priority (1)
Application Number
Priority Date
Filing Date
Title
US14/217,811
US9946816B2
( en )
2014-03-18
2014-03-18
System for visualizing a three dimensional (3D) model as printed from a 3D printer
Publications (2)
Publication Number
Publication Date
US20150269289A1
US20150269289A1 ( en )
2015-09-24
US9946816B2
true
US9946816B2 ( en )
2018-04-17
Family
ID=52682611
Family Applications (1)
Application Number
Title
Priority Date
Filing Date
US14/217,811
Active
2035-09-06
US9946816B2
( en )
2014-03-18
2014-03-18
System for visualizing a three dimensional (3D) model as printed from a 3D printer
Country Status (3)
Country
Link
US
( 1 )
US9946816B2
( en )
EP
( 1 )
EP2922029B1
( en )
SG
( 2 )
SG10201501738YA
( en )
Cited By (9)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US20190332981A1
( en )
*
2016-12-20
2019-10-31
Koninklijke Philips N.V.
Method of providing fabrication environment
US10558199B2
( en )
*
2018-02-13
2020-02-11
University Of Central Florida Research Foundation, Inc.
Method for the design and manufacture of composites having tunable physical properties
WO2020106090A1
( en )
*
2018-11-23
2020-05-28
ë°°ìì
3d printing method, and device for performing same
WO2021188101A1
( en )
*
2020-03-18
2021-09-23
Hewlett-Packard Development Company, L.P.
Mesh model generation
US11281820B2
( en )
2019-04-02
2022-03-22
Desktop Metal, Inc.
Systems and methods for growth-based design
US11353847B2
( en )
2018-12-28
2022-06-07
Palo Alto Research Center Incorporated
Modifying additively manufactured part designs using topological analyses
CN115454432A
( en )
*
2022-11-09
2022-12-09
ä¸å»ºå «å±ç¬¬ä¸å»ºè®¾æéå ¬å¸
A test development method and system based on BIM platform
US20230038217A1
( en )
*
2020-01-29
2023-02-09
Hewlett-Packard Development Company, L.P.
Graphical element surface displacements based on distance functions
US11663693B2
( en )
*
2018-06-26
2023-05-30
Hewlett-Packard Development Company, L.P.
Generating downscaled images representing an object to be generated in additive manufacturing
Families Citing this family (52)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US10220569B2
( en )
*
2013-12-03
2019-03-05
Autodesk, Inc.
Generating support material for three-dimensional printing
US9946816B2
( en )
2014-03-18
2018-04-17
Palo Alto Research Center Incorporated
System for visualizing a three dimensional (3D) model as printed from a 3D printer
US10061870B2
( en )
2014-03-18
2018-08-28
Palo Alto Research Center Incorporated
Automated metrology and model correction for three dimensional (3D) printability
US9747394B2
( en )
*
2014-03-18
2017-08-29
Palo Alto Research Center Incorporated
Automated design and manufacturing feedback for three dimensional (3D) printability
EP3186732B1
( en )
*
2014-08-29
2021-11-10
Microsoft Technology Licensing, LLC
Fabricating three-dimensional objects
US9862149B2
( en )
*
2014-08-29
2018-01-09
Microsoft Technology Licensing, Llc
Print bureau interface for three-dimensional printing
US10409932B2
( en )
*
2014-09-19
2019-09-10
Siemens Product Lifecyle Management Software Inc.
Computer-aided simulation of multi-layer selective laser sintering and melting additive manufacturing processes
CN106104535A
( en )
*
2014-11-13
2016-11-09
æ¸ å大å¦
Particle etching or deposition evolution simulation method, apparatus and computer readable medium
KR102332927B1
( en )
*
2014-12-05
2021-11-30
주ìíì¬ ì¼ì´í°
Method for recommending 3d printing according to slicing direction in cloud environment, server and computing device
KR102306601B1
( en )
*
2014-12-23
2021-09-29
주ìíì¬ ì¼ì´í°
Variable slicing method, slicer and computing device according to complexity of slicing cross-section
US10046522B2
( en )
*
2015-02-26
2018-08-14
Stratasys, Inc.
Surface angle model evaluation process for additive manufacturing
US20160274572A1
( en )
*
2015-03-19
2016-09-22
Michael G. Littrell
Three Dimensional (3D) Printing and CAD File Quoting System
US10210668B2
( en )
2015-11-06
2019-02-19
Microsoft Technology Licensing, Llc
Technique for extruding a 3D object into a plane
JP6480311B2
( en )
*
2015-11-18
2019-03-06
å¯å£«ãã¤ã«ã æ ªå¼ä¼ç¤¾
Support member design apparatus, method, program, structure forming apparatus, and structure manufacturing method
US10761497B2
( en )
*
2016-01-14
2020-09-01
Microsoft Technology Licensing, Llc
Printing 3D objects with automatic dimensional accuracy compensation
CN108698322B
( en )
*
2016-01-25
2021-01-26
æ æ®åå±å ¬å¸ï¼æé责任åä¼ä¼ä¸
Three-dimensional (3D) object printing simulator
US10232649B2
( en )
*
2016-04-05
2019-03-19
Océ Holding B.V.
Printing system for printing an object having a surface of varying height
US11043042B2
( en )
*
2016-05-16
2021-06-22
Hewlett-Packard Development Company, L.P.
Generating a shape profile for a 3D object
WO2017203528A1
( en )
2016-05-24
2017-11-30
Technion Research & Development Foundation Limited
Systems and methods for generating volumetric models
JP2018012220A
( en )
*
2016-07-19
2018-01-25
æ ªå¼ä¼ç¤¾ãªã³ã¼
Information processing apparatus, modeling system, program, data processing method
JP6827741B2
( en )
*
2016-08-31
2021-02-10
ãã¤ãã³æ ªå¼ä¼ç¤¾
Information processing equipment, control methods, and programs
US20190332723A1
( en )
2016-09-14
2019-10-31
Mixed Dimensions Inc.
3d model validation and optimization system and method thereof
US10872177B2
( en )
*
2016-09-21
2020-12-22
New York University
Embedded security elements for digital models used in additive manufacturing
US11214008B2
( en )
*
2016-10-11
2022-01-04
Jun Yamazaki
Three-dimensional object formation instruction apparatus, three-dimensional object production method, and program
US10543673B2
( en )
2017-03-16
2020-01-28
Microsoft Technology Licensing, Llc
Detecting and compensating for an anomaly in three-dimensional object fabrication
EP3379434B1
( en )
*
2017-03-22
2022-09-28
Tata Consultancy Services Limited
A system and method for design of additively manufactured products
WO2018191035A1
( en )
*
2017-04-10
2018-10-18
Siemens Product Lifecycle Management Software Inc.
Identification and redesign of critical thin segments below 3d printer resolution
WO2018191034A1
( en )
*
2017-04-10
2018-10-18
Siemens Product Lifecycle Management Software Inc.
Build direction-based partitioning for construction of a physical object through additive manufacturing
EP3582954A4
( en )
*
2017-04-20
2020-09-16
Hewlett-Packard Development Company, L.P.
Service for three-dimensional printing
US11170570B2
( en )
*
2017-06-21
2021-11-09
Technion Research & Development Foundation Limited
Systems and methods for additive manufacturing
EP3610462A4
( en )
2017-07-10
2020-12-09
Hewlett-Packard Development Company, L.P.
TRANSFORMING OBJECT DATA MODELS TO DISPERSE OBJECT PROPERTIES
WO2019013829A1
( en )
2017-07-10
2019-01-17
Hewlett-Packard Development Company, L.P.
Inferring object attributes
CA3071399A1
( en )
2017-07-28
2019-01-31
Memorial Sloan Kettering Cancer Center
Systems and methods for designing and manufacturing custom immobilization molds for use in medical procedures
JP6275315B1
( en )
*
2017-08-07
2018-02-07
æ ªå¼ä¼ç¤¾æ¾æµ¦æ©æ¢°è£½ä½æ
Modeling method of 3D model with setting of modeling angle in undercut area
EP3459713A1
( en )
*
2017-09-26
2019-03-27
Siemens Aktiengesellschaft
Method for computer-aided processing of quality information of an object and a respective assistance apparatus
US11420396B2
( en )
2017-10-31
2022-08-23
Hewlett-Packard Development Co., L.P.
3D object parts and cage fabrication
US10591899B2
( en )
2017-12-08
2020-03-17
Dreamworks Animation L.L.C.
3D printer visualization shader and geometry procedural
US11446862B2
( en )
*
2017-12-29
2022-09-20
Evolve Additive Solutions, Inc.
Sacrificial layers in selective deposition-based additive manufacturing of parts
JP7047536B2
( en )
*
2018-03-29
2022-04-05
æ ªå¼ä¼ç¤¾ãªã³ã¼
Modeling prediction system, information processing device, program and modeling prediction method
CN112004654B
( en )
*
2018-08-17
2022-05-13
æ æ®åå±å ¬å¸ï¼æé责任åä¼ä¼ä¸
Packing three-dimensional building bed
US20210174594A1
( en )
*
2018-08-28
2021-06-10
Hewlett-Packard Development Company, L.P.
Virtualized environment for three-dimensional printing
CN113766983A
( en )
*
2019-04-26
2021-12-07
西é¨åå·¥ä¸è½¯ä»¶å ¬å¸
A machine learning approach for fatigue life prediction of additively manufactured components
EP3783520A1
( en )
2019-08-21
2021-02-24
DENTSPLY SIRONA Inc.
Method of determining the orientation of a three-dimensional model for additive manufacturing
CN111231302A
( en )
*
2020-01-07
2020-06-05
æ²³åç§æå¤§å¦
Three-dimensional reconstruction and slicing type 3D printing device and method based on laser ranging
US12589553B2
( en )
*
2020-01-15
2026-03-31
Peridot Print Llc
Evaluation of 3D printed objects
WO2021167604A1
( en )
*
2020-02-19
2021-08-26
Hewlett-Packard Development Company, L.P.
Display rendering of nonlinearly scaled 3d parts
US11217013B2
( en )
2020-05-14
2022-01-04
Dassault Systemes Solidworks Corporation
Method for preserving shapes in solid model when distributing material during topological optimization
US11315319B2
( en )
*
2020-05-14
2022-04-26
Dassault Systemes Solidworks Corporation
Method for preserving shapes in solid model when distributing material during topological optimization with distance fields
CN112883616B
( en )
*
2021-02-26
2022-04-22
å±±ä¸å¤§å¦
A 3D printing nozzle path optimization method for fiber-reinforced structures
US12277370B2
( en )
*
2021-06-11
2025-04-15
Accenture Global Solutions Limited
Systems and methods for machine learning based product design automation and optimization
WO2022268718A1
( en )
*
2021-06-25
2022-12-29
Signify Holding B.V.
Rendering a visual representation of a luminaire by using displacement and bump maps
WO2023058087A1
( en )
2021-10-04
2023-04-13
æ ªå¼ä¼ç¤¾ãã³ã³
Data generation method, manufacturing method, processing method, data generation device, computer program, recording medium, and display method
Citations (23)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US5754738A
( en )
*
1996-06-07
1998-05-19
Camc Corporation
Computerized prototyping system employing virtual system design enviroment
US5781446A
( en )
*
1996-05-07
1998-07-14
Flexible Solutions, Inc.
System and method for multi-constraint domain electronic system design mapping
US5876550A
( en )
1988-10-05
1999-03-02
Helisys, Inc.
Laminated object manufacturing apparatus and method
US20020103555A1
( en )
*
2001-01-26
2002-08-01
Wallace Douglas Elmer
Computer system and printed circuit board manufactured in accordance with a quasi-Monte Carlo simulation technique for multi-dimensional spaces
US20030120472A1
( en )
*
2001-12-21
2003-06-26
Caterpillar Inc.
Method and system for providing end-user visualization
US7023441B2
( en )
*
2000-10-21
2006-04-04
Samsung Electronics Co., Ltd.
Shape descriptor extracting method
US20060155418A1
( en )
2003-04-14
2006-07-13
Therics, Inc.
Apparatus, method and article for direct slicing of step based nurbs models for solid freeform fabrication
US20070273896A1
( en )
*
2006-05-26
2007-11-29
Sharp Kabushiki Kaisha
Multi-function peripheral and information acquisition system including a plurality of the multi-function peripherals
US20090012640A1
( en )
2007-07-04
2009-01-08
Industrial Technology Research Institute
3D object fabrication methods and systems
US20120105534A1
( en )
2010-10-27
2012-05-03
International Business Machines Corporation
Inkjet printing of microfluidic channels
US20120105903A1
( en )
*
2010-08-18
2012-05-03
Pettis Nathaniel B
Networked three-dimensional printing
US20120224755A1
( en )
2011-03-02
2012-09-06
Andy Wu
Single-Action Three-Dimensional Model Printing Methods
US20130157013A1
( en )
2010-06-07
2013-06-20
University of the West England, Bristol
Product and process
US20130171431A1
( en )
2011-08-29
2013-07-04
Robert Swartz
Methods and Apparatus for 3D Fabrication
US20130230832A1
( en )
2008-08-21
2013-09-05
Carl Peters
Systems and methods providing an enhanced user experience in a real-time simulated virtual reality welding environment
US20130297059A1
( en )
*
2012-04-09
2013-11-07
Autodesk, Inc.
Three-dimensional printing preparation
US20140086780A1
( en )
*
2012-09-21
2014-03-27
Conformis, Inc.
Methods and systems for optimizing design and manufacture of implant components using solid freeform fabrication
US20140117585A1
( en )
*
2012-10-29
2014-05-01
Makerbot Industries, Llc
Tagged build material for three-dimensional printing
US20150036174A1
( en )
*
2013-08-05
2015-02-05
Makerbot Industries, Llc
Automated model selection
US20150066178A1
( en )
*
2013-08-30
2015-03-05
Adobe Systems Incorporated
Adaptive supports for 3d printing
US20150079327A1
( en )
*
2013-09-18
2015-03-19
Disney Enterprises, Inc.
3d printing with custom surface reflection
US20150269282A1
( en )
2014-03-18
2015-09-24
Palo Alto Research Center Incorporated
Automated metrology and model correction for three dimensional (3d) printability
US20150269289A1
( en )
2014-03-18
2015-09-24
Palo Alto Research Center Incorporated
System for visualizing a three dimensional (3d) model as printed from a 3d printer
2014
2014-03-18
US
US14/217,811
patent/US9946816B2/en
active
Active
2015
2015-03-02
EP
EP15157226.0A
patent/EP2922029B1/en
not_active
Not-in-force
2015-03-06
SG
SG10201501738YA
patent/SG10201501738YA/en
unknown
2015-03-06
SG
SG10201808077YA
patent/SG10201808077YA/en
unknown
Patent Citations (23)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US5876550A
( en )
1988-10-05
1999-03-02
Helisys, Inc.
Laminated object manufacturing apparatus and method
US5781446A
( en )
*
1996-05-07
1998-07-14
Flexible Solutions, Inc.
System and method for multi-constraint domain electronic system design mapping
US5754738A
( en )
*
1996-06-07
1998-05-19
Camc Corporation
Computerized prototyping system employing virtual system design enviroment
US7023441B2
( en )
*
2000-10-21
2006-04-04
Samsung Electronics Co., Ltd.
Shape descriptor extracting method
US20020103555A1
( en )
*
2001-01-26
2002-08-01
Wallace Douglas Elmer
Computer system and printed circuit board manufactured in accordance with a quasi-Monte Carlo simulation technique for multi-dimensional spaces
US20030120472A1
( en )
*
2001-12-21
2003-06-26
Caterpillar Inc.
Method and system for providing end-user visualization
US20060155418A1
( en )
2003-04-14
2006-07-13
Therics, Inc.
Apparatus, method and article for direct slicing of step based nurbs models for solid freeform fabrication
US20070273896A1
( en )
*
2006-05-26
2007-11-29
Sharp Kabushiki Kaisha
Multi-function peripheral and information acquisition system including a plurality of the multi-function peripherals
US20090012640A1
( en )
2007-07-04
2009-01-08
Industrial Technology Research Institute
3D object fabrication methods and systems
US20130230832A1
( en )
2008-08-21
2013-09-05
Carl Peters
Systems and methods providing an enhanced user experience in a real-time simulated virtual reality welding environment
US20130157013A1
( en )
2010-06-07
2013-06-20
University of the West England, Bristol
Product and process
US20120105903A1
( en )
*
2010-08-18
2012-05-03
Pettis Nathaniel B
Networked three-dimensional printing
US20120105534A1
( en )
2010-10-27
2012-05-03
International Business Machines Corporation
Inkjet printing of microfluidic channels
US20120224755A1
( en )
2011-03-02
2012-09-06
Andy Wu
Single-Action Three-Dimensional Model Printing Methods
US20130171431A1
( en )
2011-08-29
2013-07-04
Robert Swartz
Methods and Apparatus for 3D Fabrication
US20130297059A1
( en )
*
2012-04-09
2013-11-07
Autodesk, Inc.
Three-dimensional printing preparation
US20140086780A1
( en )
*
2012-09-21
2014-03-27
Conformis, Inc.
Methods and systems for optimizing design and manufacture of implant components using solid freeform fabrication
US20140117585A1
( en )
*
2012-10-29
2014-05-01
Makerbot Industries, Llc
Tagged build material for three-dimensional printing
US20150036174A1
( en )
*
2013-08-05
2015-02-05
Makerbot Industries, Llc
Automated model selection
US20150066178A1
( en )
*
2013-08-30
2015-03-05
Adobe Systems Incorporated
Adaptive supports for 3d printing
US20150079327A1
( en )
*
2013-09-18
2015-03-19
Disney Enterprises, Inc.
3d printing with custom surface reflection
US20150269282A1
( en )
2014-03-18
2015-09-24
Palo Alto Research Center Incorporated
Automated metrology and model correction for three dimensional (3d) printability
US20150269289A1
( en )
2014-03-18
201