Show EOL distros: 

ecl_core: ecl_command_line | ecl_concepts | ecl_containers | ecl_converters | ecl_core_apps | ecl_devices | ecl_eigen | ecl_exceptions | ecl_formatters | ecl_geometry | ecl_ipc | ecl_linear_algebra | ecl_math | ecl_mpl | ecl_sigslots | ecl_statistics | ecl_streams | ecl_threads | ecl_time | ecl_type_traits | ecl_utilities

Package Summary

Any tools relating to mathematical geometry. Primarily featuring polynomials and interpolations.

ecl_core: ecl_command_line | ecl_concepts | ecl_containers | ecl_converters | ecl_core_apps | ecl_devices | ecl_eigen | ecl_exceptions | ecl_formatters | ecl_geometry | ecl_ipc | ecl_linear_algebra | ecl_math | ecl_mpl | ecl_sigslots | ecl_statistics | ecl_streams | ecl_threads | ecl_time | ecl_type_traits | ecl_utilities

Package Summary

Any tools relating to mathematical geometry. Primarily featuring polynomials and interpolations.

ecl_core: ecl_command_line | ecl_concepts | ecl_containers | ecl_converters | ecl_core_apps | ecl_devices | ecl_eigen | ecl_exceptions | ecl_formatters | ecl_geometry | ecl_ipc | ecl_linear_algebra | ecl_math | ecl_mpl | ecl_sigslots | ecl_statistics | ecl_streams | ecl_threads | ecl_time | ecl_type_traits | ecl_utilities

Package Summary

Any tools relating to mathematical geometry. Primarily featuring polynomials and interpolations.

ecl_core: ecl_command_line | ecl_concepts | ecl_containers | ecl_converters | ecl_core_apps | ecl_devices | ecl_eigen | ecl_exceptions | ecl_formatters | ecl_geometry | ecl_ipc | ecl_linear_algebra | ecl_math | ecl_mpl | ecl_sigslots | ecl_statistics | ecl_streams | ecl_threads | ecl_time | ecl_type_traits | ecl_utilities

Package Summary

Any tools relating to mathematical geometry. Primarily featuring polynomials and interpolations.

ecl_core: ecl_command_line | ecl_concepts | ecl_containers | ecl_converters | ecl_core_apps | ecl_devices | ecl_eigen | ecl_exceptions | ecl_formatters | ecl_geometry | ecl_ipc | ecl_linear_algebra | ecl_math | ecl_mpl | ecl_sigslots | ecl_statistics | ecl_streams | ecl_threads | ecl_time | ecl_type_traits | ecl_utilities

Package Summary

Any tools relating to mathematical geometry. Primarily featuring polynomials and interpolations.

Compiling & Linking

Include the following at the top of any translation unit:

   1 #include <ecl/geometry.hpp>
   2 
   3 // Angles
   4 using ecl::Angle;
   5 using ecl::wrap_angle;
   6 using ecl::degrees_to_radians;
   7 using ecl::radians_to_degrees;
   8 // Other Objects
   9 using ecl::CartesianPoint;
  10 using ecl::PascalsTriangle;
  11 // Functionals
  12 using ecl::Minimum;
  13 using ecl::Maximum;
  14 // Functions
  15 using ecl::Polynomial; 
  16 using ecl::LinearFunction;
  17 using ecl::CubicPolynomial;
  18 using ecl::QuadraticPolynomial;
  19 using ecl::TensionFunction;
  20 // Splines
  21 using ecl::SmoothLinearSpline;
  22 using ecl::CubicSpline;
  23 using ecl::TensionSpline;
  24 // Transforms
  25 using ecl::Pose2D;

If outside ros, you will also need to link to ecl_geometry.

Tutorials

  • Cartesian Points - simple object representations for cartesian points.

  • Angles - convenience class for abstractly storing and representing angles.

  • Polynomials - working with polynomials of the n-th degree.

  • Splines - representations for smooth linear, cubic and tension splines.

  • Pose - 2D and 3D representations for poses (oft used in robotics).

External Components

There are quite a few useful tools also in eigen's geometry module. You can use these directly from eigen or via the ecl_linear_algebra package.

  • angle-axis pairs
  • quaternions
  • rotation matrices
  • transforms

Wiki: ecl_geometry (last edited 2012-01-24 11:21:12 by DanielStonier)