亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? grabit.m

?? 用于獲得圖片上曲線的數(shù)值
?? M
?? 第 1 頁 / 共 5 頁
字號:
handles = guidata(obj);if ~isempty(handles.I)  k = lower(get(obj, 'CurrentKey'));    switch k    case 'a'         % zoom in      xl = get(handles.ImageAxis, 'xlim'); xrng = diff(xl);      yl = get(handles.ImageAxis, 'ylim'); yrng = diff(yl);            % prevent zooming in too much.      % set the limit to 64x zoom.      if xrng >= size(handles.I, 2)/64*2        % animate zoom        for id = 0:0.2:1          set(handles.ImageAxis, ...            'xlim', xl + id * xrng / 4 * [1, -1], ...            'ylim', yl + id * yrng / 4 * [1, -1]);          drawnow;        end      end          case 'z'        % zoom out      xl = get(handles.ImageAxis, 'xlim'); xrng = diff(xl);      yl = get(handles.ImageAxis, 'ylim'); yrng = diff(yl);      % animate zoom      for id = 0:0.2:1        set(handles.ImageAxis, ...          'xlim', xl + id * xrng / 2 * [-1, 1], ...          'ylim', yl + id * yrng / 2 * [-1, 1]);        drawnow;      end          case 'space'    % reset view      resetViewFcn(handles.ResetViewBtn);          case {'backspace', 'delete'}            switch handles.state        case 'grab'          if ~handles.isPanning                        if isempty(handles.ImDat)              return;            else              handles.ImDat(end, :)   = [];              handles.TrueDat(end, :) = [];            end                        set(handles.PreviewLine, ...              'xdata', handles.TrueDat(:, 1), ...              'ydata', handles.TrueDat(:, 2));            set(handles.ImageLine, ...              'xdata', handles.ImDat(:, 1), ...              'ydata', handles.ImDat(:, 2));                        set(handles.GrabPointsBtn, 'string', sprintf('Grabbing Points (%d)', size(handles.ImDat, 1)));                        guidata(obj, handles);          end                end          case {'return', 'enter'}            switch handles.state        case 'grab'          grabPointsFcn(handles.GrabPointsBtn);                end  endend%--------------------------------------------------------------------------%--------------------------------------------------------------------------% resetViewFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function resetViewFcn(varargin)% this function resets the viewobj = varargin{1};handles = guidata(obj);if ~isempty(handles.I)  xl = get(handles.ImageAxis, 'xlim');  yl = get(handles.ImageAxis, 'ylim');  xd = (handles.ImLimits(1, :) - xl) / 10;  yd = (handles.ImLimits(2, :) - yl) / 10;  % animate zoom  for id = 0:10    set(handles.ImageAxis, ...      'xlim', xl + id * xd, ...      'ylim', yl + id * yd);    drawnow;  endend% take focus awayloseFocusFcn(handles)%--------------------------------------------------------------------------%--------------------------------------------------------------------------% loseFocusFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function loseFocusFcn(handles)% attempt to take focus away by setting the ENABLE property to off and then% back to the original settingsettings = get([handles.LoadImageBtn, ...    handles.ResetViewBtn, ...    handles.VariableList, ...    handles.SaveAs, ...    handles.Rename, ...    handles.Delete], ...  'enable');set([handles.LoadImageBtn, ...    handles.ResetViewBtn, ...    handles.VariableList, ...    handles.SaveAs, ...    handles.Rename, ...    handles.Delete], ...  'enable', 'off');drawnow;set([handles.LoadImageBtn, ...    handles.ResetViewBtn, ...    handles.VariableList, ...    handles.SaveAs, ...    handles.Rename, ...    handles.Delete], ... {'enable'}, settings);%--------------------------------------------------------------------------%--------------------------------------------------------------------------% winBtnDownFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function winBtnDownFcn(varargin)% this function is called when the mouse click initiatesobj = varargin{1};handles = guidata(obj);if strcmpi(get(handles.timer, 'Running'), 'on') || isempty(handles.I)  return;endhandles.CurrentPointAxes = get(handles.ImageAxis, 'CurrentPoint');handles.CurrentPointFig  = get(handles.GrabitGUI, 'CurrentPoint');switch get(handles.GrabitGUI, 'SelectionType')  case 'normal'        set(handles.CoordinateEdit, 'visible', 'off');    id = find(isnan(handles.CalibPts));    if ~isempty(id)      set(handles.CalibPtsH(id(1),:), 'xdata', NaN, 'ydata', NaN);    end        % first call winBtnMotionPauseFcn to prevent immediate click-n-drag    set(handles.GrabitGUI, ...      'WindowButtonMotionFcn', ...      {@winBtnMotionPauseFcn, handles, handles.CurrentPointAxes(1,1:2), clock});      case 'alt'        set(handles.CoordinateEdit, 'visible', 'off');    id = find(isnan(handles.CalibPts));    if ~isempty(id)      set(handles.CalibPtsH(id(1),:), 'xdata', NaN, 'ydata', NaN);    end        xl = get(handles.ImageAxis, 'XLim');midX = (xl(1)+xl(2))/2;    yl = get(handles.ImageAxis, 'YLim');midY = (yl(1)+yl(2))/2;    figPos = get(handles.GrabitGUI, 'Position');    handles.curTitle = get(get(handles.ImageAxis, 'title'), 'string');    set(handles.GrabitGUI, ...      'Pointer', 'custom', ...      'PointerShapeCData'     , handles.zoomInOutPointer, ...      'PointerShapeHotSpot'   , handles.zoomInOutPointerHotSpot, ...      'WindowButtonMotionFcn' , {@zoomMotionFcn, handles, ...                                 get(handles.GrabitGUI, 'CurrentPoint'), ...                                 figPos(4), ...                                 size(handles.I, 2), ...                                 midX, ...                                 midY, ...                                 diff(xl)/2, ...                                 diff(yl)/2});              set(get(handles.ImageAxis, 'title'), 'string', 'Zooming...');                             endguidata(obj, handles);%--------------------------------------------------------------------------%--------------------------------------------------------------------------% zoomMotionFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function zoomMotionFcn(varargin)% this performs the click-n-drag zooming function. The pointer location% relative to the initial point determines the amount of zoom (in or out).[obj, handles, initPt, figHt, horizPx, midX, ...  midY, rngXhalf, rngYhalf] = splitvar(varargin([1, 3:end]));pt = get(obj, 'CurrentPoint');% get relative pointer location (y-coord only).% power law allows for the inverse to work:%   C^(x) * C^(-x) = 1% Choose C to get "appropriate" zoom factorr = 30 ^ ((initPt(2) - pt(2)) / figHt);% make sure it doesn't zoom in too much.% the limit is based on the size of the original image.% set limit to 64x zoom.if r < horizPx/64/rngXhalf/2  % stop zoom  set(get(handles.ImageAxis, 'title'), 'string', 'Max Zoom Reached');  set(obj, ...    'Pointer'               , 'arrow', ...    'WindowButtonMotionFcn' , '');else  set(handles.ImageAxis, ...    'XLim', [midX - r * rngXhalf, midX + r * rngXhalf], ...    'YLim', [midY - r * rngYhalf, midY + r * rngYhalf]);end%--------------------------------------------------------------------------%--------------------------------------------------------------------------% winBtnMotionPauseFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function winBtnMotionPauseFcn(varargin)% this prevents click-n-drag from happening for X seconds. This is useful% because users may move the mouse as they are clicking.[obj, handles, xy, c] = splitvar(varargin([1, 3:end]));if etime(clock, c) > .15  % waits .15 seconds before dragging occurs  set(obj, ...    'Pointer'             , 'custom', ...    'PointerShapeCData'   , handles.closedHandPointer, ...    'PointerShapeHotSpot' , handles.closedHandPointerHotSpot);  set(obj, 'WindowButtonMotionFcn', {@winBtnMotionFcn, handles.ImageAxis, xy});  handles.curTitle = get(get(handles.ImageAxis, 'title'), 'string');  set(get(handles.ImageAxis, 'title'), 'string', 'Panning...');  handles.isPanning = true;  guidata(obj, handles);end%--------------------------------------------------------------------------%--------------------------------------------------------------------------% winBtnMotionFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function winBtnMotionFcn(varargin)% this function is called when click-n-drag (panning) is happening[axH, xy] = splitvar(varargin(3:4));pt = get(axH, 'CurrentPoint');set(axH, ...  'xlim', get(axH, 'xlim')+(xy(1)-pt(1,1)), ...  'ylim', get(axH, 'ylim')+(xy(2)-pt(1,2)));%--------------------------------------------------------------------------%--------------------------------------------------------------------------% winBtnUpFcn%--------------------------------------------------------------------------%--------------------------------------------------------------------------function winBtnUpFcn(varargin)% this is called when the mouse button is released. It initiates the button% down timer object (see btnUpTimerFcn). This timer waits for 0.2 seconds% before any action is taken. This is in order to detect a double click. If% a double click is detected, the single click action is NOT executed.obj = varargin{1};handles = guidata(obj);if ~isempty(handles.I)  % there is an image displayed  switch get(obj, 'SelectionType')    case 'normal'      if strcmpi(get(handles.timer, 'Running'), 'off')                % start the timer which waits some time to see if double-clicking        % occurs        start(handles.timer);                set(obj, ...          'Pointer'               , handles.curPointer, ...          'PointerShapeCData'     , handles.curPointerData.CData, ...          'PointerShapeHotSpot'   , handles.curPointerData.HotSpot, ...          'WindowButtonMotionFcn' , {@pointerFcn, handles, handles.curPointer});                set(get(handles.ImageAxis, 'title'), 'string', handles.curTitle);      end          case 'alt'      set(obj, ...        'Pointer'               , handles.curPointer, ...

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美123| 日韩欧美一区二区久久婷婷| 日av在线不卡| 亚洲少妇最新在线视频| 日韩视频在线你懂得| 91久久精品午夜一区二区| 国产不卡视频一区二区三区| 日韩不卡免费视频| 亚洲综合图片区| 欧美国产精品一区二区三区| 精品捆绑美女sm三区| 欧美区视频在线观看| 91亚洲精品一区二区乱码| 国产成人av影院| 蜜乳av一区二区| 亚洲国产精品久久久久婷婷884| 国产精品美女视频| 久久精品人人做| 日韩免费观看高清完整版| 欧美综合一区二区| av激情综合网| 99v久久综合狠狠综合久久| 国产精品 欧美精品| 国产在线一区二区综合免费视频| 亚洲成av人片在线观看无码| 亚洲欧美日韩在线| 亚洲欧美另类小说视频| 成人免费一区二区三区在线观看| 久久伊人蜜桃av一区二区| 日韩欧美高清一区| 欧美一级黄色录像| 91精品久久久久久蜜臀| 56国语精品自产拍在线观看| 欧美午夜精品一区| 在线看不卡av| 欧美视频自拍偷拍| 欧美日韩国产高清一区二区| 欧美人牲a欧美精品| 欧美日韩一区三区四区| 欧美日韩免费高清一区色橹橹 | 狠狠色狠狠色综合| 极品少妇xxxx精品少妇偷拍| 久久99久久精品欧美| 久久国产精品72免费观看| 久久精品国产色蜜蜜麻豆| 精品综合久久久久久8888| 捆绑调教美女网站视频一区| 久久精品噜噜噜成人av农村| 黑人巨大精品欧美黑白配亚洲| 极品尤物av久久免费看| 国产成人午夜精品5599| 成人激情av网| 色悠悠久久综合| 欧美日韩一级二级| 日韩午夜电影av| 久久一日本道色综合| 国产精品理论片| 亚洲高清三级视频| 精品亚洲免费视频| voyeur盗摄精品| 欧美日韩国产经典色站一区二区三区| 91精品欧美一区二区三区综合在 | 国产成都精品91一区二区三| 成人免费观看av| 欧美一a一片一级一片| 91精品国产品国语在线不卡| 精品久久久久香蕉网| 国产精品蜜臀在线观看| 亚洲成人av福利| 国产在线视视频有精品| 91国偷自产一区二区三区成为亚洲经典| 欧美色电影在线| 久久嫩草精品久久久久| 亚洲黄色尤物视频| 久久国产精品露脸对白| 91丨porny丨在线| 日韩午夜激情av| 亚洲免费高清视频在线| 久久国产欧美日韩精品| 日本韩国欧美一区二区三区| 日韩美女在线视频| 亚洲欧美日韩国产一区二区三区 | 欧美一区二区观看视频| 中文字幕av在线一区二区三区| 亚洲女女做受ⅹxx高潮| 久久精品av麻豆的观看方式| 99精品久久免费看蜜臀剧情介绍| 91精品久久久久久久久99蜜臂| 中文字幕不卡一区| 日本vs亚洲vs韩国一区三区二区 | 91精品国产综合久久香蕉麻豆| 国产欧美一区二区精品忘忧草| 亚洲激情男女视频| 国产精品一级黄| 欧美一区二区三区小说| 亚洲另类在线一区| 国产精品亚洲第一区在线暖暖韩国 | 韩日精品视频一区| 欧美三级在线视频| 国产精品国产三级国产aⅴ无密码| 日韩国产高清在线| 色偷偷88欧美精品久久久| 26uuu国产日韩综合| 香蕉久久夜色精品国产使用方法| www.在线欧美| 久久久久久毛片| 日韩国产欧美在线播放| 色婷婷狠狠综合| 中文字幕一区二区三区在线观看 | 日韩专区欧美专区| 色吧成人激情小说| 国产精品麻豆视频| 国产在线观看一区二区| 91精品国产色综合久久不卡蜜臀| 亚洲色图视频免费播放| 成人性色生活片| 国产亚洲1区2区3区| 奇米综合一区二区三区精品视频| 欧美日韩专区在线| 一区二区三区在线影院| 91首页免费视频| 中文字幕在线不卡一区二区三区| 高清beeg欧美| 欧美激情一区二区三区不卡| 极品美女销魂一区二区三区免费| 69p69国产精品| 日韩精品一级中文字幕精品视频免费观看| 一本色道久久综合精品竹菊| ...xxx性欧美| 99久久精品国产网站| 中文字幕一区二区三区蜜月| 成人深夜在线观看| 欧美高清一级片在线观看| 国产成人精品午夜视频免费 | 亚洲黄色性网站| 欧美亚州韩日在线看免费版国语版| 中文字幕亚洲区| 91丨国产丨九色丨pron| 亚洲另类春色国产| 欧美人动与zoxxxx乱| 日韩精品视频网站| 日韩一级在线观看| 美女www一区二区| 欧美sm极限捆绑bd| 国产一区二区视频在线| www激情久久| 高清日韩电视剧大全免费| 中文字幕va一区二区三区| 99麻豆久久久国产精品免费| 亚洲欧美日韩国产成人精品影院| 91电影在线观看| 日韩黄色小视频| 国产午夜精品理论片a级大结局| 粉嫩av一区二区三区粉嫩| 亚洲日本va午夜在线电影| 欧美午夜精品电影| 日韩av一区二| 日本一区二区高清| 在线免费精品视频| 美腿丝袜一区二区三区| 国产日韩欧美在线一区| 91蜜桃免费观看视频| 亚洲福利视频导航| 日韩美一区二区三区| 不卡av在线免费观看| 亚洲小说欧美激情另类| 日韩一卡二卡三卡国产欧美| 岛国一区二区在线观看| 一区二区三区成人| 日韩一区二区免费电影| 国产精品1024久久| 亚洲午夜精品久久久久久久久| 欧美一区二区三区四区在线观看| 国产精品一二三区| 夜夜揉揉日日人人青青一国产精品 | 中文字幕欧美国产| 欧美日韩一本到| 国产69精品久久99不卡| 一区二区三区.www| 久久综合狠狠综合久久激情| 在线区一区二视频| 国产精品一区二区黑丝| 一区二区视频在线| 久久久久久一二三区| 欧美精品少妇一区二区三区 | 91免费精品国自产拍在线不卡| 日本最新不卡在线| 日韩美女视频一区二区 | 中文字幕日本不卡| 91精品免费观看| 色综合久久久久网| 国产一区二区伦理片| 五月天网站亚洲| 中文字幕精品一区| 精品免费日韩av| 欧美性猛片aaaaaaa做受| 成人综合婷婷国产精品久久| 秋霞午夜鲁丝一区二区老狼| 中文字幕字幕中文在线中不卡视频| 欧美成人精精品一区二区频|