You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Sameer Puri 7d9ba355d1
Add viewbox handling, fix ellipse handling for large_arc case
6 years ago
examples Use lsys output as examples 6 years ago
src Add viewbox handling, fix ellipse handling for large_arc case 6 years ago
.gitignore Initial commit 6 years ago
Cargo.lock Bump sierpinski size 6 years ago
Cargo.toml Bump sierpinski size 6 years ago
LICENSE Bump sierpinski size 6 years ago
README.md Add viewbox handling, fix ellipse handling for large_arc case 6 years ago

README.md

svg2gcode

Convert any SVG 1.1 path to gcode for a pen plotter, laser engraver, etc.

TODO

  • Support all path variants
  • Support group and path transforms
  • Biarc interpolation (G2/G3 instead of many G1)
  • Px, pc, in to mm
  • Configurable DPI for px/pc to mm

Known bugs & whether fixed

  • Smooth curves should not use the control point when the previous curve is not of the same type (quadratic -> smooth cubic, cubic -> smooth quadratic)
  • Image coordinates mirrored in the y-axis because SVGs uses upper left corner as (0,0) while GCode uses lower left as (0,0)
  • Close path command connects back to (0.0, 0.0) instead of the last move
  • Ellipse paths are dubious -- large_arc, sweep may need to be inverted