Link to Spline Advice


I’m working on a fairly simple animation where I create a spline, then link another object to it using the ‘Link to Spline’ feature. There are a limited number of objects I want to link, but each will be there more than once.

All the examples I have seen are where an object is attached to the spline and then the animation involves moving the object around following the spline. What I’m trying to do is have the objects stay in the same relative position on the spline, but to move with it; think of a string with a number of decorations attached to it; when the string moves and twists, the decorations follow it.

Everything I talk about here is before entering animation mode, I’m only editing at the moment.

This is probably working as designed and it’s possible that I’m using the wrong tool for the job, but I thought it was worth checking, this is what happens:

  1. Create the spline
  2. Create a decoration
  3. Select decoration and spline
  4. Right Click on spline and select Link to Spline

At this point the object and spline are linked, so if I deform the spline, the decoration follows the deformation, however if I move the position of the spline it leaves the decoration behind (deformations still affect the decoration).

If I subsequently duplicate the decoration, both the original and the duplicate follow the path of the spline if I move either, however at this point deformations no longer affect the position of the decorations (neither original nor duplicate).

So my questions are:

a) Am I using the right tool for the job? Is there a better way to do this (I had thought of the skeleton system, but I’m assuming the bones can’t be made to curve and ‘flow’ like a piece of string.
b) Is it possible to make objects linked to a spline move when the spline moves to a new location?
c) Can duplicates be made to automatically be linked to the spline in the same way that the original object was? Also I’d prefer the duplication of an object not ‘damage’ the link that the original object has with the spline


The reason for this is that layer transformation and spline (curve) transformation are different things. When you move layer (i.e. origin), spline is not affected (you can see this if you export “Vertices” value and then check it in “Library”). So, you’ll have to replicate all transforms you want to share. It can be done in various ways, depending on complexity of your composition and your preferences. I attached an example for you.

I can’t replicate this behaviour.
test-57-link.sif (12.7 KB)

Thanks caryoscelus! The layer and the spline transformations being different does make perfect sense, but I just wasn’t seeing it. Your answer helped it slot into place in my mind.

I’ve tried again to reproduce the problem I reported with the duplicate and I’m no longer able to make it happen either or at least not in quite the same way.

I had started out with a more complicated drawing (which took quite a long time as while there was a lot of duplication, there were also a lot of elements. All of the elements were vector groups saved as SIF files from inkscape - they caused synfig (and my whole system to drastically slow down). I think I misinterpreted what was going on while the system was running slow.

What I actually see now is that the duplicate follows the spline path, but if I transform the spline, only the duplicate does not move with it, anything else that I had previously linked to the spline continued to move with it. The duplicate continues to follow the original (at the time of duplication) spline path. In order to get it to follow the actual spline path, I need to explicitly link the duplicate to the spline. This isn’t too bad but I’m not sure if it is expected or not - personally I would prefer that the duplicate is either entirely unassociated with the spline or that it is completely linked to the spline in the same way as the original that I duplicated from.

If this part is working as intended then I can work with it. If it makes a difference, I’m running on MacOS Sierra with version 1.21

Thanks again for the help in understanding!

Ah, now i figured why i didn’t get that behaviour: i had the path spline “exported”. I’ve tried with normal node and i get the same behaviour as you. So, apparently duplicate preserves links to exported nodes and duplicates all other nodes. I suppose it could be intended behaviour, since usually user would like at least some parameters be duplicated, so that they don’t need to be unlinked.

In attached file left path is left unexported and duplicating circle there would unlink it from path; the right path spline is exported and duplicating objects there would still have them attached to original spline.

You’re welcome :wink:
test-58-link-group.sif (34.4 KB)