Generate from Path

This group of extensions creates new objects from one or more existing paths.

Extrude

Connects nodes in two paths with lines or with polygons. In the case of lines, it simply draws a line between each corresponding node in the two paths (i.e., a line between the first node of one path and the first node of the other path, etc.). If one path has more nodes than the other, the extra nodes are not used. All the lines are sub-paths of one path. In the case of polygons, a quadrilateral is drawn between corresponding adjacent pairs of points on the two lines. Each quadrilateral is a separate path. All the created paths are placed in a Group. In both cases, the original paths are not changed.

See the Motion for a similar effect utilizing only a single path.

Extrude example.
From left to right: Two star paths. After selecting both stars and using the Line option. After selecting both stars and using the Polygon option.

Inset/Outset Halo

This extension produces a blurred image of the selected object(s). It works by making multiple copies of the object(s) and insetting or offsetting the path of each copy by a different small amount. The opacity of each copy is set to a small value based on the number of copies made. The copies are embedded in a group that is left above the original object(s).

Why would you want to use this extension when Inkscape now supports filters? Well, filter support in web browsers is still in its infancy. Your SVG drawings are more likely to be properly rendered using this extension. The look of the blur is also a bit different.

This extension only works on paths! Convert regular shapes and text to paths before using (Path icon Object to Path ( Shift+Ctrl+C )).

Inset/Outset Halo example.
Top: Regular shapes. Middle: Regular shapes after using Inset/Outset Halo extension (Width: 5, Number of steps: 11). Bottom: After deleting the original objects.
Inset/Outset Halo example 2.
Text after using the Inset/Outset Halo extension to produce a shadow. The shadow has been shifted down and to the right. The color of the text was changed after creating the shadow. The original text was moved above the shadow in z-order (Width: 5, Number of steps: 11).

Interpolate

Draws a series of lines that interpolate the space between two paths. The options include setting the number of Interpolation Steps (in-between lines), an Exponent factor that controls the spacing between interpolated paths (zero for even spacing), specifying if the original paths should be duplicated (Duplicate Endpaths), and specifying that the path style should also be interpolated. Objects need to be converted to paths prior to invoking the extension.

Interpolation example.
An interpolation between the red and blue lines, with the Interpolate Style box checked.

The beginning of the path of one object is matched to the beginning of the other path. This can lead to unexpected effects. The starting point of a path can be found by selecting the path with the Node Tool and then using the Tab key. If no node is already selected, the first node in the path will be selected.

Interpolation example 3.
An interpolation between the blue square and a red circle, with the Interpolate Style box checked. Left: the start of the two paths (indicated by the crosses) are not in the same relative positions. Right: the circle has been rotated 135 degrees so the start of the two paths are in the same relative positions.

The interpolation extension can also be used to simulate gradients of different symmetries. When calling the extension, the smaller path should be selected first.

Interpolation example 5.
From left to right: Interpolation between two squares in the same orientation; two squares, one rotated 90 degrees; two stars in the same orientation; a star and a circle. The starting paths are shown on top. In all cases, the number of Interpolation steps was set to 25. Note that the smaller path must be selected first.

Motion

Simulates motion. Draws a copy of the selected object behind the original and then connects corresponding nodes with lines to form a group of closed paths. The direction and offset of the copied object can be specified. The new objects inherit the attributes of the original but can be edited as a group.

Motion example.
Left: Original object. Right: Object with extrusion. (Magnitude of 25, Direction of 180.) The Master opacity has been set to 0.5 for the new objects.

One can also use this extension to simulate perspective by reducing the size of the copy along with the associated nodes. The steps are:

  • Ungroup objects (Object icon Ungroup ( Shift+Ctrl+G )).
  • Combine into one path (Path icon Combine ( Ctrl+K )).
  • Use Node Tool to select all nodes associated with copy in back.
  • Move nodes toward each other (<, etc.).
  • Break apart path (Path icon Break Apart ( Shift+Ctrl+K )).
  • Group objects (Object icon Group ( Ctrl+G )).
Motion example 2.
Left: Without perspective. Right: With perspective.

Pattern Along Path (Extension)

This extension places a pattern along one or more target paths. The pattern can be a single object or a Group of objects. See also Chapter 8, Live Path Effects (LPEs) for an alternative way of putting patterns along paths.

Pattern along Path example.
Copies of the single yellow star are placed along a path. The star is deformed to follow the path.

To put a pattern on a path:

  1. Select the pattern:  The pattern can be a single object or a Group. In some cases, you may have better results if you explicitly convert all objects (e.g., Shapes) in the pattern to paths.

  2. Select the target path or paths:  Called the Skeleton path by the extension author.

  3. Call the extension:  A dialog will open up where various parameters can be selected. After the extension is applied there will be a new path for each object in the pattern. For example, the stars on the line in the above figure are formed by one path.

The bounding box of the pattern is used for placing the pattern along the path, with the bounding box of one pattern copy touching the bounding box of the next copy (if no additional spacing is specified).

When the extension is called up, the following dialog is shown:

Pattern along Path extension dialog.
The Pattern along Path extension dialog. The dialog is described below.

This dialog has many options that can be set (see figures that follow for examples of use):

  • Copies of the pattern:  You can choose to have a Single copy of the pattern placed on the path or multiple copies Repeated along the path. The pattern can be stretched so that the left edge of the first pattern copy lines up with the start of the Skeleton path and the right edge of the last pattern copy lines up with the end of the Skeleton path.

  • Deformation type:  Two options are available:

    • Snake:  The pattern is rotated and deformed to follow the path such that all points with the same horizontal (x) position in the pattern will be on the same normal (perpendicular line) to the path, and all points with the same vertical (y) position in the pattern will be placed the same distance from the path. If the Pattern is vertical box is checked, then the pattern is rotated 90 degrees first.

    • Ribbon:  The pattern is deformed only in either the vertical or horizontal direction to conform to the path. The direction of the deformation is controlled by the Pattern is vertical check box described below.

  • Space between copies:  You can add (or subtract) space between copies of the pattern. The unit is pixel.

  • Normal offset:  The normal offset moves the pattern perpendicular relative to the path. Positive values move the pattern to the left relative to the direction of the path.

  • Tangential offset:  The tangential offset moves the pattern in the direction of the tangent line to the path.

  • Pattern is vertical:  Checking this box rotates the orientation of the pattern by 90 degrees.

  • Duplicate the pattern before deformation:  With this box checked, the original pattern is left in place. Otherwise, it disappears.

Pattern on Path example 1.
Left: Snake deformation, right: Ribbon deformation. From top to bottom: Copies of the pattern: Single; Single, stretched; Repeated; Repeated, stretched.
Pattern on Path example 2.
Left: Snake deformation, right: Ribbon deformation. All with spacing of 10 px. From top to bottom: Spacing only, Normal offset of 5 px, Tangential offset of 10 px, Pattern is vertical.

The Pattern along Path is a very useful extension but it does have a few quirks. One is that if the pattern is moved before use, the results may be less than ideal. Another is that different parts of the pattern can be distorted in different ways as seen in figures that follow.

Pattern along Path example 6.
The pattern at the upper left was put on the red path. Note how the distortion of the black outline is different from the blue squares. A solution in this case is to use the Add nodes extension to increase the number of nodes in the path of the black square.

The following example shows a pattern placed on both straight and curved paths. If the radius of curvature is too small, the pattern may be grossly distorted.

Pattern on Path example 4.
The pattern at the top of the figure was applied to a straight line and to a curved line (shown in red).

A pattern can be used to create a fancy border as shown below. Care must be taken that the pattern lines up at the corners. This can be done by making the distance between the corner nodes multiples of the pattern width or by breaking the path into disconnected pieces at the corners (use the Break Path at Selected Nodes ( icon ) option in the Node Tool Tool Controls) and using the Repeated, stretched option.

Pattern along Path example 5a.
Borders produced with the Pattern along Path extension. In both cases, the pattern in the center was put on a rectangle that was converted to a path. On the left, the rectangle side lengths were chosen to be multiples of the pattern width. On the right, the sides were disconnected by using the Break Path at Selected Nodes ( Pattern along Path example 5a. ) option in the Node Tool-Tool Controls on each corner node and the Repeated, stretched option was chosen. This ensured that the pattern would line up at the corners properly.
Pattern along Path example 5b.
From left to right: A single path with a corner point. The lengths of the sides are not multiples of the pattern width; thus, the pattern does not line up at the corner. The path converted to a compound path with two sections by using the Break Path at Selected Nodes ( Pattern along Path example 5b. ) option in the Node Tool-Tool Controls on the corner point node. Using the Repeated, stretched option, the pattern width is adjusted so that it lines up at the corner. A close up of corner showing a discontinuity due to the pattern pieces not being connected. A close up of the corner after the two nodes at the corner are connected using the Join Selected End Nodes ( Pattern along Path example 5b. ) option in the Node Tool-Tool Controls.

