#3 Several rotations leading to an object floating upon tray

open
nobody
None
5
2011-09-23
2011-09-23
Alain Bonnaud
No

SVN Patch file attached.

With the current code, if you are for example doing 2 times a Z rotation and then an X rotation,the object is floating upon the tray, letting a space between the object and the tray.
If you want then printing this object it will fail.
Identified problems:
- The extent is stored after changing the values to absolute values.
If you apply a new rotation on the result of a rotation after changing the values to absolute values
it doesn't of course give the same result that if you don't change it. It gives a wrong result for the combination of rotations.
- The computing of the new extent is not right if you just deduce the new surrounding parallelepiped from the rotation of 1 point.
the new extent must be computed from 3 vertex of the parallelepiped.

I propose a solution that works in most of the "normal" cases of use.
I have however detected that after a large numbers of random combination,
it can lead to have again the object not staying on the tray but I have not identified the way to reproduce the problem.
Someone reviewing my patch proposal could perhaps identify the reason.

To be more accurate, It would also be interesting to be able to get the strict extent of an object,
I think the parallelepiped that strictly surround the object.
I mean for example for an object which is loaded in a diagonal position, the minimum extent that can be obtained by rotating it.

Discussion