Opened 4 years ago

Closed 4 years ago

#6049 closed defect (fixed)

Clipping plane problem with multiple positions

Reported by: Tristan Croll Owned by: Tom Goddard
Priority: normal Milestone:
Component: Graphics 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.19041
ChimeraX Version: 1.3rc202112030319 (2021-12-03 03:19:12 UTC)
Description
Sorry about the big session file... it's a mock-up illustration of a crystal, using `chimerax.unit_cell.unitcell.transforms()` to get the positions and applying them to instance the actual model:

m = session.models.list()[0]
from chimerax.unit_cell.unitcell import transforms
from chimerax.geometry import Places
positions = Places(transforms(m, (10,5,3)))
m.positions = positions

 Fine as it is, but things go horribly wrong the moment I try to introduce a far clipping plane. Not only do the clip caps appear in the wrong position, but it seems to fall into a loop endlessly creating new clip cap models until it runs out of memory and crashes.

OpenGL version: 3.3.0 NVIDIA 497.29
OpenGL renderer: NVIDIA GeForce RTX 2080/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation
Manufacturer: Notebook                        
Model: P7xxTM1
OS: Microsoft Windows 10 Education (Build 19041)
Memory: 68,654,501,888
MaxProcessMemory: 137,438,953,344
CPU: 16 Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
OSLanguage: en-GB
Locale: ('en_GB', 'cp1252')
PyQt5 5.15.2, Qt 5.15.2
Installed Packages:
    -: imerax-clipper
    -himerax-clipper: 0.17.0
    -himerax-isolde: 1.3.dev33
    absl-py: 1.0.0
    alabaster: 0.7.12
    appdirs: 1.4.4
    Babel: 2.9.1
    backcall: 0.2.0
    blockdiag: 2.0.1
    certifi: 2021.10.8
    cftime: 1.5.1.1
    charset-normalizer: 2.0.8
    ChimeraX-AddCharge: 1.2.2
    ChimeraX-AddH: 2.1.11
    ChimeraX-AlignmentAlgorithms: 2.0
    ChimeraX-AlignmentHdrs: 3.2
    ChimeraX-AlignmentMatrices: 2.0
    ChimeraX-Alignments: 2.2.3
    ChimeraX-AlphaFold: 1.0
    ChimeraX-AltlocExplorer: 1.0.1
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.0
    ChimeraX-Atomic: 1.31
    ChimeraX-AtomicLibrary: 4.2
    ChimeraX-AtomSearch: 2.0
    ChimeraX-AtomSearchLibrary: 1.0
    ChimeraX-AxesPlanes: 2.0
    ChimeraX-BasicActions: 1.1
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 2.0
    ChimeraX-BondRot: 2.0
    ChimeraX-BugReporter: 1.0
    ChimeraX-BuildStructure: 2.6.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.1
    ChimeraX-ButtonPanel: 1.0
    ChimeraX-CageBuilder: 1.0
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.2
    ChimeraX-ChemGroup: 2.0
    ChimeraX-Clashes: 2.2.2
    ChimeraX-Clipper: 0.17.0
    ChimeraX-ColorActions: 1.0
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5
    ChimeraX-CommandLine: 1.1.5
    ChimeraX-ConnectStructure: 2.0
    ChimeraX-Contacts: 1.0
    ChimeraX-Core: 1.3rc202112030319
    ChimeraX-CoreFormats: 1.1
    ChimeraX-coulombic: 1.3.2
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0
    ChimeraX-DataFormats: 1.2.2
    ChimeraX-Dicom: 1.0
    ChimeraX-DistMonitor: 1.1.5
    ChimeraX-DistUI: 1.0
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ExperimentalCommands: 1.0
    ChimeraX-FileHistory: 1.0
    ChimeraX-FunctionKey: 1.0
    ChimeraX-Geometry: 1.1
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.1
    ChimeraX-Hbonds: 2.1.2
    ChimeraX-Help: 1.2
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.1
    ChimeraX-ISOLDE: 1.3
    ChimeraX-ItemsInspection: 1.0
    ChimeraX-Label: 1.1
    ChimeraX-ListInfo: 1.1.1
    ChimeraX-Log: 1.1.4
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.8.1
    ChimeraX-Map: 1.1
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0
    ChimeraX-MapFilter: 2.0
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1
    ChimeraX-Markers: 1.0
    ChimeraX-Mask: 1.0
    ChimeraX-MatchMaker: 2.0.4
    ChimeraX-MDcrds: 2.6
    ChimeraX-MedicalToolbar: 1.0.1
    ChimeraX-Meeting: 1.0
    ChimeraX-MLP: 1.1
    ChimeraX-mmCIF: 2.4
    ChimeraX-MMTF: 2.1
    ChimeraX-Modeller: 1.2.6
    ChimeraX-ModelPanel: 1.2.1
    ChimeraX-ModelSeries: 1.0
    ChimeraX-Mol2: 2.0
    ChimeraX-Morph: 1.0
    ChimeraX-MouseModes: 1.1
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nucleotides: 2.0.2
    ChimeraX-OpenCommand: 1.7
    ChimeraX-PDB: 2.6.5
    ChimeraX-PDBBio: 1.0
    ChimeraX-PDBLibrary: 1.0.2
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.0.1
    ChimeraX-PubChem: 2.1
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1
    ChimeraX-RemoteControl: 1.0
    ChimeraX-ResidueFit: 1.0
    ChimeraX-RestServer: 1.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 2.0.1
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.4.6
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0
    ChimeraX-Shortcuts: 1.1
    ChimeraX-ShowAttr: 1.0
    ChimeraX-ShowSequences: 1.0
    ChimeraX-SideView: 1.0
    ChimeraX-Smiles: 2.1
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.6.1
    ChimeraX-STL: 1.0
    ChimeraX-Storm: 1.0
    ChimeraX-Struts: 1.0
    ChimeraX-Surface: 1.0
    ChimeraX-SwapAA: 2.0
    ChimeraX-SwapRes: 2.1
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.1
    ChimeraX-ToolshedUtils: 1.2
    ChimeraX-Tug: 1.0
    ChimeraX-UI: 1.13.7
    ChimeraX-uniprot: 2.2
    ChimeraX-UnitCell: 1.0
    ChimeraX-ViewDockX: 1.0.1
    ChimeraX-VIPERdb: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0
    ChimeraX-WebServices: 1.0
    ChimeraX-Zone: 1.0
    colorama: 0.4.4
    comtypes: 1.1.10
    cxservices: 1.1
    cycler: 0.11.0
    Cython: 0.29.24
    decorator: 5.1.0
    docutils: 0.17.1
    filelock: 3.0.12
    flatbuffers: 2.0
    funcparserlib: 0.3.6
    grako: 3.16.5
    h5py: 3.6.0
    html2text: 2020.1.16
    idna: 3.3
    ihm: 0.21
    imagecodecs: 2021.4.28
    imagesize: 1.3.0
    ipykernel: 5.5.5
    ipython: 7.23.1
    ipython-genutils: 0.2.0
    jax: 0.2.27
    jaxlib: 0.1.75
    jedi: 0.18.0
    Jinja2: 3.0.1
    jupyter-client: 6.1.12
    jupyter-core: 4.9.1
    kiwisolver: 1.3.2
    lxml: 4.6.3
    lz4: 3.1.3
    MarkupSafe: 2.0.1
    matplotlib: 3.4.3
    matplotlib-inline: 0.1.3
    msgpack: 1.0.2
    netCDF4: 1.5.7
    networkx: 2.6.3
    numexpr: 2.8.0
    numpy: 1.21.2
    openvr: 1.16.801
    opt-einsum: 3.3.0
    packaging: 21.3
    ParmEd: 3.4.3
    parso: 0.8.3
    pickleshare: 0.7.5
    Pillow: 8.3.2
    pip: 21.2.4
    pkginfo: 1.7.1
    prompt-toolkit: 3.0.23
    psutil: 5.8.0
    pycollada: 0.7.1
    pydicom: 2.1.2
    Pygments: 2.10.0
    PyOpenGL: 3.1.5
    PyOpenGL-accelerate: 3.1.5
    pyparsing: 3.0.6
    PyQt5-commercial: 5.15.2
    PyQt5-sip: 12.8.1
    PyQtWebEngine-commercial: 5.15.2
    python-dateutil: 2.8.2
    python-igraph: 0.9.7
    pytz: 2021.3
    pywin32: 228
    pyzmq: 22.3.0
    qtconsole: 5.1.1
    QtPy: 1.11.2
    RandomWords: 0.3.0
    requests: 2.26.0
    scipy: 1.7.1
    setuptools: 57.5.0
    sfftk-rw: 0.7.1
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    Sphinx: 4.2.0
    sphinx-autodoc-typehints: 1.12.0
    sphinxcontrib-applehelp: 1.0.2
    sphinxcontrib-blockdiag: 2.0.0
    sphinxcontrib-devhelp: 1.0.2
    sphinxcontrib-htmlhelp: 2.0.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.3
    sphinxcontrib-serializinghtml: 1.1.5
    suds-jurko: 0.6
    tables: 3.6.1
    texttable: 1.6.4
    tifffile: 2021.4.8
    tinyarray: 1.2.3
    tornado: 6.1
    traitlets: 5.1.1
    typing-extensions: 4.0.1
    urllib3: 1.26.7
    versioneer: 0.21
    wcwidth: 0.2.5
    webcolors: 1.11.1
    wheel: 0.37.0
    wheel-filename: 1.3.0
    WMI: 1.5.1
