Verfasst am: 03.04.2019, 13:05
Titel: Linie einer bestimmten Länge zwischen 2 Punkten plotten
Hallo zusammen,
ich suche nach einer Möglichkeit in Matlab eine Linie einer bestimmten Länge (z. B. 10 mm) auf einer bereits bestehenden Linie, die zwei Punkte verbindet zu zeichen (im 3D-Raum). Im eingefügten Codebeispiel wird eine Linie zwischen zwei gegebenen Punkten erstellt. Wie kann ich eine zusätzliche Linie drauflegen, die beispielsweie bei Punkt x0,y0,z0 beginnt, aber nur eine festgelegte Länge hat, anstatt beide Punkte zu verbinden. Gibt es hierfür eine Matlab-Funktion?
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
vielen Dank für Ihre Antwort. Ich habe die "norm"-Funktion, die die euklidische Norm des Vektors liefert, für meinen Anwendungszweck ausprobiert. Leider bringt die Funktion nicht die gewünschten Ergebnisse. Der Term nvec = norm(p1 - p0); liefert den Betrag des Vektors (also seine Länge). Die Länge habe ich bereits gegeben und suche die dazugehörigen x-, y- und z-Koordinate, die allerdings nicht irgendwo im Raum liegen sollten, sondern genau auf der bereits geplotteten Linie zwischen den Punkten x0, y0, z0 und x1, y1, z1. Wenn ich zu dem Punkt p0 das Produkt aus der Länge (ich gehe davon aus, dass hier die gewünschte Länge gemeint ist) und dem normierten Vektor addiere, dann bekomme ich x-, y- und z-Koordinate eines Punktes, der weit außerhalb liegt und die gewünschten Bedingunen nicht erfüllt. Ich kann es auch nicht ganz nachvollziehen aus welchem Grund die Länge mit der normierten Länge multipliziert werden soll. Eventuell habe ich Ihren Ansatz nicht ganz richtig verstanden. Im Anhang schicke ich einen Plot, in dem ich die Linie mit einem Zeichenprogramm angedeutet habe, wie sie positioniert werden soll.
Vielleicht hätten Sie weitere Ansätze bzw. Tipps.
Vielen Dank im Voraus und viele Grüße
Anna12
Beispiel.png
Beschreibung:
Die neue Linie soll eine definierte Länge, besitzen, die bereits gegeben ist und genau auf der Verbindungslinie zwischen den zwei Punkten liegen.
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
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
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.