Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

autoplace #188

Closed
davidperrenoud opened this issue Aug 25, 2014 · 18 comments
Closed

autoplace #188

davidperrenoud opened this issue Aug 25, 2014 · 18 comments

Comments

@davidperrenoud
Copy link
Contributor

From brendan....@gmail.com on October 16, 2008 15:19:56

The pcb layer should force or at least encourage users to only place parts
within actual board bounds. Not critical for alpha. Eventually would be
nice to even have a configurable parameter to keep folks from placing
things too close to the edge of a board.

Original issue: http://code.google.com/p/fritzing/issues/detail?id=188

@davidperrenoud
Copy link
Contributor Author

From dirk.van...@gmail.com on October 17, 2008 14:34:53

Labels: -Priority-Medium -Priority-Medium Priority-Low

@davidperrenoud
Copy link
Contributor Author

From dirk.van...@gmail.com on October 17, 2008 14:35:04

Labels: -Priority-Low Priority-Medium

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on November 18, 2008 14:34:15

there's no need for the user to have to drag and drop parts onto the
arduino when she first switches to pcb view. The parts could automatically
be placed on the board (not intelligently placed, just placed).

This is a little tricky if the user doesn't place the ardiuno early. And
what if there are parts the user doesn't want on the board?

Alternatively, we could have it be a menu item "place selected parts on the
arduino". But I'm leaning toward solving the 90% case, which is that all
parts belong on the board in pcb view. And if the user drags a part off
the board in pcb view, then don't autoplace it back--equivalent to the way
we deal with manually drawn traces.

Summary: PCB layout and board area issues (auto-place parts on the board)

@davidperrenoud
Copy link
Contributor Author

From brendan....@gmail.com on November 20, 2008 05:57:57

the 90% solution sounds good to me. autoplace would be triggered on adding an
arduino or adding any other part to the sketch. it's safe to assume that the parts
need to be on the board.

@davidperrenoud
Copy link
Contributor Author

From brendan....@gmail.com on January 07, 2009 05:23:19

jonathan is working on this

Owner: co...@irascible.com

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on July 02, 2009 14:02:22

Issue 679 has been merged into this issue.

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on September 27, 2010 23:47:04

Labels: Component-Autorouter

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on October 08, 2010 06:31:09

One approach in the literature is to use simulated annealing to minimize a cost function. A reasonable cost function would be total wire length. Having said this, I can't predict how well this would actually work in practice. But it probably wouldn't take more than a few days to try it out.

Summary: autoplace

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on October 15, 2010 02:10:08

Brendan suggests a cost function that is a combination of overall area plus the number of part crossings it takes to get from one connector to another (which is an estimate of how hard it would be to route that connection). So two parts which are to be connected are better being placed next to each other than with some number of parts in-between.

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on February 12, 2011 22:32:38

Optimal autoplacement can wait, but now that a rectangular board is placed in pcb view by default, by default, when parts are dropped in breadboard or schematic view, they should be placed on the board in pcb view (rather than just keeping the same x and y coordinate as is currently done).

So, marking this a defect instead of an enhancement. Optimal autoplacement will be the enhancement.

Labels: -Type-Enhancement -Priority-Medium Type-Defect Priority-High

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on February 13, 2011 00:21:48

Torsten thinks a Kohenen map might be applicable to the optimal placement problem:

"Here's a pointer to the Kohonen map: http://en.wikipedia.org/wiki/Self-organizing_map Look at the second illustration, somtraining.svg. Imagine the blue blob is the
circuit structure with its connections and the grid is the "folded" PCB."

other methods include simulated annealing and min-cut placement

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on February 13, 2011 02:18:49

Placing parts on the board (without regard to routing) is a case of the 2d bin-packing problem. I'm not sure how optimal it is, but the good old corner-stitch data structure from the autorouter can be used for bin packing problems.

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on February 13, 2011 04:38:48

comment 14 is implemented so this is back to the hard problem of autoplacement.

Labels: -Type-Defect -Priority-High Type-Enhancement Priority-Medium

@davidperrenoud
Copy link
Contributor Author

From andre.knoerig@gmail.com on January 08, 2012 04:40:04

Just noticed that while we have semi-autoplacement in PCB view (placing parts next to each other instead of random), we don't have it yet in schematic view.
This would be a nice enhancement, since it would make it much less daunting for beginners to look at this view.

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on November 26, 2012 20:58:14

Issue 1908 has been merged into this issue.

@davidperrenoud
Copy link
Contributor Author

From irasc...@gmail.com on December 17, 2012 23:48:17

could use the results of the autorouter toward autoplacement: if a net cannot be routed, it suggests a different placement

@KjellMorgenstern
Copy link
Member

I tried placing 20 parts into the schematics view, and they were placed in the board in pcb view. So I think we can close this for pcb.

image

@failiz
Copy link
Contributor

failiz commented Mar 20, 2021

Yes, I cannot reproduce it eaither. Maybe has been fixed or maybe they were reporting #1490 which is still open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants