Verfasst am: 02.04.2008, 10:44
Titel: DRAWNOW und PLOT in einem FIGURE
hallo,
ich habe ein gui gebaut mit einem achsensystem. wenn ich nun eine funktion plote, dann wird diese brav in das achsensystem gezeichnet.
jetzt habe ich mir von mathworks eine funktion zum cad-import runtergeladen. diese stellt das cad-teil dann auch in einem achsensystem dar, aber nicht in dem meines gui, sondern es zerschiest mein gui komplett.
ich vermute mal es liegt an dem befehl drawnow, aber ich kann es auch wirklich nciht sagen.
was muss ich tun, damit diese darstellung auch in meinem achsensystem angezeigt wird.
hier der code des mathwork-file
Code:
% Read the CAD data file: [F, V, C] = rndread(filename);
clf;
p = patch('faces', F, 'vertices' ,V);
%set(p, 'facec', 'b'); % Set the face color (force it) set(p, 'facec', 'flat'); % Set the face color flat set(p, 'FaceVertexCData', C); % Set the color (from file)
%set(p, 'facealpha',.4)% Use for transparency set(p, 'EdgeColor','none'); % Set the edge color
%set(p, 'EdgeColor',[100]); % Use to see triangles, if needed. light% add a default light daspect([111])% Setting the aspect ratio view(3)% Isometric view
%xlabel('X'),ylabel('Y'),zlabel('Z')
%title(['Imported CAD data from ' filename]) drawnow expose %, axis manual
%
disp(['CAD Datei ' filename 'eingelesen, rotiere']) pause(1)
%
% Move it around. % To use homogenous transforms, the n by 3 Vertices will be turned to % n by 4 vertices, then back to 3 for the set command. % Note: n by 4 needed for translations, not used here, but could, using tl(x,y,z)
V = V';
V = [V(1,:); V(2,:); V(3,:); ones(1,length(V))];
%
vsize = maxv(V); %attempt to determine the maximum xyz vertex.
AXIS([-vsize vsize -vsize vsize -vsize vsize]);
%
for ang = 0:1:90
nv = rx(ang)*V;
set(p,'Vertices',nv(1:3,:)') drawnow expose
end for ang1 = 0:2:90
nv1 = ry(ang1)*nv;
set(p,'Vertices',nv1(1:3,:)') drawnow expose
end for ang2 = 0:3:90
nv2= rz(ang2)*nv1;
set(p,'Vertices',nv2(1:3,:)') drawnow expose
end for ang3 = 0:5:180
nv3 = rx(ang3)*ry(ang3)*rz(ang3)*nv2;
set(p,'Vertices',nv3(1:3,:)') drawnow expose
end
%
% End of main routine, here are the functions used: % Homogeneous manipulation functions follow: % .....
vielleicht solltest Du auch mal die Shift-Taste auf Deiner Tastatur suchen? Dann werden Deine Sätze sicherlich noch verständlicher und Du wirst auch mehr Antworten erhalten
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.