Opened 10 years ago
Closed 10 years ago
#163 closed defect (fixed)
trouble making second molmap
| Reported by: | Elaine Meng | Owned by: | Tom Goddard |
|---|---|---|---|
| Priority: | blocker | Milestone: | |
| Component: | Volume Data | Version: | |
| Keywords: | Cc: | ||
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | chimera |
Description
I get a traceback with molmap but it depends on context whether a given command gives a traceback or not. It seems to be related to having more than one map. For example, the first molmap works fine but the second gives a traceback.
open 1gcn
molmap :tyr 4
molmap :lys 4
... yet if I close the first molmap, reissuing the second molmap command above works. Here is the traceback:
Traceback (most recent call last):
File "/Users/chimera/Applications/Chimera2_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/chimera/cmd_line/gui.py", line 119, in on_enter
cmd.execute()
File "/Users/chimera/Applications/Chimera2_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/chimera/core/commands/cli.py", line 1499, in execute
results.append(ci.function(session, kw_args))
File "/Users/chimera/Applications/Chimera2_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/chimera/core/map/molmap.py", line 124, in molmap
displayThreshold, modelId, replace, showDialog, name, session)
File "/Users/chimera/Applications/Chimera2_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/chimera/core/map/molmap.py", line 142, in make_molecule_map
vlist = [v for v in volume_list(session)
File "/Users/chimera/Applications/Chimera2_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/chimera/core/map/molmap.py", line 143, in <listcomp>
if hasattr(v, 'molmap_atoms') and v.molmap_atoms == atoms]
File "/Users/chimera/Applications/Chimera2_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/chimera/core/atomic/molarray.py", line 87, in eq
return (atoms._pointers == self._pointers).all()
AttributeError: 'bool' object has no attribute 'all'
Fixed.
Was caused by comparing two arrays of unequal length. This was in the code which determines whether the second molmap should replace the first molmap -- it is checking if they use identical sets of atoms.