Matlab - Ayuda con Interfaces Matlab

 
Vista:

Ayuda con Interfaces Matlab

Publicado por 0221Dannie (15 intervenciones) el 28/07/2013 23:17:05
Una pequeña ayuda con este programa, no logro hacer que funcione el botón, quiero que me grafique y lo intente que abriera otro .m que ya tiene las gráficas y no, y que gráfique directamente en el GUI y no
¿Cómo puedo hacer que me muestre estas gráficas?
Agradezco la ayuda :)


código--------------------
function varargout = CaidaL(varargin)
% CAIDAL MATLAB code for CaidaL.fig
% CAIDAL, by itself, creates a new CAIDAL or raises the existing
% singleton*.
%
% H = CAIDAL returns the handle to a new CAIDAL or the handle to
% the existing singleton*.
%
% CAIDAL('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in CAIDAL.M with the given input arguments.
%
% CAIDAL('Property','Value',...) creates a new CAIDAL or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before CaidaL_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to CaidaL_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help CaidaL

% Last Modified by GUIDE v2.5 25-Jul-2013 21:17:09

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @CaidaL_OpeningFcn, ...
'gui_OutputFcn', @CaidaL_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before CaidaL is made visible.
function CaidaL_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to CaidaL (see VARARGIN)

% Choose default command line output for CaidaL
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes CaidaL wait for user response (see UIRESUME)
% uiwait(handles.figure1);


% --- Outputs from this function are returned to the command line.
function varargout = CaidaL_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;



function posini_Callback( hObject,eventdata, handles)

get(handles.posini,'String');
yo=str2double(get(handles.posini,'String'));

if isnan(yo)
yo=0;
set(hObject,'String',yo);
errordlg ('Debe ser un numero','ERROR')
end
handles.posini=yo;
guiadata(hObject,handles)


% hObject handle to posini (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of posini as text
% str2double(get(hObject,'String')) returns contents of posini as a double


% --- Executes during object creation, after setting all properties.
function posini_CreateFcn(hObject, eventdata, handles)
% hObject handle to posini (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end



function velini_Callback(hObject, eventdata, handles)
get(handles.velini,'String');
V=str2double(get(handles.velini,'String'));


if isnan(V)
V=0;
set(hObject,'String',V);
errordlg ('Debe ser un numero','ERROR')
end


handles.velini=V;
guiadata(hObject,handles)
% hObject handle to velini (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of velini as text
% str2double(get(hObject,'String')) returns contents of velini as a double


% --- Executes during object creation, after setting all properties.
function velini_CreateFcn(hObject, eventdata, handles)
% hObject handle to velini (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end



function angini_Callback(hObject, eventdata, handles)
get(handles.angini,'String');
ang=str2double(get(handles.angini,'String'));

if isnan(ang)
ang=0;
set(hObject,'String',ang);
errordlg ('Debe ser un numero','ERROR')
end
handles.posini=ang;
guiadata(hObject,handles)
% hObject handle to angini (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of angini as text
% str2double(get(hObject,'String')) returns contents of angini as a double


% --- Executes during object creation, after setting all properties.
function angini_CreateFcn(hObject, eventdata, handles)

% hObject handle to angini (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)


%Argumentos ecuaciones
%yo=str2doble(get(handles.posini,'value'));
%V=str2doble(get(handles.velini,'value'));
%an=str2doble(get(handles.angini,'value'));

%En forma Matricial
%datos=[yo,V,an];

%Fórmulas y calculos
handles.Vyo=sin(handles.an)*V;
Vy= Vyo+g*t;
handles.y=yo+Vyo*t+(1/2)*g*t.^2;
x=x0+Vxo*t;


set(handles.result,'String',ecuaciones);
%Gráficas directamente en el Gui
%for i=1:length(t) % para animar las grafica
%if y(i)>0
%pause(1/50) % tiempo para que se detenga tiempo igual al de arriba
%subplot(2,2,1)% Matriz 2x2 posición1
%plot(t(i),Vy(i))
%xlabel('tiempo en t(s).')
%ylabel('Velocidad en Vy(m/s)')
%axis1([min(t) max(t) min(Vy) max(Vy)])
%hold on

%subplot(2,2,2)% Matriz 2x2 posición2
%plot(t(i),y(i))
%xlabel('tiempo t(s)')
%ylabel('Posicion y (m)')
%axis2([min(t) max(t) min(y) max(y)])
%hold on

%subplot(2,2,3)% Matriz 2x2 posición3
%plot(x(i),y(i), 'o r')
%xlabel('Posición x(m)')
%ylabel('Posición y(m)')
%axis3([-2 2 min(y) max(y)])


% subplot(2,2,4)% Matriz 2x2 posición3
%plot3(x(i),Vy(i),y(i), '--or')
%xlabel('Tiempo t(s)')
%ylabel('Velocidad Vy(m/s)')
%zlabel('Posición y(m)')
%axis4([min(t) max(t) min(Vy) max(Vy) min(y) max(y) ])
%hold on
%grid on
guidata(hObject, handles);
%Abri archivo .m
Open(Caida.m) ;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda con Interfaces Matlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 11/01/2017 15:21:53
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
function varargout = CaidaL(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @CaidaL_OpeningFcn, ...
                   'gui_OutputFcn',  @CaidaL_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end
 
if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
 
function CaidaL_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
 
function varargout = CaidaL_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
 
function posini_Callback(hObject, eventdata, handles)
yo=str2double(get(handles.posini,'String'));
if isnan(yo)
    yo=0;
    set(handles.posini,'String',yo);
    errordlg ('Debe ser un numero','ERROR')
else
    handles.yo=yo;
    guidata(hObject,handles)
end
 
function velini_Callback(hObject, eventdata, handles)
V=str2double(get(handles.velini,'String'));
if isnan(V)
    V=0;
    set(handles.velini,'String',V);
    errordlg ('Debe ser un numero','ERROR')
else
handles.V=V;
guidata(hObject,handles)
end
 
function angini_Callback(hObject, eventdata, handles)
ang=str2double(get(handles.angini,'String'));
if isnan(ang)
    ang=0;
    set(handles.angini,'String',ang);
    errordlg ('Debe ser un numero','ERROR')
else
handles.ang=ang;
guidata(hObject,handles)
end
 
function pushbutton1_Callback(hObject, eventdata, handles)
%En forma Matricial
yo=handles.yo;
V=handles.V;
ang=handles.ang;
datos=[yo,V,ang];
t=1:100;
g=9.8;
x0=rand;
Vxo=rand;
%Fórmulas y calculos
Vyo=sin(ang)*V;
Vy= Vyo+g*t;
y=yo+Vyo*t+(1/2)*g*t.^2;
x=x0+Vxo*t;
axes(handles.axes1)
for i=1:length(t) % para animar las grafica 
if y(i)>0
pause(1/50) % tiempo para que se detenga tiempo igual al de arriba 
plot(t(i),Vy(i),'*')
xlabel('tiempo en t(s).')
ylabel('Velocidad en Vy(m/s)')
axis([min(t) max(t) min(Vy) max(Vy)])
hold on
end
end


Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programación matlab
[email protected]


http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar