Commit Graph

2659 Commits

Author SHA1 Message Date
Alessandro Ranellucci
64c9e3af4b Bugfix: objects were floating in STL export after rotation and flip. #2512 2015-01-09 00:47:40 +01:00
Alessandro Ranellucci
9f4f711017 Disable the OctoPrint test button when LWP::UserAgent is not available 2015-01-08 21:37:00 +01:00
Alessandro Ranellucci
24daa50bfd Button for testing OctoPrint connectivity. #2509 2015-01-08 21:34:51 +01:00
Alessandro Ranellucci
2f255620c6 Fix toolpath preview after recent change of semantics of LayerRegion::perimeters 2015-01-08 15:41:17 +01:00
Alessandro Ranellucci
8b11adb883 Enlarge the About dialog. #2476 2015-01-08 15:34:42 +01:00
Alessandro Ranellucci
c908d4d96e Restore correct depth test for the Z axis. #2510 2015-01-08 15:31:13 +01:00
Alessandro Ranellucci
406d045ced The inwards move after an external loop was still randomly generated outwards in some cases. Perimeters are now generated with a distinct iterator for each slice. Nested islands are also correctly supported too. Various regression tests included. #2253 2015-01-08 15:22:13 +01:00
Alessandro Ranellucci
9b9ed91e6e Nicer rendering for 3D slices 2015-01-07 20:45:50 +01:00
Alessandro Ranellucci
d5cab6221d Better lighting in the 3D view 2015-01-07 20:11:03 +01:00
Alessandro Ranellucci
a4235f5f44 Better axes rendering 2015-01-07 19:49:54 +01:00
Alessandro Ranellucci
06aaf83cfe Restored correct transparency of the cutting plane 2015-01-07 19:46:37 +01:00
Alessandro Ranellucci
b085710a4b Further refactoring to PerimeterGenerator: remove the $traverse closure 2015-01-07 16:16:00 +01:00
Alessandro Ranellucci
82ec03fc23 Refactored perimeter generation code into a new separate class for easier unit testing 2015-01-07 16:04:53 +01:00
Alessandro Ranellucci
6962b8dddd Glitches when panning with middle mouse button. #2454 2015-01-07 11:58:22 +01:00
Alessandro Ranellucci
4688ae2fb6 Bugfix: rotation in 3D view was randomly stopping. #2482 2015-01-07 11:13:56 +01:00
Alessandro Ranellucci
0de1c235a9 Reversed mouse wheel zooming in 3D once more. #2478 2015-01-06 21:08:33 +01:00
Alessandro Ranellucci
39172d5a08 Fixed typo causing test to fail 2015-01-06 20:54:32 +01:00
Alessandro Ranellucci
8f4cbefd0d Lots of improvements to MotionPlanner/avoid_crossing_perimeters. Smoother paths and several edge cases now handled better 2015-01-06 20:52:36 +01:00
Alessandro Ranellucci
f0de57cbe4 Minor cleanup of the init_external_mp() call 2015-01-06 15:04:09 +01:00
Alessandro Ranellucci
2562070232 Refactored the travel/retract/avoid_crossing_perimeters logic. Several edge cases are now handled correctly. #2498 2015-01-06 14:52:03 +01:00
Alessandro Ranellucci
7e82159620 Fixed one more case where only_retract_when_crossing_perimeters didn't apply. #2498 2015-01-06 11:29:34 +01:00
Alessandro Ranellucci
0f7933c4f9 Bugfix: pressure regulation accumulated too much retraction and didn't discharge at the end of print. Includes regression test. #2470 2015-01-06 00:35:39 +01:00
Alessandro Ranellucci
47e4e8bb66 Option to use volumetric E values. #1746 2015-01-05 19:39:10 +01:00
Alessandro Ranellucci
6776d6bc00 Bugfix: a bug in Polyline::split_at() caused random loss of perimeter segments. #2495 2015-01-05 15:51:57 +01:00
Alessandro Ranellucci
6c7c089fc4 Disable the "Export G-code" and "Send to print" buttons when other actions are pending 2015-01-04 19:29:34 +01:00
Alessandro Ranellucci
0775960b9f Minor reordering of options 2015-01-04 19:20:13 +01:00
Alessandro Ranellucci
af1b705563 Increase HTTP timeout for Octoprint upload. #2481 2015-01-04 15:30:31 +01:00
Alessandro Ranellucci
6438bfc3cb Draw bed contours with grid linewidth 2015-01-04 13:36:14 +01:00
Alessandro Ranellucci
84c30c1cf5 Nicer bed appearance 2015-01-04 13:32:00 +01:00
Alessandro Ranellucci
694268d6c7 Fix incomplete grid in 3D preview 2015-01-04 13:17:20 +01:00
Alessandro Ranellucci
510b472b51 Gradient background for 3D view 2015-01-04 13:11:05 +01:00
Alessandro Ranellucci
3b09377a43 Export single object as STL from its contextual menu. #2479 2015-01-03 15:48:53 +01:00
Alessandro Ranellucci
73d45dd851 Minor cleanup of Layer::Region::_fill_gaps() 2015-01-03 15:11:33 +01:00
Alessandro Ranellucci
69da8b0999 Use borderless buttons for save/delete in presets management (better look on wxOSX with 3.0.0) 2015-01-01 17:14:57 +01:00
Alessandro Ranellucci
93687c1491 Disable Growl notifications if register() fails - this prevents a deadlock on growler->notify() 2015-01-01 12:37:38 +01:00
Alessandro Ranellucci
1eac452d71 Send file basename when uploading to OctoPrint 2014-12-30 22:07:47 +01:00
Alessandro Ranellucci
7fa27c958a Bugfix: when dragging an object, only one part was moving. #2467 2014-12-30 14:21:10 +01:00
Alessandro Ranellucci
77d2a8aa8c Fix Preferences window size. #2463 2014-12-30 13:24:00 +01:00
Alessandro Ranellucci
c4832c5342 Bugfix: early object destruction caused a segfault when splitting. Also fixed a memory leak and restore background processing when split only detected one part. #2466 #2398 2014-12-30 13:16:28 +01:00
Alessandro Ranellucci
494efe65b2 Bugfix: auto-center didn't update the PrintObject copies properly, causing misalignment. #2464 2014-12-29 22:29:24 +01:00
Alessandro Ranellucci
4b7cec28b9 Fix to Octoprint upload. #2465 2014-12-29 20:34:33 +01:00
Alessandro Ranellucci
9d5f55af77 Minor optimization in G-code export 2014-12-29 17:40:56 +01:00
Alessandro Ranellucci
1c0437bc7b One more fix to 3D honeycomb not covering the entire area after last commit 2014-12-29 15:52:48 +01:00
Alessandro Ranellucci
67d7658c59 Bugfix: random misalignment of the 3D Honeycomb pattern 2014-12-29 14:42:41 +01:00
Alessandro Ranellucci
d38503bf44 Bugfix: downwards interface detection might cause a crash 2014-12-29 14:29:21 +01:00
Alessandro Ranellucci
6896e53078 Octoprint -> OctoPrint 2014-12-29 12:49:32 +01:00
Alessandro Ranellucci
242dc17680 Minor improvements to Octoprint integration 2014-12-29 11:45:09 +01:00
Alessandro Ranellucci
e8dc981774 Fixes to Ooze Prevention 2014-12-29 00:51:27 +01:00
Alessandro Ranellucci
c43049e13b Prevent rare crashes using Ooze Prevention 2014-12-28 22:09:28 +01:00
Alessandro Ranellucci
b468e68c59 Bonjour autodiscovery of the Octoprint instances in local network. #1826 2014-12-28 18:49:52 +01:00
Alessandro Ranellucci
5d4d79191a Fixed regression causing bridges not to be printed with rectilinear pattern when --external-fill-pattern was set. #2460 2014-12-28 17:29:21 +01:00
Alessandro Ranellucci
959eb60ad0 Scoping error caused the Unsaved Changes dialog not to be shown when closing the main window 2014-12-28 16:19:55 +01:00
Alessandro Ranellucci
c1e44eb591 Fixed extra comment that prevented the Export STL button from working after the recent changes in plater layout. #2458 2014-12-28 14:59:28 +01:00
Alessandro Ranellucci
efe7d5f857 Integration with Octoprint. #1826 2014-12-28 01:30:05 +01:00
Alessandro Ranellucci
eba19aaba4 Fixed Object part editor because it wasn't updated with the new PreviewCanvas API. #2455 2014-12-28 00:16:15 +01:00
Alessandro Ranellucci
53e8699765 Prepend option category in the unsaved changes dialog 2014-12-27 14:38:06 +01:00
Alessandro Ranellucci
bbb47e087a Restore functionality of Test::SectionCut 2014-12-27 13:04:28 +01:00
Alessandro Ranellucci
b5b0df2426 Adapt SectionCut to the new APIs 2014-12-26 18:57:21 +01:00
Alessandro Ranellucci
5dc635b0b1 Pan with middle mouse button too. #2444 2014-12-25 20:08:47 +01:00
Alessandro Ranellucci
6ac82f1a20 Fix cutting of objects rotated around X or Y 2014-12-25 20:04:59 +01:00
Alessandro Ranellucci
5d9ff677c0 Workaround wxMSW not catching mouse wheel events if panel has no focus. #2424 2014-12-25 19:51:53 +01:00
Alessandro Ranellucci
ce395dfba8 💄 2014-12-25 19:42:24 +01:00
Alessandro Ranellucci
4c3fa999f5 Only draw the slices in toolpath preview for the current selected layer 2014-12-25 19:35:51 +01:00
Alessandro Ranellucci
617fbaa9bd Restore expansion of filament choosers 2014-12-25 19:14:18 +01:00
Alessandro Ranellucci
dbbc6e7e55 Update plater preset selectors when dismissing unsaved changes 2014-12-25 18:52:27 +01:00
Alessandro Ranellucci
6c2a28166a Rearrange plater's layout slightly in order to have larger preset selectors 2014-12-25 18:50:02 +01:00
Alessandro Ranellucci
cc36aff66a Fix MainFrame after recent changes in preset handling 2014-12-25 18:18:41 +01:00
Alessandro Ranellucci
70601eeb51 Tell what options were changed when prompting user for saving a modified preset. Also, check whether the preset was actually modified by performing a proper idempotent diff. #2165 2014-12-25 17:35:31 +01:00
Alessandro Ranellucci
5a0f4eac8d One more retraction optimization 2014-12-25 11:37:54 +01:00
Alessandro Ranellucci
70f454c693 Fixed regression in inwards move 2014-12-25 11:06:42 +01:00
Alessandro Ranellucci
ffff597bfe Bugfix: the Bed Shape dialog didn't retain rectangle origin correctly. #2427 2014-12-25 02:36:10 +01:00
Alessandro Ranellucci
19548fe301 Don't perform wiping if we have just changed layer and no extrusions were performed before the first retraction. Includes regression test. #2214 2014-12-24 12:02:42 +01:00
Alessandro Ranellucci
9dd228df01 Enable the GLU tesselator on MSW if we have a recent OpenGL module 2014-12-24 11:49:27 +01:00
Alessandro Ranellucci
4848cb7606 Ported PrintObject::bridge_over_infill() to XS 2014-12-24 10:20:55 +01:00
Alessandro Ranellucci
ea40c4d1b0 Fixed rendering of multiple interlaced layers in toolpaths preview 2014-12-24 01:34:35 +01:00
Alessandro Ranellucci
5d3cd792eb Make infill_only_where_needed idempotent. #2198 2014-12-24 01:29:36 +01:00
Alessandro Ranellucci
350d634433 Enable extruder_offset configuration for first extruder. #2224 2014-12-24 00:34:17 +01:00
Alessandro Ranellucci
c63d5da5c2 Move dump_perl() to Slic3r::Polyline 2014-12-24 00:11:13 +01:00
Alessandro Ranellucci
d47e12f05c Bugfix: a wrong optimization caused some top-level perimeters not to be sorted using the nearest-neighbor search. #2322 2014-12-24 00:10:31 +01:00
Alessandro Ranellucci
af446dc7d4 Apply contact distance to first support layer above object's top surfaces too. #1939 2014-12-23 22:18:43 +01:00
Alessandro Ranellucci
25bc8e6f29 Smarter automatic disabling of GUI fields + reordering of Print Settings pages + minor adjustments to tooltips 2014-12-23 20:47:11 +01:00
Alessandro Ranellucci
473802ce8c Use support material interface extruder for layers above object's top surfaces too. #1939 2014-12-23 01:04:25 +01:00
Alessandro Ranellucci
6a939eb250 Fight deadlocks 2014-12-22 19:47:39 +01:00
Alessandro Ranellucci
bb907fb405 Don't trigger the on_move callback upon simple object selection with no dragging action 2014-12-22 19:34:19 +01:00
Alessandro Ranellucci
faed500520 Refresh slider when reloading print in toolpath preview canvas 2014-12-22 18:56:16 +01:00
Alessandro Ranellucci
e49cf2c55f Refactored Line infill implementation 2014-12-22 17:25:52 +01:00
Alessandro Ranellucci
64061267c8 Align infill across layers regardless of first-layer-specific extrusion width. Includes a good internal API refactoring and a fix to 3D honeycomb flow 2014-12-22 16:47:35 +01:00
Alessandro Ranellucci
93507bfd49 Bugfix: only_retract_when_crossing_perimeters was not correctly applied on bottom layer when no bottom solid layers were printed 2014-12-22 11:46:16 +01:00
Alessandro Ranellucci
540c2b8705 Minor additions for debugging 2014-12-22 11:37:28 +01:00
Alessandro Ranellucci
45cc204f74 Center hilbertcurve, archimedeanchords, octagramspiral around object's center and align them across layers 2014-12-22 11:16:01 +01:00
Alessandro Ranellucci
bdce1ded7e Disable cross-hatching for hilbertcurve, archimedeanchords, octagramspiral 2014-12-22 10:47:09 +01:00
Alessandro Ranellucci
5cd3ef7b8a Bugfix: PlanePath infills sometimes did not cover the whole area. #863 #1162 2014-12-22 00:18:45 +01:00
Alessandro Ranellucci
74f25ef52f Consolidated all PlanePath classes in a single file 2014-12-21 23:43:53 +01:00
Alessandro Ranellucci
1485659726 Minor rewording. #2411 2014-12-21 23:40:05 +01:00
Alessandro Ranellucci
583b009d1b Honor print bed center in Quick Slice. #2440 2014-12-21 23:29:31 +01:00
Alessandro Ranellucci
7253dc699a Some more work on wireframe 2014-12-21 22:52:18 +01:00
Alessandro Ranellucci
9ac60dca1a Fixed vibration limit. 2014-12-21 12:39:19 +01:00
Alessandro Ranellucci
795c85d30e Apply a true double-ended nearest-neightbor search to thin fills in order to minimize travel moves between them. #2213 2014-12-20 22:40:43 +01:00
Alessandro Ranellucci
38ecce0ce9 Disable the GLU tesselator on MSW 2014-12-17 14:41:58 +01:00
Alessandro Ranellucci
34a49086e5 Added code for potential antialiasing 2014-12-17 14:28:25 +01:00
Alessandro Ranellucci
a0dda36df0 Minor fix to BridgeDetector 2014-12-17 01:21:12 +01:00
Alessandro Ranellucci
9264db7ecd Removed useless thing added in e79aa2e81c 2014-12-17 00:52:01 +01:00
Alessandro Ranellucci
c00061678b Use perimeter extruder for brim. #618 2014-12-17 00:45:05 +01:00
Alessandro Ranellucci
e79aa2e81c New --solid-infill-extruder option. Includes a refactoring of the strategy used to order layer extrusions according to their extruder and island; toolchanges and travel moves should be more optimized now. #618 2014-12-17 00:34:00 +01:00
Alessandro Ranellucci
d9cffeca4a Bugfix: adjust skirt flow according to each layer's height. #2307 2014-12-16 18:55:16 +01:00
Alessandro Ranellucci
99deffef62 Bugfix: use the external motion planner when extruding skirt and brim. #2412 2014-12-16 18:13:38 +01:00
Alessandro Ranellucci
fcfb3b98bc 3D object positioning 2014-12-16 01:12:56 +01:00
Alessandro Ranellucci
a82f95e903 Some initial work for 3D slice rendering 2014-12-15 15:19:42 +01:00
Alessandro Ranellucci
a34cd24fa1 Overlay object slices in toolpaths preview 2014-12-15 12:42:11 +01:00
Alessandro Ranellucci
9cd0a63331 Refactoring of PreviewCanvas 2014-12-15 01:28:11 +01:00
Alessandro Ranellucci
74b3be3c06 Refactoring in 3D interactive code. Highlight all copies of an object when hovering 2014-12-14 00:54:35 +01:00
Alessandro Ranellucci
2f2ae75529 Some incomplete work for moving objects in 3D plater 2014-12-13 22:18:43 +01:00
Alessandro Ranellucci
ac2b6de62b Minor addition to OpenGL code to prevent darker models 2014-12-13 20:56:22 +01:00
Alessandro Ranellucci
16945dad70 💄 2014-12-13 20:47:59 +01:00
Alessandro Ranellucci
d1f58cbed5 Objects can be selected in 3D preview now. Double click and right click work as well 2014-12-13 20:41:03 +01:00
Alessandro Ranellucci
b0aa1260e2 Bugfix: wxComboBox left blank after menu item selection on MSW due to an undocumented wxWidgets issue. #2361 2014-12-13 15:40:42 +01:00
Alessandro Ranellucci
e9166a8fe6 Use a semaphore to synchronize threads instead of blocking with join(). Lock threads array in order to ensure all of them are signalled. #2394 2014-12-13 15:01:53 +01:00
Alessandro Ranellucci
360dee862b Keep model objects aligned to Z = 0 in plater 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
b28fb2ef17 Bugfix: objects were not aligned to Z = 0 before exporting STL from plater. #2393 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
e8ab9ac13a Ported Print::bounding_box(), Print::total_bounding_box(), Print::skirt_flow(), Print:skirt_first_layer_height() to XS 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
baf070a36d Bugfix: workaround for MSW wxWidgets not drawing the slider 2014-12-12 12:34:40 +01:00
Alessandro Ranellucci
829bd7378e Remove the Rotate... button from Windows as well, like for other operating systems 2014-12-10 17:34:59 +01:00
Alessandro Ranellucci
c8596c5c58 Limit "Only retract when crossing perimeters" so that retraction is triggered also when crossing the boundaries of a single region. #2298 2014-12-09 01:08:58 +01:00
Alessandro Ranellucci
80c38b0113 Remember window size and position. #1253 #2251 2014-12-08 22:05:26 +01:00
Alessandro Ranellucci
d350241da3 Make combine_infill() completely idempotent. Includes unit testing 2014-12-08 21:23:42 +01:00
Alessandro Ranellucci
9a9ba02d85 Bugfix: infill was not correctly generated when infill_every_layers was used along with raft_layers. Includes regression test. #2396 2014-12-08 20:14:04 +01:00
Alessandro Ranellucci
f7026c41c5 Show button icons with wxWidgets 3.x.x too. #2372 2014-12-08 18:23:37 +01:00
Alessandro Ranellucci
2d243a39ff Bugfix: crash when deleting objects from plater with toolpaths preview open. #2389 2014-12-07 20:23:00 +01:00
Alessandro Ranellucci
807d042d11 Typo. #2401 2014-12-07 19:56:35 +01:00
Alessandro Ranellucci
95f7bcb9fe Removed Toolpaths Preview menu item. #2385 2014-12-01 21:06:21 +01:00
Alessandro Ranellucci
c9e896c669 Display validation errors in status bar when background processing couldn't generate toolpaths 2014-12-01 00:15:45 +01:00
Alessandro Ranellucci
04bcb410a9 Minor GUI improvements to toolpaths preview 2014-12-01 00:10:32 +01:00
Alessandro Ranellucci
98c67007d5 Finished bb103122065cddf8f8ea63f5e4fce954142c4d4c 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
eb23990d6d Ported PrintObject::total_layer_count() to XS 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
c7f5753a28 Ported PrintObject::bounding_box() to XS 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
1fda9e3d50 Ported concave_points() and convex_points() to XS 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
076d82d8d6 Fixed regression causing the plater Split command not to remove objects from the model. #2380 2014-12-01 00:00:11 +01:00
Alessandro Ranellucci
0d3c4a160f Typo in Reader.pm #2033 2014-12-01 00:00:11 +01:00
Alessandro Ranellucci
80adf9e5d0 Open the settings dialog instead of the cut dialog when user double clicks on objects in plater 2014-12-01 00:00:11 +01:00
Alessandro Ranellucci
e8f242ee3f Move toolpaths preview to the plater dialog 2014-12-01 00:00:11 +01:00
Alessandro Ranellucci
98cb9f0e18 Refactoring: moved G-code export logic into new Slic3r::Print::GCode class. Removed Slic3r::GCode::Layer class. Fixes the order of post-processing filters so that cooling buffer is applied before any other filter whose logic is affected by speeds 2014-12-01 00:00:11 +01:00
Alessandro Ranellucci
7a7d00c8d6 Rename solid_fill_pattern to external_fill_pattern and clarify tooltip 2014-11-27 00:38:05 +01:00
Alessandro Ranellucci
23848492ce Fixed regression causing crash when using avoid_crossing_perimeters with multiple object, caused by recent refactorings. Added regression test 2014-11-26 22:46:51 +01:00
Alessandro Ranellucci
43cbad8867 Minor fix to pressure management: support the case where speed is set before printing commands with a dedicated G1 Fx line 2014-11-24 18:32:18 +01:00
Alessandro Ranellucci
ff9b53260d New experimental feature for pressure management. Credits to @llluis for the original implementation. #1203 #1677 #2018 2014-11-24 18:22:39 +01:00
Alessandro Ranellucci
5a382f0200 Bugfix: Slic3r::GCode::Reader did not parse correctly when use_relative_e_distances was enabled. #2033 2014-11-24 16:30:57 +01:00
Alessandro Ranellucci
55888ace75 Minor cleanup in GCode.pm 2014-11-23 20:16:51 +01:00
Alessandro Ranellucci
5deadc8f12 Refactoring: removed _islands members in Slic3r::GCode 2014-11-23 20:03:16 +01:00
Alessandro Ranellucci
4925b056c2 Fix error in a1193d28bc. #2365
God bless regression tests.
2014-11-23 19:37:59 +01:00
Alessandro Ranellucci
60a76b8cfa Fixed regression causing retraction to be skipped when Retract Length was 0 but Use Firmware Retraction was enabled. Includes regression test. #2359 2014-11-23 19:32:06 +01:00