cornerstoneTools.js使用记录

1,464 阅读1分钟

cornerstoneTools.js

cornerstoneTools.js是基于 cornerstone.js的增强版,可以用它来实现很多功能,不过它也依赖其他的库。


<script src="https://unpkg.com/hammerjs@2.0.8/hammer.js"></script>
    <script src="https://unpkg.com/cornerstone-core@2.3.0/dist/cornerstone.js"></script>
    <script src="https://unpkg.com/cornerstone-math@0.1.9/dist/cornerstoneMath.min.js"></script>
    <script src="https://unpkg.com/cornerstone-wado-image-loader@3.3.1/dist/cornerstoneWADOImageLoader.min.js"></script>
    <script src="https://unpkg.com/cornerstone-web-image-loader@2.1.1/dist/cornerstoneWebImageLoader.min.js"></script>
    <script src="https://unpkg.com/cornerstone-tools@5.1.4/dist/cornerstoneTools.js"></script>
    <script src="https://unpkg.com/dicom-parser@1.8.7/dist/dicomParser.min.js"></script>
    <script>
        cornerstoneTools.external.cornerstone = cornerstone;
        cornerstoneTools.external.Hammer = Hammer;
        cornerstoneTools.external.cornerstoneMath = cornerstoneMath;
        cornerstoneWADOImageLoader.external.dicomParser = dicomParser;
        cornerstoneWADOImageLoader.external.cornerstone = cornerstone;
    </script>

init

初始化有两种方式,第一种是传对象,第二种是传数组。

// 数组
cornerstoneTools.init([{
    moduleName: 'globalConfiguration', //全局
    configuration: {
        showSVGCursors: true //是否根据不同的功能改变手势图标, 默认 false
    }
}, {
    moduleName: 'segmentation', //分段
    configuration: {
        outlineWidth: 2
    }
}]);

//对象
cornerstoneTools.init({
    showSVGCursors: true,
    outlineWidth: 2
});

具体的配置如图:

image.png


  • mouseEnabled 允许鼠标
  • touchEnabled 允许移动端手势
  • globalToolSyncEnabled 允许工具同步
  • showSVGCursors 手势图标
  • autoResizeViewports 自动调整窗口大小
  • lineDash 虚线, canvas.setLineDash
使用cornerstoneTools.js 上面的external不能少,还有要注意的就是要在 cornerstone.enable之前调用 cornerstoneTools.init函数。大致就这些了。