bmwcarit/Emma

Tighter obj/sec packaging in graphics

Opened this issue · 0 comments

Feature Description

Here:

for plottedElement in plottedElements:

                            for plottedElement in plottedElements:
                                if element[Element.addressStart] < plottedElement[PlottedElement.addressEnd] and yAxe <= plottedElement[PlottedElement.yAxe]:

Do the following:

  1. Sort (bisect.insort package function might be helpful) by end address
  2. Iterate over elements (backwards) and check if end address < start address of element to be added
  3. If there is a free space insert the new element otherwise add to a new y level

Like this free space from upper regions will be used (worst cast would be stairs).

Consider also markers for indicating small overlaps (a few bytes).