Going one step further, a pattern can be applied to a circle. In the following figure, the pattern on the right was applied to a circle (of larger diameter than the solid yellow circle). The resulting path was filled with a radial gradient.

Pattern along Path example 6.
A sun produced by putting a pattern on a circle. The flame path shown on the right was used as the pattern. A small space was added between pattern copies by setting Space between copies to 10. (The yellow circle is an independent object.)

One use of the Single, stretched option is to put text on a path. The text must be converted to a path first (Path icon Object to Path ( Shift+Ctrl+C )).

Pattern along Path example 7.
The text was placed along the path using the Single, stretched and the Ribbon options. The text was converted to a path first.

Another use of the Single, stretched option is to create flourishes. (As of v0.47, this is better done by applying the teardrop as a custom shape with the Bezier Tool. One would not need to add the extra nodes.) The steps are:

  • Draw a small circle, convert to a path (Path icon Object to Path ( Shift+Ctrl+C )).
  • Create a teardrop: Convert one node to a corner node and move to right. Adjust node handles to flatten lines.
  • Add nodes with Add Nodes extension.
  • Draw curves with Bezier Tool or Spiral Tool. Use Pattern along Path to put a teardrop along curves.
  • Create multiple curved teardrop paths and combine (Path icon Union ( Ctrl++ )) to form the flourish.
Pattern along Path example 8.
From top to bottom: Circle converted to path. Path with one node moved and handles adjusted. Path with extra nodes added. Teardrop path put on blue curve path. Ditto.
Pattern along Path example 8a.
Top: Four teardrop paths are in position to be combined. Bottom: The final flourish after combining the paths.

Scatter

This extension places a pattern along one or more target paths. It is almost identical to the Pattern along Path extension except that the pattern is not deformed.

Scatter example.
Copies of the single yellow star are placed along a path. The star is not deformed as it is stamped along the path.

Most of the options are the same as for the Pattern along Path extension. Those that are different are:

  • Follow path orientation:  The pattern is rotated and to follow the path such that all points with the same horizontal (x) position in the pattern will be on the same normal to the path, and all points with the same vertical (y) position in the pattern will be placed the same distance from the path. If the Pattern is vertical box is checked, then the pattern is rotated 90 degrees first.

  • Stretch spaces to fit skeleton length:  Space is added between pattern copies so they fill evenly the skeleton path.

  • Original pattern will be:  Moved: Original pattern is copied, then deleted. Copied: Original pattern is copied and remains in place. Cloned: Original pattern is cloned, If the original pattern is modified, all patterns along the path will also be modified.

Voronoi

New in v0.48.

Draws Voronoi diagrams. The line segments are derived by distributing sites (points) semi-randomly in an area and then constructing line segments where each point on the segment is equal distance to the two closest sites forming cells around each site.

To use this extension, select a path or object and then call up the extension. There are two settings:

  • Average size of cell (px):  The average cell size (height and width).

  • Size of Border (px):  A positive number greater than the Average size of cell results in a pattern that can be tiled smoothly. A negative number removes sites near the edge resulting in larger cells near the border.

After applying this extension, you will have a Pattern that is applied to the Fill of the object that was selected. The Pattern can be shifted, scaled, and rotated like any other Pattern. It can also be applied to other objects through the Fill tab of the Fill and Stroke dialog.

[Warning]Warning

This extension creates a large object that may overtax your computer.

Voronoi example 1.
From left to right: Patterns with the default settings (size: 10 px, border: 0 px), with an average cell size of 20 px, with an average cell size of 20 px and a border of -20 px.
Voronoi example 2.
Left: A Voronoi pattern created with an average cell size of 10 px and a border size of 20 px. Right: The pattern applied to a circle. Note the smooth tiling.