Commit Graph

3413 Commits

Author SHA1 Message Date
bubnikv
2e7e95adae Disabled broken tests, ported some more tests to C++,
removed Perl tests that were already ported to C++.
2019-10-25 18:23:42 +02:00
bubnikv
f8dc74374c Ported various clipper unit tests from Perl to C++,
the clipper Perl unit tests were removed.
2019-10-25 17:07:55 +02:00
bubnikv
e04e2b3636 Slight improvements of unit tests, fix of perl bindings. 2019-10-18 12:05:37 +02:00
bubnikv
6585e58e83 Fix of perl bindings 2019-10-16 11:34:45 +02:00
bubnikv
69c8b1cd21 new cheaper constructor for DynamicPrintConfig from FullPrintConfig:
DynamicPrintConfig::full_print_config()
new cheaper constructors of DynamicConfig / DynamicPrintConfig from ConfigBase
Unit tests: ported test_model from upstream Slic3r, thanks @lordofhyphens
Unit tests refactored to use less autos and initializer lists for readibility,
DynamicPrintConfig is handled by value, not by shared pointer.
2019-10-16 11:16:50 +02:00
bubnikv
f8ff23638f Fixed regression due to ExPolygonCollection to ExPolygons refactoring.
Fixed crashes in BridgeDetector due to unexpected implicit conversion
to a const temporary.
2019-10-04 16:50:01 +02:00
bubnikv
564eddd99d FDM Print refactoring:
Layer newly remembers bounding boxes of slices,
the bounding boxes are used by G-code generator & newly the support
generator.
Slices are stored as ExPolygons, not ExPolygonCollection.
2019-10-01 17:17:08 +02:00
bubnikv
331c187b39 Rest of the path chaining has been replaced with the new algorithm.
PolylineCollection.cpp/hpp was removed, use Polylines instead.
Various first_point() / last_point() now return references, not copies.
2019-09-27 18:17:21 +02:00
bubnikv
d06831076d WIP: Consolidation of shortest path calculations,
various chaining algorithms are replaced with the improved TSP
algorithm.
2019-09-26 17:30:03 +02:00
bubnikv
2414dab85a Fix of perl bindings 2019-09-19 14:31:50 +02:00
bubnikv
519f2b62e5 Fix of Perl bindings after ExtrusionEntity::clone() refactoring 2019-09-16 15:38:27 +02:00
bubnikv
d146a0237e WIP: Reworked the infill generator to merge areas with the same
properties.

Note for Vojtech:
Review src/libslic3r/Fill/Fill.cpp once again,
add test for G-code generator properties (extrusion speed, cooling?)

Fixes Modifier slice/move efficiency #1005
2019-09-04 16:11:16 +02:00
bubnikv
b7f93292fa FIx of Single test suite failure on two minority architectures #2461 2019-08-08 09:45:42 +02:00
bubnikv
34013ad142 Fixed broken Perl bindings. 2019-07-25 14:52:51 +02:00
bubnikv
9fd0c55eb8 Simplified the "cereal" includes to not clash with Perl includes 2019-07-04 22:09:14 +02:00
bubnikv
3d420db531 Fix of perl bindings 2019-07-04 21:28:57 +02:00
bubnikv
c7cc760067 Merge remote-tracking branch 'origin/master' into vb_undo_redo 2019-07-04 20:22:15 +02:00
bubnikv
27ee68d2f9 WIP Undo / Redo: ModelID / ModelBase renamed to ObjectID / ObjectBase 2019-06-27 11:02:45 +02:00
bubnikv
ac6969c992 Reworked the Perl unit / integration tests to use the same Print
interface that the application is using. Old interface used just
for the integration tests was removed.
2019-06-20 20:23:05 +02:00
bubnikv
8bf6e69851 Removed the layer_height_ranges from the Perl bindings and unit tests. 2019-06-20 16:28:37 +02:00
bubnikv
35b3fd3176 Integrated the new layer height spans with configs into the backend.
Fixed some compiler warnings.
2019-06-20 16:15:09 +02:00
bubnikv
c95a324c3f Merge branch 'vb_admesh_fix' 2019-06-18 08:54:50 +02:00
tamasmeszaros
821ca0e36a Build fix when boost is not in prefix/boost 2019-06-13 14:19:24 +02:00
bubnikv
0bb8ee149e Sharing TriangleMesh objects between the front end (UI) and back end
(background processing)
2019-06-11 17:08:47 +02:00
bubnikv
af5017c46c admesh refactoring: Use Eigen vec3i for indexed triangles. 2019-06-10 21:14:58 +02:00
bubnikv
6defabea53 admesh refactoring: separation of the shared vertices / indices
into an indexed_triangle_set structure
2019-06-10 18:30:54 +02:00
bubnikv
65238a89b1 admesh refactoring: Removed the shared_vertices counter as it is now
contained inside v_shared std::vector
2019-06-10 17:36:15 +02:00
bubnikv
a1c38794fb Refactored admesh to get rid of the error and fp members of stl_file. 2019-06-10 17:17:36 +02:00
bubnikv
7dd842b294 Merge remote-tracking branch 'remotes/origin/master' into vb_admesh_fix 2019-06-06 21:01:19 +02:00
bubnikv
c9a847a6a6 Support for Visual Studio 2019 Community 2019-06-06 11:40:35 +02:00
bubnikv
c7ba48a473 Fix of perl bindings 2019-06-05 09:54:52 +02:00
Lukas Matena
07282eb24d Fixed unit tests when run with range checks on std::vector
There was a bug in unit tests that led to generating the wipe tower with non-normalized preset.
This caused out-of-bounds access into max_layer_height vector in fill_wipe_tower_partitions.
The problem surfaced in https://github.com/prusa3d/PrusaSlicer/issues/2288.
I quickly patched additional normalization of the preset to prevent this from happening.

Also, an assert in the same function turned out to trip on one of the tests.
This one was commented out for now and will (hopefully) be looked into later.

Function Print::apply_config was renamed to apply_config_perl_tests_only so everyone
sees its current purpose and does not mistake it for the more important Print::apply.
2019-05-22 16:48:20 +02:00
Jason Tibbitts
58d78e8dbd Fix two errors with -Werror=format-security
Fedora (and, I supposed, most recent Linux distros) build everything
with -Werror=format-security.  If you attempt to build with
-DSLIC3R_PERL_XS (which we need in order to run the test suite), the
build fails because of two strings in the Perl XS code:

/usr/bin/perl -MExtUtils::XSpp::Cmd -e xspp -- -t "/builddir/build/BUILD/PrusaSlicer-version_2.0.0-rc2/xs/xsp/typemap.xspt" "/builddir/build/BUILD/PrusaSlicer-version_2.0.0-rc2/xs/xsp/Print.xsp":585:31: error: format not a string literal and no format arguments [-Werror=format-security]

