convert stroke to path

my question probably falls into expected behaviour category, but i’d like to understand how to do it right.

im working on a design for microfluidic channels that needs to be an exact width of “channel” and “walls” (fill/stroke).

my limitation, i need the fill/channel to always stay the same width, no matter if i bend or whatever. ultimately i would like to draw a line, add stroke to that stroke/line(?) then be able to union it with other channels

TLDR; how do i create a shape like this, with exact inner channels?

maybe my wants are not in line
1. with the SVG spec
2. Facilitate outset/inset by half stroke width – /inkscape/+bug/170898)

Answer

There are multiple ways to achieve this, but the easiest way to create that shape is by building it with circles and lines first; then merge and stroke them:

Lines and circles

  1. Draw circles and lines

  2. Convert strokes to path (Path > Stroke to Path)

Union body

  1. Select all elements and union them (Path > Union)

Outline

  1. Give the path a stroke and set a white background

Stroke order

  1. Change the stroke order to: Stroke,Fill,Markers to keep the channel width intact. (Fill and Stroke > Stroke style > Order) (As suggested by Socowi)

This approach also works for more complex shapes:

Complex channel shape


Another cool way of creating the channels is by creating the walls, and then use that as shape for a new path:

Channel path

  1. First create two rectangles (the walls)
  2. Union the rectangles (Path > Union)
  3. Copy the shape (Ctrl+c)
  4. Select the Bezier curve and Straight line tool
  5. In the tool menu on top, select Shape: From Clipboard
  6. Draw a path
  7. Now you have a channel path that is still editable
  8. Optional: convert this object to a path (Path > Object to path)

I hope this enables you to create the microfluidic channel design with Inkscape!

Attribution
Source : Link , Question Author : yoshco , Answer Author : FWrnr

Leave a Comment