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

Pixelposition eines über line() gezeichneten Punktes bestim

 

JaWi
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 56
Anmeldedatum: 10.08.13
Wohnort: Deutschland
Version: ---
     Beitrag Verfasst am: 20.09.2013, 10:22     Titel: Pixelposition eines über line() gezeichneten Punktes bestim
  Antworten mit Zitat      
Hallo liebe Foruminaer,

ich zeichne über

Code:

GloVar.signal(counter)= line('XData',x, 'YData',y, 'Color','g', ...
            'Marker','x', 'MarkerSize',6, 'LineWidth',2);
 


einen sich bewegenden Punkt in meine GUI. Dessen Position bräuchte ich in Pixeln , da ich genau darüber ein png-Bild legen möchte.
Das Bild rotImg füge ich ein über

Code:


ImSize2=size(rotImg);%Bildgröße
ax=axes('Parent',GloVar.GH.figure1, 'Units','pixels', 'Position',[lft bttm ImSize2(2) ImSize2(1)]); %Axes mit Größe des Bildes einfügen
GloVar.icon(counter) =image(rotImg,'CData', rotImg); %Bild einfügen
 


lft und bttm sind die Pixel, an deren Stelle ich die Ecke des Bildes packen müsste. Über

Code:


pixel_ax=getpixelposition(GloVar.GH.myAxes);

 


Komme ich an die Position der GUI-Axes myAxes, in die ich wiederum die Axes ax des Bildes einfügen möchte. Wenn ich lft und bottom auf pixel_ax(2) und pixel_ax(1) setze, erscheint mein png in der linken unteren Ecke der GUI-Axes, das passt also. Aber jetzt müsste ich noch die Pixelposition des line(x,y)-Punktes daraufrechnen, aber daran scheitere ich seit Tagen.
Hat jemand Ideen?
Private Nachricht senden Benutzer-Profile anzeigen


JaWi
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 56
Anmeldedatum: 10.08.13
Wohnort: Deutschland
Version: ---
     Beitrag Verfasst am: 20.09.2013, 11:09     Titel:
  Antworten mit Zitat      
Nachtrag: und über

Code:


pixels=impixel(GloVar.TS.Map.Bitmap,x,y);

 


ergibt sich pixels = NaN NaN NaN, das passt irgendwie auch nicht, oibwohl es vielversprechend klang.
GloVar.TS.Map.Bitmap ist eine Googlekarte, die den HIntergrund der axes Bildes, das müsste also eigentlich passen?

Danke.
Private Nachricht senden Benutzer-Profile anzeigen
 
JaWi
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 56
Anmeldedatum: 10.08.13
Wohnort: Deutschland
Version: ---
     Beitrag Verfasst am: 01.10.2013, 22:01     Titel:
  Antworten mit Zitat      
Ich habe es jetzt durch Umrechnen der x bzw y-Werte in Pixel gemacht: Wenn ich beispilesweise weiß, dass mein Hintergundbild 1000x2000pixel groß ist und 100x200m in der Realität darstellen, kann ich das Verhältnis von size zu den Achsenlimits errechnen und so jeden Punkt bestimmen.
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.