support for <polygon> elements
Haldean Brown
4 years ago
409 | 409 | (list '(:G . 2) (cons :X xx) (cons :Y yy) (cons :I (- r)) '(:J . 0)) |
410 | 410 | (list '(:G . 0) '(:Z . 1)) |
411 | 411 | )))) |
412 | (defun load-unxf-polygon (svgm d) | |
413 | (let ((points (load-path-args (cadr (assoc "points" (cadr d) :test #'string-equal))))) | |
414 | (run-stanzas (append (list (list #\M (first points) (second points))) | |
415 | (normalize-stanza (cons #\L (cddr points)))) | |
416 | svgm) | |
417 | )) | |
412 | 418 | |
413 | 419 | (defun load-unxf-gcode (svgm data) |
414 | 420 | (funcall (alexandria:switch ((caar data) :test #'string-equal) |
415 | 421 | ("path" #'load-unxf-path) |
416 | 422 | ("line" #'load-unxf-line) |
417 | 423 | ("circle" #'load-unxf-circle) |
424 | ("polygon" #'load-unxf-polygon) | |
418 | 425 | (otherwise (lambda (svgm &rest _) svgm)) |
419 | 426 | ) |
420 | 427 | svgm data)) |