2016-07-14 108 views

回答

0

您可以將makeConstrainToRectFcn設置爲包含您的ROI的矩形,然後無論何時嘗試移動後者都不起作用。您也可以在創建ROI後,將setVerticesDraggable方法設置爲false以防止拖動頂點。

示例代碼(由Mathworks公司改編自例子):

clc 
clear 

figure 
imshow('gantrycrane.png'); 
h = impoly(gca, [188,30; 189,142; 93,141; 13,41; 14,29]); 

%// Get currentposition 
Pos = getPosition(h); 

%// Prevent draggable vertices 
setVerticesDraggable(h,0); 

%// Set up rectangle to prvent movement of ROI 
fcn = makeConstrainToRectFcn('impoly', [min(Pos(:,1)) max(Pos(:,1))], [min(Pos(:,2)) max(Pos(:,2))]); 

%// Apply function 
h.setPositionConstraintFcn(fcn); 

導致這種情況(紅色矩形進行說明):

enter image description here

+0

非常感謝! :) –

+0

當然!如果回答您的問題,請將答案標記爲已接受(綠色複選標記低於其分數)以關閉該線程。謝謝! –

+0

完成。謝謝:)它現在運作良好! –

相關問題