Joseph Lenox
d961a88969
Fixed mesh generation to generate cylinders.
2016-11-27 22:34:10 -06:00
Joseph Lenox
2171d6ab96
Added prototype make_cylinder()
2016-11-27 19:15:27 -06:00
Joseph Lenox
efeb49e3a7
Added new constructor to TriangleMesh that accepts vectors of Points and make_cube function to make a new simple cube mesh.
2016-11-27 16:06:45 -06:00
Alessandro Ranellucci
d47f6d30af
Ported detect_surfaces_type() to XS/C++
2016-11-26 16:58:23 +01:00
Alessandro Ranellucci
3678977447
Refactored parallelization code
2016-11-26 16:07:36 +01:00
Alessandro Ranellucci
dabb7cb2ee
Automatically detect the number of cores and use that as a default for threads number
2016-11-26 13:46:19 +01:00
Alessandro Ranellucci
83ad123d95
Parallelize TriangleMeshSlicer::slice()
2016-11-26 13:45:58 +01:00
Alessandro Ranellucci
fee5de076f
Fixed regression in the _make_perimeters port
2016-11-26 12:47:11 +01:00
Alessandro Ranellucci
66591bcc55
Ported make_perimeters() and infill() to C++/XS, use pure C++ threads
2016-11-26 12:28:39 +01:00
Alessandro Ranellucci
048fafb9f9
Fix compilation
2016-11-24 17:54:41 +01:00
bubnikv
d88f05945d
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.
2016-11-24 17:16:31 +01:00
bubnikv
a20cc0a3a6
Reduced some compiler warnings.
...
Conflicts:
xs/xsp/BoundingBox.xsp
xs/xsp/Point.xsp
2016-11-24 17:15:55 +01:00
bubnikv
bd3df21560
Undef seed macro because of crazy perl macro substitutions.
2016-11-24 17:14:41 +01:00
bubnikv
731fa437ba
Fix for compilation on Strawberry Perl with C++11 enabled.
2016-11-24 17:14:24 +01:00
bubnikv
3a87ed9de9
Fixed compilation of XS modules by undefinig the "seed" macro
...
redefined crazily by Perl.
2016-11-24 17:14:12 +01:00
bubnikv
4a91a7221f
Optimization of Model bounding box routines (avoids copying the mesh),
...
optimization of the admesh rotate function (also made numerically more robust).
2016-11-24 17:13:53 +01:00
bubnikv
96ef2692d7
Improvements of admesh robustness when loading and fixing STLs.
...
https://github.com/prusa3d/Slic3r/issues/33
2016-11-24 17:13:43 +01:00
bubnikv
10c0be2e99
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.
2016-11-24 17:13:31 +01:00
bubnikv
497b7fb6c4
Fixed a 64bit compatiblity in admesh, fixed a typo in TriangleMesh::swap()
...
Conflicts:
xs/src/libslic3r/TriangleMesh.cpp
2016-11-24 17:11:55 +01:00
bubnikv
9ed127274e
Fixes https://github.com/prusa3d/Slic3r/issues/32#issuecomment-260135542
...
Reverts an inadverent bug introduced in 4460b5ce50
Conflicts:
xs/src/libslic3r/PerimeterGenerator.cpp
2016-11-24 17:09:49 +01:00
Alessandro Ranellucci
0c63bc0f83
Typo
2016-11-24 17:00:09 +01:00
bubnikv
a1fd0fe60a
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.
Conflicts:
xs/src/libslic3r/Print.cpp
2016-11-24 16:37:31 +01:00
bubnikv
cc7d2c1aa2
Let's hope to fix compilation on gcc.
2016-11-24 16:34:21 +01:00
bubnikv
12961d5212
Fix of https://github.com/prusa3d/Slic3r/issues/13
...
The BoundingBox::defined flag was not set in constructor,
if initialized from min/max corners.
Conflicts:
xs/src/libslic3r/BoundingBox.hpp
2016-11-24 16:34:06 +01:00
bubnikv
a5135f4369
Hopefully a fix of https://github.com/prusa3d/Slic3r/issues/11
...
Replaced eval { die } construct with a bool return value indicating
success or failure of an automatic arrangement of parts on the print bed.
Don't know exactly what is happening here, but throwing a "die" inside
a XS function and then catching it inside an eval {} block is suspcious.
Conflicts:
xs/src/libslic3r/Geometry.cpp
xs/src/libslic3r/Geometry.hpp
2016-11-24 16:33:13 +01:00
Alessandro Ranellucci
954e2d3e5c
ExtrusionEntity and derived classes: Documented, short methods made
...
inline for efficiency and readability
2016-11-24 16:22:14 +01:00
Alessandro Ranellucci
9c7e4871db
Fix conflict in recent merges
2016-11-24 16:20:04 +01:00
bubnikv
cc01e6565d
Fixed a return value in the Config multi-string parser.
2016-11-24 15:59:19 +01:00
bubnikv
c93ac84f5e
Missing include for memcpy for Linux.
...
Conflicts:
xs/src/libslic3r/Config.cpp
2016-11-24 15:59:04 +01:00
bubnikv
4773987b0f
Added "Notes" page to the filament configuration.
...
Added "filament_max_volumetric_speed", a cap on the maximum volumetric
extrusion role, filament specific. This is very useful when mixing
rigid filament with a soft filament.
Extended the import / export of multi-string values into configuration
values, including the test cases. Multi-line strings will be enclosed
into quotes, quotes escaped using a C-style escape sequences. Single
word strings could still be stored without quotes.
Conflicts:
xs/src/libslic3r/Config.hpp
2016-11-24 15:58:06 +01:00
bubnikv
476839e077
Documented the bridge detector.
2016-11-24 15:46:15 +01:00
bubnikv
56d281c720
Bugfix: use Lift-z option for 2. extruder #3385
...
Thanks to https://github.com/platsch
https://github.com/alexrj/Slic3r/pull/3392
2016-11-24 15:44:38 +01:00
bubnikv
893d92273d
Documented MultiPoint.
2016-11-24 15:43:38 +01:00
bubnikv
9f0523cb53
Documented the purpose of various perl modules.
...
Conflicts:
lib/Slic3r/GUI/3DScene.pm
lib/Slic3r/GUI/Plater/2DToolpaths.pm
2016-11-24 15:41:19 +01:00
Alessandro Ranellucci
103ec05774
Ported infill to XS/C++. Credits and many thanks go to @bubnikv for this work
2016-11-24 15:32:32 +01:00
bubnikv
d98b7cf863
The chaining and leftmost_point methods were rewritten as static methods, so they may be called on Polylines without having to convert to PolylineCollection first.
2016-11-23 21:33:20 +01:00
bubnikv
47337a3a5e
Fixed a typo when SLIC3R_DEBUG is active.
2016-11-23 21:33:07 +01:00
bubnikv
80a962b838
Added a macro SLIC3R_CPPVER to indicate the C++ language version supported by the compiler.
2016-11-23 21:32:22 +01:00
bubnikv
9a91704b8d
New constructors for the bounding box with min/max points were added.
...
empty(bbox) function template was added.
2016-11-23 21:30:55 +01:00
bubnikv
f3e0efa4fe
Debugging visualization of the gap fills into a SVG format, if SLIC3R_DEBUG is set.
2016-11-23 21:30:11 +01:00
bubnikv
08287e76e5
Fixed a crash in a constructor of FullPrintConfig due to an incorrect use
...
of virtual inheritance. Note that an invocation of ConfigBase::optptr()
is routed to FullPrintConfig::optptr() for all classes of the FullPrintConfig
hierarchy. FullPrintConfig::optptr() in turn invokes optptr()
of PrintObjectConfig, PrintRegionConfig, PrintConfig and HostConfig.
Due to the use of virtual inheritance, this all happens, when
PrintObjectConfig gets constructed as part of FullPrintConfig, but
at that time PrintRegionConfig, PrintConfig and HostConfig are not
constructed yet. Accessing them at that time leads to crashes,
when compiled with Visual Studio 2013 compiler. For some reason
the code generated by gcc does not crash, but I believe the behavior
is undefined and it is better to be fixed anyway.
The patch solves the problem by calling set_defaults() by the topmost
object, which not only fixes the crashes, but also avoids repeated
initialization.
Conflicts:
xs/src/libslic3r/PrintConfig.hpp
2016-11-23 21:28:47 +01:00
Alessandro Ranellucci
c87659fdc2
Update MANIFEST and rename t/22_config to t/23_config because we already have a 22
2016-11-23 21:12:01 +01:00
Alessandro Ranellucci
e8331f066d
Include layer-height as sttribute in SLA SVG output
2016-11-23 18:58:40 +01:00
Alessandro Ranellucci
bda4ae0b57
Use SLAPrint in DLP Projector
2016-11-23 18:38:33 +01:00
Alessandro Ranellucci
4ac7f6e8f1
Refactoring: rename SVGExport to SLAPrint
2016-11-23 15:51:12 +01:00
Alessandro Ranellucci
893fc2343f
Fixed regression in Build.PL after recent merged changes
2016-11-22 22:29:47 +01:00
Alessandro Ranellucci
dcdb5056fe
Fixed regression causing slowdown_below_layer_time to be ignored. #3515 #3443
2016-11-22 22:29:47 +01:00
Alessandro Ranellucci
ad9b985772
Merge pull request #3427 from lordofhyphens/repetier-flavor
...
Added Repetier FW flavor, fixed accel gcode generation for it.
2016-11-22 18:59:50 +01:00
Alessandro Ranellucci
98bf102f99
Merge pull request #3392 from platsch/lift-z-fix
...
Bugfix: use Lift-z option for 2. extruder #3385
2016-11-22 18:57:17 +01:00
Alessandro Ranellucci
32ba66c48f
Don't grey out the retract_speed option when using firmware retraction because it's still used by auto-speed pressure regulator. #3283
2016-11-22 18:47:19 +01:00