我是Angular的新手,我有一个显示dicom图像的指令,并使用cornerstoneJs库使用基石工具(缩放和长度)。图像被显示,但问题是当我想要将每个工具与两个输入单选按钮相关联时,以便用户可以选择并选择要使用的工具。为了做到这一点,我创建了两个函数,每个函数激活一个基石工具,我将它们与每个输入单元格相关联,但问题是当我单击两个输入单元格时,只执行第一个函数。
cornerstone.directive.ts:
@Output() myClick1: EventEmitter<any> = new EventEmitter();
@Output() myClick2: EventEmitter<any> = new EventEmitter();
@HostListener('click', ['$event'])
onClick1(event) {
cornerstoneTools.addTool(cornerstoneTools[`${'Length'}Tool`]);
cornerstoneTools.setToolActive('Length', { mouseButtonMask: 1 } );
this.myClick1;
}
@HostListener('click', ['$event'])
onClick2(event) {
cornerstoneTools.addTool(cornerstoneTools[`${'Zoom'}Tool`]);
cornerstoneTools.setToolActive('Zoom', { mouseButtonMask: 1 } );
this.myClick2;
}viewer.html:
<input type="radio" class="left" name="tool" (myClick1)="onClick1($event)" appCornerstone> Length
<input type="radio" class="left" name="tool" (myClick2)="onClick2($event))" appCornerstone> Zoom问题是,当我选择length tool时,它是启用的,但当我选择zoom The length tool enabled时,缩放工具没有激活。
非常感谢!
发布于 2020-06-22 09:49:01
看一下这个问题https://github.com/cornerstonejs/cornerstoneTools/issues/1018。我没有试过,但我想这对你会有用的。
@Output() myClick1: EventEmitter<any> = new EventEmitter();
@Output() myClick2: EventEmitter<any> = new EventEmitter();
@HostListener('click', ['$event'])
onClick1(event) {
cornerstoneTools.addTool(cornerstoneTools[`${'Length'}Tool`]);
cornerstoneTools.setToolActive('Length', { mouseButtonMask: 1 } );
cornerstoneTools.setToolDisabled('Zoom');
this.myClick1;
}
@HostListener('click', ['$event'])
onClick2(event) {
cornerstoneTools.addTool(cornerstoneTools[`${'Zoom'}Tool`]);
cornerstoneTools.setToolActive('Zoom', { mouseButtonMask: 1 } );
cornerstoneTools.setToolDisabled('Length');
this.myClick2;
}https://stackoverflow.com/questions/62505795
复制相似问题