Pixels to Objects
i

Scott PakinPixels to Objects

Scott Pakin

Select a bitmap and one or more other objects, and run Extensions → Raster → Pixels to Objects…. The extension will place one copy of an object at each pixel coordinate. For example, a 32×32 image will lead to objects being placed at coordinates (0, 0) through (31, 31). Options enable objects to have their stroke and/or fill color adjusted to match the corresponding image pixel; background-colored pixels to be either considered or ignored; image coordinates to be scaled up or down; and multiple objects to be assigned to coordinates either randomly or deterministically. For instance, in the banner image above, a 16×16 bitmap was selected along with four path objects of size at most 18×18. In the dialog box, "Apply color to stroke" and "Ignore background pixels" were checked. "Image coordinate scaling" was set to 18 to prevent the path objects from overlapping. And "Instantiation of multiple objects" was set to "By image coordinates" to cycle evenly through all four path objects.


Comment here...
Simple Inkscape Scripting
i

Scott PakinSimple Inkscape Scripting

Scott Pakin

Simple Inkscape Scripting makes it easy to automate repetitive drawing tasks. It defines a simple set of Python functions such as "rect" to draw a rectangle and "line" to draw a line. For example, the one-line program "for r in range(7, 0, -1): circle((100, 100), 10*r, fill=['white','red'][r%2])" is all it takes to draw a bullseye. Invoking the extension (Extensions → Render → Simple Inkscape Scripting…) brings up a dialog box that lets you load a Python script from a file or enter Python code directly in a text box. Shapes produced by the script appear directly on the canvas and can be edited just like any other shape. See https://github.com/spakin/SimpInkScr for details and examples.


Comment here...
Snap Object Points
i

Scott PakinSnap Object Points

Scott Pakin

Snap nearby points across two or more paths to their average coordinates. This extension can be used to help interlock adjacent shapes like pieces of a jigsaw puzzle.


Comment here...
Make Page Tileable
i

Scott PakinMake Page Tileable

Scott Pakin

Make Page Tileable clones all objects that straddle an edge of the page to make the page as a whole tileable. This can be useful for making background patterns for webpages, textures for games and raytraced scenes, tiling patterns for autostereograms, and other places where seamless repetition is desired. To run the extension, simply select Extensions → Page → Make Page Tileable. If no objects are selected then all objects on the page will be cloned. Otherwise, only the selected objects will be cloned. Each set of clones is placed in a group so their positions can be adjusted in unison.


Comment here...
Delaunay Triangulation
i

Scott PakinDelaunay Triangulation

Scott Pakin

This extension is similar to the Voronoi Diagram extension in Delaunay Triangulation mode in that it generates triangulations. The difference is that the Delaunay Triangulation extension triangulates all points in all selected objects while the Voronoi Diagram extension considers only object centroids.


Comment here...
Paths to Lines
i

Scott PakinPaths to Lines

Scott Pakin

Paths to Lines converts a path to a sequence of lines, represented internally using your choice of SVG <line>, <polyline>, or <path> elements. It is similar to the Flatten Beziers, Straighten Segments, and Convert to Polylines extensions, but those always leave the path as an SVG <path> while Paths to Lines offers the user a choice among multiple SVG representations.


Comment here...
Save as CFDG
i

Scott PakinSave as CFDG

Scott Pakin

Save as CFDG enables one to save Inkscape graphics as code written in the Context Free Design Grammar (CFDG), https://contextfreeart.org/gallery/index.php. The intention is for a user to draw some complex base shape in Inkscape, save the shape to CFDG, then edit the CFDG code to perform interesting recursive transformations on that base shape.


Comment here...