I have a SVG path, which is filled with a pattern. The pattern itself is a set of paths. I want to reify the pattern as applied to the path -- turn it into a set of first-class objects which I can manipulate (and which Ponoko can correctly handle). In other words, if the pattern is a checkerboard of black and white squares, I want to end up with 64 square path objects at the end of the operation.
3 Answers
Don't use Inkscape's Pattern functionality if you want to use a laser cutter, because there is no way to expand an entire Pattern fill to individual objects.
Instead, create your pattern as individual squares. It's not too difficult.
Create a tiled/repeating pattern by copying and pasting squares. Use Snapping to help you position them correctly.
Make the entire pattern into a combined path by selecting all the squares and click Path > Union
Place the shape to be filled underneath the squares. In the example below I used a heart shape.
Select the squares and the shape and click Path > Division
This will result in a shape with all the individual squares cut out.
For example:
- Finally, select and fill the individual pieces.
The result is a shape filled with individual objects which your laser cutter should be able to cut.
-
1This is a very straight-forward and manual solution, perfect for small areas and new users. If you are an advanced user or have a more complex pattern that cannot be made by simply snapping objects to each other, you could try to use the 'tiled clones' feature to create the tiles instead. For hatch patterns, there's an extension that can create hatch fills for paths: wiki.evilmadscientist.com/Creating_filled_regions , and Gcodetools also have an 'area fill' option, that draws different patterns, for example, concentric lines.– MoiniJun 20, 2018 at 20:45
-
@Moini Absolutely, for more complex patterns tiled clones would be an excellent solution. Jun 21, 2018 at 8:22
There doesn't seem to be a way to do this so I did something similar to DaveMirez, but instead of a screenshot, I used the PNG export function.
I created the patterned object with the pattern exactly how I wanted it, then selected the object and then File->Export PNG Image. Within the export dialog, I made sure the Selection button at the top was highlighted, bumped the dpi up to 300 in the Image Size section, and made sure "Hide all except selected" was checked. Once I exported this image I could File->Import it and, accepting the defaults (dpi from file, none image rendering mode), the image is imported at the correct size. I can use cusp node snapping to align the newly imported image to the previous object so that it's in the exact right position as well.
When doing the Path->Trace Bitmap, I make sure not to check Speckles, Smooth Corners, or Optimize. I want it to be as true a trace as possible. When the trace is applied, you now have a path that matches the original pattern. You can move this to the bottom and delete the imported image as well as the original object.
My end goal was to have the individual strips in the pattern as individual paths so my next step is to select the new path and Path->Break Apart.
I wanted to create a voronoi pattern to lasercut/laser, and came across the same problem when i tried importing the pattern to autolaser.
Solution: screenshot pattern, import as jpg, and trace with color-quantization, save as svg or dxf, and import. Works reasonably well, but you lose some quality with complex patterns.