dwv.tool. Scroll

new Scroll(app)

Scroll class.

Parameters:
NameTypeDescription
appdwv.App

The associated application.

Examples
// create the dwv app
var app = new dwv.App();
// initialise
app.init({
  dataViewConfigs: {'*': [{divId: 'layerGroup0'}]},
  tools: {Scroll: {}}
});
// activate tool
app.addEventListener('load', function () {
  app.setTool('Scroll');
});
// load dicom data
app.loadURLs([
  'https://raw.githubusercontent.com/ivmartel/dwv/master/tests/data/bbmri-53323851.dcm',
  'https://raw.githubusercontent.com/ivmartel/dwv/master/tests/data/bbmri-53323707.dcm',
  'https://raw.githubusercontent.com/ivmartel/dwv/master/tests/data/bbmri-53323563.dcm'
]);

Example with slider

// create the dwv app
var app = new dwv.App();
// initialise
app.init({
  dataViewConfigs: {'*': [{divId: 'layerGroup0'}]},
  tools: {Scroll: {}}
});
// create range
var range = document.createElement('input');
range.type = 'range';
range.min = 0;
range.id = 'sliceRange';
document.body.appendChild(range);
// update app on slider change
range.oninput = function () {
  var lg = app.getLayerGroupByDivId('layerGroup0');
  var vc = lg.getActiveViewLayer().getViewController();
  var index = vc.getCurrentIndex();
  var values = index.getValues();
  values[2] = this.value;
  vc.setCurrentIndex(new dwv.math.Index(values));
}
// activate tool and update range max on load
app.addEventListener('load', function () {
  app.setTool('Scroll');
  var size = app.getImage(0).getGeometry().getSize();
  range.max = size.get(2) - 1;
});
// update slider on slice change (for ex via mouse wheel)
app.addEventListener('positionchange', function () {
  var lg = app.getLayerGroupByDivId('layerGroup0');
  var vc = lg.getActiveViewLayer().getViewController();
  range.value = vc.getCurrentIndex().get(2);
});
// load dicom data
app.loadURLs([
  'https://raw.githubusercontent.com/ivmartel/dwv/master/tests/data/bbmri-53323851.dcm',
  'https://raw.githubusercontent.com/ivmartel/dwv/master/tests/data/bbmri-53323707.dcm',
  'https://raw.githubusercontent.com/ivmartel/dwv/master/tests/data/bbmri-53323563.dcm'
]);

Members

started :boolean

Interaction start flag.

Type:
  • boolean

(inner) displayTooltip :boolean

Option to show or not a value tooltip on mousemove.

Type:
  • boolean

(inner) scrollWhell :dwv.tool.ScrollWheel

Scroll wheel handler.

Methods

activate(_bool)

Activate the tool.

Parameters:
NameTypeDescription
_boolboolean

The flag to activate or not.

dblclick(event)

Handle double click.

Parameters:
NameTypeDescription
eventobject

The key down event.

init()

Initialise the tool.

keydown(event)

Handle key down event.

Parameters:
NameTypeDescription
eventobject

The key down event.

mousedown(event)

Handle mouse down event.

Parameters:
NameTypeDescription
eventobject

The mouse down event.

mousemove(event)

Handle mouse move event.

Parameters:
NameTypeDescription
eventobject

The mouse move event.

mouseout(event)

Handle mouse out event.

Parameters:
NameTypeDescription
eventobject

The mouse out event.

mouseup(_event)

Handle mouse up event.

Parameters:
NameTypeDescription
_eventobject

The mouse up event.

setFeatures(features)

Set the tool live features: disaply tooltip.

Parameters:
NameTypeDescription
featuresobject

The list of features.

touchend(event)

Handle touch end event.

Parameters:
NameTypeDescription
eventobject

The touch end event.

touchmove(event)

Handle touch move event.

Parameters:
NameTypeDescription
eventobject

The touch move event.

touchstart(event)

Handle touch start event.

Parameters:
NameTypeDescription
eventobject

The touch start event.

wheel(event)

Handle mouse wheel event.

Parameters:
NameTypeDescription
eventobject

The mouse wheel event.

(inner) removeTooltipDiv()

Remove the tooltip html div.

(inner) showTooltip(event)

Displays a tooltip in a temparary span. Works with css to hide/show the span only on mouse hover.

Parameters:
NameTypeDescription
eventobject

The mouse move event.