Matlab - POO: Ayuda modificar propiedades de clase

 
Vista:

POO: Ayuda modificar propiedades de clase

Publicado por Nathan (6 intervenciones) el 09/04/2010 14:58:53
Hola a tod@s! Estoy realizando un proyecto en Matlab, y para tenerlo todo mejor organizado lo estoy realizando con POO. El problema es que cuando creo una clase e inicializo todas las propiedades, por ejemplo un vector aue me dice de todas las funciones aue estan en un plot cual esta visible. Yo no inicialiwo a ceros, y luego cada vez aue pinto una nueva función cambio este valor de la posición que sea a 1, pero no se me queda guardado este valor ya que luego el objeto sigue tienendo todo el vector a ceros.

Un ejemplo simple seria:

classdef PlotData
properties
VisibleChannel;
end

methods
function obj = PlotData(size)
obj.VisibleChannel = zeros(1,size);
end

funcion visibleData(obj, num, visible)
obj.VisibleChannel(num)=visible;
end
end

Y desde otro fichero hago

Xdata = PlotData(6);
Xdata.visibleData(3,1);

Pero no se modifica el valor, al salir de la funcion visibleData; pierde el cambio y sigue valiendo 0. Me pasa con todos los tipos de variable, y es un fastidio, ya que voy leyendo trozos de un fichero ya que es muy grande, y me gustaria ir actualizando diferentes propiedades. Pero bueno, creo q con el ejemplo anterior queda más clara mi petición.

Muchas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder

POO: Ayuda modificar propiedades de clase

Publicado por javier (4 intervenciones) el 06/04/2012 07:30:11
hola

no se si ya resolviste tu problema ¿? pero si ya tienes ideas de como realizar un programa orientado a objetos con clases y metodos etc en Matlab. podrias pasarnos algo ya que quiero realizar y aprender sobre eso y pues ami me ayuda mucho bien un ejemplo que corra.

Gracias....saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

POO: Ayuda modificar propiedades de clase

Publicado por cav (1 intervención) el 19/07/2015 19:11:20
Crea las variables como globales
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
Imágen de perfil de Jorge De Los Santos
Val: 30
Ha disminuido su posición en 12 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

POO: Ayuda modificar propiedades de clase

Publicado por Jorge De Los Santos (213 intervenciones) el 27/01/2016 05:28:17
Hola Nathan,


Un poco demasiado tarde la respuesta, pero por si a alguien más le sirve:

En tu caso la solución es muy sencilla, sólo debes heredar tu clase de la superclase handle de MATLAB, es decir:

1
2
3
4
classdef PlotData < handle
.
.
.


Con ello podrás modificar las propiedades de clase desde sus métodos.


Saludos.

Jorge De Los Santos.
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