File attachment: mpro_crystal_7jkv.cxs

mpro_crystal_7jkv.cxs

Attachments (2)

mpro_crystal_7jkv.cxs (31.5 MB ) - added by Tristan Croll 4 years ago.
Added by email2trac
1a0m_unitcell_surf.cxs (1.2 MB ) - added by Tristan Croll 4 years ago.
Added by email2trac

Change History (12)

by Tristan Croll, 4 years ago

Attachment: mpro_crystal_7jkv.cxs added

Added by email2trac

in reply to:  2 comment:1 by Tristan Croll, 4 years ago

Also, after submitting this I got the message in the log:

Failed to send bug report. Bug report server www.rbvi.ucsf.edu is unavailable

Was just about to resubmit when I double-checked my email. Guess it timed out waiting for a response due to the large attachment?
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: 31 January 2022 10:33
Cc: Tristan Croll <tic20@cam.ac.uk>
Subject: Re: [ChimeraX] #6049: ChimeraX bug report submission

#6049: ChimeraX bug report submission
------------------------------------+--------------------
          Reporter:  Tristan Croll  |      Owner:  (none)
              Type:  defect         |     Status:  new
          Priority:  normal         |  Milestone:
         Component:  Unassigned     |    Version:
        Resolution:                 |   Keywords:
        Blocked By:                 |   Blocking:
