Commit Graph

79 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
4913e90e10 Remove any Perl related code from libslic3r 2015-12-08 00:39:54 +01:00
Alessandro Ranellucci
7523550066 Try to fix compilation on older Perls 2015-12-02 19:57:03 +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
280f3f38d7 Ported Slic3r::GCode::OozePrevention storage to XS 2015-07-01 21:01:42 +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
8791f5a493 Cleanup of some method signatures and of XS return types 2015-01-19 18:53:04 +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
6010297465 All std::string variables are now supposed to be UTF-8 encoded. We now embed the std::string typemaps in order to do this. #2282 2014-11-22 22:20:28 +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
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
d9dc2fda00 Fixed regression causing variable layer heights to be ignored. #2136
Conflicts:

	xs/xsp/my.map
2014-07-01 19:49:15 +02:00
Alessandro Ranellucci
67bf99633e Fix compilation under 5.20 (untested). #2109 2014-06-25 14:57:06 +02:00
Alessandro Ranellucci
4bf23c67bb Bugfix: wrong input validation in set_layer_height_ranges(). #2105 2014-06-19 14:44:50 +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
db51e4693d Return NULL values from XS as undef. 2014-05-24 23:50:45 +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
76a8ec3d9e Replace to_SV_ref() and to_SV_clone_ref() with templated glue functions 2014-05-08 14:52:48 +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
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
e0c0a42a8b Expose static PrintConfig objects to Perl and test apply() 2013-12-21 16:32:11 +01:00