TPMS-D Infill ( Triply Periodic Minimal Surface D) (#9613)

* Fill TPMS-D

limpieza

* delete unused function

* cleaning

* Icon update

* fix missing header

* density Adjusted

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* Improve Precision +  refactoring

clean tpms.hpp

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

---------

Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
This commit is contained in:
Rodrigo
2025-06-15 19:38:54 +08:00
committed by GitHub
co-authored by Ian Bassi Noisyfox
parent e13ec786d5
commit 1471276580
9 changed files with 681 additions and 2 deletions
+31
View File
@@ -0,0 +1,31 @@
#ifndef slic3r_FillTpmsD_hpp_
#define slic3r_FillTpmsD_hpp_
#include "../libslic3r.h"
#include "FillBase.hpp"
namespace Slic3r {
class FillTpmsD : public Fill
{
public:
FillTpmsD();
Fill* clone() const override { return new FillTpmsD(*this); }
// require bridge flow since most of this pattern hangs in air
bool use_bridge_flow() const override { return false; }
// Correction applied to regular infill angle to maximize printing
// speed in default configuration (degrees)
static constexpr float CorrectionAngle = -45.;
void _fill_surface_single(const FillParams& params,
unsigned int thickness_layers,
const std::pair<float, Point>& direction,
ExPolygon expolygon,
Polylines& polylines_out) override;
};
} // namespace Slic3r
#endif // slic3r_FillTpmsD_hpp_