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

xyz-Koordinaten eines Punktes der zwischen 2 Punkten liegt

 

DINA4

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.01.2011, 17:30     Titel: xyz-Koordinaten eines Punktes der zwischen 2 Punkten liegt
  Antworten mit Zitat      
Moin,

ich sitz da so ein bischen auf dem Schlauch und würde mich freuen wenn mir da einer einen Tip geben kann. Ich hab 2 Punkte im 3d-Raum.

z.B.:
Code:


pos1=[2  0  0.3]; %alles in Meter
pos2=[0  0  1  ]; %alles in Meter

 


Auf der Geraden der diese zwei Punkte verbindet, soll ein Punkt, der von pos2 startet, um 1 Meter in Richtung pos1 bewegen und als Ergebnis hätte ich dann gerne wieder XYZ-Koordinaten. Mir fällt dazu leider nichts ein. Bin für jeden Tip dankbar.

mfg


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 05.01.2011, 20:06     Titel: Re: xyz-Koordinaten eines Punktes der zwischen 2 Punkten lie
  Antworten mit Zitat      
Hallo DINA4,

Zitat:
Code:

pos1=[2  0  0.3]; %alles in Meter
pos2=[0  0  1  ]; %alles in Meter
 

Auf der Geraden der diese zwei Punkte verbindet, ...

Wie lautet denn die Gleichung für die Grade durch die beiden Punkte? Dafür brauchst Du die Verbindungslinie zwischen den Punkten. Und die sollte am besten noch auf 1 normiert sein.
Wenn Du nun vom Punkt pos2 entlang der Linie einen Meter entlang gehst, hast Du Deine Lösung.
Aber eventuell die falsche! Du mußt noch prüfen, ob Du in die falsche Richtung gelaufen bist.

Zitat:
Mir fällt dazu leider nichts ein.

Ich würde mal vermuten, Du solltest irgendetwas über Geradengleichungen gehört haben, oder?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.01.2011, 20:22     Titel:
  Antworten mit Zitat      
Hallo,

ich mag ja falsch liegen, aber das sollte doch nun wirklich kein Prob sein?

Code:
pos3 = pos2 + (pos1-pos2)/norm(pos1-pos2)*1

*1 ist der Klarheit halber eingefügt, kann aber natürlich weggelassen werden.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 05.01.2011, 21:43     Titel:
  Antworten mit Zitat      
Hallo Harald,

Ich glaube schon, dass Du recht hast. Ich vermute, Du hast damit DINA4's Hausaufgabe vollständig gelöst. Und das Problem könnte darin liegen, dass er oder sie Matlab lernt, bevor Vektorrechnen in der Schule gelehrt worden ist. Oder?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.01.2011, 22:34     Titel:
  Antworten mit Zitat      
Jan - I see your point...

Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 05.01.2011, 23:01     Titel:
  Antworten mit Zitat      
Hallo DINA4,

Wo lag also das Problem genau?
Vielleicht kannst Du ja noch Harald's "norm(pos1-pos2)" ohne das Matlab-Kommando NORM berechnen. Dann würde auch Dein Mathe- oder Informatik-Lehrer nicht behaupten, Du hättest die Lösung einfach nur abgeschrieben.

@Harald: Es wäre praktisch, wenn die Fragenden kurz umreißen, auf welchem Stand sie sich befinden. "Ich bin in der vierten Klasse und spiele gerade am Computer meiner Mutter" würde ganz andere Antworten produzieren als "Zum Abschluß meiner Doktorarbeit über numerische Methoden in der Hochenergie-Physik...". Aber wenn goMatlab eine solche Klassifizierung erstellen würde, käme gleich wieder irgendein Innenminister und würde sie in seine Anti-Terror-Datei integrieren wollen ;-)

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
DINA4

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.01.2011, 01:17     Titel:
  Antworten mit Zitat      
Hätte mal vorher das verstaubte Mathebuch auspacken sollen als hier zu Posten. Das war ja erschreckend einfach^^. Bin halt schon länger aus der Mathematik raus und der super Programmierer bin ich auch nicht.
Trotzdem danke für die Hilfe.

Hier der Code den ich für die Lösung brauche und es waren keine Hausaufgaben Wink

Code:
 

p1=[2  0  0.3]; %alles in Meter
p2=[0  0  1  ]; %alles in Meter

abstandp1p2=norm(p1-p2); % Abstand von p1 zu p2

Stecke=1; % in Meter (darf nicht laenger sein als abstandp1p2)

p3=p1+(p2-p1)*(1/norm(p1-p2)*Strecke); % Punkt zwischen p1 und p2

 
 
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.