Commit Graph

12 Commits

Author SHA1 Message Date
bubnikv
dc0c58a9c5 Improvement of the initial placement of modifier meshes:
Sphere and Cylinder are scaled to the same volume as Box
Newly entered modifier meshes are rotated parallell to the world coordinates.
If the instance coordinate system is rotated and scaled, it is not possible
to create an unskewed modifier to world transformation. In that case
the best possible transformation is found to minimize least squares error
of the 8 corners of the new modifier mesh bounding box using
Levenberg-Marquardt algorithm.

FIXME:
1) The Levenberg-Marquardt non-linear least squares does not converge
nicely, it may require some tuning.
2) Above all, if 1) is called, then often the skew of the modifier mesh
is so high, that it is likely more useful to display the modifier
with zero rotation and inverse scaling, so that the modifier will be
of correct size, but not parallel to the world coordinates.
2019-02-28 11:20:01 +01:00
bubnikv
bb0cf221bc WIP synchronization of Z rotation of the instances 2019-01-28 08:52:22 +01:00
Enrico Turri
25319113f1 Code cleanup 2019-01-21 11:29:45 +01:00
Enrico Turri
80bae6dd98 1st installment of volumes centering fixes (WIP) 2019-01-18 12:52:09 +01:00
Enrico Turri
611d9aa0d8 Model's volume transform set as default 2019-01-02 10:49:13 +01:00
Enrico Turri
26d373a2e2 Added extended functionality to Geometry::Transformation class 2018-11-01 13:42:07 +01:00
Enrico Turri
00222226ed Mirror component of transformations set as default 2018-11-01 08:46:44 +01:00
Enrico Turri
d6d632d4fc Added Geometry::Transformation class. Use it into ModelInstance, ModelVolume and GLVolume 2018-10-31 14:56:51 +01:00
Enrico Turri
fbbe1325b6 Mirror transform components in ModelInstance and GLvolume - WIP and disabled 2018-10-18 15:50:51 +02:00
Enrico Turri
9bb93cc4f4 Added helper functions to extract euler angles from 3d transforms 2018-10-12 12:19:57 +02:00
Enrico Turri
aa0c3bf2e3 Added helper functions to generate 3d transforms 2018-10-12 10:09:16 +02:00
bubnikv
0558b53493 WIP: Moved sources int src/, separated most of the source code from Perl.
The XS was left only for the unit / integration tests, and it links
libslic3r only. No wxWidgets are allowed to be used from Perl starting
from now.
2018-09-19 11:02:24 +02:00