On 08/05/2013 09:46 AM, Michael Wybrow wrote:
I will remove any logic from connector-context responsible for handling anything but two endpoints (if you want to draw a connector with multiple "stops", just chain together multiple connectors) and remove the "snap connector end point to connector's intersection with destination shape outline"-logic since I do not think this is too useful.
Do you mean the functionality that adjusts the endpoint of a connector to stop at the intersection with the destination shape? If so, the reason for this is that the arrowhead is drawn at the end of the connector and people frequently want this to coincide with the edge of the shape.
I removed that because it would have been even more work porting and because with the addition of SPPoints it is not really necessary anymore (I am not totally against re-adding it, though).
Do you mean that by placing a Point on the boundary at a particular position the arrowhead will be positioned there? If so, my experience is that people often want connectors that appear to be connected to the centre of shapes, but that are drawn just to the edge of the shape. Manually positioning points in the right place to achieve this effect could get very tedious indeed, especially when moving shapes around.
Yes. I think the small number of cases where you actually want to connect the connector to the center of the shape instead of a svg:point on the outline does not warrant all the work. The "connect-to-center-snap-to-outline" behavior is probably ok for some simple shapes such as circles or ellipses but for others like plain rectangles I think might not provide aesthetically pleasing results (e.g. in this case I would want it to snap to the middle of one of the sides).
I think it is hard to define a behavior that also works for more complex shapes (spirals, or something banana-shaped, or something with a considerably off-center center of mass).
I do not have a good solution to this yet though.
Sebastian