krishauser / Klampt

Kris' Locomotion and Manipulation Planning Toolkit
BSD 3-Clause "New" or "Revised" License
377 stars 96 forks source link

'klampt.io.loader' has no attribute 'readVector' #144

Closed SchrodingersMind closed 2 years ago

SchrodingersMind commented 2 years ago

I've got a issue when view /Klampt-examples/data/motions/athlete_flex_opt.xml in klampt_browser. Full traceback:

Traceback (most recent call last):
  File "Python/klampt/apps/klampt_browser.py", line 512, in add
    obj = loader.load('MultiPath',fn)
  File "/usr/local/lib/python3.8/dist-packages/Klampt-0.9.0-py3.8-linux-x86_64.egg/klampt/io/loader.py", line 733, in load
    return loaders[type](fn)
  File "/usr/local/lib/python3.8/dist-packages/Klampt-0.9.0-py3.8-linux-x86_64.egg/klampt/io/loader.py", line 612, in load_MultiPath
    value.load(fn)
  File "/usr/local/lib/python3.8/dist-packages/Klampt-0.9.0-py3.8-linux-x86_64.egg/klampt/model/multipath.py", line 285, in load
    return self.loadXML(tree)
  File "/usr/local/lib/python3.8/dist-packages/Klampt-0.9.0-py3.8-linux-x86_64.egg/klampt/model/multipath.py", line 344, in loadXML
    s.configs.append(loader.readVector(m.attrib['config']))
AttributeError: module 'klampt.io.loader' has no attribute 'readVector'

As I see, method name changed from readVector to the read_Vector in merge commit 791cba65f3cecab05d7511f8d4637c140e14fa19, but calls in multipath.py leave unchanged

krishauser commented 2 years ago

Thanks for finding this bug! A fix has been pushed to master. If you have used the pip install, you can get the fix by pulling the git repo, cd to Klampt/Python, and run "python patch_a_pip_install.py".