model-generator.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2015-2020 CNRS INRIA
3 //
4 
6 
7 namespace pinocchio
8 {
9 
10  template<typename D>
12  const JointModelBase<D> & jmodel,
14  const SE3 & joint_placement,
15  const std::string & name,
16  const Inertia & Y)
17  {
19  typedef typename D::TangentVector_t TV;
20  typedef typename D::ConfigVector_t CV;
21 
22  idx = model.addJoint(parent_id,jmodel,joint_placement,
23  name + "_joint",
24  TV::Zero(),
25  1e3 * (TV::Random() + TV::Constant(1)),
26  1e3 * (CV::Random() - CV::Constant(1)),
27  1e3 * (CV::Random() + CV::Constant(1))
28  );
29 
30  model.appendBodyToJoint(idx,Y,SE3::Identity());
31  }
32 
34  {
35  addJointAndBody(model,JointModelFreeFlyer(),model.getJointId("universe"),SE3::Identity(),"freeflyer",Inertia::Random());
36  addJointAndBody(model,JointModelSpherical(),model.getJointId("freeflyer_joint"),SE3::Identity(),"spherical",Inertia::Random());
37  addJointAndBody(model,JointModelPlanar(),model.getJointId("spherical_joint"),SE3::Identity(),"planar",Inertia::Random());
38  addJointAndBody(model,JointModelRX(),model.getJointId("planar_joint"),SE3::Identity(),"rx",Inertia::Random());
39  addJointAndBody(model,JointModelPX(),model.getJointId("rx_joint"),SE3::Identity(),"px",Inertia::Random());
42  addJointAndBody(model,JointModelSphericalZYX(),model.getJointId("ru_joint"),SE3::Identity(),"sphericalZYX",Inertia::Random());
43  addJointAndBody(model,JointModelTranslation(),model.getJointId("sphericalZYX_joint"),SE3::Identity(),"translation",Inertia::Random());
44  }
45 
46 }
pinocchio::addJointAndBody
void addJointAndBody(Model &model, const JointModelBase< D > &jmodel, const Model::JointIndex parent_id, const SE3 &joint_placement, const std::string &name, const Inertia &Y)
Definition: model-generator.hpp:11
pinocchio::SE3Tpl< double, 0 >::Vector3
traits< SE3Tpl >::Vector3 Vector3
Definition: spatial/se3-tpl.hpp:53
pinocchio::JointModelPrismaticUnaligned
JointModelPrismaticUnalignedTpl< double > JointModelPrismaticUnaligned
Definition: multibody/joint/fwd.hpp:57
pinocchio::JointModelBase
Definition: joint-model-base.hpp:67
pinocchio::SE3Tpl< double, 0 >
pinocchio::name
std::string name(const LieGroupGenericTpl< LieGroupCollection > &lg)
Visit a LieGroupVariant to get the name of it.
model.hpp
pinocchio::JointModelSpherical
JointModelSphericalTpl< double > JointModelSpherical
Definition: multibody/joint/fwd.hpp:42
pinocchio::InertiaTpl::Random
static InertiaTpl Random()
Definition: spatial/inertia.hpp:233
pinocchio::ModelTpl::JointIndex
pinocchio::JointIndex JointIndex
Definition: multibody/model.hpp:49
pinocchio::JointModelFreeFlyer
JointModelFreeFlyerTpl< double > JointModelFreeFlyer
Definition: multibody/joint/fwd.hpp:63
append-urdf-model-with-another-model.parent_id
int parent_id
Definition: append-urdf-model-with-another-model.py:27
pinocchio::JointModelTranslation
JointModelTranslationTpl< double > JointModelTranslation
Definition: multibody/joint/fwd.hpp:75
pinocchio::JointModelRevoluteUnaligned
JointModelRevoluteUnalignedTpl< double > JointModelRevoluteUnaligned
Definition: multibody/joint/fwd.hpp:28
pinocchio::buildAllJointsModel
void buildAllJointsModel(Model &model)
Definition: model-generator.hpp:33
pinocchio::JointModelRX
JointModelRevoluteTpl< double, 0, 0 > JointModelRX
Definition: joint-revolute.hpp:756
pinocchio::JointModelSphericalZYX
JointModelSphericalZYXTpl< double > JointModelSphericalZYX
Definition: multibody/joint/fwd.hpp:48
collision-with-point-clouds.Y
Y
Definition: collision-with-point-clouds.py:31
append-urdf-model-with-another-model.joint_placement
joint_placement
Definition: append-urdf-model-with-another-model.py:28
pinocchio::SE3Tpl< double, 0 >::Identity
static SE3Tpl Identity()
Definition: spatial/se3-tpl.hpp:106
pinocchio::InertiaTpl
Definition: spatial/fwd.hpp:52
pinocchio::JointModelPX
JointModelPrismaticTpl< double, 0, 0 > JointModelPX
Definition: joint-prismatic.hpp:653
pinocchio::ModelTpl
Definition: multibody/fwd.hpp:23
pinocchio::model
JointCollectionTpl & model
Definition: joint-configuration.hpp:746
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:28
pinocchio::JointModelPlanar
JointModelPlanarTpl< double > JointModelPlanar
Definition: multibody/joint/fwd.hpp:69


pinocchio
Author(s):
autogenerated on Tue Feb 13 2024 03:43:59