我创建了一个 renderer2D,因此用户可以单击并选择病变的中心。我想向用户显示他单击的位置。目前我的想法是冻结渲染器(因此切片将相同并且缩放也相同),然后使用画布绘制一个圆圈。
这是我的代码:
centerpick2D = new X.renderer2D();
centerpick2D.container = 'pick_center_segment';
centerpick2D.orientation = 'Z';
centerpick2D.init();
centerpick2D.add(volumeT1DCM);
centerpick2D.render();
centerpick2D.interactor.onMouseDown = function(){
tumorCenter=centerpick2D.xy2ijk(centerpick2D.interactor.mousePosition[0],centerpick2D.interactor.mousePosition[1]);
centerpick2D.interactor.config.MOUSEWHEEL_ENABLED = false;
centerpick2D.interactor.config.MOUSECLICKS_ENABLED = false;
$('canvas').attr('id', 'xtkCanvas');
var myCanvas = document.getElementById("xtkCanvas");
var ctx=myCanvas.getContext("2d");
ctx.fillStyle="#FF0000";
ctx.beginPath();
ctx.arc(centerpick2D.interactor.mousePosition[0],centerpick2D.interactor.mousePosition[1],20,0,Math.PI*2,true);
ctx.closePath();
ctx.fill();
};
我有两个问题:
MOUSEWHEEL_ENABLED=false 和 MOUSECLICKS_ENABLED=false 不起作用。我尝试添加一个可以工作的 centerpick2D.init(),但在前一个画布之上添加了第二个画布。
我的圈子没有出现在任何地方。
任何帮助将不胜感激。:-D