Inkscape extensions

Tcnc

An Inkscape extension that will output G-code from selected paths. The G-code is suitable for a CNC machine that has a tangential tool (ie a knife or a brush).

class tcnc.Tcnc[source]

Bases: inkscape.inkext.InkscapeExtension

Inkscape plugin that converts selected SVG elements into gcode suitable for a four axis (XYZA) CNC machine with a tangential tool, such as a knife or a brush, that rotates about the Z axis.

OPTIONSPEC = (<ExtOption at 0x7f0f7a661950: --origin-ref>, <ExtOption at 0x7f0f7a661ea8: --path-sort-method>, <ExtOption at 0x7f0f7a661710: --biarc-tolerance>, <ExtOption at 0x7f0f7a661cf8: --biarc-max-depth>, <ExtOption at 0x7f0f7a661638: --line-flatness>, <ExtOption at 0x7f0f7a661488: --min-arc-radius>, <ExtOption at 0x7f0f7a6611b8: --tolerance>, <ExtOption at 0x7f0f7a661170: --gcode-units>, <ExtOption at 0x7f0f7a661dd0: --xy-feed>, <ExtOption at 0x7f0f7a661c20: --z-feed>, <ExtOption at 0x7f0f7a661ab8: --a-feed>, <ExtOption at 0x7f0f7a661878: --z-safe>, <ExtOption at 0x7f0f7a6e3170: --z-wait>, <ExtOption at 0x7f0f7a0a3320: --blend-mode>, <ExtOption at 0x7f0f7a0a3878: --blend-tolerance>, <ExtOption at 0x7f0f7a0a3170: --disable-tangent>, <ExtOption at 0x7f0f7a0a3c20: --z-depth>, <ExtOption at 0x7f0f7a0a3bd8: --z-step>, <ExtOption at 0x7f0f7a0a3ea8: --tool-width>, <ExtOption at 0x7f0f7a0a3950: --a-feed-match>, <ExtOption at 0x7f0f7a0a3c68: --tool-trail-offset>, <ExtOption at 0x7f0f7a650bd8: --a-offset>, <ExtOption at 0x7f0f7a6504d0: --allow-tool-reversal>, <ExtOption at 0x7f0f7a650050: --tool-wait>, <ExtOption at 0x7f0f7a650878: --spindle-mode>, <ExtOption at 0x7f0f7a650dd0: --spindle-speed>, <ExtOption at 0x7f0f7a0f40e0: --spindle-wait-on>, <ExtOption at 0x7f0f7a0d7128: --spindle-clockwise>, <ExtOption at 0x7f0f7a0d7cf8: --skip-path-count>, <ExtOption at 0x7f0f7a0d7680: --ignore-segment-angle>, <ExtOption at 0x7f0f7a0d7fc8: --path-tool-fillet>, <ExtOption at 0x7f0f7a0d7ea8: --path-tool-offset>, <ExtOption at 0x7f0f7a0d78c0: --path-preserve-g1>, <ExtOption at 0x7f0f7a0d73b0: --path-smooth-fillet>, <ExtOption at 0x7f0f7a0d7290: --path-smooth-radius>, <ExtOption at 0x7f0f7a0d7cb0: --path-close-polygons>, <ExtOption at 0x7f0f7a0d7e60: --path-split-cusps>, <ExtOption at 0x7f0f7a0d7710: --brush-reload-enable>, <ExtOption at 0x7f0f7a0d70e0: --brush-reload-rotate>, <ExtOption at 0x7f0f7a0d7bd8: --brush-pause-mode>, <ExtOption at 0x7f0f7a65f5a8: --brush-reload-max-paths>, <ExtOption at 0x7f0f7a65fb48: --brush-reload-dwell>, <ExtOption at 0x7f0f7a65f878: --brush-reload-angle>, <ExtOption at 0x7f0f7a65fef0: --brush-overshoot-mode>, <ExtOption at 0x7f0f7a65f488: --brush-overshoot-distance>, <ExtOption at 0x7f0f7a65fd40: --brush-soft-landing>, <ExtOption at 0x7f0f7a65f998: --brush-landing-strip>, <ExtOption at 0x7f0f7a65fa70: --brushstroke-max>, <ExtOption at 0x7f0f7a65f6c8: --output-path>, <ExtOption at 0x7f0f7a65fab8: --append-suffix>, <ExtOption at 0x7f0f7a65f128: --separate-layers>, <ExtOption at 0x7f0f7a65f710: --preview-toolmarks>, <ExtOption at 0x7f0f7a65fea8: --preview-toolmarks-outline>, <ExtOption at 0x7f0f7a65f290: --preview-scale>, <ExtOption at 0x7f0f7a667cb0: --write-settings>, <ExtOption at 0x7f0f7a667e18: --x-subpath-render>, <ExtOption at 0x7f0f7a667488: --x-subpath-offset>, <ExtOption at 0x7f0f7a6673f8: --x-subpath-smoothness>, <ExtOption at 0x7f0f7a6672d8: --x-subpath-layer>)
run()[source]

