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

"begrenzen" von ebenen

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.10.2016, 13:40     Titel: "begrenzen" von ebenen
  Antworten mit Zitat      
Moin.

folgende aufgabe:

Ich habe ein CAD Modell, von dem die Oberflächen durch ein Dreiecksgitter angenähert sind. Als 1. Eingabe für mein MAtlab script hab ich nun die Eckpunkte der besagten Dreiecke. (Als Matrix [X;Y;Z] und jeweils 3 aufeinander folgende Punkte definieren ein Dreieck)

Als 2. Eingabe habe ich eine Punktwolke. (Als 3 einzelne Vektoren)

nun soll ich von jedem Punkt den kürzesten Abstand zur nächsten ebene(Dreieck) berechnen, um zu schauen, wie gut die Punktwolke sich an das CAD Modell fittet.

Ich definiere nun alle gegebenen Dreiecke durch ebenen und bestimme mir für jeden der Punkte den minimalen Abstand zur nächsten Ebene. (über Normalenvektoren)

Mein Problem ist jetzt dass die ebenen unendlich groß sind, und so zb auch Punkte zu Ebenen gefittet werden, zu denen sie gar nicht gehören.

gibt es in Matlab eine Möglichkeit die Ausmaße der eben zu begrenzen? bzw kann ich mir aus den 3 Punkten Dreiecke definieren und muss nicht über den Zusatzschritt der ebenen gehen?

Ich hoffe das war irgendwie verständlich
Danke schonmal im Voraus


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 24.10.2016, 17:01     Titel: Re: "begrenzen" von ebenen
  Antworten mit Zitat      
Hallo Anonymous,

Du kannst Dir zu jedem Punkt das Dreieck suchen, das am nächsten liegt, indem Du den Abstand zwischen dem Punkt und der Ebene berechnest.
Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.10.2016, 15:19     Titel:
  Antworten mit Zitat      
ja genau, das habe ich bereits getan.

Das Problem ist, dass ich die Dreiecke als ebenen definiert habe, das bedeutet sie sind unendlich groß.

liegt nun beispielsweise ein Punkt in einer Gegend, die ich "vergessen" habe durch ein Dreieck anzunähern sollte sein Fehlerwert vergleichsweise Groß sein.
Da nun aber die anderen Ebenen unendlich groß sind, kommt der Punkt meist irgendeiner Ebene nah, und wird mir deshalb nicht als Fehler angezeigt.

relevant dafür ist vielleicht noch, das es sich um sehr viele Dreiecke (730) und Punkte (235.000) handelt.
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 25.10.2016, 18:45     Titel:
  Antworten mit Zitat      
Hallo Anonymous,

Zitat:
Das Problem ist, dass ich die Dreiecke als ebenen definiert habe, das bedeutet sie sind unendlich groß.

Aber Du hast schon noch die Koordinaten der Ecken der Dreiecke zur Verfügung, oder?
Zum Glückist 730 Flächen und 235'000 Punkte nicht sehr viel, so dass man das auch ohne besonders smarter Methoden lösen kann.

Vielleicht hilft Dir dies: https://www.mathworks.com/matlabcen.....oint-and-a-triangle-in-3d

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



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.10.2016, 14:23     Titel:
  Antworten mit Zitat      
Jo die habe ich, habe mir darüber Verbindungsvektoren berechnet, normalenvektor bestimmt, und aus dem die ebene. Das war eventuell etwas überflüssig :'D

Danke dir, ich gucke mal drüber
 
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.