WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

einen "hinteren" plot nach vorn holen

 

Stroh
Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.11.2011, 17:52     Titel: einen "hinteren" plot nach vorn holen
  Antworten mit Zitat      
hi leute,
also titel is mir leider nichts besseres eingefallen -.-
was ich wirklich brauch: ich habe mehrere elemente, die ich über line plotte, die sich tielweise überlappen. um diese zu unterscheiden, haben sie unterschiedliche farben
das problem ist, dass ich gern die erste geplottete line VOR der darauffolgenden hätte
ich habe schon versucht, die reihenfolge der 'Children' des axes-handlers umzudrehen, da habe ich aber das problem, dass andere linien, die ebenfalls die kreissegmente schneiden, jetzt auch davor liegen, das soll aber nicht so sein Sad
die children, die ich umdrehen möchte, sind auch nicht hintereinander, also einen bereich umdrehen und fertig geht auch nicht
die segmente in einer anderen reihenfolge plotten geht auch nicht, da die folge-lines von der davor abhängig sind...

ich brauch eure hilfe, mir fällt nix mehr ein
zum besseren verständnis hab ich mal ein bild angehängt, wie es im moment aussieht...
programmcode is schlecht zu posten, würde ewig dauern den auf das wichtigste zusammenzufassen

die sekante vom grünen kreissegment wird vollkommen vom orangenen überschrieben, beim polygon sind die grünen teile noch teilweise zu sehen. ich hätte die grünen aber gern im vordergrund
ob die grüne line vom kreissegment vor dem orangenen vom polygon liegt, ist mir an sich egal, nur in den formen selbst sollte sich die reihenfolge umdrehen
die schwarze und grauen linien sollen aber im hintergrund bleiben, die roten punkte sowie der text im vordergrund...

was einem tip vllt helfen könnte: die line's sind die einzigen, die ein tag haben

Visualizierung.GIF
 Beschreibung:

Download
 Dateiname:  Visualizierung.GIF
 Dateigröße:  21.1 KB
 Heruntergeladen:  753 mal
Private Nachricht senden Benutzer-Profile anzeigen


Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 24.11.2011, 18:04     Titel:
  Antworten mit Zitat      
Nur sehr kurz, da in Eile: UISTACK?

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 24.11.2011, 18:15     Titel: Re: einen "hinteren" plot nach vorn holen
  Antworten mit Zitat      
Hallo Stroh,

Die Beschreibung ist kompliziert. Ich kann ihr nicht folgen. Das Bild ist leider nicht downloadbar.
Du kannst Elemente entweder per UISTACK umsortieren, oder sie gleich in der richtigen Reihenfolge zeichnen (also von hinten nach vorne), oder Du kannst ein 3D-Bild mit dem ZBuffer- oder OpenGL-Renderer zeichnen und genau von oben draufschauen - dann sind die Objekte nach ihren Z-Werten sortiert und können sich auch gegenseitig durchdringen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Stroh
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.11.2011, 18:25     Titel:
  Antworten mit Zitat      
@andreas: da hab ich aber auch das problem, dass ich erstmal die hochzustackenden children rausfischen muss. und dann muss ich noch klären, wie weit hoch, damit ich die roten punkte bzw den text nicht überlagere

@jan: ich hab erst die falsche datei hochgeladen, vllt hast du in dem moment draufgeklickt, als ich sie gelöscht hab. jedenfalls hab ich es gerade versucht und ohne probleme...
und ja, beschreibung is nich so schön, ich weiß^^
zu uistack: s.o.
zur richtigen reihenfolge: wie in der beschreibung steht, ermittle ich die werte vom eigentlich unteren line nach dem oberen
zu 3D: ich glaub, mein plot in 3D umzuschreiben wäre zu aufwändig. und ich kenn mich mit matlab nich so gut aus, um jetzt auf anhieb zu wissen, was du mit "ZBuffer oder OpenGL-Renderer" meinst Embarassed

grüße, stroh

edit: aber schonmal vielen dank für die schnellen antworten Smile das zeugt von der gomatlab-qualität Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Stroh
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.11.2011, 18:51     Titel:
  Antworten mit Zitat      
juhu, uistack brachte mich grad zur lösung Smile
die abhängigen elemente werden in einer schleife eingefügt, ich setze sie also entsprechend, wann sie geplottet werden, genau so viel ebenen zurück, damit sie unter ihrem vorgänger liegen
ich ordne die elemente also direkt nach dem plotten neu, und nicht wie ich erst vorhatte, am ende, wenn alles fertig ist...
Code:

for j = 1 : len
    tmp = line(...);
    uistack(tmp,'down',j-1);
end;
 

nochmals danke für die hilfe
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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.