CURA-12453
* Use DONT_ALIGN alignment, otherwise all the transforms get re-centered, including the ones of the fixed objects
* Remove DONT_ALIGN strategy for starting point, which is a non-handled case in the inner library
CURA-12169
1. Do not recalculate transformed polygons for each strategy.
2. Try all possible strategies, but only once. This seems to give the best results.
CURA-12169
When doing an explicit auto-arrange that can not find a complete solution, it is better not to move the objects because they will probably end up in a weird position
Using relative positioning proved to create issues; when spamming of arrange instructions it was possible to end up in the following time line
1: arrange action a is started
2: arrange action b is started
3: arrange action a finished computation, and applies transformations on the models
4: arrange action b finishes computation and applies relative transformations on top of the previous transformations
By using absolute positioning this issue is resolved
CURA-11279
Issue before was the following: when placing objects within a grid cell there is a margin around the object. This margin comes from both the integer rounding of the cell and the defined min distance between objects. When trying to place object near the buildplate border we marked any cell that is not fully within the buildplate area as an invalid cell to place objects in. This was however too strict; there is the aforementioned margin around the object, and if only this margin would be outside the buildplate it is perfectly fine to place object in that cell.
CURA-7951
By default, the alignment would cause the entire mass of objects to have its center of gravity to be at the origin, including any fixed object. So there was an unwanted 'whole space' translation that we didn't take into account could occur beforehand. Fortunately, there's an option to just set it not to re-translate the whole space. It's unlcear to me how this would've worked in 5.2.2 and prior (and it did ... somehow), since we didn't change anything, including that default, as far as I can see. Anyway, the arrange function can handle 'fixed' objects again (as in loading them in one by one, or loading in a whole bunch of files instead of just 'arrange all').
CURA-10476 -- should fix#14838