Crear gráficos utilizando un script de MATLAB
Este ejemplo muestra cómo incluir comandos de API de Stateflow® en una función o script de MATLAB®. Crear un script de comandos de API permite evitar pasos repetitivos en la creación del gráfico y volver a crear el mismo modelo con un solo comando. Para obtener más información, consulte Visión general de la API de Stateflow.
Ejecutar la función de MATLAB
La función makeMyModel, que está definida en la parte inferior de esta página, produce un gráfico de Stateflow "básico" que puede reutilizar como plantilla en sus aplicaciones.
ch = makeMyModel; view(ch)

Crear una función de gráfico básico
Esta función crea un gráfico de Stateflow y devuelve el objeto Stateflow.Chart correspondiente.
function ch = makeMyModelCree el modelo y acceda al nuevo objeto Stateflow.Chart.
rt = sfroot;
prev_machines = find(rt,"-isa","Stateflow.Machine");
sfnew;
curr_machines = find(rt,"-isa","Stateflow.Machine");
m = setdiff(curr_machines,prev_machines);
ch = find(m,"-isa","Stateflow.Chart");Cree el estado A en el gráfico.
sA = Stateflow.State(ch);
sA.Name = "A";
sA.Position = [50 50 310 200];Cree el estado A1 dentro del estado A.
sA1 = Stateflow.State(ch);
sA1.Name = "A1";
sA1.Position = [80 120 90 60];Cree el estado A2 dentro del estado A.
sA2 = Stateflow.State(ch);
sA2.Name = "A2";
sA2.Position = [240 120 90 60];Cree la transición de A1 a A2.
tA1A2 = Stateflow.Transition(ch);
tA1A2.Source = sA1;
tA1A2.Destination = sA2;
tA1A2.SourceOClock = 3;
tA1A2.DestinationOClock = 9; Añada la transición predeterminada al estado A.
dtA = Stateflow.Transition(ch);
dtA.Destination = sA;
dtA.DestinationOClock = 0;
dtA.SourceEndPoint = dtA.DestinationEndpoint-[0 30];
dtA.MidPoint = dtA.DestinationEndpoint-[0 15];Añada la transición predeterminada al estado A1.
dtA1 = Stateflow.Transition(ch);
dtA1.Destination = sA1;
dtA1.DestinationOClock = 0;
dtA1.SourceEndPoint = dtA1.DestinationEndpoint-[0 30];
dtA1.MidPoint = dtA1.DestinationEndpoint-[0 15];
end