📄 measure_click.m
字号:
% measure_click.m%% Select the current point.function measure_clickglobal meas;sf = meas.sigfig;if ~isfield(meas, 'point') % first click x = meas.cursor.x; y = meas.cursor.y; meas.point(1).x = x; meas.point(1).y = y; disp(sprintf('\n[x1, y1] = [%s, %s]\n', num2eng(x, sf), num2eng(y, sf))) % Label the point and put a marker on it. hold on; meas.point(1).texth = text(x, y, sprintf('[%s, %s]', num2eng(x, sf), num2eng(y, sf))); meas.point(1).markerh = plot(x, y, 'ro');else % second click x = meas.cursor.x; y = meas.cursor.y; meas.point(2).x = x; meas.point(2).y = y; disp(sprintf('[x2, y2] = [%s, %s]\n', num2eng(x, sf), num2eng(y, sf))) dx = x-meas.point(1).x; dy = y-meas.point(1).y; slope = dy/dx; disp(sprintf('dx = %s', num2eng(dx, sf))) disp(sprintf('dy = %s', num2eng(dy, sf))) disp(sprintf('dy/dx = %s', num2eng(slope, sf))) % Label the point, put a label on it, and draw the rubber band hold on; meas.point(2).texth = text(x, y, sprintf('[%s, %s]', num2eng(x, sf), num2eng(y, sf))); axi = meas.axi; text(meas.ax(axi).textx, meas.ax(axi).texty, ... sprintf('dx = %s dy = %s dy/dx = %s', num2eng(dx, sf), num2eng(dy, sf), num2eng(slope, sf))); meas.point(2).markerh = plot(x, y, 'ro'); meas.point(2).rubberh = plot([meas.point(1).x x], [meas.point(1).y y], 'r'); measure_done;end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -