Commit Graph
70 Commits
Author SHA1 Message Date
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 7da68c91a5 Vojtech likes to use Sublime on Windows to get the wheels rolling. 2016-04-11 17:05:58 +02:00
Alessandro Ranellucci 3c862836f2 Refactored the Config XS bindings 2015-12-16 12:33:19 +01:00
Alessandro Ranellucci 9b21ac877a Merge branch 'master' into sender
Conflicts:
	Build.PL
	lib/Slic3r.pm
	xs/MANIFEST
	xs/src/libslic3r/PrintConfig.hpp
2015-11-01 19:12:13 +01:00
Alessandro Ranellucci b4515cf695 Finished porting PerimeterGenerator to C++ 2015-07-23 15:53:02 +02:00
Alessandro Ranellucci 801f629fdc Ported Slic3r::GCode storage to XS 2015-07-01 21:47:17 +02:00
Alessandro Ranellucci b43dd92766 Ported Slic3r::GCode::Wipe storage to XS 2015-07-01 20:57:16 +02:00
Alessandro Ranellucci bf9cd1b8e6 Ported Slic3r::GCode::AvoidCrossingPerimeters to XS 2015-07-01 20:14:05 +02:00
Alessandro Ranellucci 13b7316807 Merge branch 'master' into sender
Conflicts:
	Build.PL
	lib/Slic3r/GUI/MainFrame.pm
2015-05-28 18:05:36 +02:00
Alessandro Ranellucci 5eb3bc52ef Ported ModelObject::rotate() and ModelObject::flip() to XS, as well as axes constants 2015-04-16 21:22:04 +02:00
Alessandro Ranellucci 3ae6f2630e Merge branch 'master' into sender
Conflicts:
	Build.PL
2015-02-01 14:07:32 +01:00
Alessandro Ranellucci a5c0ffe963 Faster loading of 3D preview and much less memory used 2015-01-24 23:35:29 +01:00
Alessandro Ranellucci 005f138ce7 Merge branch 'master' into sender 2014-12-26 01:30:48 +01:00
Alessandro Ranellucci fcfb3b98bc 3D object positioning 2014-12-16 01:12:56 +01:00
Alessandro Ranellucci 11dd67ab34 Initial work for G-code sender and more intensive usage of Boost 2014-11-26 22:30:25 +01:00
Alessandro Ranellucci 379cde30e2 Ported Slic3r::BridgeDetector to XS 2014-11-15 22:41:22 +01:00
Alessandro Ranellucci ee3fb7caa2 Ported GCodeWriter to XS (faster G-code export!) 2014-11-09 19:02:45 +01:00
Alessandro Ranellucci b69caff93c Ported LayerRegion::make_slices() to XS 2014-11-09 16:24:07 +01:00
Alessandro Ranellucci e521475b7e Refactoring: moved some low-level G-code generation methods to the new Slic3r::GCode::Base class 2014-10-18 17:41:21 +02:00
Alessandro Ranellucci 3ff613d166 Merge branch 'acp-voronoi'
Conflicts:
	xs/xsp/my.map
2014-07-26 22:38:35 +02:00
Alessandro Ranellucci 998a4225de Finished implementation of bed_shape in plater 2014-06-16 15:18:39 +02:00
Alessandro Ranellucci d2ca4c1b13 Some initial work for incremental slicing 2014-06-11 00:15:02 +02:00
Alessandro Ranellucci 7215e66a6a Merge branch 'master' into visilibity
Conflicts:
	lib/Slic3r/GCode.pm
	xs/MANIFEST
2014-05-27 00:04:53 +02:00
Y. Sapir 76738dc66b Remove some more Clone typemaps and add some whitespace. 2014-05-24 23:50:45 +03:00
Y. Sapir d06c300926 Add ::Ref classes for every missing C++ class (going by REGISTER_CLASS calls). 2014-05-24 23:50:44 +03:00
Y. Sapir 8da0bded1d Move Print object storage to C++. (along with its subobjects) 2014-05-24 23:50:29 +03:00
Alessandro Ranellucci 5fe5021fd7 Implemented avoid_crossing_perimeters with VisiLibity 2014-05-13 20:06:01 +02:00
Alessandro Ranellucci 69002b8ea2 No tests were covering randomize-start, which was not working anymore after recent ExtrusionLoop refactoring. #2028 2014-05-12 21:49:17 +02:00
Alessandro Ranellucci 6e207d3830 Merge branch 'sapir-modelcpp' 2014-05-08 11:13:21 +02:00
Alessandro Ranellucci c37ef2f18b New semantics for ExtrusionLoop objects. Early processing of perimeter overhangs for paralellizing such work and making G-code export lighter. Lots of refactoring. This should fix a number of minor bugs, including reversals of perimeter overhangs. 2014-05-08 11:07:37 +02:00
Alessandro Ranellucci 54a199919b Removed StringMap 2014-05-07 00:22:56 +02:00
Y. Sapir 05b2993769 Translate Model class' storage to C++.
Some code copied from xs-model branch.

Also:
* Generate ::Ref classes programatically.
* Add separate __REGISTER_CLASS macro
    (for use where forward declaration won't work, i.e. typedefs)
2014-05-05 16:30:19 +03:00
Y. Sapir e005ff32c4 Replace Extruder::config accessor with Perl wrapper, with C++ option accessors. 2014-04-28 00:49:05 +03:00
Y. Sapir 66d23a2416 Convert Extruder object (mostly) to C++ with lots of fields. 2014-04-27 23:42:59 +03:00
Petr Ledvina 115aa6885f Implement type checking for XS objects
Type handling is mainly done using templates.
Template Slic3r::ClassTraits is used to store info about exported types (perl class name). Currently only perl class name and refference name is used.
Template values are initialized by REGISTER_CLASS macro. This macro is used in .cpp file of class ( it needs to be used exactly for each type).

Ref<type> class is used to return value as perl reference. Operator overloading is used to make c++ and XSpp happy, only pointer value should be possible to return.

Clone<type> class is used to return copy of value ( using new and copy constructor). Copy is created on assigment, this should be probably improved (memory leak on multiple assignments).
It is overloaded to be able to return type, type* and type&.

Typechecking in ExtrusionEntityCollection updated to check all passed types.
2014-04-27 19:38:56 +02:00
Alessandro Ranellucci 52de292a48 Fixed wrong refactoring of perimeter tree traversal. #1832 2014-03-15 02:16:04 +01:00
Alessandro Ranellucci 7f5442265e Include thin walls in general top-level perimeter sorting to get more efficient paths 2014-03-09 20:19:30 +01:00
Alessandro Ranellucci b17d06f9d1 Finished porting BoundingBox to XS 2014-01-07 12:48:09 +01:00
Alessandro Ranellucci 9c0a6a79d3 Incomplete work for porting BoundingBox to XS 2014-01-06 18:29:10 +01:00
Alessandro Ranellucci 036badf932 Ported Flow to XS 2014-01-05 13:16:13 +01:00
Alessandro Ranellucci e2f1040a76 More work 2014-01-02 10:44:54 +01:00
Alessandro Ranellucci ab25cc4940 Merge branch 'xs-config'
Conflicts:
	lib/Slic3r/Config.pm
	xs/MANIFEST
2013-12-22 01:41:55 +01:00
Alessandro Ranellucci 9836e963a5 Incomplete work for adapting the application to the new XS-based Config 2013-12-21 21:06:45 +01:00
Alessandro Ranellucci e0c0a42a8b Expose static PrintConfig objects to Perl and test apply() 2013-12-21 16:32:11 +01:00
Alessandro Ranellucci 56d4da2ac7 Decoupled a generic Config implementation from the PrintConfig definitions 2013-12-21 16:15:41 +01:00
Alessandro Ranellucci 008f38cf68 More work for porting Config to XS 2013-12-20 16:37:28 +01:00
Alessandro Ranellucci a6a6a6888b Ported Slic3r::Print::State to XS 2013-12-20 01:36:42 +01:00
Alessandro Ranellucci 46e3b3180e Ported Surface->offset() to XS 2013-11-23 18:29:25 +01:00
Alessandro Ranellucci 761f261a68 Ported intersect_expolygons() and subtract_expolygons() to XS 2013-11-21 17:53:50 +01:00
Alessandro Ranellucci a225a8b2ef Ported contains_line() to XS 2013-11-21 15:12:06 +01:00