18#ifndef SDF_CUSTOM_INERTIA_CALC_PROPERTIES_HH_
19#define SDF_CUSTOM_INERTIA_CALC_PROPERTIES_HH_
23#include <gz/utils/ImplPtr.hh>
24#include <gz/math/Inertial.hh>
28#include "sdf/config.hh"
34inline namespace SDF_VERSION_NAMESPACE
63 public:
const std::optional<sdf::Mesh> &
Mesh()
const;
79 GZ_UTILS_IMPL_PTR(dataPtr)
83 std::function<std::optional<gz::math::Inertiald>(
sdf::Errors &,
Definition: CustomInertiaCalcProperties.hh:41
const sdf::ElementPtr AutoInertiaParams() const
Get the reference to the <auto_inertia_params> sdf element.
double Density() const
Get the density of the mesh.
CustomInertiaCalcProperties()
Default Constructor.
const std::optional< sdf::Mesh > & Mesh() const
Get the reference to the mesh oject being used.
void SetDensity(double _density)
Function to set the density of the interface object.
void SetAutoInertiaParams(sdf::ElementPtr _autoInertiaParamsElem)
Function to set the calculator params sdf element object.
CustomInertiaCalcProperties(const double _density, const sdf::Mesh _mesh, const sdf::ElementPtr _calculatorParams)
Constructor with mesh properties.
void SetMesh(sdf::Mesh &_mesh)
Function to set the mesh object.
Mesh represents a mesh shape, and is usually accessed through a Geometry.
Definition: Mesh.hh:43
std::function< std::optional< gz::math::Inertiald >(sdf::Errors &, const sdf::CustomInertiaCalcProperties &)> CustomInertiaCalculator
Definition: CustomInertiaCalcProperties.hh:84
std::vector< Error > Errors
A vector of Error.
Definition: Types.hh:95
std::shared_ptr< Element > ElementPtr
Definition: Element.hh:55
namespace for Simulation Description Format parser
Definition: Actor.hh:35
#define SDFORMAT_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system_util.hh:25