[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-dev: Net routing
Hi ar, Ales and Peter,
On Sonntag, 13. Januar 2008, a r wrote:
> On Jan 12, 2008 9:37 PM, a r <nbs.public@xxxxxxxxx> wrote:
> > I have found a bug in the logic of previously attached patch. New
> > patch will follow soon but first I want to clean up it a bit more
> > and test.
>
> I've attached an updated patch (sorry, again it's for v.1.3.0). The
> logic was changed to match the previously described behaviour. As far
> as the placement algorithm is concerned, I am done with it.
The patch applied cleanly to the current master. (1.4.0).
The patch greatly improves the net routing, but there are still some
things I don't like:
* in o_net_rubbernet the net toggles depending on whether dx is larger
than dy an vice versa.
It violates the "rule of least surprise" [1].
* If there are more than one connectable objects at the start location
the decision of the net direction ist not always that good.
* Iterating all objects is not required in o_net_start() as we have the
tile code for all connectable objects (pin, bus, nets).
If we would like to improve the net routing, I'd suggest the following
actions:
In o_net_start() we should decide which is the best routing for each
sector, depending on the matching connection objects at the start
point. No changes of the decision after that in o_net_rubbernet().
The options could be rated in a single function:
* prefered drawing direction is away from the current endpoint of a
line, next is orthographic direction, least the opposite direction.
* overwriting a net is less important than overwriting a pin.
* ...
@Ales:
You're worried about the copyright of anonymous contributions. I'd
reimplement the functionality from scratch, taking some of the ideas,
but I won't reuse the code from the patch.
Would that be ok for you?
@Peter:
As we have the tile code, do you think we need a more efficient
implementation to track down the connections at the start net point?
@ar:
Is it really that important to you to keep your anonymity?
[1] http://www.faqs.org/docs/artu/ch11s01.html
Regards
Werner
_______________________________________________
geda-dev mailing list
geda-dev@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev