OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::MassProperties Struct Reference

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/libslic3r/TriangleMesh.hpp>

Inheritance diagram for Slic3r::MassProperties:

Public Member Functions

MassProperties transformed (const Transform3d &trafo) const

Public Attributes

double mass { 0. }
double volume { 0. }
Vec3d center { Vec3d::Zero() }
Matrix3d spread { Matrix3d::Zero() }

Detailed Description

Member Function Documentation

◆ transformed()

MassProperties Slic3r::MassProperties::transformed ( const Transform3d & trafo) const
1502{
1503 const Matrix3d linear = trafo.linear();
1504 const double scale = std::abs(linear.determinant());
1505 return { mass * scale, volume * scale, trafo * center, linear * spread * linear.transpose() };
1506}
int scale(const int val)
Definition WipeTowerDialog.cpp:58
Eigen::Matrix< double, 3, 3, Eigen::DontAlign > Matrix3d
Definition Point.hpp:86
Vec3d center
Definition TriangleMesh.hpp:334
Matrix3d spread
Definition TriangleMesh.hpp:335
double mass
Definition TriangleMesh.hpp:332
double volume
Definition TriangleMesh.hpp:333

References center, mass, scale(), spread, transformed(), and volume.

Referenced by Slic3r::GUI::GLCanvas3D::CenterOfMass::model_markers(), and transformed().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ center

Vec3d Slic3r::MassProperties::center { Vec3d::Zero() }
334{ Vec3d::Zero() };

Referenced by Slic3r::GUI::mass_sum(), and transformed().

◆ mass

double Slic3r::MassProperties::mass { 0. }

◆ spread

Matrix3d Slic3r::MassProperties::spread { Matrix3d::Zero() }
335{ Matrix3d::Zero() };

Referenced by Slic3r::GUI::mass_sum(), and transformed().

◆ volume

double Slic3r::MassProperties::volume { 0. }
333{ 0. };

Referenced by Slic3r::GUI::mass_sum(), and transformed().


The documentation for this struct was generated from the following files: