1

(Inkscape 1.0/windows10)

While looking for a way to merge "overlapping" nodes of the flipped duplicated copy with the original object,(converting objects to path and selecting), and joining these overlapping nodes with the "Join selected nodes" option,the nodes just don't merge into a single node and break apart when pulled.

It does work in the first attempt , but in latter attempts it doesn't.

Why does "join selected nodes" into a single node not work and what over alternatives are there for this operation?

enter image description here

3

"Join" does not mean "merge" or "combine". Join refers to connecting two nodes with a path between them.

Typically you can't "merge" two nodes into one.

I'm not an Inkscape user, but in most apps, you want to join the two nodes, then delete one of the nodes (retaining the path) if the goal is a single node.

In your animation, a single node is not possible. Bezier anchors can only have 2 path connectors and in and an out --- in your animation a single node would require 4 paths. That is not possible. It is an inherent limitation in almost all Bezier vector applications.

  • In Inkscape ," join selected nodes " means merging of selected nodes into a single node(path's shape is preserved) refer inkscape-manuals.readthedocs.io/en/latest/node-operations.html – starzar Jun 28 '20 at 8:30
  • @Starzar - no you are misinterpreting what is being said here. You cannot join (or merge) a node in the middle of a path to another node on another path. It's not possible in Inkscape or any vector image editor. In vector graphics only the end nodes of two paths can be joined. – Billy Kerr Jun 28 '20 at 9:07
2

You can not create nonmanifold geometry. One can not just merge any node with any other node. You can only merge the endpoints or adjacent nodes together.

The modeling paradigm of 2D vector drawing applications only allows you to do the allmost minimal set of that make sense for the rendering engine. The fact that you wish to do something is irrelevant for the rendering model. It is in fact the other way around your job is to turn your model into the rendering engines view of things.

Inkscape is just simply a direct modeller. You directly model the underlying rendering. Indirect modeling tools also exist but in practice people have harder time learning to use them.

0

I landed on your question because I was trying to join symmetrical objects but had forgotten the details and was trying to recall how to do so again. While the answers already given here are technically correct, I think there are a couple quirks about how Inkscape works and describes things that are making it confusing.

First, the documentation - while having examples calling out "end nodes" vs. "nodes" - does actually make it seem like any two nodes can be joined.

Join (merge) nodes - Select at least two nodes. When you click on the button, the nodes will be merged into a single node. Inkscape will try to preserve the path’s shape as well as possible.

(From https://inkscape-manuals.readthedocs.io/en/latest/node-operations.html) I believe the observations of others here about this being end nodes only is correct and needs further consideration; however, more on that later.

This can make for a frustrating experience. For example, consider making something symmetrical. You might draw half, copy, flip, and then wish to join the two halves together.

Suppose I have these two halves of a W-shape and then wish to do a "Join nodes" operation: Attempt #1

While the documentation makes it seem this should somehow work, it does not.

However, let's return to the idea that perhaps these need to be end nodes instead. When I think of end nodes I typically think of an open, non-filled path. Joining works fine for a simple case like this: Simple node join

But all that's really needed is that the path be open - so interestingly we can transform our nodes into end nodes. If we go back to before we copied the object, we can select the segment attached to the node we are going to join and delete it using "Delete segment between two non-end nodes". Deleting the segment to make end nodes

Confusingly, the end outcome of this operations looks identical visually because our stroke is not particularly obvious. However, now the operation from before works as expected. Success

And you can also do the same to the other node affected by deleting the segment since it is an end node now, too. Success on other endpoint

Now what about the documentation not indicating that these need to be end nodes? Well, I think there's a reason for that, too. It doesn't strictly have to be end nodes if you are also considering nodes in the same path - then it simply appears that they need to be contiguous. For example, you can do this type of "Join nodes" operation: Join nodes in same path

Which results in:

Join nodes in same path result

However, non-contiguous nodes will not work for the same reasons others have listed that arbitrary nodes in different paths cannot be joined. For example, the following will not work:

Cannot join non-contiguous nodes in same path

So returning to your original shape. OP Shape

We can still get close to a bowtie. First, use the "Insert new node" option on the top segments, like this:

Insert new nodes

Reposition so that the newly added nodes are similar to the trick we used from the W above.

Repositioned new nodes

Now delete the segments to make them end nodes and then join as with the W:

Joined triangles

So it isn't strictly one point, but with a bit of positioning most of the same properties are preserved - and most importantly, the shapes are joined.

New contributor
J Trana is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
  • You can move the points back on top of eachother. But vhy bother there is no downside of them being separate. – joojaa yesterday

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.