MATLAB: Tracer la surface d’une poignée stockée (poignée d’une surface) dans un fichier .mat

Salut à tous. Il est possible de tracer avec des poignées stockées dans un fichier mat. Par exemple:
 
% Points for any surface
[x,y,z] = peaks(50);
% Getting handle, plotting surface and save in object.mat
handle = surf(x,y,z);
save('object.mat','handle')
 
Maintenant, lisez le handle du fichier object.mat:
 
sobf = load('object.mat');
sobf = sobf.handle;
% Any way to plot directly without extract X,Y or ZData
 

Meilleure réponse

  • Que dis-tu de ça?
     
    set(sobf, 'Parent', gca)
     
    Si vous souhaitez enregistrer la vue, le quadrillage, les graduations, tout ce qui concerne les axes plutôt que le tracé, vous pouvez également enregistrer les axes:
     

    % Points for any surface
    [x,y,z] = peaks(50);
    % Getting handle, plotting surface and save in object.mat
    ax = axes;
    handle = surf(ax, x,y,z);
    save('axes.mat', 'ax')
    save('object.mat','handle')
    delete(gcf);
    sobf = load('object.mat');
    hax = load('axes.mat');
    sobf = sobf.handle;
    ax = hax.ax;
    set(sobf, 'Parent', ax)
    set(ax, 'Parent', gcf);