Commit Graph

10876 Commits

Author SHA1 Message Date
1b89c08bfc TriangleMesh.cpp/h:
New methods: has_multiple_patches(), number_of_patches()
Improved constness of file access methods.
Reduced some memory allocations costs.
Fixed some crashes of the cut() method on invalid meshes, Slic3r crashes on the unstable triangulation now.
Documented.
2017-02-26 22:17:39 +01:00
5b98f1a068 Some utility methods to help loading models from the disk.
Not quite sucessfull try to fix the crahes on mesh cut.
2017-02-26 22:03:03 +01:00
efb02f71f0 AdMesh:
unify positive and negative zeros in stl_check_facets_exact() and stl_check_facets_nearby()
New function stl_transform() by a 3x4 matrix.
Some constness improvements.
2017-02-26 21:59:09 +01:00
b7aeeb968b Using the C++ file loaders. 2017-02-26 21:54:42 +01:00
121b3c31d2 Removed the old Perl Supports. 2017-02-26 21:49:40 +01:00
25dfe7278c Initial rewrite of the file accessors from Perl to C++.
This is especially important for the extremely slow AMF parser.
Also there is a new file handler for the Prusa Control 'PRUS' format.
2017-02-26 21:46:33 +01:00
91af2ddd1e Include expat parser into the Slic3r source code tree.
Having the expat parser inside the Slic3r source base makes life easier
on non-Linux systems and it also allows us to configure the Expat
parser for maximum performance by disabling all unneeded features.
2017-02-26 21:42:52 +01:00
82aed45816 Hopefully fixes the aligned seam:
https://github.com/prusa3d/Slic3r/issues/74

The way it works now is following:
Slic3r will add some negative penalty to all perimeter points near the last seam.
Once the perimeter point with minimum penalty is found, its penalty is compared
to a point closest to the last seam. If the penalty of the point
closest to the last seam is nearly as good as the minimum penalty,
the point closest to the last seam is picked instead. This heuristics
will hide the seams into corners if possible, but if not possible, it will
strive to align the seams precisely.
2017-02-22 16:35:07 +01:00
523b7f3ebc Fix of a typo specific to a debugging build. 2017-02-22 16:13:10 +01:00
f7acb20e23 Changed defaults for the perimeter/infill overlap (15-55%)
and for the infill pattern (honeycomb->stars)
2017-02-22 16:06:35 +01:00
a4dd6c7ce5 Added missing get_volume() method to the PrintObject Perl interface. 2017-02-22 16:05:14 +01:00
4a84643894 Fixed regression causing slowdown_below_layer_time to be ignored. #3515 #3443 2017-02-22 15:29:14 +01:00
9f660738b3 Fixes an issue: Slic3r outputs Weight: %.1fg, Cost: %.1f on command line,
instead of filling in the numbers.

