EP4643261A1 - Apparatus and methods for 3d printing using 3d filtering masks - Google Patents

Apparatus and methods for 3d printing using 3d filtering masks

Info

Publication number
EP4643261A1
EP4643261A1 EP23844203.2A EP23844203A EP4643261A1 EP 4643261 A1 EP4643261 A1 EP 4643261A1 EP 23844203 A EP23844203 A EP 23844203A EP 4643261 A1 EP4643261 A1 EP 4643261A1
Authority
EP
European Patent Office
Prior art keywords
mask
model
printing
pixel
material attribute
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.)
Pending
Application number
EP23844203.2A
Other languages
German (de)
French (fr)
Inventor
Naftali Emanuel EDER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Stratasys Ltd
Original Assignee
Stratasys Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Stratasys Ltd filed Critical Stratasys Ltd
Publication of EP4643261A1 publication Critical patent/EP4643261A1/en
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING 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/00Additive 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/30Auxiliary operations or equipment
    • B29C64/386Data acquisition or data processing for additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING 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/00Additive 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/30Auxiliary operations or equipment
    • B29C64/386Data acquisition or data processing for additive manufacturing
    • B29C64/393Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE 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/00Data acquisition or data processing for additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE 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/00Data acquisition or data processing for additive manufacturing
    • B33Y50/02Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/10Additive manufacturing, e.g. three-dimensional [3D] printing

