Commit Graph
64 Commits
Author SHA1 Message Date
bubnikv 4a13efd081 Surface / Surface Collection - optimization routines for filtering,
routines for visualization.
2016-09-26 12:42:44 +02:00
bubnikv a506030082 Draft of a 3D toolpaths preview. 2016-09-26 12:38:29 +02:00
bubnikv 03b1312f2d G-code analyser, first draft. The G-code analyser will be used
for advanced visualization of the printing paths, including
the extrusion types.
2016-09-26 12:37:54 +02:00
bubnikv 565146d9d1 Fix of a spiral vase with realtive extruder distances enabled.
The clone function is used by the SpiralVase.pm only, so the change
is safe.
2016-09-23 12:59:20 +02:00
bubnikv 6e97b9bb73 Optimization of the layer offsets in 3D visualization. 2016-09-15 12:26:53 +02:00
bubnikv 459a42aab6 Fixed a bug in conditional compilation of the Shiny profiler. 2016-09-15 00:57:40 +02:00
bubnikv a53bd3dfe9 Generate multiple vertex lists rather than requesting a single huge
memory block.
2016-09-15 00:06:42 +02:00
bubnikv 2a5095a1ea OpenGL support through GLEW. Only active if compiled with SLIC3R_GUI=1. 2016-09-14 16:31:26 +02:00
bubnikv 266e1c4be1 Initial commit of the GLEW library for calling OpenGL from the C++ code. 2016-09-14 14:07:41 +02:00
bubnikv b1575b4dcb Integration of the Shiny lightweight intrusive profiler. 2016-09-14 11:43:38 +02:00
bubnikv 4c67230436 Documented the purpose of various perl modules. 2016-09-14 11:22:41 +02:00
bubnikv 55218c8c4d Documented.
Fixed rough Z buffer quantization issues with ortographic camera.
Initial implementation of a perspective camera.
2016-09-14 09:38:59 +02:00
bubnikv 17d9c8c9dd fixes for gcc: Missing include float.h 2016-09-13 15:59:23 +02:00
bubnikv 7d56827e26 updated for older gcc 2016-09-13 15:29:31 +02:00
bubnikv f73ca007e6 Fixed compilation on old gcc. 2016-09-13 15:15:44 +02:00
bubnikv 15c1edd552 Configurable volumetric extrusion rate slope. 2016-09-13 15:02:28 +02:00
bubnikv 620c6c7378 Ported from the playground branch. Various documentation and optimization. 2016-09-13 13:30:00 +02:00
bubnikv a5b7f14dfa Updates in the C++ infill code. 2016-09-13 11:26:38 +02:00
bubnikv b2a6f43923 Documented perl modules. 2016-09-13 11:24:55 +02:00
bubnikv 6dfe4c0b96 Debugging code: Storing the test STLs inlined in the Perl code into a file. 2016-09-13 09:48:29 +02:00
bubnikv 068f71847e Some inlining optimizations. 2016-09-13 09:46:41 +02:00
bubnikv c443f49da3 Fix in splitting the loop at a new point. 2016-09-13 09:44:30 +02:00
bubnikv f518e0675c Initial commit of the new Pressure Equalizer, the EdgeGrid
signed distance field structure.
The EdgeGrid is used to avoid placing the seams on overhangs.
2016-09-12 16:25:15 +02:00
bubnikv 73cbb4b5dc some optimizations of Point rotation 2016-09-12 13:52:31 +02:00
bubnikv 9a83d4e8d5 Reverted some now unnecessary changes. Reverted the infill to the original perl implementation. 2016-09-12 13:26:17 +02:00
bubnikv 9fcc8fe9ae Meged with release_candidate_1_3 2016-09-12 11:29:39 +02:00
bubnikv ca98e2655a New command line option: --dont-arrange
Don't arrange the objects on the build plate. The model coordinates
define the absolute positions on the build plate.
The option --print-center will be ignored.

Also there is a fix in the command line invocation of --duplicate-grid
so it will run, but still there is something broken there and the results
are not correct.
2016-09-05 11:32:58 +02:00
bubnikv ab357c75a5 Updated xs/Build.PL to support Visual Studio compiler suite.
Updated xs/Build.PL to understand BOOST_LIBRARY_PATH and
BOOST_INCLUDE_PATH environment variables. This way one may easily
switch between various boost builds.

Some minor tweeks were done to make Slic3r compile with
Visual Studio 2013.
2016-08-21 21:46:17 +02:00
bubnikv bd23fe9c44 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.
2016-08-21 19:09:31 +02:00
bubnikv 3e8575c931 Documented the build process 2016-06-27 15:28:13 +02:00
bubnikv 1c1542dd94 Revert "Documented the build process"
This reverts commit 5e7aee217e.
2016-06-27 15:22:58 +02:00
bubnikv 5e7aee217e Documented the build process 2016-06-27 15:15:06 +02:00
Vojtech Bubnik 7649a1df41 Merge branch 'master' of https://github.com/alexrj/Slic3r into release_candidate_1_3 2016-06-03 17:45:05 +02:00
bubnikv e0b9865386 Fix of a crash when the Print Bed dialog is reopened after the bed shape
was defined with an STL.
Fix of rendering on Windows, refresh on resize.
2016-06-03 17:21:47 +02:00
bubnikv ef0d22be30 2D platter rendering fixed on Windows, and the background color fixed
on Linux/GTK.
2016-06-03 15:23:03 +02:00
bubnikv 62b440ff6c Fixes a performance issues on Windows, where the cut is being
refreshed many times for a single move of the Z plane.

Fixes a problem on Windows, where the new wxWidgets always returned
Cancel, even if the window was closed with the "Cut" button.

Improved performance if the live preview is disabled or not needed,
because both top and bottom parts shall be displayed.
2016-06-03 10:35:39 +02:00
bubnikv 5573faec6b Moved the Bonjour discovery to Tab.pm,
when no Bonjour devices found, a simple message box is shown.
Otherwise the Bonjour selection dialog with an empty list crashes on windows.
2016-06-03 09:36:23 +02:00
bubnikv bb9c3dd9ce Fix of git #3293: More efficient GCode export
This fixes two problems of repeatedly copying data from the C++ layer
to perl, by factoring the copying out of an inner loop.
2016-06-01 20:58:05 +02:00
bubnikv ab9e3b718c Support multi sampled anti-aliasing with wxWidgets 3.0.3. 2016-05-27 23:38:45 +02:00
bubnikv d8be976356 The "controller" tab and the settings of the USB/serial connection was
made configurable. Now one may hide the "controller" tab and the USB/serial
connection configuration from the preferences. This is useful for someone,
who never connects his printer to the computer by a cable.
2016-05-16 23:57:53 +02:00
Vojtech Bubnik d022493297 Merge remote-tracking branch 'upstream/master' 2016-05-03 22:05:31 +02:00
bubnikv 79c5e0a52d Optimize remove_duplicate_points. 2016-04-15 18:01:08 +02:00
bubnikv 42d9db04f2 Don't crash, if the number of lines to display is zero. 2016-04-15 17:58:29 +02:00
bubnikv 83166a7ff3 Close SVG file when the object gets deallocated. 2016-04-15 17:57:38 +02:00
bubnikv 3a0172888a Adapted to the new infills. 2016-04-15 17:54:47 +02:00
bubnikv ab5e01d114 Adapted to the new infills.
New infills process a not yet shrunk expolygon.
2016-04-15 17:51:11 +02:00
bubnikv f3bda8a57a Disable optimizations and debug check even in debug mode. 2016-04-14 11:17:44 +02:00
bubnikv 23a5edbd11 Breaking into the debugger from the menu. This may be useful in Windows. 2016-04-13 20:51:03 +02:00
bubnikv d6b53d18b8 Optimized and improved rectilinear fill. 2016-04-13 20:46:45 +02:00
bubnikv f767ce816b Optimized and improved rectilinear fill. 2016-04-13 20:45:44 +02:00
bubnikv 3b81bf0e33 Remove some debugging info. 2016-04-11 17:48:27 +02:00
bubnikv 3ba625da22 Revert incorrect checkins. 2016-04-11 17:34:15 +02:00
bubnikv ed83ff37f8 Simulation of extrusion in a plane, useful for finding out under / over-extruions. 2016-04-11 17:10:13 +02:00
bubnikv 9716ee8eca Interface to a filler, ported from Perl to C++. 2016-04-11 17:09:15 +02:00
bubnikv be3e4caf1d Fills were reimplemented in C++.
While reimplementing the FillPlanePath code, the octagon infill was fixed to extrude the right amount of material.
2016-04-11 17:08:30 +02:00
bubnikv 7da68c91a5 Vojtech likes to use Sublime on Windows to get the wheels rolling. 2016-04-11 17:05:58 +02:00
bubnikv d392858ee3 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-04-10 19:32:39 +02:00
bubnikv 6c5c9eddba Fixed a typo when SLIC3R_DEBUG is active. 2016-04-10 19:13:08 +02:00
bubnikv bcfbe02c8d New method to rotate only polygons, not translate.
New free function to_polygons. Whithout this function one needs to construct the ExPolygonCollection, which means a deep copy.
2016-04-10 19:12:32 +02:00
bubnikv 023310882f Added a macro SLIC3R_CPPVER to indicate the C++ language version supported by the compiler. 2016-04-10 19:07:34 +02:00
bubnikv 7d54e28e30 Added optimized methods for point and polyline rotation.
Existing methods for rotation were optimized by calculating the sin/cos values once only.
Added an operator- for points.
2016-04-10 19:06:46 +02:00
bubnikv c8ff517389 New constructors for the bounding box with min/max points were added.
empty(bbox) function template was added.
2016-04-10 19:02:00 +02:00
bubnikv 33ddb13e5d Use CLIPPER_OFFSET_SCALE instead of a numeric value. 2016-04-10 18:58:12 +02:00
bubnikv 4156b51c18 Debugging visualization of the gap fills into a SVG format, if SLIC3R_DEBUG is set. 2016-03-27 10:53:59 +02:00