رسم منحنی در matlab با ماوس و ذخیره تصویر آن - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

رسم منحنی در matlab با ماوس و ذخیره تصویر آن

0 امتیاز

چگونه می تونم با ماوس یک منحنی بکشم به طوری که تصویر خروجی از آن دریافت کتم؟

من کد زیر را پیدا کردم ولی مشکل اینجاست که شکل کشیده شده ذخیره نمیشه و فقط نشون داده میشه!

function main_test

S.fH = figure('menubar','none');
im = imread( 'c:\blank.jpg' );

S.aH = axes;
S.iH = imshow( im ); hold on
axis image;

X = [];
Y = [];

set(S.aH,'ButtonDownFcn',@startDragFcn)
set(S.iH,'ButtonDownFcn',@startDragFcn)
set(S.fH, 'WindowButtonUpFcn', @stopDragFcn);

uicontrol('Style', 'pushbutton', 'String', 'Clear',...
        'Position', [20 20 50 20],...
        'Callback', @clearIt); 
uicontrol('Style', 'pushbutton', 'String', 'Start',...
    'Position', [80 20 50 20],...
    'Callback', @run_program );


function startDragFcn(varargin)
    set( S.fH, 'WindowButtonMotionFcn', @draggingFcn );
    pt = get(S.aH, 'CurrentPoint');
    x = pt(1,1);
    y = pt(1,2);
    X = x;
    Y = y;
end

function draggingFcn(varargin)
    pt = get(S.aH, 'CurrentPoint');
    x = pt(1,1);
    y = pt(1,2);
    X = [X x];
    Y = [Y y];

    plot(X, Y, 'r', 'LineWidth', 4);
    hold on
    drawnow 
end

function stopDragFcn(varargin)
    set(S.fH, 'WindowButtonMotionFcn', '');  %eliminate fcn on release
end

end

function clearIt(h, evt)
close all;
main_test();
end

function run_program(h,evt)
figure;imshow(im);
end

با کلیک روی دکمه start همان تصویر سفید اول نمایش داده میشه در صورتی که من می خوام منحنی رسم شده هم به آن اضافه شده باشه.

ممنون میشم اگر کسی یا این کد را تکمیل کنه یا کد دیگری پیشنهاد بده که همین کار رو انجام بده.

سوال شده خرداد 6, 1393  بوسیله ی hadielec (امتیاز 182)   2 4 12
ویرایش شده خرداد 6, 1393 بوسیله ی hadielec

1 پاسخ

0 امتیاز
 
بهترین پاسخ
پاسخ داده شده خرداد 11, 1393 بوسیله ی hadielec (امتیاز 182)   2 4 12
...