Definitions

  • the present invention relates generally to the field of three-dimensional (3D) printing. More specifically, the present invention relates to apparatus and methods for 3D printing objects using 3D filtering masks as part of pre-print data preparation.
  • 3D objects to be printed by additive manufacturing are typically designed with the use of computer-aided design (CAD) software systems. These systems output 3D models that are then processed by pre-printing “slicer” systems.
  • the slicer systems implement algorithms that divide the 3D models into horizontal layers. Next, these layers (“slices”) are sent to a system that drives a 3D printer to manufacture the desired object by additive manufacturing, that is, by depositing layers of material according to the slices, one on top of the other to form a 3D object.
  • the STL format for example encodes a surface of a 3D model by flat triangular tessellation, that is, the 3D model is a tessellated shell, with the shell tessellation typically defined by triangular faces.
  • the resolution of a 3D model in STL format is improved by decreasing the triangle size, thereby requiring more triangles and thus a larger file size.
  • encoding is typically only an approximation of the original design.
  • OBJ formats can incorporate curved surfaces. Curvature facilitates precise mesh encoding, but also require large file sizes for precise encoding.
  • Embodiments of the present invention provide apparatus and methods for filtering of 3D models with 3D geometry masks to generate layer maps (i.e., “slices”) for 3D printing (i.e., “additive manufacturing”).
  • a system for additive manufacturing of a 3D object includes a processor and associated non-transient memory that includes instructions that, when executed by the processor, perform steps of: receiving first input data corresponding to a 3D model; receiving second input data corresponding to a 3D mask; positioning the 3D model and the 3D mask on a virtual 3D printing tray having a base perpendicular to a 3D printing z-direction, wherein a portion of the 3D mask overlaps a portion of the 3D model; defining a material attribute of the 3D model as a building material; defining a material attribute of the 3D mask as air; and allocating a first printing priority to the 3D model and a second priority to the 3D mask, wherein the second printing priority is set higher than the first printing priority.
  • the system is configured to then slice the 3D model and the 3D mask into a sequence of slices perpendicular to the 3D printing z-direction, wherein each of the slices comprises an array of pixel elements, each pixel element having a pixel position representing an x, y coordinate, wherein a material attribute of each pixel element is selected as a material attribute of a 3D model pixel or a 3D mask pixel at a corresponding pixel position of the respective 3D model or 3D mask, and wherein, for each corresponding pixel position where the 3D model and the 3D mask overlap, the material attribute of the pixel element is selected according to the higher printing priority of the 3D mask.
  • the system may then transmit the sequence of slices to a 3D printer for manufacturing the 3D object according to the material attribute of each selected pixel element of each of the sequence of slices.
  • the manufacturing is performed by an inkjet 3D printer.
  • the 3D model is a first of multiple 3D models.
  • Each of the multiple 3D models has a printing priority less than the mask printing priority, such that the material attribute of each selected pixel is determined by the overlapping 3D model having the highest printing priority where there is no 3D mask overlap and by the 3D mask where there is a 3D mask overlap.
  • the 3D mask is a pin grid converting the 3D model to pins providing flexibility to the 3D model.
  • the 3D mask is defined by a 3D patch texture applied to a 3D patch shape, and by a 3D patch layout that defines an arrangement of multiple copies of the 3D patch shape in three dimensions.
  • FIG. 1 is a schematic block diagram of a system for filtering 3D models with 3D masks in preparation for 3D printing, according to some embodiments of the present invention
  • FIG. 2 is a flowchart of a method for filtering 3D models with 3D masks in preparation for 3D printing, according to some embodiments of the present invention
  • FIG. 3 is a schematic illustration of a 3D model being filtered with a 3D mask during slice generation, according to some embodiments of the present invention
  • FIGs. 4A-B provide a schematic example of a process for printing a 3D model filtered by a 3D mask by the method described herein, according to some embodiments of the present invention
  • FIG. 5 is an additional schematic example of a process for printing a 3D model filtered by a 3D mask by the method described herein, according to some embodiments of the present invention.
  • Fig. 6 is a further schematic example of a process for printing a 3D model filtered by 3D masks by the method described herein, according to some embodiments of the present invention.
  • Fig. 1 is a simplified block diagram depicting a system 10 for preparing 3D models for 3D printing. More detailed embodiments of system 10 are elaborated upon further hereinbelow.
  • System 10 includes multiple sub-systems, which may be implemented as multiple processing platforms or alternatively as a single processing platform.
  • the sub-systems may include a computing device 20, including a processor, a screen and a computer-aided design (CAD) application and a “slicer” or slice processing system 30.
  • the CAD application may be used by 3D model designers to generate 3D models 32. Alternatively, 3D models 32 may be imported into the computing device or into the system and processed therein.
  • the 3D models 32 are data files defining 3D model structures, typically as 3D shells, e.g. in STL or OBJ formats.
  • 3D computing device 20 may also generate a 3D mask 34 for “filtering” of the 3D model(s) or at least part of the 3D model(s).
  • the 3D mask 34 may alternatively be imported into the system or computing device and processed therein.
  • printing parameters and/or printing priorities for the 3D model(s) and the 3D mask(s) may be defined. For example, the printing priority for a 3D mask may be set to override (i.e., be “higher”) the printing priority for a 3D model.
  • the slicer generates a sequence of slices 42 or “slice maps” of the 3D models, filtered by the 3D masks, as described further hereinbelow.
  • Each generated slice includes a 2D array of pixel elements indicating points at which material is to be deposited during printing (i.e., X and Y coordinates of the slice).
  • a sequence of generated slices is sent to a 3D printer 50, which generates a 3D object 60 by additive manufacturing.
  • the 3D printer may be, for example, a 3D inkjet printer.
  • the 3D printer 50 typically has one or more print heads for ejecting print material, depositing the materials in layers according to the sequence of slices, onto a horizontally oriented printing tray.
  • a given 3D project may include one or more 3D models 32 that are to be manufactured together.
  • a slicing process for a multi-print- head 3D printer may receive multiple, overlapping 3D models, referred to as sub-models, each sub-model defining a different print material property (e.g., a different color, print material, etc.).
  • the different sub-models are merged during slicing such that a 3D printer may generate a 3D object that is a composite of the different sub-model properties.
  • the 3D sub-models may relate to each other spatially in a variety of ways.
  • a shell of a first sub-model may include or be engulfed within a shell of a second sub-model.
  • a shell of a first sub-model may also share a volumetric region with a shell of a second sub-model, to produce a volumetric overlapping region between the sub-models.
  • Lipowitch also describes communicating printing parameters to the slicing process to define overlap rules. Such parameters may include rules that determine pixel element properties according to sub-model priorities.
  • a property (e.g., color, material) of the pixel element may be set to match the corresponding property of the overlapping sub-model having the higher or highest priority.
  • a multi-print-head 3D printer (such as Stratasys® PolyJetTM systems) ejects print material at each position defined by pixel elements of a slice, selecting the appropriate print material according to the properties defined for the pixel element.
  • computing device 20 receives a set of one or more 3D models 32 and, in addition, one or more 3D masks 34 for filtering the 3D models, where the masks represent volumes of material that are defined as air material .
  • printing priorities for the 3D masks are set to override (i.e., be “higher”) than printing priorities for the one or more 3D models.
  • the 3D models are typically received as 3D shell structures output from CAD systems.
  • the 3D masks may also be in 3D shell structures output from CAD systems.
  • Fig. 2 is a flowchart of a process 200 implemented by the system 10 for designing and manufacturing 3D models by 3D printing, including filtering 3D models using 3D masks.
  • a computing device (20 of Fig. 1) receives or generates data corresponding to one or more 3D models (e.g., 3D model 32 of Fig. 1) and data corresponding to one or more 3D masks (e.g., 3D mask 34 of Fig. 1) which will be applied to filter the 3D model.
  • 3D models e.g., 3D model 32 of Fig. 1
  • 3D masks e.g., 3D mask 34 of Fig. 1
  • computing device 20 positions and orients the 3D model(s) and 3D mask(s) on a “virtual” printing tray in the computing device’s processor.
  • the computing device positions the one or more 3D masks to virtually cover at least part of the one or more 3D models.
  • the computing device applies printing parameters including material attributes to the one or more 3D models and the one or more 3D masks.
  • the “material attribute” of the one or more 3D models is set to building materials (i.e. one or more building materials for forming the object) and the material attribute of the one or more 3D masks is set to air material (i.e., air).
  • the computing device defines priorities of the one or more 3D models and the one or more 3D masks, wherein the priority of the one or more 3D masks is set to a level that is “higher” than (i.e., takes precedence to) the priority set for the one or more 3D models.
  • the 3D model(s) and overlapping 3D mask(s) are sent to a slice processing system which slices the overlapped 3D model(s) and 3D mask(s) into slices (i.e., slice maps) to be sent to the 3D printer for printing.
  • Slices are generated perpendicular to the z-direction of the 3D printer, that is, parallel to the printing tray.
  • Each slice is defined by a Z coordinate (i.e., height above the printing tray) at which the slice will be printed (i.e., the level at which the print material will be deposited).
  • Each slice comprises an array of pixel elements, each pixel element having a pixel position representing an x, y coordinate.
  • Each pixel element is assigned a material attribute, which is selected as either a building material attribute of a 3D model pixel or as air (also referred to as a “void” when positioned within a volume of print material). Due to the higher priority of the 3D mask, air is assigned to every pixel element for which there is a corresponding location of a 3D mask, in particular any location at which a 3D mask pixel overlays a 3D model pixel.
  • the term pixel element refers to a data structure that includes x, y coordinates, and may also include additional data, such as the material attribute.
  • the generated sequence of slices is transmitted to the 3D printer (e.g., the 3D printer 50 of Fig. 1).
  • the printer typically includes a processor for processing the sequence of slices, typically controlling the selection, for each pixel element, the corresponding printing head and/or printing channel to deposit material according to the pixel element’s material attribute.
  • Embodiments of the invention thus include a practical application for selecting one or more print heads and/or printing channels of a 3D printing machine or printer, including filtering by a 3D mask.
  • Step 214 generates a final 3D object, such as the 3D object 60 of Fig. 1.
  • Fig. 3 is a schematic illustration of a 3D model being “filtered” with a 3D mask during slice generation, as described above with respect to step 212 of process 200.
  • a portion of 3D model 32 overlaps with a portion of 3D mask 34, the overlapping volume being indicated as region 320.
  • Slices such as slice 322 are generated by the slice processing system as described above.
  • slice 322 includes a region 324 where pixels are assigned with a building material, corresponding to the region of model 32 where there is no overlap with 3D mask 34. The boundary of region 324 extends until the region where an overlap with 3D mask 34 occurs.
  • 3D mask 34 Since 3D mask 34 has a higher “printing priority” than 3D model 32, the pixels belonging to region 320 of the slice where there is an overlap between 3D model 32 and 3D mask 34, are assigned with an “air” material (i.e., no building material will be printed as this location).
  • Fig. 4A is a schematic illustration of the process 200 (as described above with respect to Fig. 2), for preparing an exemplary topographical map section 3D model for 3D printing (i.e., additive manufacturing) with mask filtering.
  • Computing device 20 receives input data including a 3D topographical model 402 and a 3D mask 404 in the form of a rectangular block approximately the size of the 3D model.
  • 3D model 402 and 3D mask 404 may be generated by a typical CAD system in any industry standard format, such as an STL formatted file.
  • 3D mask 404 comprises a grid of holes extending from the base to the top (indicated by darker gray dots on the lighter gray surface of the mask).
  • 3D mask 404 which is assigned air material and is defined as having priority (i.e., precedence) over 3D model 402, is positioned to entirely overlap 3D model 402, as can be seen in image 406.
  • the “overlapped” (but distinct) 3D model and 3D mask are sent to a slicer (slice processing system 30) which slices the overlapped 3D model and 3D mask into 2D slices.
  • An exemplary slice is shown in image 408.
  • a sequence of slices generated by the slicer is sent to 3D printer 50 for layer by layer (slice by slice) printing of the desired 3D object 430, typically on a substrate 432.
  • Printed 3D object 430 is shown in Fig.
  • the 3D model 402 is sent to the slicer to be sliced into 2D slices, while the 3D mask 404 is either a single slice or has been pre-sliced into a set of 2D slices. Before printing, the slice or set of slices of 3D mask 404 are overlapped with at least one slice of the 3D model 402, the assigned material of the slices of 3D mask 404 having been defined as having priority of the material/s assigned to 3D model 402.
  • the 3D object 430 that is produced by the process disclosed herein, that is, by mask filtering, may be designed entirely by a CAD system without the methods of the present invention, that is, with air voids specified in the CAD system rather than with subsequent filtering of a 3D model during slicing.
  • a CAD system generating such an output file with a “pin” structure, whereby each pin is defined by tessellation, would require data storage greater by an order of magnitude or more than the combined data size of the 3D model and 3D mask.
  • the processing time for slicing such a tessellated pin structure would be far greater than the processing time required for the slicing process of the present invention.
  • Fig. 5 is an additional example of the process 200 (as described above with respect to Fig. 2).
  • Computing device 20 receives input data including a 3D model 502 and a 3D mask 504, these being examples of the respective 3D model 32 and 3D mask 34 of Fig. 1.
  • the computing device also attributes model parameters, including printing rules and printing priorities for the specific printing project, as described above, with respect to Fig. 1, i.e., parameters 36.)
  • 3D model 502 is shown as a wavy disk.
  • 3D mask 504 (dark lines) provides a pattern that is to be etched into the surface of 3D model 502.
  • the 3D mask pattern 504 is attributed higher priority by computing device 20, and thus, when the overlapping model and mask are sent to the slicer (slice processing system 30), the 3D mask pattern creates voids (air pixels) at the overlapping points in the slices when being printed by 3D printer 50. (The slices are not shown.)
  • the final printed 3D object 530 is a wavy disk whose surface is etched as intended.
  • Fig. 6 shows a further example of process 200 as implemented.
  • Computing device 20 receives or generates input data including a 3D model 602 and a 3D mask 604.
  • the 3D model 602 can be a sphere, e.g., a solid sphere (as shown in the figure).
  • the 3D mask 604 is generated to provide a texture (i.e., pattern) that is to be etched in the surface of the spherical model 602.
  • the 3D mask 604 is generated by applying a 3D patch texture 606 to a spherical shape 610, by applying multiple shaped copies 608 (e.g., hexagonal, square, or triangular- shaped copies) of the 3D patch texture 606 to fully, or partially, cover 3D model 602, for example in one or more locations shown in the spherical shape 610.
  • the 3D mask 604 is configured to etch the patch texture into the surface of 3D model 602, to provide a textured 3D model as shown for example in image 630.
  • a sequence of slices generated by the slice processing system 30 is sent to 3D printer 50 which prints a final 3D object 616, being a textured sphere as intended.
  • the term 3D printing head may refer to a hardware component that may dispense 3D print material at a predefined position.
  • Implementations of commercially available 3D printing heads may include a single channel (e.g., hold a single type or color of print material) or a multiple channel (e.g., hold one or more types or colors of print materials).
  • the term 3D printing head may refer to a dispenser with a single channel, print material or color. It may be appreciated by a person skilled in the art that adaptations may be made so as to relate to printing heads having multiple channels as well.
  • the method embodiments described herein are not constrained to a particular order or sequence. Additionally, some of the described method embodiments or elements thereof can occur or be performed simultaneously, at the same point in time, or concurrently. Additionally, some of the described method embodiments or elements thereof can occur or be performed simultaneously, at the same point in time, or concurrently.
  • a computing device performing methods described herein may include a controller such as a central processing unit (CPU) processor, a chip or any suitable computing or computational device.
  • the computing device may also include an operating system, a memory including executable code, a storage system, and input and output.
  • the controller may be one or more controllers or processors, possibly across multiple units or devices, and may be configured to carry out methods described herein, and/or to execute or act as the various modules, units, etc. More than one computing device may be included, and one or more computing devices may act as the components of a system according to embodiments of the invention.
  • the operating system may be or may include any code segment (e.g., one similar to executable code described herein) designed and/or configured to perform tasks involving coordination, scheduling, arbitration, supervising, controlling or otherwise managing operation of the computing device. Such tasks may be, for example, scheduling execution of software programs or tasks or enabling software programs or other modules or units to communicate.
  • the operating system may be a commercial operating system and may be an optional component, e.g., in some embodiments, a system may include a computing device that does not require or include an operating system.
  • Memory may be or may include, for example, a Random Access Memory (RAM), a read only memory (ROM), a Dynamic RAM (DRAM), a Synchronous DRAM (SD-RAM), a double data rate (DDR) memory chip, a Flash memory, a volatile memory, a non-volatile memory, a cache memory, a buffer, a short-term memory unit, a long-term memory unit, or other suitable memory units or storage units.
  • the memory may be or may include a plurality of possibly different memory units.
  • the memory may be a computer or processor non-transitory readable medium, or a computer non-transitory storage medium, e.g., a RAM.
  • the memory may be a non-transitory storage medium, a hard disk drive, another storage device, etc., and may store instructions or code that when executed by a processor may cause the processor to carry out methods as described herein.
  • the executable code may be any executable code, e.g., an application, a program, a process, task or script. Executable code may be executed by the controller possibly under control of operating system. For example, executable code may be an application loaded into the memory causing the controller to carry out methods described herein.
  • the storage system may be or may include, for example, a flash memory as known in the art, a memory that is internal to, or embedded in, a micro controller or chip as known in the art, a hard disk drive, a CD-Recordable (CD-R) drive, a Blu-ray disk (BD), a universal serial bus (USB) device or other suitable removable and/or fixed storage unit. Content may be stored in storage system and may be loaded into the memory where it may be processed by the controller.
  • the input devices may be or may include any suitable input devices, components or systems, e.g., a detachable keyboard or keypad, a mouse and the like.
  • Output devices may include one or more (possibly detachable) displays or monitors, speakers and/or any other suitable output devices. Any applicable input/output (RO) devices may be connected to the computing device, for example by a wired or wireless network interface card (NIC), a universal serial bus (USB) device or external hard drive may be included with the input and/or output devices
  • the terms “plurality” and “a plurality” as used herein may include, for example, “multiple” or “two or more.”
  • the terms “plurality” or “a plurality” may be used throughout the specification to describe two or more components, devices, elements, units, parameters, or the like.
  • model refers to computer-manipulated data structures, not to physical objects
  • object e.g., “3D object” refers to a physical object, such as one manufactured by 3D printing.
  • set as used herein may include one or more items.

