skieffer / hola

Human-like Orthogonal Layout Algorithm
47 stars 10 forks source link

ACALayout3 not found #1

Closed vessenes closed 9 years ago

vessenes commented 9 years ago

I followed the readme instructions to install and compile adaptagrams and then link over to hola.

However, I can't run any test code with it. I get the following error:

# ./hola_basic < test/graphs/metro/london.gml > output.gml
Traceback (most recent call last):
  File "./hola_basic", line 16, in <module>
    main()
  File "./hola_basic", line 11, in main
    hola(G)
  File "/home/user/src/hola/hola/hola.py", line 347, in hola
    aca, rs = nodeconfig.nodewiseACA(trunk, iel, ccs, logger, config)[:2]
  File "/home/user/src/hola/hola/nodeconfig.py", line 75, in nodewiseACA
    aca = adg.ACALayout3(rs, es, ccs, L, True)
AttributeError: 'module' object has no attribute 'ACALayout3'

if I interactively import adaptagrams.adaptagrams inside python, I see that there are hundreds of functions, so that seems to be working.

grep -ir ACALayout * inside adaptagrams and hola only yields

./hola/nodeconfig.py:    aca = adg.ACALayout3(rs, es, ccs, L, True)
Binary file ./hola/nodeconfig.pyc matches

which makes me think you are using a non-standard adaptagrams library? I git cloned this one: https://github.com/mjwybrow/adaptagrams/

skieffer commented 9 years ago

Thanks for pointing this out. You’re absolutely right, and I forgot that HOLA requires a development fork of Adaptagrams!

The development fork can be found here:

https://github.com/skieffer/adapaca

and I have also updated the HOLA readme to point to it.

Please bear in mind that the experimental code in this repo is by no means “polished” — quite the opposite in fact. : )

vessenes commented 9 years ago

Thanks, I'm checking it out today. Will keep you posted.