erwincoumans / tiny-differentiable-simulator

Tiny Differentiable Simulator is a header-only C++ and CUDA physics library for reinforcement learning and robotics with zero dependencies.
Apache License 2.0
1.24k stars 130 forks source link

Uncomment mb_collision_geometries in Python API #167

Closed ErikGartner closed 3 years ago

ErikGartner commented 3 years ago

Hi,

I need to access the collision geometries from the Python API. Was the function unintentionally comment it out (in 2daf3708037bb317f2badc80c4b0ff2787e0fe9f) or would you prefer another solution to accessing the geometries?

/Erik

erwincoumans commented 3 years ago

probably accidently, LGTM.

erwincoumans commented 3 years ago

There are those errors when compiling pytinydiffsim_ad:

[ 94%] Building CXX object python/CMakeFiles/pytinydiffsim_ad.dir/pytinydiffsim_ad.cc.o
In file included from /Users/erwincoumans/develop/tds/tiny-differentiable-simulator/python/pytinydiffsim_ad.cc:118:
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/python/pytinydiffsim.inl:373:45: error: no member named 'local_inertia_' in 'tds::RigidBody<tds::EigenAlgebraT<CppAD::AD<double> > >'
                     &RigidBody<MyAlgebra>::local_inertia_)
                      ~~~~~~~~~~~~~~~~~~~~~~^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/python/pytinydiffsim.inl:379:45: error: no member named 'user_index_' in 'tds::RigidBody<tds::EigenAlgebraT<CppAD::AD<double> > >'
                     &RigidBody<MyAlgebra>::user_index_)
                      ~~~~~~~~~~~~~~~~~~~~~~^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/python/pytinydiffsim.inl:620:8: error: no matching member function for call to 'def'
      .def("set_base_orientation",
      ~^~~
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/third_party/pybind11/include/pybind11/pybind11.h:1119:13: note: candidate template ignored: couldn't infer template argument 'Func'
    class_ &def(const char *name_, Func&& f, const Extra&... extra) {
            ^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/third_party/pybind11/include/pybind11/pybind11.h:1137:13: note: candidate template ignored: could not match
      'op_<id, ot, type-parameter-0-2, type-parameter-0-3>' against 'char const[21]'
    class_ &def(const detail::op_<id, ot, L, R> &op, const Extra&... extra) {
            ^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/third_party/pybind11/include/pybind11/pybind11.h:1149:13: note: candidate template ignored: could not match 'constructor<type-parameter-0-0...>'
      against 'char const[21]'
    class_ &def(const detail::initimpl::constructor<Args...> &init, const Extra&... extra) {
            ^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/third_party/pybind11/include/pybind11/pybind11.h:1155:13: note: candidate template ignored: could not match 'alias_constructor<type-parameter-0-0...>'
      against 'char const[21]'
    class_ &def(const detail::initimpl::alias_constructor<Args...> &init, const Extra&... extra) {
            ^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/third_party/pybind11/include/pybind11/pybind11.h:1161:13: note: candidate template ignored: could not match 'factory<type-parameter-0-0...>' against
      'char const[21]'
    class_ &def(detail::initimpl::factory<Args...> &&init, const Extra&... extra) {
            ^
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/third_party/pybind11/include/pybind11/pybind11.h:1167:13: note: candidate template ignored: could not match 'pickle_factory<type-parameter-0-0...>'
      against 'char const[21]'
    class_ &def(detail::initimpl::pickle_factory<Args...> &&pf, const Extra &...extra) {
            ^
In file included from /Users/erwincoumans/develop/tds/tiny-differentiable-simulator/python/pytinydiffsim_ad.cc:118:
/Users/erwincoumans/develop/tds/tiny-differentiable-simulator/python/pytinydiffsim.inl:673:37: error: use of undeclared identifier 'mb_collision_geometries'
  m.def("mb_collision_geometries", &mb_collision_geometries);
                                    ^
erwincoumans commented 3 years ago

I had to comment the mb_collision_geometries in Python API again, since it causes above compile errors. Which file/line is mb_collision_geometries defined?

ErikGartner commented 3 years ago

@erwincoumans it was in python/pytinydiffsim_includes.h but removed in b3580be34e7bf2abd2a8640a869d31132d681615 I realized. I'll make a new PR with both.