13#include <SpaceVecAlg/SpaceVecAlg>
15#include <boost/variant.hpp>
35 std::map<std::string, std::vector<double>>
lower;
36 std::map<std::string, std::vector<double>>
upper;
37 std::map<std::string, std::vector<double>>
velocity;
38 std::map<std::string, std::vector<double>>
torque;
46 Mesh() : scaleV(Eigen::Vector3d::Ones()) {}
52 Box() : size(Eigen::Vector3d::Zero()) {}
77 Superellipsoid() : size(Eigen::Vector3d::Zero()), epsilon1(1), epsilon2(1) {}
92 using Data = boost::variant<Box, Cylinder, Mesh, Sphere, Superellipsoid>;
126 using Data = boost::variant<Color, Texture>;
152 std::vector<std::string> filtered_links_ = {};
161 bool remove_filtered_links_ =
true;
164 bool transform_inertia_ =
true;
167 std::string base_link_ =
"";
173 bool remove_virtual_links_ =
false;
176 std::string spherical_suffix_ =
"_spherical";
188 filtered_links_ = links;
195 remove_filtered_links_ = value;
202 transform_inertia_ = value;
216 remove_virtual_links_ = value;
223 spherical_suffix_ = suffix;
234 std::map<std::string, std::vector<Visual>>
visual;
245 const std::vector<std::string> & filtered_links = {},
246 bool transform_inertia =
true,
247 const std::string & base_link =
"",
248 bool with_virtual_links =
true,
249 const std::string spherical_suffix =
"_spherical");
#define RBDYN_PARSERS_DLLAPI
Definition api.h:43
Definition MultiBodyGraph.h:33
Definition MultiBody.h:30
RBDYN_PARSERS_DLLAPI std::string prefix_path(const std::string &path)
Ensures that a path is prefixed by either package:// or file://.
RBDYN_PARSERS_DLLAPI ParserResult from_file(const std::string &file_path, bool fixed=true, const std::vector< std::string > &filtered_links={}, bool transform_inertia=true, const std::string &base_link="", bool with_virtual_links=true, const std::string spherical_suffix="_spherical")
Checks the file extension and parses it as URDF or YAML accordingly.
ParserInput
Definition common.h:27
Definition MultiBodyConfig.h:24
Eigen::Vector3d size
Definition common.h:53
Box()
Definition common.h:52
Cylinder()
Definition common.h:57
double radius
Definition common.h:58
double length
Definition common.h:59
Eigen::Vector3d scaleV
Definition common.h:48
std::string filename
Definition common.h:47
Mesh()
Definition common.h:46
double radius
Definition common.h:64
Sphere()
Definition common.h:63
A Superellipsoid can approximate primitive shapes as boxes, cylinders and pyrimids while remaining st...
Definition common.h:76
Eigen::Vector3d size
Definition common.h:78
double epsilon1
Definition common.h:79
Superellipsoid()
Definition common.h:77
Geometry()
Definition common.h:95
Type type
Definition common.h:91
boost::variant< Box, Cylinder, Mesh, Sphere, Superellipsoid > Data
Definition common.h:92
Data data
Definition common.h:93
Type
Definition common.h:83
@ BOX
Definition common.h:84
@ MESH
Definition common.h:87
@ CYLINDER
Definition common.h:85
@ SUPERELLIPSOID
Definition common.h:88
@ SPHERE
Definition common.h:86
std::map< std::string, std::vector< double > > upper
Definition common.h:36
std::map< std::string, std::vector< double > > lower
Definition common.h:35
std::map< std::string, std::vector< double > > velocity
Definition common.h:37
std::map< std::string, std::vector< double > > torque
Definition common.h:38
double b
Definition common.h:111
double a
Definition common.h:112
double r
Definition common.h:109
double g
Definition common.h:110
std::string filename
Definition common.h:116
Material()
Definition common.h:129
boost::variant< Color, Texture > Data
Definition common.h:126
Type type
Definition common.h:125
Data data
Definition common.h:127
Type
Definition common.h:120
ParserParameters & filtered_links(const std::vector< std::string > &links) noexcept
Definition common.h:186
ParserParameters & fixed(bool fixed) noexcept
Definition common.h:179
ParserParameters & spherical_suffix(const std::string &suffix) noexcept
Definition common.h:221
ParserParameters & remove_filtered_links(bool value) noexcept
Definition common.h:193
ParserParameters & remove_virtual_links(bool value) noexcept
Definition common.h:214
ParserParameters & transform_inertia(bool value) noexcept
Definition common.h:200
ParserParameters & base_link(const std::string &link) noexcept
Definition common.h:207
rbd::MultiBody mb
Definition common.h:230
rbd::MultiBodyGraph mbg
Definition common.h:232
rbd::MultiBodyConfig mbc
Definition common.h:231
Limits limits
Definition common.h:233
std::map< std::string, std::vector< Visual > > visual
Definition common.h:234
std::string name
Definition common.h:236
std::map< std::string, std::vector< Visual > > collision
Definition common.h:235
std::string name
Definition common.h:134
Material material
Definition common.h:137
Geometry geometry
Definition common.h:136
sva::PTransformd origin
Definition common.h:135