37 return bp::class_<OutType, bp::bases<Manifold>>(
38 name, docstring, bp::init<const M &>((
"self"_a,
"base")))
40 bp::make_function(&OutType::getBaseSpace,
41 bp::return_internal_reference<>()),
42 "Get the base space.")
56 namespace pin = pinocchio;
58 using pin::SpecialEuclideanOperationTpl;
59 using pin::SpecialOrthogonalOperationTpl;
60 using pin::VectorSpaceOperationTpl;
62 using DynSizeEuclideanSpace = VectorSpaceOperationTpl<Eigen::Dynamic, Scalar>;
63 bp::class_<PinocchioLieGroup<DynSizeEuclideanSpace>, bp::bases<Manifold>>(
64 "EuclideanSpace",
"Pinocchio's n-dimensional Euclidean vector space.",
66 .def(bp::init<int>((
"self"_a,
"dim")))
70 "R",
"One-dimensional Euclidean space AKA real number line.");
72 "R2",
"Two-dimensional Euclidean space.");
74 "R3",
"Three-dimensional Euclidean space.");
76 "R4",
"Four-dimensional Euclidean space.");
78 "SO2",
"SO(2) special orthogonal group.");
80 "SO3",
"SO(3) special orthogonal group.");
82 "SE2",
"SE(2) special Euclidean group.");
84 "SE3",
"SE(3) special Euclidean group.");
94 .def(bp::init<>(bp::args(
"self")));
96 .def(bp::init<>(bp::args(
"self")));
98 .def(bp::init<>(bp::args(
"self")));
100 .def(bp::init<>(bp::args(
"self")));
104 using Model = ModelTpl<Scalar>;
105 bp::class_<Multibody, bp::bases<Manifold>>(
106 "MultibodyConfiguration",
"Configuration group of a multibody",
107 bp::init<const Model &>(bp::args(
"self",
"model")))
108 .add_property(
"model",
109 bp::make_function(&Multibody::getModel,
110 bp::return_internal_reference<>()),
111 "Return the Pinocchio model instance.")
113 .enable_pickling_(
true);
116 bp::class_<MultiPhase, bp::bases<Manifold>>(
117 "MultibodyPhaseSpace",
118 "Tangent space of the multibody configuration group.",
119 bp::init<const Model &>((
"self"_a,
"model")))
120 .add_property(
"model",
121 bp::make_function(&MultiPhase::getModel,
122 bp::return_internal_reference<>()),
123 "Return the Pinocchio model instance.")
124 .add_property(
"base", bp::make_function(
125 +[](
const MultiPhase &m) ->
const Multibody & {
126 return m.getBaseSpace();
128 bp::return_internal_reference<>()))
130 .enable_pickling_(
true);
ManifoldAbstractTpl< Scalar > Manifold
MultibodyPhaseSpace< Scalar > MultibodyPhaseSpace
Multibody configuration group , defined using the Pinocchio library.