Ths fixes up two instances of that.
2019-05-20 18:16:13 +02:00
bubnikv
0787fa861a Updated handling of the SLIC3R_BUILD_ID key 2019-05-13 18:01:00 +02:00
bubnikv
a61e833536 Implemented the "Support for support enforcers only" quick selection.
Reduced some memory leaks due to the ConfigDef::default_value pointer.
2019-05-03 18:01:39 +02:00
bubnikv
7aa4fd0827 Another fix of the perl bindings 2019-04-16 10:53:55 +02:00
bubnikv
7f4e6328fa Fixed trianglemeshslicer perl bindings, thus the unit tests. 2019-04-16 10:39:17 +02:00
bubnikv
496922036f Harmonized the application naming. 2019-04-15 16:14:19 +02:00
bubnikv
c980e96dbb Fix of perl bindings 2019-03-13 17:38:48 +01:00
bubnikv
cea6ca83db removed the --gui parameter from the slic3r wrapper.
Fixed the perl bindings
2019-03-13 17:06:45 +01:00
bubnikv
df8d475363 Fixed perl bindings 2019-03-13 16:53:08 +01:00
bubnikv
18025cc669 Reworked the command line interface based on the current state
of the upstream.
Thanks @alexrj, @lordofhyphens for the original code of slic3r.cpp
2019-03-13 15:44:50 +01:00
bubnikv
9996a01c84 Fixed Perl bindings. 2019-03-01 18:09:42 +01:00
bubnikv
37f96db9fe Fixed Perl bindings 2019-02-25 08:55:25 +01:00
bubnikv
4487f51c30 Yet one more fix of a unit test. 2019-01-24 20:53:15 +01:00
bubnikv
de70b6a06a Removed ExPolygon::triangulate_pp() from Perl XS bindings and unit tests. 2019-01-24 19:22:35 +01:00
bubnikv
90235ac386 Fixed layer height profile access from Perl XS 2019-01-23 15:29:18 +01:00
Vojtech Kral
e8d63f3eb1 Upgrade Boost to 1.66 on Windows 2019-01-16 15:14:18 +01:00
bubnikv
5ea8df0ca0 Manual merge of the TriangleMesh.cpp from the stable branch. 2018-12-12 10:02:01 +01:00
bubnikv
09c539a242 Trigger background processing update when switching to a preview tab.
Implements "Go Direct to the preview screen after slicing #152"
2018-12-11 17:49:31 +01:00
bubnikv
e0cf7ecd22 WIP: Command line slicing for SLA.
Removed some layer height editing bindings from Perl.
2018-12-11 13:16:09 +01:00
bubnikv
d46d0dc365 Implemented naming of the SLA export file based on the output file name
template.

Reworked naming of the plater exports to not use the output file name
template, but to derive the file name from the first printable object's name.