Landscapes

  • Engineering & Computer Science (AREA)
  • Materials Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)

Abstract

Apparatus and methods are provided for slicing a 3D model for 3D printing (430) including: defining a material attribute of the 3D model as a building material; defining a material attribute of a 3D mask overlapping the 3D model as air; allocating a first printing priority to the 3D model (430) and a second priority to the 3D mask, wherein the second printing priority is set higher than the first; slicing the 3D model (430) and the overlapping 3D mask into a sequence of slices, wherein a material attribute of each pixel of each slice is selected as a material attribute of a 3D model pixel or a 3D mask pixel at a corresponding pixel position and, where the 3D model (430) and the 3D mask overlap, the material attribute of the 3D mask pixel is selected according to the higher printing priority.

Description

APPARATUS AND METHODS FOR 3D PRINTING
USING 3D FILTERING MASKS
RELATED APPLICATIONS
[0001] This application claims the benefit of priority of U.S. Provisional Patent Application No. 63/477,714 filed on December 29, 2022, the contents of which are incorporated herein by reference in their entirety.
FIELD OF THE INVENTION
[0002] The present invention relates generally to the field of three-dimensional (3D) printing. More specifically, the present invention relates to apparatus and methods for 3D printing objects using 3D filtering masks as part of pre-print data preparation.
BACKGROUND
[0003] Systems for 3D printing by additive manufacturing have become ubiquitous in both industrial and private sectors and are commonly used to produce custom-made 3D objects from a variety of materials and substances.
[0004] As is known in the art, 3D objects to be printed by additive manufacturing are typically designed with the use of computer-aided design (CAD) software systems. These systems output 3D models that are then processed by pre-printing “slicer” systems. The slicer systems implement algorithms that divide the 3D models into horizontal layers. Next, these layers (“slices”) are sent to a system that drives a 3D printer to manufacture the desired object by additive manufacturing, that is, by depositing layers of material according to the slices, one on top of the other to form a 3D object.
[0005] Inkjet-based 3D printer systems, like the Stratasys PolyJet™ system, eject (or “jet”) photopolymer materials or “inks” onto a build tray (also referred to herein as a “printing tray”). Each drop of material typically has a height of no more than 10 to 32 pm. After deposition on the printing tray, drops are cured with UV light to form solidified layers. [0006] Output from CAD software defining 3D models for printing is generally in the form of STL or OBJ formats. The STL format for example encodes a surface of a 3D model by flat triangular tessellation, that is, the 3D model is a tessellated shell, with the shell tessellation typically defined by triangular faces. The resolution of a 3D model in STL format is improved by decreasing the triangle size, thereby requiring more triangles and thus a larger file size. Because the triangle surfaces are flat, encoding is typically only an approximation of the original design. By contrast, OBJ formats can incorporate curved surfaces. Curvature facilitates precise mesh encoding, but also require large file sizes for precise encoding.
[0007] Methods for reducing file data sizes without impinging 3D resolution would improve data transfer rates and overall process efficiency.
SUMMARY
[0008] Embodiments of the present invention provide apparatus and methods for filtering of 3D models with 3D geometry masks to generate layer maps (i.e., “slices”) for 3D printing (i.e., “additive manufacturing”). A system for additive manufacturing of a 3D object includes a processor and associated non-transient memory that includes instructions that, when executed by the processor, perform steps of: receiving first input data corresponding to a 3D model; receiving second input data corresponding to a 3D mask; positioning the 3D model and the 3D mask on a virtual 3D printing tray having a base perpendicular to a 3D printing z-direction, wherein a portion of the 3D mask overlaps a portion of the 3D model; defining a material attribute of the 3D model as a building material; defining a material attribute of the 3D mask as air; and allocating a first printing priority to the 3D model and a second priority to the 3D mask, wherein the second printing priority is set higher than the first printing priority. The system is configured to then slice the 3D model and the 3D mask into a sequence of slices perpendicular to the 3D printing z-direction, wherein each of the slices comprises an array of pixel elements, each pixel element having a pixel position representing an x, y coordinate, wherein a material attribute of each pixel element is selected as a material attribute of a 3D model pixel or a 3D mask pixel at a corresponding pixel position of the respective 3D model or 3D mask, and wherein, for each corresponding pixel position where the 3D model and the 3D mask overlap, the material attribute of the pixel element is selected according to the higher printing priority of the 3D mask. The system may then transmit the sequence of slices to a 3D printer for manufacturing the 3D object according to the material attribute of each selected pixel element of each of the sequence of slices.
[0009] In some embodiments, the manufacturing is performed by an inkjet 3D printer.
[0010] In some embodiments, the 3D model is a first of multiple 3D models. Each of the multiple 3D models has a printing priority less than the mask printing priority, such that the material attribute of each selected pixel is determined by the overlapping 3D model having the highest printing priority where there is no 3D mask overlap and by the 3D mask where there is a 3D mask overlap.
[0011] In some embodiments, the 3D mask is a pin grid converting the 3D model to pins providing flexibility to the 3D model.
[0012] In some embodiments, the 3D mask is defined by a 3D patch texture applied to a 3D patch shape, and by a 3D patch layout that defines an arrangement of multiple copies of the 3D patch shape in three dimensions. BRIEF DESCRIPTION OF DRAWINGS
[0013] For a better understanding of various embodiments of the invention and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings. Structural details of the invention are shown to provide a fundamental understanding of the invention, the description, taken with the drawings, making apparent to those skilled in the art how the several forms of the invention may be embodied in practice.
[0014] In the accompanying drawings:
[0015] Fig. 1 is a schematic block diagram of a system for filtering 3D models with 3D masks in preparation for 3D printing, according to some embodiments of the present invention;
[0016] Fig. 2 is a flowchart of a method for filtering 3D models with 3D masks in preparation for 3D printing, according to some embodiments of the present invention;
[0017] Fig. 3 is a schematic illustration of a 3D model being filtered with a 3D mask during slice generation, according to some embodiments of the present invention;
[0018] Figs. 4A-B provide a schematic example of a process for printing a 3D model filtered by a 3D mask by the method described herein, according to some embodiments of the present invention;
[0019] Fig. 5 is an additional schematic example of a process for printing a 3D model filtered by a 3D mask by the method described herein, according to some embodiments of the present invention; and
[0020] Fig. 6 is a further schematic example of a process for printing a 3D model filtered by 3D masks by the method described herein, according to some embodiments of the present invention. DETAILED DESCRIPTION
[0021] It is to be understood that the invention and its application are not limited to the system and methods described below or to the arrangement of the components set forth or illustrated in the drawings, but are applicable to embodiments that may be practiced or carried out in various ways.
[0022] Reference is now made to Fig. 1, which is a simplified block diagram depicting a system 10 for preparing 3D models for 3D printing. More detailed embodiments of system 10 are elaborated upon further hereinbelow.
[0023] Arrows that are shown in Fig. 1 connecting elements of system 10 indicate typical data flow through the system, whereby data may be transmitted between elements by any known communications means, e.g., via a communication network such as the internet. System 10 includes multiple sub-systems, which may be implemented as multiple processing platforms or alternatively as a single processing platform. The sub-systems may include a computing device 20, including a processor, a screen and a computer-aided design (CAD) application and a “slicer” or slice processing system 30. The CAD application may be used by 3D model designers to generate 3D models 32. Alternatively, 3D models 32 may be imported into the computing device or into the system and processed therein. The 3D models 32 are data files defining 3D model structures, typically as 3D shells, e.g. in STL or OBJ formats. 3D computing device 20 may also generate a 3D mask 34 for “filtering” of the 3D model(s) or at least part of the 3D model(s). The 3D mask 34 may alternatively be imported into the system or computing device and processed therein. Using the computing device, printing parameters and/or printing priorities for the 3D model(s) and the 3D mask(s) may be defined. For example, the printing priority for a 3D mask may be set to override (i.e., be “higher”) the printing priority for a 3D model. [0024] A slicer 30, also referred to herein as a “slice processing system”, receives data input from the computing device 20 that includes the one or more 3D models 32, the one or more 3D masks 34 and the printing parameters 36. The slicer generates a sequence of slices 42 or “slice maps” of the 3D models, filtered by the 3D masks, as described further hereinbelow.
[0025] Each generated slice includes a 2D array of pixel elements indicating points at which material is to be deposited during printing (i.e., X and Y coordinates of the slice). A sequence of generated slices is sent to a 3D printer 50, which generates a 3D object 60 by additive manufacturing. The 3D printer may be, for example, a 3D inkjet printer. The 3D printer 50 typically has one or more print heads for ejecting print material, depositing the materials in layers according to the sequence of slices, onto a horizontally oriented printing tray.
[0026] A given 3D project may include one or more 3D models 32 that are to be manufactured together. As described in international patent application W02020/250216, “System and method for selection of a print head of a three-dimensional printer,” to Lipowitch, which is incorporated herein by reference, a slicing process for a multi-print- head 3D printer may receive multiple, overlapping 3D models, referred to as sub-models, each sub-model defining a different print material property (e.g., a different color, print material, etc.). The different sub-models are merged during slicing such that a 3D printer may generate a 3D object that is a composite of the different sub-model properties.
[0027] The 3D sub-models may relate to each other spatially in a variety of ways. For example, a shell of a first sub-model may include or be engulfed within a shell of a second sub-model. A shell of a first sub-model may also share a volumetric region with a shell of a second sub-model, to produce a volumetric overlapping region between the sub-models. [0028] Lipowitch also describes communicating printing parameters to the slicing process to define overlap rules. Such parameters may include rules that determine pixel element properties according to sub-model priorities. For example, when a given pixel element of a slice is in an overlapping region between two or more sub-models, a property (e.g., color, material) of the pixel element may be set to match the corresponding property of the overlapping sub-model having the higher or highest priority. A multi-print-head 3D printer (such as Stratasys® PolyJet™ systems) ejects print material at each position defined by pixel elements of a slice, selecting the appropriate print material according to the properties defined for the pixel element.
[0029] In embodiments of the present invention, computing device 20 receives a set of one or more 3D models 32 and, in addition, one or more 3D masks 34 for filtering the 3D models, where the masks represent volumes of material that are defined as air material . Typically, printing priorities for the 3D masks are set to override (i.e., be “higher”) than printing priorities for the one or more 3D models. As described above, the 3D models are typically received as 3D shell structures output from CAD systems. The 3D masks may also be in 3D shell structures output from CAD systems.
[0030] Fig. 2 is a flowchart of a process 200 implemented by the system 10 for designing and manufacturing 3D models by 3D printing, including filtering 3D models using 3D masks.
[0031] At step 202, a computing device (20 of Fig. 1) receives or generates data corresponding to one or more 3D models (e.g., 3D model 32 of Fig. 1) and data corresponding to one or more 3D masks (e.g., 3D mask 34 of Fig. 1) which will be applied to filter the 3D model.
[0032] At step 204, computing device 20 positions and orients the 3D model(s) and 3D mask(s) on a “virtual” printing tray in the computing device’s processor.
[0033] At step 206, the computing device positions the one or more 3D masks to virtually cover at least part of the one or more 3D models.
[0034] At step 208, the computing device applies printing parameters including material attributes to the one or more 3D models and the one or more 3D masks. The “material attribute” of the one or more 3D models is set to building materials (i.e. one or more building materials for forming the object) and the material attribute of the one or more 3D masks is set to air material (i.e., air).
[0035] At step 210, the computing device defines priorities of the one or more 3D models and the one or more 3D masks, wherein the priority of the one or more 3D masks is set to a level that is “higher” than (i.e., takes precedence to) the priority set for the one or more 3D models.
[0036] At step 212, the 3D model(s) and overlapping 3D mask(s) are sent to a slice processing system which slices the overlapped 3D model(s) and 3D mask(s) into slices (i.e., slice maps) to be sent to the 3D printer for printing. Slices are generated perpendicular to the z-direction of the 3D printer, that is, parallel to the printing tray. Each slice is defined by a Z coordinate (i.e., height above the printing tray) at which the slice will be printed (i.e., the level at which the print material will be deposited).
[0037] Each slice comprises an array of pixel elements, each pixel element having a pixel position representing an x, y coordinate. Each pixel element is assigned a material attribute, which is selected as either a building material attribute of a 3D model pixel or as air (also referred to as a “void” when positioned within a volume of print material). Due to the higher priority of the 3D mask, air is assigned to every pixel element for which there is a corresponding location of a 3D mask, in particular any location at which a 3D mask pixel overlays a 3D model pixel. (Note that air is also assigned as the material attribute to a pixel element if there is no portion of a 3D model, that is, no “voxel” of any 3D model, at the corresponding position of a given slice.) As described above, when multiple 3D model(s) pixels and 3D mask(s) pixels overlap at any given point, the air material attribute of the 3D mask pixel takes precedence over the building material attribute of the 3D model pixel. (Note that hereinbelow, the term pixel element refers to a data structure that includes x, y coordinates, and may also include additional data, such as the material attribute.)
[0038] At step 214, the generated sequence of slices is transmitted to the 3D printer (e.g., the 3D printer 50 of Fig. 1). The printer typically includes a processor for processing the sequence of slices, typically controlling the selection, for each pixel element, the corresponding printing head and/or printing channel to deposit material according to the pixel element’s material attribute. Embodiments of the invention thus include a practical application for selecting one or more print heads and/or printing channels of a 3D printing machine or printer, including filtering by a 3D mask. Step 214 generates a final 3D object, such as the 3D object 60 of Fig. 1.
[0039] Fig. 3 is a schematic illustration of a 3D model being “filtered” with a 3D mask during slice generation, as described above with respect to step 212 of process 200. A portion of 3D model 32 overlaps with a portion of 3D mask 34, the overlapping volume being indicated as region 320. Slices such as slice 322 are generated by the slice processing system as described above. As shown, slice 322 includes a region 324 where pixels are assigned with a building material, corresponding to the region of model 32 where there is no overlap with 3D mask 34. The boundary of region 324 extends until the region where an overlap with 3D mask 34 occurs. Since 3D mask 34 has a higher “printing priority” than 3D model 32, the pixels belonging to region 320 of the slice where there is an overlap between 3D model 32 and 3D mask 34, are assigned with an “air” material (i.e., no building material will be printed as this location).
[0040] EXAMPLES
[0041] Example 1
[0042] Fig. 4A is a schematic illustration of the process 200 (as described above with respect to Fig. 2), for preparing an exemplary topographical map section 3D model for 3D printing (i.e., additive manufacturing) with mask filtering.
[0043] Computing device 20 receives input data including a 3D topographical model 402 and a 3D mask 404 in the form of a rectangular block approximately the size of the 3D model. 3D model 402 and 3D mask 404 may be generated by a typical CAD system in any industry standard format, such as an STL formatted file. 3D mask 404 comprises a grid of holes extending from the base to the top (indicated by darker gray dots on the lighter gray surface of the mask).
[0044] In computing device 20, 3D mask 404, which is assigned air material and is defined as having priority (i.e., precedence) over 3D model 402, is positioned to entirely overlap 3D model 402, as can be seen in image 406. The “overlapped” (but distinct) 3D model and 3D mask are sent to a slicer (slice processing system 30) which slices the overlapped 3D model and 3D mask into 2D slices. An exemplary slice is shown in image 408. A sequence of slices generated by the slicer is sent to 3D printer 50 for layer by layer (slice by slice) printing of the desired 3D object 430, typically on a substrate 432. Printed 3D object 430 is shown in Fig. 4B as having been printed on a textile material substrate 432 as an exemplary application of the invention. The resulting air-pin structure of 3D object 430 gives the object flexibility to bend and twist with the same flexibility as the textile (i.e., fabric), which may be, for example, an item of clothing. [0045] In some other embodiments, the 3D model 402 is sent to the slicer to be sliced into 2D slices, while the 3D mask 404 is either a single slice or has been pre-sliced into a set of 2D slices. Before printing, the slice or set of slices of 3D mask 404 are overlapped with at least one slice of the 3D model 402, the assigned material of the slices of 3D mask 404 having been defined as having priority of the material/s assigned to 3D model 402.
[0046] The 3D object 430 that is produced by the process disclosed herein, that is, by mask filtering, may be designed entirely by a CAD system without the methods of the present invention, that is, with air voids specified in the CAD system rather than with subsequent filtering of a 3D model during slicing. However, a CAD system generating such an output file with a “pin” structure, whereby each pin is defined by tessellation, would require data storage greater by an order of magnitude or more than the combined data size of the 3D model and 3D mask. In addition, the processing time for slicing such a tessellated pin structure would be far greater than the processing time required for the slicing process of the present invention.
[0047] Example 2
[0048] Fig. 5 is an additional example of the process 200 (as described above with respect to Fig. 2). Computing device 20 receives input data including a 3D model 502 and a 3D mask 504, these being examples of the respective 3D model 32 and 3D mask 34 of Fig. 1. (The computing device also attributes model parameters, including printing rules and printing priorities for the specific printing project, as described above, with respect to Fig. 1, i.e., parameters 36.)
[0049] 3D model 502 is shown as a wavy disk. 3D mask 504 (dark lines) provides a pattern that is to be etched into the surface of 3D model 502. The 3D mask pattern 504 is attributed higher priority by computing device 20, and thus, when the overlapping model and mask are sent to the slicer (slice processing system 30), the 3D mask pattern creates voids (air pixels) at the overlapping points in the slices when being printed by 3D printer 50. (The slices are not shown.) The final printed 3D object 530 is a wavy disk whose surface is etched as intended.
[0050] Example 3
[0051] Fig. 6 shows a further example of process 200 as implemented. Computing device 20 receives or generates input data including a 3D model 602 and a 3D mask 604. In some non-limiting examples, the 3D model 602 can be a sphere, e.g., a solid sphere (as shown in the figure). The 3D mask 604 is generated to provide a texture (i.e., pattern) that is to be etched in the surface of the spherical model 602. The 3D mask 604 is generated by applying a 3D patch texture 606 to a spherical shape 610, by applying multiple shaped copies 608 (e.g., hexagonal, square, or triangular- shaped copies) of the 3D patch texture 606 to fully, or partially, cover 3D model 602, for example in one or more locations shown in the spherical shape 610. The 3D mask 604 is configured to etch the patch texture into the surface of 3D model 602, to provide a textured 3D model as shown for example in image 630.
[0052] A sequence of slices generated by the slice processing system 30 is sent to 3D printer 50 which prints a final 3D object 616, being a textured sphere as intended.
[0053] As known in the art, the term 3D printing head may refer to a hardware component that may dispense 3D print material at a predefined position. Implementations of commercially available 3D printing heads may include a single channel (e.g., hold a single type or color of print material) or a multiple channel (e.g., hold one or more types or colors of print materials). For the purpose of clarity, in the context of this document, the term 3D printing head may refer to a dispenser with a single channel, print material or color. It may be appreciated by a person skilled in the art that adaptations may be made so as to relate to printing heads having multiple channels as well.
[0054] It is to be understood that numerous specific details have been set forth in order to provide a thorough understanding of the invention. However the present invention may be practiced without these specific details. In other instances, well-known methods, procedures and components have not been described in detail so as not to obscure the present invention. Some features or elements described with respect to one embodiment may be combined with features or elements described with respect to other embodiments. For the sake of clarity, discussion of same or similar features or elements may not be repeated.
[0055] Although embodiments of the invention are not limited in this regard, discussions utilizing terms such as, for example, “processing,” “computing,” “calculating,” “determining,” “establishing”, “analyzing”, “checking”, or the like, may refer to operation(s) and/or process(es) of a computer, a computing platform, a computing system, or other electronic computing device, that manipulates and/or transforms data represented as physical (e.g., electronic) quantities within the computer's registers and/or memories into other data similarly represented as physical quantities within the computer's registers and/or memories or other information non-transitory storage medium that may store instructions to perform operations and/or processes.
[0056] Unless explicitly stated, the method embodiments described herein are not constrained to a particular order or sequence. Additionally, some of the described method embodiments or elements thereof can occur or be performed simultaneously, at the same point in time, or concurrently. Additionally, some of the described method embodiments or elements thereof can occur or be performed simultaneously, at the same point in time, or concurrently.
[0057] A computing device performing methods described herein may include a controller such as a central processing unit (CPU) processor, a chip or any suitable computing or computational device. The computing device may also include an operating system, a memory including executable code, a storage system, and input and output. The controller may be one or more controllers or processors, possibly across multiple units or devices, and may be configured to carry out methods described herein, and/or to execute or act as the various modules, units, etc. More than one computing device may be included, and one or more computing devices may act as the components of a system according to embodiments of the invention.
[0058] The operating system may be or may include any code segment (e.g., one similar to executable code described herein) designed and/or configured to perform tasks involving coordination, scheduling, arbitration, supervising, controlling or otherwise managing operation of the computing device. Such tasks may be, for example, scheduling execution of software programs or tasks or enabling software programs or other modules or units to communicate. The operating system may be a commercial operating system and may be an optional component, e.g., in some embodiments, a system may include a computing device that does not require or include an operating system.
[0059] Memory may be or may include, for example, a Random Access Memory (RAM), a read only memory (ROM), a Dynamic RAM (DRAM), a Synchronous DRAM (SD-RAM), a double data rate (DDR) memory chip, a Flash memory, a volatile memory, a non-volatile memory, a cache memory, a buffer, a short-term memory unit, a long-term memory unit, or other suitable memory units or storage units. The memory may be or may include a plurality of possibly different memory units. The memory may be a computer or processor non-transitory readable medium, or a computer non-transitory storage medium, e.g., a RAM. In some embodiments, the memory may be a non-transitory storage medium, a hard disk drive, another storage device, etc., and may store instructions or code that when executed by a processor may cause the processor to carry out methods as described herein. [0060] The executable code may be any executable code, e.g., an application, a program, a process, task or script. Executable code may be executed by the controller possibly under control of operating system. For example, executable code may be an application loaded into the memory causing the controller to carry out methods described herein. The storage system may be or may include, for example, a flash memory as known in the art, a memory that is internal to, or embedded in, a micro controller or chip as known in the art, a hard disk drive, a CD-Recordable (CD-R) drive, a Blu-ray disk (BD), a universal serial bus (USB) device or other suitable removable and/or fixed storage unit. Content may be stored in storage system and may be loaded into the memory where it may be processed by the controller. The input devices may be or may include any suitable input devices, components or systems, e.g., a detachable keyboard or keypad, a mouse and the like. Output devices may include one or more (possibly detachable) displays or monitors, speakers and/or any other suitable output devices. Any applicable input/output (RO) devices may be connected to the computing device, for example by a wired or wireless network interface card (NIC), a universal serial bus (USB) device or external hard drive may be included with the input and/or output devices.
[0061] In addition, although embodiments of the invention are not limited in this regard, the terms “plurality” and “a plurality” as used herein may include, for example, “multiple” or “two or more.” The terms “plurality” or “a plurality” may be used throughout the specification to describe two or more components, devices, elements, units, parameters, or the like. It is to be understood that the terms “model,” “mask,” and “virtual 3D printing tray,” as used herein, refer to computer-manipulated data structures, not to physical objects, whereas the term “object,” e.g., “3D object,” refers to a physical object, such as one manufactured by 3D printing. The term “set” as used herein may include one or more items.

