Hi all,

I'm trying to write an Inkscape extension that has the following functionality:

1. I create a polyline in Inkscape and select it.
2. My extension takes in a string of predefined tokens, the same number as there are nodes in the polyline, e.g. "square, circle, triangle, circle, circle".
3. The extension places a square at the first node of the polyline, a circle at the second, triangle at the third, circle at the fourth, circle at the fifth (includes end points).

I would like the resulting line-with-pictures to still be a line in that I can go to the node editor and adjust the nodes of my polyline (it's just that the nodes have pictures on them now).

How can I achieve this in Inkscape or in SVG? (Is this the appropriate list for this question, or should I send to inkscape-devel?)

This makes me think that what I want is to specify *custom* markers along a line. I.e. not just marker-start, marker-end and marker-mid, but more of a marker-sequence (so that the middle markers can be different from each other).

Is this possible?

If not, is there some other way to do this? Perhaps I can do this with connectors instead so that my sequence of square -- connecter -- circle -- connector -- triangle -- connector -- circle -- connector -- circle  still *acts* like a line with markers at each node in inkscape (though in SVG it is not "truly" a polyline with markers).

I've been trying to read up on connects, but is there further documentation available? In particular, I think I've worked out how to set "inkscape:connector-(type|curvature)" and "inkscape:connection-(start|end)", but what is "inkscape:connection-(start|end)-point"? On examining the XML of a test connector I drew in Inkscape, it was set to "d4" for all the connectors I drew and I'm not sure what this signifies.

Also when I convert my path to connectors in my extension, is it up to me to calculate where the path would intersect with the edge of the node? For example if I connect a star to a rectangle I notice that in Inkscape the connector only starts and ends at the edges of the objects, even though the "true" connection handle is in the centre. Is there some convenience function in the Python modules somewhere for me to work out where the polyline would intersect with my node picture (particularly for more complex shapes, like a star)?

cheers,
Amy