True, but I have never seen an ECAD software that has implemented that because that opens up a whole other can of buggy worms of intentionally trying to connect nets and guessing the intention of the user. When do you push the net and when do you merge the net? Does dragging a net label connected to a net to intentionally attach it to a second net to connect the two not work due to pushing? When do you decide when dragging a net is an intentional connection vs not during the drag? When you drag a component, do all nets and connected components get dragged with it or do they push each other into a jumbled mess of traces jumping over each other like what sometimes happens with push behavior in layout routing? I think it is a pretty difficult problem to solve.
That’s why I personally like KiCAD’s choice just to not pull nets with component moving, but to each their own.
It’s been a while since I’ve made a PCB so I can’t remember what Horizon / Designspark PCB do, but this is a solved problem.
When do you push the net and when do you merge the net? Does dragging a net label connected to a net to intentionally attach it to a second net to connect the two not work due to pushing?
You merge nets when the user explicitly connects them (i.e. they are drawing a net and they click on another net).
I like how Simulink does this best - they fade wires when they cross without connecting - looks nice and makes connections obvious.
True, but I have never seen an ECAD software that has implemented that because that opens up a whole other can of buggy worms of intentionally trying to connect nets and guessing the intention of the user. When do you push the net and when do you merge the net? Does dragging a net label connected to a net to intentionally attach it to a second net to connect the two not work due to pushing? When do you decide when dragging a net is an intentional connection vs not during the drag? When you drag a component, do all nets and connected components get dragged with it or do they push each other into a jumbled mess of traces jumping over each other like what sometimes happens with push behavior in layout routing? I think it is a pretty difficult problem to solve.
That’s why I personally like KiCAD’s choice just to not pull nets with component moving, but to each their own.
It’s been a while since I’ve made a PCB so I can’t remember what Horizon / Designspark PCB do, but this is a solved problem.
You merge nets when the user explicitly connects them (i.e. they are drawing a net and they click on another net).
I like how Simulink does this best - they fade wires when they cross without connecting - looks nice and makes connections obvious.
https://microcontrollerslab.com/wp-content/uploads/2019/01/20-single-scope.jpg