Claims

1. A method for additive manufacturing of a 3D object, comprising: i) receiving first input data corresponding to a 3D model; ii) receiving second input data corresponding to a 3D mask; iii) positioning the 3D model and the 3D mask on a virtual 3D printing tray having a base perpendicular to a 3D printing z-direction, wherein a portion of the 3D mask overlaps a portion of the 3D model; iv) defining a material attribute of the 3D model as a building material; v) defining a material attribute of the 3D mask as air; vi) allocating a first printing priority to the 3D model and a second priority to the 3D mask, wherein the second printing priority is set higher than the first printing priority; vii) slicing the 3D model and the 3D mask into a sequence of slices perpendicular to the 3D printing z-direction, wherein each of the slices comprises an array of pixel elements, each pixel element having a pixel position representing an x, y coordinate, wherein a material attribute of each pixel element is selected as a material attribute of a 3D model pixel or a 3D mask pixel at a corresponding pixel position of the respective 3D model or 3D mask, wherein, for each corresponding pixel position where the 3D model and the 3D mask overlap, the material attribute of the pixel element is selected according to the higher printing priority of the 3D mask; and viii) manufacturing the 3D object according to the material attribute of each selected pixel element of each of the sequence of slices.
2. The method of claim 1, wherein the manufacturing is performed by an inkjet 3D printer.
3. The method of claim 1, wherein the 3D model is a first of multiple 3D models, wherein each of the multiple 3D models has a printing priority less than the mask printing priority, such that the material attribute of each selected pixel element is determined by the overlapping 3D model having the highest printing priority, where there is no 3D mask overlap, and by the 3D mask where there is a 3D mask overlap.
4. The method of claim 1, wherein the 3D mask is a pin grid converting the 3D model to pins providing flexibility to the 3D model.
5. The method of claim 1, wherein the 3D mask is defined by a 3D patch texture applied to a 3D patch shape, and by a 3D patch layout that defines an arrangement of multiple copies of the 3D patch shape in three dimensions.
6. A system for additive manufacturing of a 3D object, comprising a processor and associated non-transient memory including instructions that, when executed by the processor, perform steps of: i) receiving first input data corresponding to a 3D model; ii) receiving second input data corresponding to a 3D mask; iii) positioning the 3D model and the 3D mask on a virtual 3D printing tray having a base perpendicular to a 3D printing z-direction, wherein a portion of the 3D mask overlaps a portion of the 3D model; iv) defining a material attribute of the 3D model as a building material; v) defining a material attribute of the 3D mask as air; vi) allocating a first printing priority to the 3D model and a second priority to the 3D mask, wherein the second printing priority is set higher than the first printing priority; vii) slicing the 3D model and the 3D mask into a sequence of slices perpendicular to the 3D printing z-direction, wherein each of the slices comprises an array of pixel elements, each pixel element having a pixel position representing an x, y coordinate, wherein a material attribute of each pixel element is selected as a material attribute of a 3D model pixel or a 3D mask pixel at a corresponding pixel position of the respective 3D model or 3D mask, wherein, for each corresponding pixel position where the 3D model and the 3D mask overlap, the material attribute of the pixel element is selected according to the higher printing priority of the 3D mask; and viii) transmitting the sequence of slices to a 3D printer for manufacturing the 3D object according to the material attribute of each selected pixel element of each of the sequence of slices.
7. The system of claim 1, wherein the manufacturing is performed by an inkjet 3D printer.
8. The system of claim 1, wherein the 3D model is a first of multiple 3D models, wherein each of the multiple 3D models has a printing priority less than the mask printing priority, such that the material attribute of each selected pixel is determined by the overlapping 3D model having the highest printing priority where there is no 3D mask overlap and by the 3D mask where there is a 3D mask overlap.
9. The system of claim 1, wherein the 3D mask is a pin grid converting the 3D model to pins providing flexibility to the 3D model.
10. The system of claim 1, wherein the 3D mask is defined by a 3D patch texture applied to a 3D patch shape, and by a 3D patch layout that defines an arrangement of multiple copies of the 3D patch shape in three dimensions.
EP23844203.2A 2022-12-29 2023-12-21 Apparatus and methods for 3d printing using 3d filtering masks Pending EP4643261A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263477714P 2022-12-29 2022-12-29
PCT/IL2023/051293 WO2024142044A1 (en) 2022-12-29 2023-12-21 Apparatus and methods for 3d printing using 3d filtering masks

