is_left_handed() method on transformations and volumes
rendering of GLVolumes in left handed coordinate systems by glFrontFace(GL_CW);
SLA slicing on left hand oriented instances by flipping the mesh for SLAPrintObject in X.
rendering of the SLA cutting plane in left handed systems
resetting the SLA clipping planes on 3D preview invalidation
In case the bridge is only supported at one side, it is technically
not considered to be a support, therefore the default infill angle is used.
With this change, the bridging areas use the custom angle value even
if not supported on both sides.
replaced std::vector<bool> with std::vector<unsigned char>
as std::vector<bool> is a specialized version optimized for memory,
not speed (8 bools are packed into a single boolean).
The triangle neighbor traversal was optimized to not push visited
or non-neighbors into the queue.
It is too dangerous to rely on the admesh flag without inspecting the
admesh code line by line and a through test.
This reverts commit cd3cec3e45535ab42f7e36d50730299a91dada3e.
1) All camera related OpenGL calls moved into class
2) The Camera class now stores the view matrix, the projection matrix and the viewport
3) The Camera class now exposes methods to get the camera orientation vectors, the camera position, the view matrix, the projection matrix and the viewport
4) All the code operating on the camera or requiring camera data has been modified to use the new methods
* to build the tests on windows, you need vs2015 or 2017 with "CRT SDK"
so you have to also build all deps & slic3r against this compiler.
* I didn't tried to build the tests on linux/osx, maybe some cmkae changes are needed.
* I added a slic3r_lib project to be able to link statically the test against all the slic3r project.
* tests will need many changes to be able to use the new codebase. only the ones in the cmakelists are done right now.
* some test may be in error, because the behavior of the test vs slic3r isn't defined well enough to make a decision of which one is wrong.