Inkscape.org
Beginners' Questions Path effects applied globally
  1. #1
    Filberry Filberry @Filberry

    Hi everyone,

    I don't know if I am missing something obvious here or if this behavior is intentional:

    I want to create a twig, I have a "leaf" path that will be applied to a number of other paths on the twig as a pattern. So I ctrl+c the leaf path and add a "pattern along path" effect to the other twig paths.

    But when I transform the leaves on object level (rotate, scale), the pattern does not "stick" to its path and morphs around.

    Same thing when I group all paths of the twig, including the leaves, and then do the transform.

    I would expect that the effect "sticks" in its local space and all transformations done are applied on top of that.

    I know I could transform everything with "object to path", but I want to tweak the effect/paths after I positioned and scaled them easily without handling a bunch of nodes.

    Is this intentional? Am I missing some setting to get to the behavior I want? I use v1.3 on win10 (but this used to work in v1.1). If an example file is needed I will gladly supply one, but I though it might be just an easy-to-clear-up misunderstanding on my side.

  2. #2
    Paddy_CAD Paddy_CAD @Paddy_CAD
    👍

    This behaviour is intentional. [Pattern Along Path] will stretch and squeeze and bend the tiles along the skeleton path. You might try [Extensions > Generate from Path > Distribute Along Path...] if you don't want to warp the tiles. This will lay a series of clones (or copies) along the target path. Note that this is not a Live Path Effect. You're free to transform the clones or edit their parent shape, but if you change the skeleton, you'll have to repeat the extension to update the clone positions.

  3. #3
    Filberry Filberry @Filberry
    *

    Thanks for the infos, I will try that!

    @Paddy_CAD Ok, so after re-reading, I have the suspicion that I was not clear enough with what I wanted, so here's a graphic for my problem - does your explanation still apply? Because I find this behavior extremely counter-intuitive:

  4. #4
    Paddy_CAD Paddy_CAD @Paddy_CAD

    The pattern path effect doesn't work well with transforms applied to the skeleton path. Instead try using the Node tool [n]. Select all the nodes then use ] and [ to rotate them.

  5. #5
    Filberry Filberry @Filberry

    Thanks for taking the time to answer.

    I was expecting this to work like e.g. the Blender modifyers, so it borders on bug-report-worthy from my pov.

    Unfortunately I don't think your workaround will do it for me. As far as I understand I would have to bake the effect, meaning afterwards I will have to handle the individual nodes which might help with the overall rotation but in turn makes it nearly impossible to reshape the small leaves (e.g. bend the tip) in an efficient way. I guess I'll make it work somehow, thanks again.

  6. #6
    Paddy_CAD Paddy_CAD @Paddy_CAD

    No need to bake the effect. I'm not sure how you "reshape the small leaves" but rotating the skeleton nodes should rotate the pattern, like your "expectation" above.

  7. #7
    Filberry Filberry @Filberry
    *
    Paddy_CAD

    but rotating the skeleton nodes should rotate the pattern, like your "expectation" above

    And that is exactly what does not happen (hence my question): I produced the "expectation" image by baking the effect first, then rotating it. The "observation" one is produced by just rotating the skeleton path.

    Someone else tried it with older inkscape versions where this does not happen, which suggests this is a bug and I have filed it as such.

  8. #8
    Paddy_CAD Paddy_CAD @Paddy_CAD

    Here's my latest experiment. Is this not what you see?

  9. #9
    Filberry Filberry @Filberry
    *

    Ah ok I got it now, yes with the node tool this works (except for mirroring which still inverts the paths).

    It is still kind of a hassle, because I have to select all paths one by one with the node tool (unless there is an easy way in v1.2+ I am not aware of?), so I still would prefer the v1.1 way of using the group to rotate.

    Thank you so much!