bubnikv
dd41406a55
Fixed regression in invalidation of slicing steps.
2017-06-08 17:46:28 +02:00
bubnikv
ef73bb404b
Fixed compilation on gcc.
2017-06-01 16:43:21 +02:00
bubnikv
02592378e2
Improved "ensure vertical wall thickness" feature for multi material:
...
If the "interface_shells" feature is disabled, the "ensure vertical wall thickness"
feature will not add full infill over internal shells.
Fixed some issues with delayed loading of 3d scenes.
2017-06-01 16:31:29 +02:00
bubnikv
556f40bf00
Clean-up of print step invalidation.
2017-05-31 17:02:23 +02:00
bubnikv
c8b934f8d3
Yet more refactoring of Print / PrintObject in regard to
...
C++11 loops, configuration and step invalidation.
2017-05-31 12:55:59 +02:00
bubnikv
102329c54d
Further refactoring, C++11 conversion and code simplification.
2017-05-30 20:09:34 +02:00
bubnikv
e1ca1a82fb
Fixed a regression bug from the last commit. Some more code simplification
...
and inlining.
2017-05-30 18:33:17 +02:00
bubnikv
41a4df0a38
Print, PrintObject: Invalidation of steps, when chained, will now return
...
a correct invalidated / not invalidated flag.
Rewrote the step valid state from std::set to a fixed array for performance
reasons.
2017-05-30 17:17:26 +02:00
bubnikv
e000b22578
Implemented wipe tower print path preview.
2017-05-25 22:27:53 +02:00
bubnikv
5126c5018a
Provision for disabling TBB parallelization for debugging purposes.
2017-04-05 09:53:24 +02:00
bubnikv
1fb302d480
Reverted due to a failing test t\multi.t
2017-03-28 14:29:27 +02:00
bubnikv
9f7a5c7a6f
Some beautification and C++11 adaptation.
2017-03-28 13:25:10 +02:00
bubnikv
79e6f23fdc
code beautification, C++11 loops
2017-03-13 16:03:44 +01:00
bubnikv
50976e1b5a
Parallelized slices_to_fill_surfaces_clipped()
2017-03-08 23:02:27 +01:00
bubnikv
720459183e
Parallelized detection of extra perimeters.
2017-03-08 22:38:08 +01:00
bubnikv
4426e47e2a
Fixed a race condition in the parallelization
...
of the "ensure vertical wall thickness" feature.
2017-03-08 18:10:39 +01:00
bubnikv
20796b89c1
Improved debugging of slicing.
2017-03-08 15:58:40 +01:00
bubnikv
798bca561b
Parallelized the slow discover_vertical_shells()
2017-03-08 14:54:04 +01:00
bubnikv
52b76930aa
Simplify_slices rewritten to C++, parallelized.
...
Added some move methods to Surface class.
2017-03-08 13:43:49 +01:00
bubnikv
4331f38912
Fixing of slicing errors ported to C++, parallelized.
2017-03-08 11:56:42 +01:00
bubnikv
73439b7acb
Parallelized PrintObject::_slice(), make_slices() code.
2017-03-08 10:37:47 +01:00
bubnikv
dfba2cb6b2
Parallelized PrintObject::detect_surfaces_type()
2017-03-07 21:46:45 +01:00
bubnikv
65c024f7cf
Parallelize PrintObject::process_external_surfaces()
2017-03-07 17:43:43 +01:00
bubnikv
cb1a6eae1e
Added dependencies on the Intel Thread Building Blocks.
...
Changed the C++ parallelization code to Intel Thread Building Blocks.
2017-03-07 13:03:14 +01:00
bubnikv
4d00aa1800
More tracing of the slicing process.
2017-03-03 12:53:05 +01:00
bubnikv
4287362aa6
Extended tracing of the slicing process.
2017-03-02 16:52:24 +01:00
bubnikv
420e387055
new feature: Clip multi-part objects one by the other.
...
This works the same way as if the XY compensation was set to a tiny value
before, but without the overhead of an offset.
2017-02-14 12:36:04 +01:00
bubnikv
88e34ff5de
Store / retrieve layer height profile from the AMF file.
...
Reset the layer height profile when changing a print profile to an incompatible one.
Reset button on the layer height bar.
Fixed an update issue on zooming by a scroll wheel.
Fixed an issue when loading an AMF file: Object names are now retained.
2017-02-09 14:56:13 +01:00
bubnikv
43ac693900
Added a tooltip overlay for the variable layer height edit tool.
...
Short methods of PrintState made inline.
Added layer height profile to a Model class.
2017-02-07 18:17:12 +01:00
bubnikv
4256af22ff
Created a total_lengt() free function for Polygons and Polylines.
...
Modified the "extra perimeters when needed" function to use the new free functions,
extended the tooltip of the "extra perimeters when needed" feature.
2017-02-02 16:03:32 +01:00
bubnikv
c25ae35737
Fix of https://github.com/prusa3d/Slic3r/issues/75
...
Fixed by @alexr 8f0d8f2096
See also https://github.com/alexrj/Slic3r/issues/3613 https://github.com/alexrj/Slic3r/pull/3614
2017-02-02 15:09:22 +01:00
bubnikv
bd3daeed5a
Slightly more efficient PrintObject Layer destruction.
2017-01-11 13:43:33 +01:00
slicer-builder
bb22f1dc8a
prototyping tweakable XY supports;
...
option should be present now in advanced support menu.
Can't figure out what's going on atm; support should be moving but isn't
2017-01-03 11:46:52 +01:00
bubnikv
07dd06c53c
Merge remote-tracking branch 'origin/supports-synchronize-layers'
2017-01-03 10:51:23 +01:00
bubnikv
7a2572a0fb
Improved debugging of "ensure vertical wall thickness" feature.
2017-01-03 10:51:19 +01:00
bubnikv
955bc957ba
New supports now do rafts at least to the extent the test cases run through.
...
New supports enabled, old supports will go away soon.
2016-12-20 12:19:13 +01:00
bubnikv
6582182e0c
Adapted to the new ClipperUtils.hpp interface by @alexrj
2016-12-13 19:22:23 +01:00
bubnikv
1ea958158a
Support for user definable variable layer thickness, the C++ backend.
2016-12-12 17:53:38 +01:00
bubnikv
126126cc78
Fixes after the merge of changes by @alexrj.
2016-12-08 19:02:16 +01:00
Alessandro Ranellucci
73ddd3b438
Refactored parallelization code, cherry picked from @alexrj 36789774471a0bf9a66bb33cc3ab6984f8ede8c6
2016-12-08 14:40:47 +01:00
Alessandro Ranellucci
e9290252d6
Fixed regression in the _make_perimeters port
2016-12-08 14:25:05 +01:00
Alessandro Ranellucci
86c8207d31
Ported make_perimeters() and infill() to C++/XS, use pure C++ threads, cherry picked from @alexrj 66591bcc556c01572ec7519b1f8cb4ee2d430685
2016-12-08 14:24:40 +01:00
bubnikv
26a8017e99
Made the support interface contact loops configurable.
2016-11-30 17:33:55 +01:00
bubnikv
556204fddc
support_material_synchronize_layers configuration value
...
for synchronization of object layers with print layers.
2016-11-30 16:04:15 +01:00
bubnikv
ca5ad58ad2
logging of slicing process
2016-11-29 19:27:23 +01:00
bubnikv
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.
Removed the scale parameter from all offset functions.
Modified the safety offset to calculate offset per polygon instead
of over all polygons at once. The old way was not safe and very slow,
sometimes this meant a kiss of death for supports for example.
2016-11-28 17:33:17 +01:00
bubnikv
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.
Modified the "ensure vertical wall thickness" feature to use the non-split
fill areas instead of perimeter areas for the calculation
of non-supported regions. This is cheaper as the fill areas contain
roughly half the edges.
2016-11-17 23:22:59 +01:00
bubnikv
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.
2016-11-16 22:16:20 +01:00
bubnikv
bfbe85b5c2
Some optimization of the "ensure vertical wall thickness" feature.
2016-11-16 18:04:47 +01:00
bubnikv
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.
2016-11-11 11:13:36 +01:00