exponenta event banner

beginDrawingFromPoint

Начало окупаемости инвестиций в чертеж из указанной точки

Описание

пример

beginDrawingFromPoint(ROI,[x y]) входит в интерактивный режим для рисования фигуры для объекта ROI. Чертеж начинается с местоположения (x, y) в осях. Этот метод предназначен для использования в системе ButtonDownFcn обратный вызов Image или Axes объект.

beginDrawingFromPoint(ROI,[x y z]) входит в интерактивный режим, чтобы нарисовать кубическую ROI (images.roi.Cuboid). Чертеж начинается с местоположения (x, y, z) в осях.

beginDrawingFromPoint(ROI,[x y z],s) входит в интерактивный режим, чтобы нарисовать кубическую ROI (images.roi.Cuboid). Чертеж начинается с местоположения (x, y, z) в осях, привязываясь к ближайшему расположению мыши от Scatter объект s.

beginDrawingFromPoint(ROI,[x y z],pos) входит в интерактивный режим, чтобы нарисовать кубическую ROI (images.roi.Cuboid). Чертеж начинается с местоположения (x, y, z) в осях, привязываясь к ближайшему расположению мыши из положения, заданного pos.

Примеры

свернуть все

Создать новый сценарий с именем sampleDrawLine.m. В скрипте скопируйте и вставьте этот код, а затем сохраните файл.

hIm = imshow(imread('coins.png'));
hIm.ButtonDownFcn = @(~,~) buttonPressedCallback(hIm.Parent);
 
function buttonPressedCallback(hAx)
    cp = hAx.CurrentPoint;
    cp = [cp(1,1) cp(1,2)];
    obj = images.roi.Line('Parent',hAx,'Color',rand([1,3]));
    beginDrawingFromPoint(obj,cp);
end

Вернитесь к командному окну MATLAB ®. Запустите сценарий, введя команду:

sampleDrawLine

Код открывает фигурное окно, содержащее изображение монет. Каждый раз, когда вы нажимаете на рисунок, сценарий выполняет функцию обратного вызова, buttonPressedCallback. Функция обратного вызова начинает рисовать новый ROI, начиная с выбранного пикселя.

В редакторе откройте файл с именем cuboidExample.m. Скопируйте и вставьте этот код в файл, а затем сохраните его.

function cuboidExample
    [x,y,z] = sphere(16);
    X = [x(:)*.5 x(:)*.75 x(:)];
    Y = [y(:)*.5 y(:)*.75 y(:)];
    Z = [z(:)*.5 z(:)*.75 z(:)];
    
    % Specify the size and color of each marker.
    S = repmat([1 .75 .5]*10,numel(x),1);
    C = repmat([1 2 3],numel(x),1);
    
    % Create a 3-D scatter plot
    figure
    hScatter = scatter3(X(:),Y(:),Z(:),S(:),C(:),'filled'); 
    view(-60,60);
 
    % Begin drawing cuboids when a scatter
    % point is clicked
    hScatter.ButtonDownFcn = @(~,~) buttonPressedCallback(hScatter.Parent);
   
    function buttonPressedCallback(hAx)
       cp = hAx.CurrentPoint;
       cp = cp(1,1:3);
       obj = images.roi.Cuboid('Parent',hAx,'Color',rand([1,3]));
       obj.beginDrawingFromPoint(cp);
    end
 end

Вернитесь в окно команды MATLAB и запустите функцию, введя команду:

cuboidExample

Код открывает окно фигуры, содержащее график рассеяния. Каждый раз при наведении курсора мыши на график рассеяния функция выполняет функцию обратного вызова. buttonPressedCallbackи рисует новую кубоидальную ROI в выбранном пикселе.

Входные аргументы

свернуть все

Область интересов, указанная как объект окупаемости инвестиций одного из следующих типов:

Начальная точка в осях, заданная как числовой массив.

Начальная точка в осях 3-D, заданная как числовой массив.

График рассеяния, заданный как matlab.graphics.chart.primitive.Scatter объект.

Начальная точка в осях 3-D, заданная как N-by-3 числовой массив. Каждая строка в pos представляет 3-D пространственное положение потенциального положения размещения.

Представлен в R2018b