Commit Graph

  • 5dc8a0808e Maybe the Travis CI server has more than 16 cores? Alessandro Ranellucci 2016-11-27 18:31:21 +01:00
  • d8082b9db4 Try to fix compilation error about the new threads default Alessandro Ranellucci 2016-11-27 18:18:01 +01:00
  • 9e8dae817d Fixes and improvements to the view selection menu, cherry picked from @alexrj a7693c4719c0e0e0129aea7461706d2ed53a52cc Alessandro Ranellucci 2016-11-27 16:48:48 +01:00
  • d628764da6 Minor fixes to parallelize code, cherry picked from @alexrj 5242b3e03ab2b195ba9c7c53fba705a8ed1c7abd Alessandro Ranellucci 2016-11-27 15:25:22 +01:00
  • 73ddd3b438 Refactored parallelization code, cherry picked from @alexrj 36789774471a0bf9a66bb33cc3ab6984f8ede8c6 Alessandro Ranellucci 2016-11-26 16:07:36 +01:00
  • 9fbd135f14 Automatically detect the number of cores and use that as a default for threads number Alessandro Ranellucci 2016-11-26 13:46:19 +01:00
  • 70a9de085b Parallelize TriangleMeshSlicer::slice(), cherry picked from @alexrj 83ad123d951c6ee663d2f3b02e095c203ca794e7 Alessandro Ranellucci 2016-11-26 13:45:58 +01:00
  • e9290252d6 Fixed regression in the _make_perimeters port Alessandro Ranellucci 2016-11-26 12:47:11 +01:00
  • 86c8207d31 Ported make_perimeters() and infill() to C++/XS, use pure C++ threads, cherry picked from @alexrj 66591bcc556c01572ec7519b1f8cb4ee2d430685 Alessandro Ranellucci 2016-11-26 12:28:39 +01:00
  • 3e8cafa857 Fix of ASCII STL parser. Accept a model even with invalid normals. bubnikv 2016-12-05 11:39:17 +01:00
  • 330ffed87e Adjusted copyright header of the Perl GLShader module. bubnikv 2016-12-02 11:19:27 +01:00
  • 7e1af658b6 Initial experiments with vertex / fragment shaders, prototype to visualize layer thickness. bubnikv 2016-12-02 11:14:24 +01:00
  • bd618569e1 Print the supports before the object layer at the same height. bubnikv 2016-11-30 18:54:19 +01:00
  • 26a8017e99 Made the support interface contact loops configurable. bubnikv 2016-11-30 17:33:55 +01:00
  • 38cb2842ac support_material_synchronize_layers implementation bubnikv 2016-11-30 16:06:12 +01:00
  • 556204fddc support_material_synchronize_layers configuration value for synchronization of object layers with print layers. bubnikv 2016-11-30 16:04:15 +01:00
  • 946b36bb4d Supports using the EdgeGrid simplify_contour bubnikv 2016-11-29 19:30:59 +01:00
  • 1d44e92a6e Point dot operator and PointHash object for std unique_xxx functions. bubnikv 2016-11-29 19:29:24 +01:00
  • 5c23ee504c EdgeGrid::contours_simplified for supports bubnikv 2016-11-29 19:28:33 +01:00
  • ca5ad58ad2 logging of slicing process bubnikv 2016-11-29 19:27:23 +01:00
  • 85aa802d4b Fix of the last clipperutil safety_offset modification. Handle safety offset of holes separately, don't forget to reverse them before / after. bubnikv 2016-11-29 19:26:26 +01:00
  • 792856a505 Bounding Box - new method align_to_grid bubnikv 2016-11-29 19:25:10 +01:00
  • 50fe691604 Squashed commit of the following: Bill Waggoner 2016-11-28 14:28:50 -05:00
  • bde2ee6a7e Step forward in the C++ supports. bubnikv 2016-11-28 17:36:50 +01:00
  • 8b0784f26c Added a free "cross product" function to Pointf (thinking the Pointf is really a vector in this case). bubnikv 2016-11-28 17:34:52 +01:00
  • 695c92fb00 CLIPPER_OFFSET_SCALE was made a power of two, the scaling functions inside ClipperUtils are now using bit shifts instead of multiplication by doubles, which makes the scaling precise. bubnikv 2016-11-28 17:33:17 +01:00
  • e93253e270 Extended tracing of Support generator bubnikv 2016-11-24 15:38:19 +01:00
  • a5b04d5cf3 Support calculation optimized. bubnikv 2016-11-24 15:05:05 +01:00
  • e02755632e new Utils.hpp bubnikv 2016-11-24 14:05:06 +01:00
  • 0d20a81354 Log support through boost::log bubnikv 2016-11-24 13:44:51 +01:00
  • e67e37c772 Supports: Disabled debugging,fix of bottom surface over print. bubnikv 2016-11-24 11:29:31 +01:00
  • 14df0717ca Fix of new suports. bubnikv 2016-11-24 10:43:47 +01:00
  • d8be4de6cf One step further to the C++ Supports. bubnikv 2016-11-23 15:51:47 +01:00
  • 1a1eaa0810 increased version number. bubnikv 2016-11-20 23:06:56 +01:00
  • a069c41b20 On Windows, load the icon either from the exe, or fron the ico file. bubnikv 2016-11-20 14:22:26 +01:00
  • 39679f9518 Missed this one at the last check-in. bubnikv 2016-11-20 12:59:29 +01:00
  • ef69474636 Optimized Layer::merge_slices() Don't merge classified pieces of layerm->slices, but use the non-split islands of a layer. For a single region print, these shall be equal. bubnikv 2016-11-20 12:38:59 +01:00
  • 79f5a16536 Reverted the perimeter generator to not save the perimeter areas. These could be calculated from the fill areas if needed. On the other side, the non-classified (non-split) fill areas are stored now for use in the "ensure vertical wall thickness" feature, also the non-split fill areas are re-used when recalculating the infills. This is safer than trying to stitch the fill region together from the classified fragments. bubnikv 2016-11-17 23:22:59 +01:00
  • 2085a482c7 admesh: Fixed a problem in loading an STL when compiled with Visual Studio 2013. Added multiple compile time checks for data sizes and alignment. The library STL import is not big endian safe, so added a test for endianity, modified STL export to a faster little endian only. bubnikv 2016-11-17 16:57:58 +01:00
  • 9772584d78 Tame the Shiny profiler. Make it switchable with define SLIC3R_PROFILE. bubnikv 2016-11-16 23:11:51 +01:00
  • 3d47c52b47 In "ensure vertical wall thickness", the union_ is called each time a new layer is added to the shell. This is faster than calling union_ over all collected polygons. Also security offset has been disabled. bubnikv 2016-11-16 22:16:20 +01:00
  • 6a3bdf43dc ClipperUtils extended with intrusive profiling macros. offset2() was exteded with a shortcut, if both offset directions are of the same direction. bubnikv 2016-11-16 22:12:58 +01:00
  • bcda69c1e5 Extended the Build.PL to understand an environment variable SLIC3R_PROFILE to set the C++ symbol of the same name to enable Shiny profiler. bubnikv 2016-11-16 22:10:04 +01:00
  • c3af189045 Reduced some compiler warnings. bubnikv 2016-11-16 22:09:00 +01:00
  • 901ec0ad37 Disable includes inside Shiny sources when SLIC3R_PROFILE symbol is not defined. bubnikv 2016-11-16 22:04:38 +01:00
  • bfbe85b5c2 Some optimization of the "ensure vertical wall thickness" feature. bubnikv 2016-11-16 18:04:47 +01:00
  • e857833a91 Undef seed macro because of crazy perl macro substitutions. bubnikv 2016-11-16 13:19:48 +01:00
  • a36cc6491c Fixed compilation of XS modules by undefinig the "seed" macro redefined crazily by Perl. bubnikv 2016-11-16 13:14:42 +01:00
  • 1589ffb224 Fix for compilation on Strawberry Perl with C++11 enabled. bubnikv 2016-11-16 13:06:51 +01:00
  • 68e9ec0d41 Set the C++ version to C++11 for all compilers but Visual Studio C++. bubnikv 2016-11-16 13:00:36 +01:00
  • 4c407c8a59 Optimization of Model bounding box routines (avoids copying the mesh), optimization of the admesh rotate function (also made numerically more robust). bubnikv 2016-11-16 11:53:29 +01:00
  • 52de3940fe Improvements of admesh robustness when loading and fixing STLs. https://github.com/prusa3d/Slic3r/issues/33 bubnikv 2016-11-16 10:33:23 +01:00
  • d1d6e907c5 Positive and negative zeros are possible in the floats, which are considered equal by the FP unit. When using a memcmp on raw floats, those numbers report to be different. Unify all +0 and -0 to +0 to make the floats equal under memcmp. bubnikv 2016-11-16 09:31:18 +01:00
  • 50f06a0fe8 Increased the gimbal lock threshold to 170 degrees from 150 degrees. This makes it possible to look at the bottom of an object. bubnikv 2016-11-16 09:24:27 +01:00
  • e6d802a5ff Fixed a 64bit compatiblity in admesh, fixed a typo in TriangleMesh::swap() bubnikv 2016-11-15 17:22:00 +01:00
  • 7f1704b2ac Disabled live preview by default as it is not stable and/or the calculation takes too long for interactive usage. bubnikv 2016-11-13 23:35:56 +01:00
  • 9abe07852e Fixed https://github.com/prusa3d/Slic3r/issues/32 bubnikv 2016-11-12 23:20:49 +01:00
  • 7ebc3b0884 Merge branch 'master' of https://github.com/prusa3d/Slic3r bubnikv 2016-11-12 19:05:12 +01:00
  • b116fe287c Fixes https://github.com/prusa3d/Slic3r/issues/32#issuecomment-260135542 bubnikv 2016-11-12 19:04:40 +01:00
  • c1af9bda0a Merge pull request #30 from hroncok/patch-1 bubnikv 2016-11-11 15:51:58 +00:00
  • ec3aeb1e47 Update the version Miro Hrončok 2016-11-11 16:46:05 +01:00
  • 1070f0c0af New feature: Propose to enable "detect bridging perimeters" when the supports are first enabled. Don't check keep asking, if the user does not want the bridging perimeters to be enabled. bubnikv 2016-11-11 15:05:39 +01:00
  • f4ee87ba24 Fixed https://github.com/prusa3d/Slic3r/issues/27 bubnikv 2016-11-11 12:00:40 +01:00
  • c2d5b32ee2 Changed the logic of the "ensure vertical wall thickness" feature slightly by inflating the projected top/bottom/bottom bridge surfaces before they are added into a surface. This ensures, that the possible projected infill areas merge with the perimeter supporting areas, but the perimeter supporting areas will not be inflated on their own, if there is no touching projection of a top/bottom/bottom bridge surface. bubnikv 2016-11-11 11:13:36 +01:00
  • 4460b5ce50 re-wrote PrintObject::detect_surfaces_type() to C++, Fixed some cracks in the fill surfaces created by rounding all surfaces inside detect_surface_type(). bubnikv 2016-11-10 19:23:01 +01:00
  • 317e9131e8 New sparse infill: "stars" - David's star shaped infill. This is very similar to a "triangles" infill, but maximum two lines intersect at a single point. bubnikv 2016-11-09 15:39:12 +01:00
  • eb0ab38618 Fixes https://github.com/prusa3d/Slic3r/issues/26 Strange behavior of Extra perimeters and ensure wall thickness Old behavior is re-enabled when ensure vertical wall thickness is off. bubnikv 2016-11-09 10:24:45 +01:00
  • e15b5f4587 Fix of https://github.com/prusa3d/Slic3r/issues/16 Crashes while switching in preview through layers with arrow keys bubnikv 2016-11-08 17:13:16 +01:00
  • e92501e51e Use a less aggressive positive offset for top/bottom/bridge surfaces, when enlarging them for better anchoring. bubnikv 2016-11-08 15:35:08 +01:00
  • b8590180d8 Fix of https://github.com/prusa3d/Slic3r/issues/20 Slicing preview incorrect in terms of visible solid layers bubnikv 2016-11-08 15:33:13 +01:00
  • 443e900e07 Fixed compilation on Strawberry bubnikv 2016-11-08 11:23:08 +01:00
  • 5aacc6b015 Extended exit report when catching an exception under a broken Strawberry Perl. bubnikv 2016-11-08 11:15:09 +01:00
  • 2e53c06159 Finished the SLIC3R_HAS_BROKEN_CROAK magic. bubnikv 2016-11-08 10:59:43 +01:00
  • eb61373b69 Compilation with an environment variable SLIC3R_HAS_BROKEN_CROAK set will force the perl confess / croak called from a C++ code to print an error message and exit. There is a bug in some Strawberry Perl instalations leading to an interpreter hang up and an exit with a reasonable message is better than that. bubnikv 2016-11-08 10:49:32 +01:00
  • 22ca927f12 Reworked the bridge detector to allow searching a single bridging direction over multiple regions. This allows a single bridge to be drawn over holes, which are too close to each other to allow for separate bridges. Fixes Bridging-Angle not optimal https://github.com/prusa3d/Slic3r/issues/12 bubnikv 2016-11-08 09:59:25 +01:00
  • 5a81731577 Implemented utility functions to operate over lines, polylines, polygons, surfaces. bubnikv 2016-11-07 22:49:11 +01:00
  • aac968162b Unit test to verify whether Slic3r would hang when croaking from a C++ exception handler. This is an unfortunate error in some Strawberry Perl distributions. bubnikv 2016-11-06 17:42:36 +01:00
  • e9e55e7ac3 Fix missing cubic infill line, thanks @KoKuToru for pointing out the problem and proposing a fix. https://github.com/prusa3d/Slic3r/pull/18 bubnikv 2016-11-06 16:03:13 +01:00
  • bfb336df0c Refactored Print::validate() method to not throw an exception, but to return a string with an error message instead. This was necessary to avoid a hang-up on some Strawberry Perl distributions, when a perl "croak" function is called after a C++ exception is caught. bubnikv 2016-11-05 02:23:46 +01:00
  • dfa3f8d597 Perl OpenGL 0.7 package causes crashes on many platforms. Constrain compilation to Perl OpenGL version lower than 0.7. 897ca52654 bubnikv 2016-11-04 23:23:01 +01:00
  • 89cf29080b Fix of https://github.com/prusa3d/Slic3r/issues/14 A to_polygons(SurfacePtrs &&) method does not make sense as the ownership of the Surfaces stored in the pointer array is not known. Thanks to @flannelhead for precisely pinpointing this issue. bubnikv 2016-11-04 17:20:32 +01:00
  • 96a1c74d45 Let's hope to fix compilation on gcc. bubnikv 2016-11-04 17:09:01 +01:00
  • a10e9c6573 Fix of https://github.com/prusa3d/Slic3r/issues/13 The BoundingBox::defined flag was not set in constructor, if initialized from min/max corners. bubnikv 2016-11-04 16:49:08 +01:00
  • 6217622865 Hopefully a fix of https://github.com/prusa3d/Slic3r/issues/11 bubnikv 2016-11-04 15:03:51 +01:00
  • 3fc57ba8d8 Fixed compilation of the XS module with SLIC3R_GUI compilation flag enabled, leading to a linkage of GL and GLU libraries. https://github.com/prusa3d/Slic3r/issues/8 bubnikv 2016-11-04 01:06:26 +01:00
  • 61d82b02b5 Improves https://github.com/prusa3d/Slic3r/issues/3 bubnikv 2016-11-04 00:55:43 +01:00
  • 483a658144 Method ExtrusionEntity::polygons_covered() and derived were split into polygons_covered_by_width() and polygons_covered_by_spacing(). bubnikv 2016-11-04 00:10:35 +01:00
  • f278fa454e Merge pull request #10 from flannelhead/cpp11-fix bubnikv 2016-11-03 19:10:45 +00:00
  • 7b6b609df1 ExtrusionEntity and derived classes: Documented, short methods made inline for efficiency and readability, grow() renamed to polygons_covered(). bubnikv 2016-11-03 10:24:32 +01:00
  • 12b7818caa Only call wxWidgets method wxApp::SetAppDisplayName for wxWidgets 3.0 and newer. bubnikv 2016-11-03 09:15:30 +01:00
  • fad91b86bd unique_ptr instead of auto_ptr for C++11 and above Sakari Kapanen 2016-11-03 08:18:27 +02:00
  • 60ea0561ec Copy and move variants of chained_path functions Sakari Kapanen 2016-11-02 22:31:03 +02:00
  • 381c88ce0c Fix typos preventing compilation with CPPVER >= 11 Sakari Kapanen 2016-11-02 22:29:59 +02:00
  • d530bdba67 Test of a 100% coverage by the FillRectilinear2 has been disabled before, now also the expected number of tests executed has been adjusted accordingly. bubnikv 2016-11-02 17:15:05 +01:00
  • 28ccb51f9b Fixed a crash when accessing a non-existing config value from C++ infill. Disabled a test case of 100% infill coverage. This needs to be yet improved. bubnikv 2016-11-02 16:55:56 +01:00
  • a6cf6afb49 Missing #include <memory> bubnikv 2016-11-02 11:13:13 +01:00
  • 95ede7c4b8 Rewrote Fill2.pm to C++, deleted Perl infills for good. Removed dependency on Perl Math::PlanePath module. Fixed compilation with Visual Studio and SLIC3R_DEBUG: Visual Studio older than 2015 does not support the prinf type specifier %zu. Use %Iu instead. C++11 move semantics enabled. bubnikv 2016-11-02 10:47:00 +01:00
  • 3a31d37d35 Fix of https://github.com/prusa3d/Slic3r/issues/5 : missing #include <assert.h> in FillBase.hpp bubnikv 2016-11-02 09:00:26 +01:00
  • 36f51ff2bf Fixed a return value in the Config multi-string parser. bubnikv 2016-11-01 14:52:44 +01:00
  • 0264381f79 Missing include for memcpy for Linux. bubnikv 2016-11-01 13:53:28 +01:00