Notify when closed:                 |
------------------------------------+--------------------
Changes (by Tristan Croll):

 * Attachment "mpro_crystal_7jkv.cxs" added.

 Added by email2trac

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

in reply to:  3 ; comment:2 by Tristan Croll, 4 years ago

Hmm... now I'm not so sure of the infinite-loop thing (ChimeraX did hang up and eventually crash when I tried to introduce clipping in essentially the same scenario for 3io0, but that might have a different cause). It seems new caps are only created when I hide an existing cap model in the Models panel... which still seems like a bug, but a somewhat different one.
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: 31 January 2022 10:58
To: Tristan Croll <tic20@cam.ac.uk>
Subject: Re: [ChimeraX] #6049: ChimeraX bug report submission

#6049: ChimeraX bug report submission
------------------------------------+--------------------
          Reporter:  Tristan Croll  |      Owner:  (none)
              Type:  defect         |     Status:  new
          Priority:  normal         |  Milestone:
         Component:  Unassigned     |    Version:
        Resolution:                 |   Keywords:
        Blocked By:                 |   Blocking:
Notify when closed:                 |
------------------------------------+--------------------

Comment (by Tristan Croll):

 {{{
 Also, after submitting this I got the message in the log:

 Failed to send bug report. Bug report server www.rbvi.ucsf.edu<http://www.rbvi.ucsf.edu> is
 unavailable

 Was just about to resubmit when I double-checked my email. Guess it timed
 out waiting for a response due to the large attachment?
 ________________________________
 From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
 Sent: 31 January 2022 10:33
 Cc: Tristan Croll <tic20@cam.ac.uk>
 Subject: Re: [ChimeraX] #6049: ChimeraX bug report submission

 #6049: ChimeraX bug report submission
 ------------------------------------+--------------------
           Reporter:  Tristan Croll  |      Owner:  (none)
               Type:  defect         |     Status:  new
           Priority:  normal         |  Milestone:
          Component:  Unassigned     |    Version:
         Resolution:                 |   Keywords:
         Blocked By:                 |   Blocking:
 Notify when closed:                 |
 ------------------------------------+--------------------
 Changes (by Tristan Croll):

  * Attachment "mpro_crystal_7jkv.cxs" added.

  Added by email2trac

 --
 Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049>
 ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
 ChimeraX Issue Tracker
 }}}

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049#comment:1>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

