I want to design an illustration with a curved path and a skewed version of it. The original path org is somewhat "in flux" and a moving target; I have to adjust the shape of org so that important features of the skewed version skew are clearly visible, and vice versa.
So, skew really should be a linked clone of org rather than just a transformed copy.

However, I want the skewing to only affect the nodes (geometry) of the path, not the stroke (style). This works as soon as I unlink the clone, which gives me full access to all style attributes; but unfortunately this means that it, ahem, is not linked anymore. (Strangely, this holds for "proper" paths, but apparently not for circles or ellipses; see the image below, 2nd row.)

What I'm after is the looks of the last column, but without unlinking.
([edit] Sorry, imgur decided to shrink it smaller than I expected. All are paths with strokes; first and last row are paths, second row is an ellipse. Note the varying stroke angles and visual thickness of the third column vs. the others.)

Skew on clones

So, is there any way to decouple style and geometry for cloning? (In a perfect world, I would also be able to change other stylistic attributes, e.g., the color of a clone; although I understand that this could be "difficult" to specify for cloned groups etc...)

N.b.: For setting size and position via the top toolbar, Inkscape offers buttons to enable and disable the scaling of stroke and corner radii, as well as pattern movement/rescaling. This doesn't seem to work for the transformations applied via the Transform tool (Ctrl+Shift+M). I understand that this is due to the fact that the transform tool sets a transformation matrix in SVG, while setting size and position is done immediately via recomputation of the coordinates of the control points.

The SVGTiny 1.2 spec has a vector-effect="non-scaling-stroke" property that should allow exactly what I want: it makes stroke "resistant" to transformations. Unfortunately, I cannot make it work for use elements, despite the fact that AFAICS it should apply to them, too.

  • Why not just rotate the clone instead of skewing it? – Billy Kerr Feb 19 '18 at 12:46
  • Well, in this particular case because the algorithm I want to illustrate with the figure is based on a skewing, not a rotation... – akobel Feb 22 '18 at 17:11
  • But that's somewhat moot; my question applies also to other transformations as well (in particular, scaling comes to mind, where lines might almost disappear or blow up against the artist's intention). And even rotation might change the stroke, at least in corner cases: just tried with an "empty" path with an end marker, which will be rotated for the clone and in the original angle for the unlinked copy. That might be a corner case, but I use (exploit?) such constructs sometimes to have convenient "point" markers without any proper extent, rather than circles, crosses etc. – akobel Feb 22 '18 at 17:22
  • And that's for exactly the reason why I posed the question: If I mark special points of the original picture with, e.g., circles, I have to un-transform them again in the skewed version; with "empty paths", it suffices to unlink, and I get the same appearance on both original and skew. – akobel Feb 22 '18 at 17:24
  • Awesome, your question is my answer: I come looking for this "For setting size and position via the top toolbar, Inkscape offers buttons to enable and disable the scaling of stroke and corner radii" and you have answered it in a quick "N.b." – Martin Zaske Dec 29 '18 at 21:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.