pcb

Dispersing elements better

Bug #1491953 reported by Traumflug
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pcb
Fix Released
Wishlist
Bert Timmerman

Bug Description

Putting this here so it doesn't get forgotten. Ben Jackson uploaded a "SmartDisperse" to gedasymbols, which he says to work better than the normal disperse. As I can't imagine a reason to disperse elements in an intentional dumb way I vote for enhancing the default behaviour with his strategy. Assuming his strategy works.

Bens announcement:

> My first test board for PCB involved an array of LEDs, and even
> with just a few components it got really annoying searching for
> the resistors that went with each LED after the
> DisperseElements().
>
> My head was filled with grandiose schemes for improving
> Disperse without turning it into autoplace. I've written
> something that does a better job than the stock function, with
> a better framework for changing the placement order if you
> come up with a better algorithm. The actual placement
> algorithm is fairly weak, but it's still a dramatic improvement
> (compare a ratsnest after the two disperses).
>
> [...]
> Run with :SmartDisperse() or :SmartDisperse(Selected)
> (you can also say All, but it's the default).

Revision history for this message
Traumflug (mah-jump-ing) wrote :
Changed in pcb:
importance: Undecided → Wishlist
Revision history for this message
Bert Timmerman (bert-timmerman) wrote :

pushed to master.

Changed in pcb:
status: New → Fix Committed
assignee: nobody → Bert Timmerman (bert-timmerman)
milestone: none → next-bug-release
Traumflug (mah-jump-ing)
Changed in geda-project:
importance: Undecided → Wishlist
Revision history for this message
Traumflug (mah-jump-ing) wrote :

Intenionally not marking as 'fix released', because:

- Documentation in the source code file.

- Having now two disperses() is obfuscation, they should be joined.

Changed in geda-project:
status: New → In Progress
Revision history for this message
Traumflug (mah-jump-ing) wrote :

The older disperse is in ActionDisperseElements() in action.c, line 2365ff. The new disperse is in smartdisperse.c.

Changed in pcb:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.