Open jf--- opened 1 year ago
Hi @jf---
First, what a formidable library, so stoked having access to tesseract from python!
I think there are over 4000 functions wrapped...
argument 2 of type 'tesseract_planning::PoseSamplerFn *'
Wrapping callback functions is very tricky. I will take a look when I have a chance to see what the issue is, but it may take some time before I have it fixed.
Thanks @johnwason , I'm familiar with the limits of SWIG I've worked on pythonocc extensively, which is also SWIG
based. The issue is mostly namespaces related, the set
function doesn't really invoke much. pybind11
has an interesting approach to handling callbacks.
Any thoughts on how to move fwd regarding using the descartes
planner?
I use SWIG "directors" to handle the callbacks. There are some macros that generate a base class, and then the Python wrapper class extends the base class.
There is a SWIG file with the macro definitions that make it all work:
It looks like the customized typemap is not being applied for the field target_pose_sampler
. It is likely that function parameters are using the correct typemap, but not the field assignment.
@jf--- please send me a message on my website https://www.wasontech.com/contact-us
✅ thx for the invite!
@jf--- can you try the wheels in
https://github.com/tesseract-robotics/tesseract_python/suites/18704221744/artifacts/1088812345
This should have the sampling function fixed. You can install wheel files using pip by pointing to the file absolute location. Make sure you use the right file for your system and python version.
I have tesseract running on Mac OSX arm64. See https://github.com/tesseract-robotics/tesseract/discussions/970
Hi @jf--- have you had a chance to test these fixes? The macos packages should have the callback function working.
Hi,
First, what a formidable library, so stoked having access to tesseract from python!
I'd like to contribute by porting examples from tesseract-robotics/tesseract_planning/tree/master/tesseract_examples/src to python. Also its a nice way to find my way around ;)
I'm porting a Descartes tutorial from ROS-I training ,