Ticket #4800 (closed: fixed)

Opened 9 years ago

Last modified 5 years ago

SliceViewer - dynamic rebinning with thickness

Reported by: Owen Arnold Owned by: Janik Zikovsky
Priority: critical Milestone: Release 2.1
Component: VATES Keywords:
Cc: nick.draper@… Blocked By:
Blocking: #5085 Tester: Andrei Savici

Description

For visualisation purposes only! Some of our users are asking that they can give the slice in the slice viewer an effective thickness.

During a run users may start viewing data while the statistics are low in order to determine whether any indication of an expected feature is present.

If the users could provide a thickness for their slice they would sacrifice resolution, but would have the statistics they need to see potential features of interest.

The default should be for it to do what it already does, but if we could somehow expand the slider button itself, we could control the thickness into the screen.

Presumably, under the hood, this could be acheived by modifying the MDImplicitPlane function?

Change History

comment:1 Changed 9 years ago by Owen Arnold

  • Component changed from Mantid to VATES

comment:2 Changed 9 years ago by Janik Zikovsky

I have ticket #4366 that would cover this issue...

  • First you would need to define a volume, of given thickness(es), centered around the current slice.
    • If you have 4 dimensions, you need to specify the Z and Energy thicknesses (for example)
  • Next you need to rebin the currently viewed slice in this volume.
    • You can rebin with BinMD to get a regularly gridded workspace.
      • Need to specify how many bins in X/Y...
      • Are the extents equal to the size you are currently viewing?
    • You can re-slice using SliceMD.
      • An advantage is that you might not have to specify the extents/number of bins, since the recursive binning would handle it.
  • Once the slice has been calculated, you show that slice workspace in the slice viewer
    • Or perhaps in a separate window?

comment:3 Changed 9 years ago by Owen Arnold

I'm not sure that rebinning is actually required. Your slice is intersecting boxes and then projecting those onto the surface in the 2D view. Presumably the slice is set up to have zero width. If the slice had a non-zero width it would intersect more boxes.

comment:4 Changed 9 years ago by Janik Zikovsky

The slice is performed by polling the workspace for its signal density at specific points in N-D space, along the specified 2D plane; therefore it has no thickness and only reports the density of the box (in MDEW) or bin (in MDHisto) that contains the point.

You could probe more points above/below the plane and intersect more boxes, and then maybe do the average of the signal you found along that line? However, that would be pretty slow and basically it describes a type of rebinning (in that you need to probe space in 3 or 4 dimensions for each point of the plane)

comment:5 Changed 9 years ago by Janik Zikovsky

  • Status changed from new to accepted

comment:6 Changed 8 years ago by Janik Zikovsky

Refs #4800 laying groundwork for dynamic rebinning

simplifying DimensionSlicewidget a bit

Changeset: c40391907ddbb3647a0ff95c6526b8967896b711

comment:7 Changed 8 years ago by Janik Zikovsky

REfs #4800 call BinMD when changing rebinning parameters

Changeset: 6b84eba63b35da82290d6c96b5b4728c62f3f8a1

comment:8 Changed 8 years ago by Janik Zikovsky

Refs #4800 overlay 2 workspaces in SliceViewer

Changeset: 910d983eed6c87e061eb6455bdd5782e80a3246d

comment:9 Changed 8 years ago by Janik Zikovsky

Refs #4800 GUI to choose rebin mode and refresh it

Changeset: f1b5b72c019f569b5e526347b87b5d23a2a96fe9

comment:10 Changed 8 years ago by Janik Zikovsky

Refs #4800 GUI to choose rebin mode and refresh it

Changeset: 7105d4af7991092f0d4848698854eb060fb7b285

comment:11 Changed 8 years ago by Janik Zikovsky

Refs #4800 show the overlay ws only when in range

Changeset: 3ee9f20b3a6fc22cbccbf7e74cfe14593e4b843d

comment:12 Changed 8 years ago by Janik Zikovsky

Refs #4800 asynchronous call to BinMD

Changeset: 3a256696511a5383f02ebc1a50a322ea54b7c41c

comment:13 Changed 8 years ago by Janik Zikovsky

Refs #4800 slight plotting optimization

Changeset: ef0276c603d9a86a1ffc16f80fec9082b21c242d

comment:14 Changed 8 years ago by Janik Zikovsky

Refs #4800 show an overlay where the rebinned workspace is

Changeset: 4ebf1bc154ed5e6143c09e0dc9f34f6ae4a36af1

comment:15 Changed 8 years ago by Janik Zikovsky

Refs #4800 overlay with no center line but mouse events don't pass

through to the other LineOverlay because they overlap...

Changeset: ab06997318af6f5d9773c6445a251dd1d85b00ae

comment:16 Changed 8 years ago by Janik Zikovsky

Refs #4800 LineOverlay and overlay ws mouse events work

Changeset: 70312bd82c418346fa9fb0fa34c0e11f299b364e

comment:17 Changed 8 years ago by Janik Zikovsky

Refs #4800 LineOverlay and overlay ws mouse events work

Changeset: dd067850a98c93aac79e11ffdd38cdf5b2ce7776

comment:18 Changed 8 years ago by Janik Zikovsky

Refs #4800 hide outline when the rebin is out of range

Changeset: e398ea15233c3dfbb3f7596af7d70a18961bd38d

comment:19 Changed 8 years ago by Janik Zikovsky

Refs #4800 use the finest resolution of the 2 workspaces

Changeset: 3eae4bc312989e24a83a49b2915662c90cbd2792

comment:20 Changed 8 years ago by Janik Zikovsky

  • Blocking 5085 added

comment:21 Changed 8 years ago by Janik Zikovsky

Refs #4800 Lock/Unlock the rebinned workspace in place

So that it can rebin every time you move a slider, or not It might still be nice to rebin when zooming...?

Changeset: 917041b7dfdf42d8afcd967f0a185136745eb69e

comment:22 Changed 8 years ago by Janik Zikovsky

Refs #5021 ConvertToMD sped up 109 sec->62 sec

for a large-ish event file, by splitting more frequently. Also refs #4800 parallel binnining in SliceViewer dynamic rebinning

Changeset: 26b89c042537d7e115ed9e9935b18b9658392aae

comment:23 Changed 8 years ago by Janik Zikovsky

  • Summary changed from SliceViewer - Killer Feature to SliceViewer - dynamic rebinning with thickness

comment:24 Changed 8 years ago by Janik Zikovsky

Refs #4800 documentation images

Changeset: e0a8cafb848b9c9f21395c3407d8756287bf0abf

comment:25 Changed 8 years ago by Janik Zikovsky

Refs #4800 documentation images

Changeset: e0a8cafb848b9c9f21395c3407d8756287bf0abf

comment:26 Changed 8 years ago by Janik Zikovsky

refs #4800: menu and keyboard shortcut to refresh rebin

Changeset: be0c17d8d231bdddb81cac2bd0dbeb51d9ad4596

comment:27 Changed 8 years ago by Janik Zikovsky

  • Status changed from accepted to verify
  • Resolution set to fixed

comment:28 Changed 8 years ago by Janik Zikovsky

refs #4800: menu and keyboard shortcut to refresh rebin

Changeset: be0c17d8d231bdddb81cac2bd0dbeb51d9ad4596

comment:29 Changed 8 years ago by Andrei Savici

  • Status changed from verify to verifying
  • Tester set to Andrei Savici

comment:30 Changed 8 years ago by Andrei Savici

  • Status changed from verifying to closed

original title was funnier

comment:31 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 5647

Note: See TracTickets for help on using tickets.