in reply to:  4 ; comment:3 by Tristan Croll, 4 years ago

Can be replicated with a much more lightweight example - just give the model two positions (I had the identity and a 90 degree rotation around its own center of mass as a toy example). Rear clip cap never updates after first draw, and the protein surfaces themselves don't appear to be clipped.
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: 31 January 2022 11:35
To: Tristan Croll <tic20@cam.ac.uk>
Subject: Re: [ChimeraX] #6049: ChimeraX bug report submission

#6049: ChimeraX bug report submission
------------------------------------+--------------------
          Reporter:  Tristan Croll  |      Owner:  (none)
              Type:  defect         |     Status:  new
          Priority:  normal         |  Milestone:
         Component:  Unassigned     |    Version:
        Resolution:                 |   Keywords:
        Blocked By:                 |   Blocking:
Notify when closed:                 |
------------------------------------+--------------------

Comment (by Tristan Croll):

 {{{
 Hmm... now I'm not so sure of the infinite-loop thing (ChimeraX did hang
 up and eventually crash when I tried to introduce clipping in essentially
 the same scenario for 3io0, but that might have a different cause). It
 seems new caps are only created when I hide an existing cap model in the
 Models panel... which still seems like a bug, but a somewhat different
 one.
 ________________________________
 From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
 Sent: 31 January 2022 10:58
 To: Tristan Croll <tic20@cam.ac.uk>
 Subject: Re: [ChimeraX] #6049: ChimeraX bug report submission

 #6049: ChimeraX bug report submission
 ------------------------------------+--------------------
           Reporter:  Tristan Croll  |      Owner:  (none)
               Type:  defect         |     Status:  new
           Priority:  normal         |  Milestone:
          Component:  Unassigned     |    Version:
         Resolution:                 |   Keywords:
         Blocked By:                 |   Blocking:
 Notify when closed:                 |
 ------------------------------------+--------------------

 Comment (by Tristan Croll):

  {{{
  Also, after submitting this I got the message in the log:

  Failed to send bug report. Bug report server
 www.rbvi.ucsf.edu<http://www.rbvi.ucsf.edu> is
  unavailable

  Was just about to resubmit when I double-checked my email. Guess it timed
  out waiting for a response due to the large attachment?
  ________________________________
  From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
  Sent: 31 January 2022 10:33
  Cc: Tristan Croll <tic20@cam.ac.uk>
  Subject: Re: [ChimeraX] #6049: ChimeraX bug report submission

  #6049: ChimeraX bug report submission
  ------------------------------------+--------------------
            Reporter:  Tristan Croll  |      Owner:  (none)
                Type:  defect         |     Status:  new
            Priority:  normal         |  Milestone:
           Component:  Unassigned     |    Version:
          Resolution:                 |   Keywords:
          Blocked By:                 |   Blocking:
  Notify when closed:                 |
  ------------------------------------+--------------------
  Changes (by Tristan Croll):

   * Attachment "mpro_crystal_7jkv.cxs" added.

   Added by email2trac

  --
  Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049>
  ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
  ChimeraX Issue Tracker
  }}}

 --
 Ticket URL:
 <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049#comment:1>
 ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
 ChimeraX Issue Tracker
 }}}

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049#comment:2>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

comment:4 by pett, 4 years ago

Component: UnassignedGraphics
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionClipping plane problem with multiple positions

comment:5 by Tom Goddard, 4 years ago

Do you have a simple test case? Opening your session crashes my display manager and logs me out on the 10 year old Mac laptop I am using (waiting for a replacement for my dead 2 year old laptop).

comment:6 by Tom Goddard, 4 years ago

A simple case with clip planes and instances worked fine for me

