Opened 6 years ago

Closed 6 years ago

#3130 closed defect (fixed)

Session saving: surface color is None

Reported by: mfschmid@… Owned by: Goddard
Priority: normal Milestone:
Component: Volume Data Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Windows-10-10.0.17763
ChimeraX Version: 0.92 (2020-01-31)
Description
(Describe the actions that caused this problem to occur here) Save session

Log:
UCSF ChimeraX version: 0.92 (2020-01-31)  
© 2016-2020 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open X:/COVID-coronavirus-VR/nl63_grid3_04182020_pos24__bin4-rau.hdf

Opened nl63_grid3_04182020_pos24__bin4-rau.hdf, grid size 1024,1024,256, pixel
8.78, shown at step 1, values uint16  

> volume #1 region 0,0,0,1023,1023,255 step 4

> volume #1 region 0,0,0,1023,1023,255 step 4

> volume #1 step 1

> vr true

started SteamVR rendering  

> vr false

> close session

> open X:/COVID-coronavirus-VR/nl63_grid3_04182020_pos247__bin4-ragp128u16.hdf

Opened nl63_grid3_04182020_pos247__bin4-ragp128u16.hdf, grid size
1024,1024,256, pixel 8.78, shown at step 1, values uint16  

> volume #1 region 0,0,0,1023,1023,255 step 4

> volume #1 region 0,0,0,1023,1023,255 step 4

> volume #1 step 1

> volume #1 level 1.04e+04

> volume #1 change image level 8961,0 level 1.054e+04,0.8 level 2.001e+04,1

> volume #1 level 1.03e+04

> surface dust #1 size 30

> surface dust #1 size 50

> volume #1 level 1.02e+04

> color height #1 center 0,0,0 axis z palette rainbow

> open X:/COVID-coronavirus-VR/nl63_grid3_04182020_pos247__bin4-ragp128u16.hdf

Opened nl63_grid3_04182020_pos247__bin4-ragp128u16.hdf, grid size
1024,1024,256, pixel 8.78, shown at step 1, values uint16  

> volume #1 region 0,0,0,1023,1023,255 step 4

> volume #1 region 0,0,0,1023,1023,255 step 4

> volume #1 step 1

> color height #1 center 0,0,0 axis z palette rainbow

> volume #1 level 1.02e+04

> volume #1 change image level 8961,0 level 1.054e+04,0.8 level 2.001e+04,1

> surface dust #1 size 50

> save session X:/COVID-coronavirus-VR/pos247.cxs

Traceback (most recent call last):  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 276, in process  
data = sm.take_snapshot(obj, session, self.state_flags)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\map\volume.py", line 2190, in take_snapshot  
'rgba': self.rgba,  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\map\volume.py", line 1898, in _get_rgba  
return tuple(c/255 for c in self.color)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\map\volume.py", line 1926, in get_color  
return Surface.get_color(self)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\graphics\drawing.py", line 530, in get_color  
return self._colors[0]  
TypeError: 'NoneType' object is not subscriptable  
  
The above exception was the direct cause of the following exception:  
  
Traceback (most recent call last):  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 796, in save  
session.save(output, version=version, include_maps=include_maps)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 556, in save  
mgr.discovery(self._state_containers)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 255, in discovery  
self.processed[key] = self.process(obj, parents)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 279, in process  
raise RuntimeError(msg) from e  
RuntimeError: Error while saving session data for '_surface_updaters' ->
<chimerax.surface.updaters.SurfaceUpdaters object at 0x0000021388A15308> ->
<chimerax.surface.colorgeom.HeightColor object at 0x00000213801F60C8> ->
<chimerax.map.volume.VolumeSurface object at 0x00000213B6D32808> 'surface'  
  
RuntimeError: Error while saving session data for '_surface_updaters' -> -> ->
'surface'  
  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 279, in process  
raise RuntimeError(msg) from e  
  
See log for complete Python traceback.  
  
Traceback (most recent call last):  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 276, in process  
data = sm.take_snapshot(obj, session, self.state_flags)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\map\volume.py", line 2190, in take_snapshot  
'rgba': self.rgba,  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\map\volume.py", line 1898, in _get_rgba  
return tuple(c/255 for c in self.color)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\map\volume.py", line 1926, in get_color  
return Surface.get_color(self)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\graphics\drawing.py", line 530, in get_color  
return self._colors[0]  
TypeError: 'NoneType' object is not subscriptable  
  
The above exception was the direct cause of the following exception:  
  
Traceback (most recent call last):  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\ui\gui.py", line 925, in <lambda>  
save_action.triggered.connect(lambda arg, s=self, sess=session:
s.file_save_cb(sess))  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\ui\gui.py", line 643, in file_save_cb  
self.save_dialog.display(self, session)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\ui\save_dialog.py", line 139, in display  
fmt.save(session, filename)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 1100, in save  
run(session, cmd)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\commands\run.py", line 31, in run  
results = command.run(text, log=log)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 2837, in run  
result = ci.function(session, **kw_args)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 992, in save_session  
save(session, filename, **kw)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\commands\save.py", line 61, in save  
fmt.export(session, filename, fmt.nicknames[0], **kw)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\io.py", line 229, in export  
result = self.export_func(session, path, **kw)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 796, in save  
session.save(output, version=version, include_maps=include_maps)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 556, in save  
mgr.discovery(self._state_containers)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 255, in discovery  
self.processed[key] = self.process(obj, parents)  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 279, in process  
raise RuntimeError(msg) from e  
RuntimeError: Error while saving session data for '_surface_updaters' ->
<chimerax.surface.updaters.SurfaceUpdaters object at 0x0000021388A15308> ->
<chimerax.surface.colorgeom.HeightColor object at 0x00000213801F60C8> ->
<chimerax.map.volume.VolumeSurface object at 0x00000213B6D32808> 'surface'  
  
RuntimeError: Error while saving session data for '_surface_updaters' -> -> ->
'surface'  
  
File "C:\Program Files\ChimeraX-daily-01-31-2020\bin\lib\site-
packages\chimerax\core\session.py", line 279, in process  
raise RuntimeError(msg) from e  
  
See log for complete Python traceback.  
  




OpenGL version: 3.3.0 NVIDIA 432.00
OpenGL renderer: GeForce GTX 1080/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation

Change History (2)

comment:1 by Eric Pettersen, 6 years ago

Component: UnassignedVolume Data
Owner: set to Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionSession saving: surface color is None

Possibly from Micheal Schmid, my mbox for this had:

From: Michael Schmid <chimerax-bug-report@…>

comment:2 by Tom Goddard, 6 years ago

Reporter: changed from chimerax-bug-report@… to mfschmid@…
Resolution: fixed
Status: assignedclosed

Fixed.

Session saving failed because a surface colored by height had been closed and the session code mistakenly tried to save the auto-recoloring object for that surface.

Note: See TracTickets for help on using tickets.