%module{Slic3r::XS}; %{ #include #include "libslic3r/Geometry.hpp" %} %package{Slic3r::Geometry}; Pointfs arrange(size_t total_parts, Pointf* part, coordf_t dist, BoundingBoxf* bb) %code{% RETVAL = Slic3r::Geometry::arrange(total_parts, *part, dist, bb); %}; %{ bool directions_parallel(angle1, angle2) double angle1 double angle2 CODE: RETVAL = Slic3r::Geometry::directions_parallel(angle1, angle2); OUTPUT: RETVAL bool directions_parallel_within(angle1, angle2, max_diff) double angle1 double angle2 double max_diff CODE: RETVAL = Slic3r::Geometry::directions_parallel(angle1, angle2, max_diff); OUTPUT: RETVAL Clone convex_hull(points) Points points CODE: RETVAL = Slic3r::Geometry::convex_hull(points); OUTPUT: RETVAL std::vector chained_path(points) Points points CODE: Slic3r::Geometry::chained_path(points, RETVAL); OUTPUT: RETVAL std::vector chained_path_from(points, start_from) Points points Point* start_from CODE: Slic3r::Geometry::chained_path(points, RETVAL, *start_from); OUTPUT: RETVAL double rad2deg(angle) double angle CODE: RETVAL = Slic3r::Geometry::rad2deg(angle); OUTPUT: RETVAL double rad2deg_dir(angle) double angle CODE: RETVAL = Slic3r::Geometry::rad2deg_dir(angle); OUTPUT: RETVAL double deg2rad(angle) double angle CODE: RETVAL = Slic3r::Geometry::deg2rad(angle); OUTPUT: RETVAL Polygons simplify_polygons(polygons, tolerance) Polygons polygons double tolerance CODE: Slic3r::Geometry::simplify_polygons(polygons, tolerance, &RETVAL); OUTPUT: RETVAL IV _constant() ALIAS: X = X Y = Y Z = Z PROTOTYPE: CODE: RETVAL = ix; OUTPUT: RETVAL %}