Main entry point for Inkscape plugins.

Quasink

An Inkscape extension to create quasicrystalline/Penrose tesselations.


class quasink.IdentityProjector[source]

Bases: object

Identity projection. No distortion.

project(p)[source]
class quasink.SphericalProjector(center, radius, invert=False)[source]

Bases: quasink.IdentityProjector

Project a point on to a sphere.

project(p)[source]
class quasink.QuasiExtension[source]

Bases: inkscape.inkext.InkscapeExtension

Inkscape plugin that creates quasi-crystal-like patterns. Based on quasi.c by Eric Weeks.

run()[source]

Main entry point for Inkscape plugins.

POLYGON_SORT_INSIDE_OUT = 1
POLYGON_SORT_NONE = 0
POLYGON_SORT_OUTSIDE_IN = 2

Voronoi

An Inkscape extension to create a Voronoi diagram from points derived from input SVG geometry.


class voronoi.Voronoi[source]

Bases: inkscape.inkext.InkscapeExtension

Inkscape plugin that creates Voronoi diagrams.

run()[source]

Main entry point for Inkscape plugins.

Polypath

An Inkscape extension to create paths from a collection of vertices.


class polypath.PolyPath[source]

Bases: inkscape.inkext.InkscapeExtension

Inkscape plugin that traces paths on edge connected graphs.

OPTIONSPEC = (<ExtOption at 0x7f0f78db31b8: --epsilon>, <ExtOption at 0x7f0f78db3200: --polysegpath-draw>, <ExtOption at 0x7f0f78db3248: --polysegpath-longest>, <ExtOption at 0x7f0f78db32d8: --polysegpath-min-length>, <ExtOption at 0x7f0f78db3320: --polysegpath-max>, <ExtOption at 0x7f0f78db3368: --polysegpath-type>, <ExtOption at 0x7f0f78db33b0: --polysegpath-stroke>, <ExtOption at 0x7f0f78db3440: --polysegpath-stroke-width>, <ExtOption at 0x7f0f78db3488: --polyoffset-draw>, <ExtOption at 0x7f0f78db34d0: --polyoffset-recurs>, <ExtOption at 0x7f0f78db3518: --polyoffset-jointype>, <ExtOption at 0x7f0f78db35a8: --polyoffset-offset>, <ExtOption at 0x7f0f78db35f0: --polyoffset-fillet>, <ExtOption at 0x7f0f78db3680: --polyoffset-fillet-radius>, <ExtOption at 0x7f0f78db3710: --convex-hull-draw>, <ExtOption at 0x7f0f78db37e8: --hull-draw>, <ExtOption at 0x7f0f78db3908: --hull-inner-draw>, <ExtOption at 0x7f0f78db39e0: --hull-stroke>, <ExtOption at 0x7f0f78db3ab8: --hull-stroke-width>, <ExtOption at 0x7f0f78db3b90: --hull2-draw>, <ExtOption at 0x7f0f78db3cb0: --hull2-clip>, <ExtOption at 0x7f0f78db3d88: --hull2-draw-rays>, <ExtOption at 0x7f0f78db3e60: --hull2-max-angle>)
run()[source]

Main entry point for Inkscape extension.

Polysmooth

Smooth non-G1 path nodes using Bezier curves and draw it as SVG.

Works for polyline/polygons made of line/arc segments.

This can be invoked as an Inkscape extension or from the command line.

class polysmooth.PolySmooth[source]

Bases: inkscape.inkext.InkscapeExtension

An Inkscape extension that smoothes polygons.

OPTIONSPEC = (<ExtOption at 0x7f0f78bb9320: --simplify>, <ExtOption at 0x7f0f78bb9368: --simplify-tolerance>, <ExtOption at 0x7f0f78bb93b0: -s/--smoothness>, <ExtOption at 0x7f0f78bb93f8: --new-layer>, <ExtOption at 0x7f0f78bb9440: --match-style>, <ExtOption at 0x7f0f78bb9518: --polysmooth-stroke>, <ExtOption at 0x7f0f78bb9638: --polysmooth-stroke-width>)
run()[source]

Main entry point for Inkscape extensions.

simplify_polylines(path, tolerance)[source]

Simplify any polylines in the path.

Sinewave

Approximate a sine wave using Bezier curves and draw it as SVG.

This can be invoked as an Inkscape extension or from the command line.

class sinewave.SineWave[source]

Bases: inkscape.inkext.InkscapeExtension

An Inkscape extension that draws a sine wave using Bezier curves.

run()[source]

Main entry point for Inkscape extensions.