@thewtex/vtk.js-esm
Version:
Visualization Toolkit for the Web
74 lines (72 loc) • 3.71 kB
JavaScript
function createMethods(session) {
return {
subscribeToImageStream: function subscribeToImageStream(callback) {
return session.subscribe('viewport.image.push.subscription', callback);
},
unsubscribeToImageStream: function unsubscribeToImageStream(subscription) {
return session.unsubscribe(subscription);
},
registerView: function registerView(viewId) {
return session.call('viewport.image.push.observer.add', [viewId]);
},
unregisterView: function unregisterView(viewId) {
return session.call('viewport.image.push.observer.remove', [viewId]);
},
enableView: function enableView(viewId, enabled) {
return session.call('viewport.image.push.enabled', [viewId, enabled]);
},
render: function render() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
size: [400, 400],
view: -1
};
return session.call('viewport.image.push', [options]);
},
resetCamera: function resetCamera() {
var view = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
return session.call('viewport.camera.reset', [view]);
},
invalidateCache: function invalidateCache(viewId) {
return session.call('viewport.image.push.invalidate.cache', [viewId]);
},
setQuality: function setQuality(viewId, quality) {
var ratio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
return session.call('viewport.image.push.quality', [viewId, quality, ratio]);
},
setSize: function setSize(viewId) {
var width = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;
var height = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 400;
return session.call('viewport.image.push.original.size', [viewId, width, height]);
},
setServerAnimationFPS: function setServerAnimationFPS() {
var fps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 30;
return session.call('viewport.image.animation.fps.max', [fps]);
},
getServerAnimationFPS: function getServerAnimationFPS() {
return session.call('viewport.image.animation.fps.get', []);
},
startAnimation: function startAnimation() {
var viewId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
return session.call('viewport.image.animation.start', [viewId]);
},
stopAnimation: function stopAnimation() {
var viewId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
return session.call('viewport.image.animation.stop', [viewId]);
},
updateCamera: function updateCamera() {
var viewId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
var focalPoint = arguments.length > 1 ? arguments[1] : undefined;
var viewUp = arguments.length > 2 ? arguments[2] : undefined;
var position = arguments.length > 3 ? arguments[3] : undefined;
var forceUpdate = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;
return session.call('viewport.camera.update', [viewId, focalPoint, viewUp, position, forceUpdate]);
},
updateCameraParameters: function updateCameraParameters() {
var viewId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var forceUpdate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
return session.call('viewport.camera.update.params', [viewId, parameters, forceUpdate]);
}
};
}
export default createMethods;