ginput を使用して図にポイントを入力し続けるループがあります。ユーザーがキーを押すまでループを実行したいのですが、私が持っているものは次のとおりです。
function enter_points()
f = figure();
axis([-1 1 -1 1]);
coorX = [];
coorY = [];
while 1
[x, y] = ginput(1);
coorX = [coorX x];
coorY = [coorY y];
waitforbuttonpress;
key = get(f,'CurrentCharacter');
if (key == 'e')
display('End of cycle.')
break;
else
display('Enter next point')
end
end
coor = [transpose(coorX) transpose(coorY)];
display(size(coor));
display(coor);
end
このコードの問題点は、ポイントを入力し続けるためにキーを押さなければならないことです。もう 1 つの問題は、このコードを実行すると Matlab が時々フリーズすることです (コードが原因かどうかはわかりません)。また、「e」ではなく「enter」を押すことを検出する方法は? 助けてくれてありがとう