open 1a0m
surface
sym #1 c3 copies false
clip
Last edited 4 years ago by Tom Goddard (previous) (diff)

in reply to:  8 comment:7 by Tristan Croll, 4 years ago

It seems to be specifically the clipping planes induced by dragging the indicators in the side view. Try your test case, but drag the rear clip plane up on the side panel to intersect the model.
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: 31 January 2022 19:30
Cc: goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>; Tristan Croll <tic20@cam.ac.uk>
Subject: Re: [ChimeraX] #6049: Clipping plane problem with multiple positions

#6049: Clipping plane problem with multiple positions
------------------------------------+-------------------------
          Reporter:  Tristan Croll  |      Owner:  Tom Goddard
              Type:  defect         |     Status:  assigned
          Priority:  normal         |  Milestone:
         Component:  Graphics       |    Version:
        Resolution:                 |   Keywords:
        Blocked By:                 |   Blocking:
Notify when closed:                 |   Platform:  all
           Project:  ChimeraX       |
------------------------------------+-------------------------

Comment (by Tom Goddard):

 A simple case with clip planes an instances worked fine for me

 {{{
 open 1a0m
 surface
 sym #1 c3 copies false
 clip
 }}}

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049#comment:6>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

in reply to:  9 ; comment:8 by goddard@…, 4 years ago

What am I supposed to see when I drag the far clip plane?
I see dragging the near clip plane it does not cap the instance surfaces which seems like a bug.
I don't get any crash.

in reply to:  10 ; comment:9 by Tristan Croll, 4 years ago

Yes - the crash may have been unrelated, and just due to the number of positions being too large for the clipping code to handle.

The attached session is 1a0m expanded to a single unit cell with instancing - I think the fact that the transforms aren't simple rotations around the one axis shows up the problem better. If you try adding near and far clip planes with the side view, you'll see that the clip caps appear in the wrong places as well as being static after creation. Then (with the corresponding clip plane passing through the molecule) try hiding one of the clip caps on the Models panel - you'll see a new one is immediately created.
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: 31 January 2022 20:07
To: goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>; Tristan Croll <tic20@cam.ac.uk>
Subject: Re: [ChimeraX] #6049: Clipping plane problem with multiple positions

#6049: Clipping plane problem with multiple positions
------------------------------------+-------------------------
          Reporter:  Tristan Croll  |      Owner:  Tom Goddard
              Type:  defect         |     Status:  assigned
          Priority:  normal         |  Milestone:
         Component:  Graphics       |    Version:
        Resolution:                 |   Keywords:
        Blocked By:                 |   Blocking:
Notify when closed:                 |   Platform:  all
           Project:  ChimeraX       |
------------------------------------+-------------------------

Comment (by goddard@…):

 {{{
 What am I supposed to see when I drag the far clip plane?
 I see dragging the near clip plane it does not cap the instance surfaces
 which seems like a bug.
 I don't get any crash.
 }}}

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/6049#comment:8>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

1a0m_unitcell_surf.cxs

by Tristan Croll, 4 years ago

Attachment: 1a0m_unitcell_surf.cxs added

Added by email2trac

comment:10 by Tom Goddard, 4 years ago

Resolution: fixed
Status: assignedclosed

Fixed.

There were 3 separate bugs with clip caps on instanced molecular surfaces. First the code that removed clip cap models that were no longer needed incorrectly deleted all caps on instanced drawings. The clip plane name (near, far, ...) was recorded incorrectly for instanced drawings adding the drawing name causing the plane name not to match any current clip planes, so those caps immediately got deleted. Second the clip cap model for an instanced atomic structure was being placed as a child of the structure and sibling of the surfaces. That made the instancing matrices apply to the cap model which is wrong. A single cap covers all instances and that model has to be at the same level as the structure so it doesn't have the structures instance matrices applied to it. That bug caused multiple caps at different angles to appear (usually hidden by the surface though so not too noticeable). The third bug was that if you hid a surface the cap remained. That was because the code only considered removing caps for displayed surfaces.

The capping code is a big complex, and it is startling how many bugs it has. Hopefully I have decreased the number of bugs. But I would not be surprised to see more, especially in rarer cases like clipping instanced models.

Note: See TracTickets for help on using tickets.