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

Bild auf Kugel plotten, mittels 'warp'

 

Freeheel88
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 15.08.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.08.2012, 22:23     Titel: Bild auf Kugel plotten, mittels 'warp'
  Antworten mit Zitat      
Hallo,
nachdem ich schon einige Probleme mithilfe des Forums lösen konnte (Danke dafür schonmal!) komm ich jetzt nichtmehr weiter und finde dazu nichts passendes.
Ich wöchte auf eine Kugel (erzeugt mit 'sphere...') ein Hintergrundbild plotten lassen, konkret die Erdoberfläche. Dazu habe ich schon ein file im Internet gefunden, dass aber extrem kompliziert und umfangreich ist... Jetzt dachte ich, dass es auch einfacher gehen muss, also schaut mein kleiner Code so aus:
Code:
% Kugel plotten
[x y z] = sphere(30);
Im = imread('erde4.png');
warp(R*x,R*y,R*z,Im)
axis equal

Das schaut auch super aus, mein Problem ist aber, dass im selben plot noch Punkte von Koordinaten (Städte auf der Weltkugel) angezeigt werden.Ohne das Hintergrundbild (also ohne den warp-Befehl) stimmen die Koordinaten, mit warp Befehl verschiebt es mir alles,an was könnte das liegen? (oder mach ich es mir damit gar zu einfach Sad )

Ich hoffe jemand kann mir dabei weiterhelfen
MfG
Private Nachricht senden Benutzer-Profile anzeigen


Michael Sams
Forum-Anfänger

Forum-Anfänger



Beiträge: 24
Anmeldedatum: 18.05.08
Wohnort: ---
Version: R2008a
     Beitrag Verfasst am: 10.12.2012, 23:04     Titel:
  Antworten mit Zitat      
Mich plagt das gleiche Problem! Sad

Wenn ich die Karte (GIF Bild) mit "warp" auf mein Rotationsellipsoid mappe...stimmen meine einzelenen Punktkoordinaten (zusätzlich mit plot3) auf der Oberfläche nicht mehr!?
Seltsamerweise dreht sich das Vorzeichen meiner Längengrade...die Koordinaten wechseln also von W auf E oder umgekehrt??

Code:
clear all; clc;
% Erdgeometrie
a = 6378137;        % grosse Halbachse
b = 6356752.3142;   % kleine Halbachse
f = (a-b)/a;        % Erdabplattung
e = sqrt(f*(2-f));  % erste Exzentrizität
omega = 7.292115*10^-5; % rad/s Erdrotation

% Eingabe Lat/Long
% point 1.
Lat(1) = +(48 + 21/60 + 14/3600);   % 48°21'14"N 11°47'10"E - EDDM
Long(1) = +(11 + 47/60 + 10/3600);
% point 2.
Lat(2) = +(51 + 28/60 + 39/3600);   %  51°28'39"N 0°27'41"W - EGLL
Long(2) = -(0 + 27/60 + 41/3600);
% hight of points
h = 10;

% plot
figure;
hold on;
% WGS84 Referenzellipsoid
[XI,YI,ZI] = ellipsoid(0,0,0,a,a,b,36);
h1 = surf(XI,YI,ZI);
axis equal;
[eX,eMap]=imread('World_11511.gif');
warp(XI,YI,ZI,rot90(eX,2),eMap)

% ECEF Koordinaten
lamda = zeros(size(Lat,2));
phi = zeros(size(Lat,2));
N = zeros(size(Lat,2));
ECEF = zeros(size(Lat,2),2);
for i=1:size(Lat,2)
    lamda(i) = Long(i)*pi/180;
    phi(i) = Lat(i)*pi/180;

    N(i)=a/sqrt(1-e^2*sin(lamda(i))^2);

    ECEF(i,1) = (N(i)+h)*cos(phi(i))*cos(lamda(i)); % x
    ECEF(i,2) = (N(i)+h)*cos(phi(i))*sin(lamda(i)); % y
    ECEF(i,3) = (N(i)*(1-e^2)+h)*sin(phi(i));       % z
   
    % plot points
    h2 = plot3(ECEF(i,1),ECEF(i,2),ECEF(i,3), 'ro');
    set(h2, 'MarkerEdgeColor','r','MarkerFaceColor','k','MarkerSize',5);

end
 


Lg Michael

World_11511.gif
 Beschreibung:

Download
 Dateiname:  World_11511.gif
 Dateigröße:  22.92 KB
 Heruntergeladen:  743 mal

_________________

-------------------------
Best Regards
Michael Sams
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.