On Mon, Jul 3, 2023 at 4:11 PM Tomasz Wlostowski <[email protected]> wrote: > > On 03/07/2023 12:49, Stuart Tyler wrote: > > What I have been working on for the past few days is understanding how I > > can implement multiple track dragging from isssue #14983. I think this > > is something within my programming capability and is a feature that I > > really want. I cannot imagine having to route a decent sized PCB without > > this feature - and so I am keen to work on a simple solution. > > > Hi Stuart, > > Thanks for your interest in contributing to KiCad. > > To quickly answer your questions: > - Python is a bad idea because there's no interactive tools support in > the pcbnew Python API. It's intended to be used mostly for batch > (one-shot) tools. > - As for C++, the single track drag code is in pns_dragger.cpp. > (PNS::DRAGGER::Move() performs the actual computation of dragged trace's > geometry). I guess you could start by making another implementation of > PNS::DRAG_ALGO that drags multiple traces. It should be relatively > simple to implement in the "mark collisions" mode, but nowhere near > simple in walk/shove modes, especially when vias are attached to the > ends of any subset of the multidrag traces... > > Tom
I now nothing about the PNS code but I wonder if there's more than just superficial similarity with dragging multiple tracks and dragging a footprint (or even a group of footprints) with tracks. This means: could it be possible to combine, at least partly, these two use cases in the implementation? https://gitlab.com/kicad/code/kicad/-/issues/4214 Eeli Kaikkonen -- You received this message because you are subscribed to the Google Groups "KiCad Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/a/kicad.org/d/msgid/devlist/CAP0gFe--aGBsU1vBL0gdOiVU9%3D6iEANxi806u7fV-ubj_nESTw%40mail.gmail.com.
