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

3D Plot

 

Optik3D

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.01.2010, 15:54     Titel: 3D Plot
  Antworten mit Zitat      
Hallo,

ich betreibe 3D Formerfassung. Als Messergebnis habe ich eine Punktwolke vom Messobjekt. Diese möchte ich in MatLab grafisch anzeigen. Ich kann mit plot3 das machen. Aber ich brauche eine Funktion, die durch diese Punkte eine Fläche legt. Außerdem wäre es super wenn MatLab die Fläche farblich darstellt, um die Tiefen farblich erkennen zu können.

Weiß jemand wie das geht?

Danke. Gruß,
Artur


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.01.2010, 16:21     Titel:
  Antworten mit Zitat      
Hallo,

soll die Fläche die Punkte interpolieren oder quasi glätten?
Im ersten Fall könnte interp2 oder griddata helfen, im letzteren z.B. das Surface Fitting Tool (aus der Curve Fitting Toolbox).

In welcher Form liegen deine Daten vor? Als Vektoren x, y, z?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Optik3D

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.01.2010, 16:25     Titel:
  Antworten mit Zitat      
Die Daten liegen als x,y, z in einem Array vor. Ich würde gerne verschiedene Methoden ausprobieren. Könntest du bitte helfen, wie genau kann ich diese Funktionen implementieren. Ich habe leider noch nicht viel Erfahrung mit MatLab. Danke!!
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.01.2010, 16:35     Titel:
  Antworten mit Zitat      
Hallo,

schau dir doch bitte mal die Hilfe zu den genannten Befehlen an, insbesondere zu griddata. Da ist ja quasi ein fertiges Beispiel, das (wenn ich das richtig liege) genau dein Problem anspricht. Sollte es da Verständnisprobleme geben, kannst du gerne Fragen dazu stellen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Optik3D

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.01.2010, 16:40     Titel:
  Antworten mit Zitat      
Danke!!!

Eine Verständnisfrage... was macht meshgrid? Und wie soll man die Parameter von meshgrid auslegen?
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.01.2010, 17:01     Titel:
  Antworten mit Zitat      
Hallo,

ich will dich jetzt nicht auf die Hilfe von meshgrid verweisen Wink
Was es macht: es erzeugt aus den x- und y-Vektoren, die du angibst, Gittermatrizen, die als Ausgangspunkt für meshgrid dienen. Die Parameter solltest du in Abhängigkeit der x- und y-Vektoren wählen, z.B. so:

Code:
xi = linspace(min(x), max(x), 100);
yi = linspace(min(y), max(y), 100);
[XI,YI] = meshgrid(xi,yi);
ZI = griddata(x,y,z,XI,YI);
mesh(XI,YI,ZI), hold
plot3(x,y,z,'o'), hold off


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Optik3D

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.01.2010, 17:59     Titel:
  Antworten mit Zitat      
Super! Vielen Dank!

Gibt es eine einfache Möglichkeit: die Punkte, die im Abstand von > 10 von Nachbarpunkten liegen, herauszuschmeissen?
 
Harald
Forum-Meister

Forum-Meister


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

etwas wirklich einfaches fällt mir nicht ein. Wieviele Punkte sind es denn? Anders gefragt: wäre eine for-Schleife über alle Punkte, die den minimalen Abstand zu anderen Punkten findet, möglich?

Grüße,
Harald
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.