moveit / geometric_shapes

Representation of geometric shapes
57 stars 92 forks source link

Eigen < 3.3.0 needs explicit cast #224

Closed k-okada closed 2 years ago

k-okada commented 2 years ago

https://github.com/ros-planning/geometric_shapes/blob/016fc5ec15101817a79fd6333ca4ce48c69bff83/src/bodies.cpp#L151-L159

supports Eigen < 3.3.0, but if we actually compile geometry_shapes with eigen 3.1, we have following errors

/ws/src/geometric_shapes/src/bodies.cpp: In function ‘Eigen::Vector3d bodies::normalize(const Vector3d&)’:
/ws/src/geometric_shapes/src/bodies.cpp:157:53: error: operands to ?: have different types ‘const Eigen::CwiseUnaryOp<Eigen::internal::scalar_quotient1_op<double>, const Eigen::Matrix<double, 3, 1> >’ and ‘const Vector3d {aka const Eigen::Matrix<double, 3, 1>}’
   return ((norm - 1) > 1e-9) ? (dir / sqrt(norm)) : dir;