https://github.com/prusa3d/Slic3r/issues/144
2017-02-22 12:01:31 +01:00
8174c05df4 Command for reloading an object from file. #1466 2017-02-21 17:58:48 +01:00
d02ee5cf80 By @lordofhyphens:
only re-zoom if we have a valid bounding box, avoid a divide by 0 error.
2017-02-21 17:43:28 +01:00
6649888d1c Support decimal scaling factors and rotation angles. #1617 2017-02-21 16:43:47 +01:00
fefba5ff1d Bugfix: --rotate did not support decimal values and interpreted them as radians. #3460 2017-02-21 16:42:51 +01:00
a8edff1e84 Always retract in bottom layers. #3053 #3618 2017-02-21 16:37:31 +01:00
873161ea7c Only enable movers if modifier mesh. 2017-02-21 16:30:13 +01:00
e2b56c4462 Repair the generic mesh so it can be exported. 2017-02-21 16:29:57 +01:00
4f428fae40 Added UI options to make a slab, defaulting to the model object's bounding box * 1.5 2017-02-21 16:29:42 +01:00
6aecae3121 UI: fixed naming sphere is not a cylinder. 2017-02-21 16:29:32 +01:00
2971235299 UI code to generate a generic sphere. 2017-02-21 16:29:21 +01:00
c575a1f1d6 Added make_sphere, generates a mesh with specified step angle and raidus rho. 2017-02-21 16:29:09 +01:00
ceb72da632 Implement clone() for Fill classes 2017-02-21 16:22:54 +01:00
716dc2e650 Made cube and cylinder static functions of the package, not some specific TriangleMesh object. 2017-02-21 16:11:52 +01:00
26b6e4c619 Disable sliders if a volume is not selected. 2017-02-21 16:11:41 +01:00
2eea139731 UI now changes its options based on the object type selected. 2017-02-21 16:11:22 +01:00
3ee32ef153 Menu now works to select cylinders (reusing the gui options) 2017-02-21 16:11:09 +01:00
f44df28a96 Fixed mesh generation to generate cylinders. 2017-02-21 16:10:54 +01:00
b91b98b21e Added prototype make_cylinder() 2017-02-21 16:10:38 +01:00
3bb237deee Added new constructor to TriangleMesh that accepts vectors of Points and make_cube function to make a new simple cube mesh. 2017-02-21 16:10:14 +01:00
ff33fbbb9a Use LambdaObjectDialog in GUI.pm to avoid crash on Windows. 2017-02-21 16:09:51 +01:00
107c89d37b Removed commented code. 2017-02-21 16:04:45 +01:00
a0548898f3 Added a cancel button, and rewrote initial option code to reuse OptionGroup. 2017-02-21 16:04:02 +01:00
3109a9bc1f Update main plater view after moving mesh 2017-02-21 16:03:46 +01:00
33f489bba9 Anonymous object supports. Initial implementation provides for a box of arbitrary size. 2017-02-21 16:03:19 +01:00
e93cc13698 Permit sliding modifer meshes around in the Settings dialog. 2017-02-21 16:02:56 +01:00
a65c9ba083 Ported CoolingBuffer to C++/XS 2017-02-21 14:02:47 +01:00
c517b0d8f1 Bugfix: object disappeared from 2D plater when reloaded from disk. #3634 2017-02-21 13:57:40 +01:00
061a79bfbd Readme improvements (#3679)
* Use svg badge for travis build status.

This avoids bluriness with high-density displays. We're already
using svg for the appveyor status.

* Update README to use https urls.

Both xkcd and freenode are available securely now.
2017-02-21 13:12:21 +01:00
b8ece2af06 Pressure advance overrides print speeds patch (#3287)
* Fix PressureRegulation.pm

Check if a pressure advance is needed even if speed is unchanged, but a discharge happened before. Restore print speed after advance / discharge. Solves #3282
2017-02-21 13:09:12 +01:00
27a1a6609f Fixed input to bed shape dialog to catch everything that resolves to 0. Fixes #3681 (#3683) 2017-02-21 13:07:15 +01:00
b022e51d94 Don't reset speed on flush moves (avoid use of uninitialized variable). 2017-02-21 13:02:16 +01:00
8aae5bdb28 The variable layer editing shader was made OpenGL 2.0 compatible.
Fixed a bug in the scaling of colors for the variable layer editing.
2017-02-21 09:39:28 +01:00
006173342c Fixes: Infill patterns triangles/stars seem to be mixed-up
https://github.com/prusa3d/Slic3r/issues/143
2017-02-20 22:36:34 +01:00
171148d3a6 Changed the platte of the variable layer height visualization,
green shall indicate a thin layer.
2017-02-20 22:22:23 +01:00
8cfdc28f2b Implemented a level of detail on the variable layer height editing tool. 2017-02-20 21:54:53 +01:00
440a5eb2a0 Fixes an ugly infinite loop issue.
https://github.com/prusa3d/Slic3r/issues/142
2017-02-19 21:45:38 +01:00
6e19921f98 Fix a warning on Linux / OSX. 2017-02-19 19:44:05 +01:00