Go to the documentation of this file.
10 #ifdef PINOCCHIO_WITH_HPP_FCL
12 #endif // PINOCCHIO_WITH_HPP_FCL
33 const Eigen::VectorXd qmax = Eigen::VectorXd::Ones(
model.
nq);
35 v = Eigen::VectorXd::Random(
model.
nv);
36 a = Eigen::VectorXd::Random(
model.
nv);
57 std::string romeo_filename =
59 + std::string(
"/example-robot-data/robots/romeo_description/urdf/romeo_small.urdf");
67 std::cout <<
"nq = " <<
MODEL.
nq << std::endl;
68 std::cout <<
"nv = " <<
MODEL.
nv << std::endl;
69 std::cout <<
"name = " <<
MODEL.
name << std::endl;
70 std::cout <<
"--" << std::endl;
99 const Eigen::VectorXd & q)
112 #ifdef PINOCCHIO_WITH_HPP_FCL
116 void SetUp(benchmark::State & st)
121 void TearDown(benchmark::State & st)
129 GEOMETRY_MODEL.addAllCollisionPairs();
143 benchmark::State & st)
148 for (
size_t i = 0;
i < geometry_model.collisionPairs.size(); ++
i)
150 computeCollisionCall(geometry_model, geometry_data,
i);
168 computeCollisionsCall(geometry_model, geometry_data);
180 const Eigen::VectorXd & q)
188 computeDistancesCall(
model,
data, geometry_model, geometry_data, q);
193 #endif // #ifdef PINOCCHIO_WITH_HPP_FCL
195 #ifdef PINOCCHIO_WITH_HPP_FCL
BENCHMARK_DEFINE_F(GeometryFixture, FORWARD_KINEMATICS_Q)(benchmark
#define PINOCCHIO_DONT_INLINE
Function attribute to forbid inlining. This is a compiler hint that can be not respected.
void forwardKinematics(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q)
Update the joint placements according to the current joint configuration.
bool computeCollisions(BroadPhaseManagerBase< BroadPhaseManagerDerived > &broadphase_manager, CollisionCallBackBase *callback)
Calls computeCollision for every active pairs of GeometryData. This function assumes that updateGeome...
void updateGeometryPlacements(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const GeometryModel &geom_model, GeometryData &geom_data, const Eigen::MatrixBase< ConfigVectorType > &q)
Apply a forward kinematics and update the placement of the geometry objects.
pinocchio::GeometryData geometry_data
static pinocchio::Model MODEL
pinocchio::GeometryModel geometry_model
static void CustomArguments(benchmark::internal::Benchmark *b)
std::string name
Model name.
void randomConfiguration(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const Eigen::MatrixBase< ConfigVectorIn1 > &lowerLimits, const Eigen::MatrixBase< ConfigVectorIn2 > &upperLimits, const Eigen::MatrixBase< ReturnType > &qout)
Generate a configuration vector uniformly sampled among provided limits.
void SetUp(benchmark::State &)
static PINOCCHIO_DONT_INLINE void updateGeometryPlacementsCall(const pinocchio::Model &model, pinocchio::Data &data, const pinocchio::GeometryModel &geometry_model, pinocchio::GeometryData &geometry_data, const Eigen::VectorXd &q)
PINOCCHIO_BENCHMARK_MAIN_WITH_SETUP(GeometryFixture::GlobalSetUp)
DataTpl< context::Scalar, context::Options > Data
BENCHMARK_REGISTER_F(GeometryFixture, FORWARD_KINEMATICS_Q) -> Apply(CustomArguments)
bool computeCollision(const GeometryModel &geom_model, GeometryData &geom_data, const PairIndex pair_id, fcl::CollisionRequest &collision_request)
Compute the collision status between a SINGLE collision pair. The result is store in the collisionRes...
std::size_t computeDistances(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const GeometryModel &geom_model, GeometryData &geom_data)
GeometryModel & buildGeom(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const std::string &filename, const GeometryType type, GeometryModel &geom_model, const std::vector< std::string > &package_paths=std::vector< std::string >(), ::hpp::fcl::MeshLoaderPtr mesh_loader=::hpp::fcl::MeshLoaderPtr())
Build The GeometryModel from a URDF file. Search for meshes in the directories specified by the user ...
static PINOCCHIO_DONT_INLINE void forwardKinematicsQCall(const pinocchio::Model &model, pinocchio::Data &data, const Eigen::VectorXd &q)
int nv
Dimension of the velocity vector space.
void TearDown(benchmark::State &)
static void GlobalSetUp(const ExtraArgs &)
int nq
Dimension of the configuration vector representation.
#define PINOCCHIO_MODEL_DIR
ModelTpl< Scalar, Options, JointCollectionTpl > & buildModel(const std::string &filename, const typename ModelTpl< Scalar, Options, JointCollectionTpl >::JointModel &rootJoint, const std::string &rootJointName, ModelTpl< Scalar, Options, JointCollectionTpl > &model, const bool verbose=false, const bool mimic=false)
Build the model from a URDF file with a particular joint as root of the model tree inside the model g...
static pinocchio::GeometryModel GEOMETRY_MODEL
pinocchio
Author(s):
autogenerated on Thu Apr 10 2025 02:42:22