Opened 6 years ago
Last modified 6 years ago
#2580 assigned enhancement
Volume bounding box should contract with background
Reported by: | Tristan Croll | Owned by: | Tom 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: Linux-3.10.0-957.12.2.el7.x86_64-x86_64-with-centos-7.6.1810-Core ChimeraX Version: 0.91 (2019-11-13) Description If a Volume's bounding box is displayed, it should probably automatically choose a colour that contrasts with the background. Currently it's always white. Log: UCSF ChimeraX version: 0.91 (2019-11-13) © 2016-2019 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > toolshed show Shell /opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/IPython/core/history.py:226: UserWarning: IPython History requires SQLite, your history will not be saved warn("IPython History requires SQLite, your history will not be saved") > open /run/media/tic20/storage/structure_dump/rohou/cd20/volume_97_1_sharp_8_3p18_m90_0_20_fom_z.mrc Opened volume_97_1_sharp_8_3p18_m90_0_20_fom_z.mrc, grid size 310,310,310, pixel 1, shown at level 0.0861, step 2, values float32 Traceback (most recent call last): File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ AttributeError: 'QContextMenuEvent' object has no attribute 'button' AttributeError: 'QContextMenuEvent' object has no attribute 'button' File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ See log for complete Python traceback. Traceback (most recent call last): File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ AttributeError: 'QContextMenuEvent' object has no attribute 'button' AttributeError: 'QContextMenuEvent' object has no attribute 'button' File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ See log for complete Python traceback. Traceback (most recent call last): File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ AttributeError: 'QContextMenuEvent' object has no attribute 'button' AttributeError: 'QContextMenuEvent' object has no attribute 'button' File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ See log for complete Python traceback. Traceback (most recent call last): File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ AttributeError: 'QContextMenuEvent' object has no attribute 'button' AttributeError: 'QContextMenuEvent' object has no attribute 'button' File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ See log for complete Python traceback. Traceback (most recent call last): File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ AttributeError: 'QContextMenuEvent' object has no attribute 'button' AttributeError: 'QContextMenuEvent' object has no attribute 'button' File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ See log for complete Python traceback. Traceback (most recent call last): File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ AttributeError: 'QContextMenuEvent' object has no attribute 'button' AttributeError: 'QContextMenuEvent' object has no attribute 'button' File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site- packages/qtconsole/console_widget.py", line 428, in eventFilter event.button() == QtCore.Qt.MidButton and \ See log for complete Python traceback. > volume #1 showOutlineBox true > set bgColor black > set bgColor white > set bgColor black OpenGL version: 3.3.0 NVIDIA 415.27 OpenGL renderer: TITAN Xp/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation
Change History (2)
comment:1 by , 6 years ago
Component: | Unassigned → Volume Data |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Volume bounding box should contract with background |
Type: | defect → enhancement |
comment:2 by , 6 years ago
Note:
See TracTickets
for help on using tickets.
The default outline box color is white. Outline box color for specified volumes can be changed with the volume command (volume #1 outineboxrgb black). The setting is part of volume RenderingOptions and only handle explicit colors. Allowing the color to depend on the background would require tracking the background color changes. Alternatively could just use the background color when outline is created and not change if the background is changed. Smart background display would require the volume command be able to handle specifying smart color display as well as explicit colors. This is substantial work for a feature that is only of use to a tiny minority of users who use white background -- I know you like that. Maybe more feasible is there should be a way to save the volume defaults such as outline box color. We don't have that ability yet.