Fixed error handling: Reimpemented the Perl's "eval" blocks
as try / catch blocks.
2018-12-03 13:14:28 +01:00
bubnikv
a378bb7bed Removed some obsolete Perl bindings.
Removed libslic3r from the default include paths for all modules but
libslic3r. Now headers from libslic3r need to be included with an
explicit path (libslic3r/libslic3r.h etc)
Split the localization macros into I18N.{cpp,h}
2018-11-26 14:41:58 +01:00
bubnikv
bde4153d44 Removed legacy GUI Perl bindings,
replaced Print & SLAPrint pointers with BackgroundProcessing pointer
at the GLCanvas3D level, so that the Print & SLAPrint access will be
synchronized with the current printer technology.
2018-11-22 15:29:59 +01:00
Vojtech Kral
b950e9e575 Fix build 2018-11-19 11:39:17 +01:00
tamasmeszaros
1680bcb10d removing remnant junk for AppController 2018-11-12 17:41:05 +01:00
tamasmeszaros
a4e1ab2281 Getting rid of AppController. 2018-11-12 15:02:42 +01:00
bubnikv
c2e46350f2 Separated Print / PrintObject into PrintBase.cpp/h to support SLAPrint 2018-11-08 14:23:17 +01:00
bubnikv
3eea327ef0 WIP: When iterating over PrintObject's regions, use the region count
by PrintObject::region_volumes. This is due to the way Print::apply()
works, it does not invalidate an existing PrintObject if a new region
is added to the print.
2018-11-06 15:31:26 +01:00
bubnikv
7ffa22191d Fixed some issues with front end / back end synchronization. 2018-11-05 17:52:55 +01:00
bubnikv
0870f81425 Merge remote-tracking branch 'remotes/origin/vb_modelbase_id_refactor' into dev_native 2018-11-02 20:53:47 +01:00
bubnikv
cf5dcfa9ed ModelBase ID refactoring, starting to work.
Now it remains to clean up some of the no more used Model interfaces.
2018-11-02 19:49:40 +01:00
Lukas Matena
f5e8eaedb3 Added a special (temporary) icon for SLA supports gizmo, removed igl files from xs/src 2018-11-02 10:22:48 +01:00
Lukas Matena
7681d00ee5 Merged branch 'dev_native' into lm_sla_supports_auto
Added igl library files
2018-10-26 15:45:52 +02:00
bubnikv
56633c7449 Reverted Print::export_png() for the Perl unit tests. 2018-10-24 13:59:24 +02:00
bubnikv
bded28f888 WIP: Reconstruction of background processing. 2018-10-23 15:27:31 +02:00
bubnikv
857863102d Merge branch 'dev_native' into vb_dev_native_background_processing 2018-10-18 18:03:17 +02:00
bubnikv
7ed2752b2b WIP: Reconstruction of background processing update timer,
added unique IDs to the Model / ModelObject / ModelVolume objects,
added a copy of Model hierarchy at the Print,
WIP: new Print::apply() method to update the Print's copy of Model,
to update the Print's PrintObjects, to update status of the Print and
PrintObjects, and to possibly stop the background processing.
2018-10-17 11:12:38 +02:00
Enrico Turri
059ab4a05c ModelInstance's full 3D transform set as default 2018-10-16 09:51:30 +02:00
Vojtech Kral
0b0e65636f Build improvements: symlink resources properly with Visual Studio
Convert dependencies into a CMake build script in the `deps` dir
2018-10-15 16:47:15 +02:00
Lukas Matena
c1e6eda554 Fixed a crash when deleting an object with sla supports gizmo active 2018-10-10 13:21:14 +02:00
Lukas Matena
ced5e8540f SLA support points are deleted when an object is cut or split 2018-10-10 11:14:09 +02:00
Lukas Matena
bf5d3ed636 SLA support points are now saved in 3MF 2018-10-05 10:13:21 +02:00
Lukas Matena
6b007986ee SLA support points are now saved in AMF 2018-10-03 15:13:54 +02:00
Lukas Matena
e89465cc3f Merge branch 'dev2' into lm_sla_supports_ui 2018-10-03 12:46:11 +02:00
Lukas Matena
ce5c03c894 Refactored previous commit 2018-09-26 14:37:25 +02:00
Lukas Matena
10393ba834 Flatten and SlaSupports gizmos - grabbers rendered correctly when object is dragged 2018-09-26 13:54:09 +02:00
Enrico Turri
025fdc1359 Fixed #1244 - c++ part 2018-09-26 11:24:19 +02:00
Lukas Matena
fc82aaaa2e Merge remote-tracking branch 'origin/dev2' into lm_sla_supports_ui 2018-09-26 09:18:22 +02:00
bubnikv
6260e43f61 Merge remote-tracking branch 'origin/dev2' into dev_native 2018-09-25 15:33:51 +02:00
Enrico Turri
51cf964b51 Reduced count of opengl draw calls for full 3D transform 2018-09-25 12:15:51 +02:00
bubnikv
9a3db200a5 Updated AMF/3MF import to pass configuration into a DynamicPrintConfig
instead of PresetBundle.
2018-09-25 11:53:05 +02:00
Enrico Turri
a651f5f5d7 ModelInstance full 3D transform code moved into a single technology 2018-09-25 10:42:11 +02:00
Enrico Turri
0e1843a871 1st installment of ModelInstance 3D scale components 2018-09-24 15:54:09 +02:00
Enrico Turri
e3d44b07fe Fixed arrange for objects with 3D rotations 2018-09-24 15:21:18 +02:00
Lukas Matena
a4acca24ff Added libigl library files (header-only library) 2018-09-24 14:16:53 +02:00
Lukas Matena
9b5c7aadad Sla support points are saved in ModelObject 2018-09-24 14:04:16 +02:00
Enrico Turri
270341300f Code cleanup 2018-09-24 10:28:52 +02:00
Enrico Turri
1026a9c817 Tweaks to flatten gizmo 2018-09-24 10:19:40 +02:00
bubnikv
bb386bb148 Simplified dependencies. 2018-09-21 21:16:09 +02:00
bubnikv
8e1b5157b4 Moved the remaining Perl dependencies to xs/CMakeLists.txt 2018-09-21 19:37:35 +02:00
Lukas Matena
b96831529f SLA supports points batch deletion does not deselect object 2018-09-21 16:05:02 +02:00
Lukas Matena
b539a9148a Merge remote-tracking branch 'origin/dev2' into lm_sla_supports_ui 2018-09-21 15:46:46 +02:00
Enrico Turri
c5e56911f4 Fixed memory leak in is_splittable_object() 2018-09-21 14:21:08 +02:00
Enrico Turri
8cea821c6a Dimensions of scale on rotate gizmo as function of object size 2018-09-21 13:44:38 +02:00
Enrico Turri
99e90f2bfb Enhanced fix of #1229 - c++ part 2018-09-21 12:46:20 +02:00
Lukas Matena
088fe6cec6 Merge branch 'dev2' into lm_sla_supports_ui 2018-09-21 11:43:30 +02:00
Enrico Turri
a079f2a34e Fixed import of rotations from 3mf files 2018-09-21 10:18:56 +02:00
bubnikv
20d0f046d2 Merge remote-tracking branch 'origin/dev2' into dev_native 2018-09-20 16:48:40 +02:00
bubnikv
add45a8f6e Added C++ command line processing, thanks @alexrj and @loh 2018-09-20 16:48:13 +02:00
Enrico Turri
07274589a3 1st installment of ModelInstance 3D rotation components 2018-09-20 15:00:40 +02:00
Enrico Turri
f1e0dc2dd7 Ignore mouse up event after double click on gizmos grabbers 2018-09-20 09:50:49 +02:00
bubnikv
9c085dfcc5 Fixed Perl unit tests. 2018-09-19 18:31:41 +02:00
tamasmeszaros
2306c1589a Polymorphic AppController for cli and gui modes. 2018-09-19 18:02:04 +02:00
bubnikv
6003005812 Removed dependency on wxWidgets from Alien.
Updated source code to wxWidgets 3.1.1
Moved invocation of perl unit / integration tests to the xs project.
2018-09-19 17:19:06 +02:00
Enrico Turri
c9acd1252a reset transformation components to their default value by double clicking on gizmos' grabbers 2018-09-19 15:39:54 +02:00
Lukas Matena
195998ff7c Sla support points can be deleted, tooltip texture was added 2018-09-19 14:59:57 +02:00
tamasmeszaros
3f0968fb02 Refactoring member variable names for my classes to match our coding style. 2018-09-19 14:54:37 +02:00
bubnikv
ffac360439 Yet another build system fix 2018-09-19 14:43:38 +02:00
tamasmeszaros
1a0b72de2c png export recovered with the new print object interface. 2018-09-19 14:32:38 +02:00
Enrico Turri
5f587eb362 Fixed colors of extrusion paths 2018-09-19 14:11:36 +02:00
tamasmeszaros
2056f4c336 Zipper concept clarified. 2018-09-19 13:43:15 +02:00
bubnikv
58a0c41713 Fixed compilation on OSX & Linux 2018-09-19 13:12:57 +02:00
bubnikv
7374eafc13 Moved the newly added GUI_Preview files. 2018-09-19 11:34:26 +02:00
bubnikv
e8c16c35e5 Meged with dev2 2018-09-19 11:28:30 +02:00
tamasmeszaros
6b655f9aa3 Merge branch 'dev2' of github.com:prusa3d/Slic3r into dev2 2018-09-19 11:08:29 +02:00
tamasmeszaros
7708fb8ada Zipper implementation in gui level for png export. 2018-09-19 11:08:10 +02:00
Vojtech Kral
4bf49fe990 Build: Make return value type mismatch an error on Unix 2018-09-19 11:05:48 +02:00
bubnikv
0558b53493 WIP: Moved sources int src/, separated most of the source code from Perl.
The XS was left only for the unit / integration tests, and it links
libslic3r only. No wxWidgets are allowed to be used from Perl starting
from now.
2018-09-19 11:02:24 +02:00
Vojtech Kral
51d504c720 Build fixes, conversion of wxString into utf-8 std::string 2018-09-19 10:55:00 +02:00
Enrico Turri
e695164451 Merge branch 'gui_preview_to_cpp' of https://github.com/prusa3d/Slic3r into dev2 2018-09-19 09:00:29 +02:00
Enrico Turri
e79b0a2f25 Code cleanup 2018-09-19 08:59:11 +02:00
tamasmeszaros
4d6fb52047 Removed explicit dependency of wxWidgets from PrintExport.hpp 2018-09-18 19:13:56 +02:00
Enrico Turri
9daae9413a Perl version of preview removed from Slic3r 2018-09-18 16:13:18 +02:00
Enrico Turri
abdaaf6ede Method Preview::load_print() ported to c++ 2018-09-18 15:50:52 +02:00
Enrico Turri
e3e5948982 1st installment of preview ported in c++ 2018-09-18 13:35:05 +02:00
tamasmeszaros
5fa99fd903 removing unnecessary artefacts FindFlann and duplicate c++11 standard definition in cmake. 2018-09-18 11:16:49 +02:00
bubnikv
3ddaccb641 Replaced CONFESS with throw std::exception in libslic3r, so now
libslic3r should be compilable without Perl.
2018-09-18 10:09:58 +02:00
Vojtech Bubnik
27bba45331 Fix of compilation on Linux, disabled -Wreorder 2018-09-17 17:17:38 +02:00
bubnikv
153bd108a2 WIP fix of PostProcessor on Linux 2018-09-17 15:32:54 +02:00
bubnikv
fe3b92870f Merged with dev 2018-09-17 15:12:13 +02:00
bubnikv
d934b63424 Removed Print.pm,
ported execution of post processing scripts into C++ (WIP, waits for
update of boost::system module on our build server)
Removed other mention of the "Controller".
2018-09-17 12:01:02 +02:00
Lukas Matena
3957c5bd8e Merge branch 'dev' into lm_sla_supports_ui 2018-09-17 10:42:16 +02:00
bubnikv
38028187b4 Merged with master 2018-09-17 10:38:14 +02:00
Lukas Matena
37c222a54f Merge branch 'dev' into lm_sla_supports_ui 2018-09-17 10:26:38 +02:00
bubnikv
4ec4c9364e Merge remote-tracking branch 'origin/support_improvements' 2018-09-14 15:12:20 +02:00
Vojtech Kral
61a6aa8692 FirmwareDialog: Add appropriate set of wildcards to the file picker 2018-09-14 15:10:50 +02:00
Vojtech Kral
7258c597b9 Fix window size persistence
Fixes #1116
Fixes #1175
2018-09-14 15:10:50 +02:00
Vojtech Kral
8988e8cf0a Firmware updater: Fix MMU2 lookup wrt. other Prusa devices being connected 2018-09-14 15:10:50 +02:00
Vojtech Kral
a8c28e210d Fix CMake string comparison issue
Fixes #1187
2018-09-14 15:10:50 +02:00
Vojtech Kral
646e991d4b ConfigWizard: Properly apply gcode_flavor
Fixes #1138
2018-09-14 15:10:50 +02:00
bubnikv
a744ed7897 Merge remote-tracking branch 'origin/vb_slicing_fix' 2018-09-14 15:08:07 +02:00
bubnikv
7fc0b4375c Merge remote-tracking branch 'origin/parallel_arrange' 2018-09-14 15:03:38 +02:00
bubnikv
a0e2df5dbb Merge remote-tracking branch 'origin/lm_temperature_fix' 2018-09-14 14:56:21 +02:00
bubnikv
bd659663f8 Merge remote-tracking branch 'origin/lm_wipe_tower_consumption' 2018-09-14 14:55:43 +02:00
Enrico Turri
083a395078 Merge branch 'dev' of https://github.com/prusa3d/Slic3r into dev 2018-09-14 14:38:45 +02:00
Enrico Turri
d139274da8 Fixed gizmo move 3d axis Z 2018-09-14 14:37:13 +02:00
YuSanka
eb2b56a87f Fixed settings list for objects
+ fixed showing of an info_manifold_warning_icon
2018-09-14 13:59:56 +02:00
Lukas Matena
5df70752c0 Merge branch 'dev' into lm_sla_supports_ui 2018-09-14 11:38:51 +02:00
bubnikv
2c9dc4dbbf Finished porting of the status bar to C++. 2018-09-14 10:59:50 +02:00