Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   
Bücher:

Fachkräfte:
Ingenieur (m/w) für den Bereich modellbasierte Embedded-Softwareentwicklung
Integration von Simulink-Modellen auf die Ziel-Hardware (mit TargetLink) sowie Durchführung von Softwaretests
cbb-Software GmbH - Stuttgart

Softwareentwickler (m/w) automatische Codegenerierung
Umsetzung, Neuprogrammierung und Weiterentwicklung in Simulink, TargetLink und C
EFS - Ingolstadt, Wolfsburg

Informatiker (m/w) für den Bereich Toolkette Embedded Software
Weiterentwicklung einer MATLAB- / Simulink-Toolkette
cbb-Software GmbH - Stuttgart

Entwicklungsingenieur (m/w) Fahrdynamikregelsysteme
Entwicklung der für die Fahrdynamik relevanten Funktionen
EFS - Ingolstadt, Wolfsburg

Software-Entwicklungsingenieur (m/w) Referenzierungsmethoden autonomes Fahren
Automatisierung von Bewertungsmethoden und Kalibrierverfahren nach Kundenanforderungen
EFS - Ingolstadt

weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Timer in GUI um Plot zu drehen.

 

Sharkfest
Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 09.02.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2018, 22:49     Titel: Timer in GUI um Plot zu drehen.
  Antworten mit Zitat      
Hallo, ich möchte mit einem Timer meinen Plot drehen in einer kleinen Animation. Ich nutze dafür folgenden Code:
Code:
function Animation()
az = 45;
tmr = timer('ExecutionMode', 'FixedRate','Period', 0.03,'TasksToExecute', 360, 'TimerFcn', {@timerCallback});
start(tmr);
function timerCallback(hObj, eventdata)
    az = az + 1;
    view(az,22.5);
end
end

Das klappt ausserhalb der GUI auch super, nur will ich in der GUI einen Pushbutton damit belegen, so dass er ein Plotfenster dreht, allerdings öffnet er nach dem ersten Ausführen ein figure-Fenster anstatt es in dem axis-Fenster auszuführen. Es soll aber nur in dem angegebenen Fenster ausgeführt werden(siehe Bild).

Bildschirmfoto 2018-03-07 um 21.46.35.png
 Beschreibung:

Download
 Dateiname:  Bildschirmfoto 2018-03-07 um 21.46.35.png
 Dateigröße:  361.8 KB
 Heruntergeladen:  54 mal
Private Nachricht senden Benutzer-Profile anzeigen


Sharkfest
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 09.02.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2018, 23:22     Titel:
  Antworten mit Zitat      
Anbei noch ein Video des Problems. Man sieht wie er das eigentliche Plotfenster um 1Grad dreht und dann die figure1 öffnet um dort die komplette Animation abzuspielen.

Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 18.520
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2014a
     Beitrag Verfasst am: 08.03.2018, 10:00     Titel:
  Antworten mit Zitat      
Hallo,

versuch mal, als erstes Argument das Koordinatensystem anzugeben:
Code:


Dazu musst du die Handles in deiner GUI an die Funktion übergeben.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Sharkfest
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 09.02.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.03.2018, 10:13     Titel:
  Antworten mit Zitat      
Wenn ich es dann so:
Code:
function pushbutton8_Callback(hObject, eventdata, handles)

az = 45;
tmr = timer('ExecutionMode', 'FixedRate','Period', 0.03,'TasksToExecute', 360, 'TimerFcn', {@timerCallback});
start(tmr);
function timerCallback(hObj, eventdata)
    az = az + 1;
    axes(handles.axes1, view(az,22.5))
end

end
schreibe, öffnet er zwar keine extra figure mehr, nur dreht er den Plot trotzdem nur um 1Grad.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 18.520
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2014a
     Beitrag Verfasst am: 08.03.2018, 10:38     Titel:
  Antworten mit Zitat      
Hallo,

der Aufruf ist so nicht sinnvoll. Es muss schon so aussehen:
Code:
view(handles.axes1, az,22.5)


Falls weiter Probleme bestehen, wäre ein reproduzierbares Beispiel hilfreich.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Sharkfest
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 09.02.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.03.2018, 10:41     Titel:
  Antworten mit Zitat      
Es hat geklappt. Herzlichen Dank.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de goPCB.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2018 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

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.