Publications (1)

Publication Number Publication Date
EP4643261A1 true EP4643261A1 (en) 2025-11-05

Family

ID=89663371

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23844203.2A Pending EP4643261A1 (en) 2022-12-29 2023-12-21 Apparatus and methods for 3d printing using 3d filtering masks

Country Status (3)

Country Link
EP (1) EP4643261A1 (en)
IL (1) IL321605A (en)
WO (1) WO2024142044A1 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020250216A1 (en) 2019-06-12 2020-12-17 Stratasys Ltd. System and method for selection of a print head of a three-dimensional printer

Also Published As

Publication number Publication date
IL321605A (en) 2025-08-01
WO2024142044A1 (en) 2024-07-04

Similar Documents

Publication Publication Date Title
US11275353B2 (en) Creating a voxel representation of a three dimensional (3-D) object
EP2969483B1 (en) Slicing and/or texturing for three-dimensional printing
CN107206696B (en) Three-dimensional object substructure
US20230256682A1 (en) Method and system for rendering data for addressable dispensing
CN111319264B (en) Data processing method and 3D printing device applied to 3D printing equipment
CN113681898A (en) Three-dimensional object printing method, data processing device and computer equipment
CN113619122A (en) Three-dimensional object printing method, device, equipment and storage medium
JP2020006679A (en) Inkjet width adjustment method and 3D printing equipment
CN114750410A (en) Method, apparatus, device, storage medium and program product for 3D printing
US12552103B2 (en) System and method for selection of a print head of a three-dimensional printer
EP4643261A1 (en) Apparatus and methods for 3d printing using 3d filtering masks
US12353799B2 (en) Generation of an object model for three dimensional printers
CN116766597B (en) Three-dimensional printing method, device, equipment and storage medium
US12594726B2 (en) Determining whether using build data will result in generating an object with a generation defect
US12547149B2 (en) System and method for printing a three-dimensional object using a modified mesh file
WO2026046103A1 (en) Method for determining slice information of three-dimensional polygonal geometric body model, and printer
CN121004760A (en) Method and related apparatus for generating slice layer images
HK1215556B (en) Slicing and/or texturing for three-dimensional printing

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250725

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)