Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

ws1920:tag_03

Dies ist eine alte Version des Dokuments!



Dritter Tag

20.03.2020

<< | Home | Code

[11:35 Uhr] Heute wird die Analyse der Zellen vorangetrieben und versucht, Scutoids farblich zu markieren. Die Idee hierfür ist, ein Scutoid insofern zu klassifizieren:

  • Die Mesh muss watertight sein, um überhaupt als Volumen zu gelten
  • Zwei Deckflächen, die mit allen anderen Seiten verbunden sind, außer der „Scutellum“-Dreiecksseite

Viel mehr gibt es heute nicht zu sagen…

[16:00 Uhr] Leider funktioniert die automatische Analyse noch nicht, dafür funktioniert die Klassifizierung eines Meshes als watertight einwandfrei. Dies Funktion iteriert über alle Flächen des Volumens und testet, ob jeder Kante an genau zwei Seiten anschließt. Dann handelt es sich um ein (in unserem Falle) watertightes Mesh. Dies funktioniert natürlich nur, weil wir ausschließlich Oberflächen-Meshes verwenden, die sich keine Eigen-Intersections beinhalten und auch keine Flächen im Inneren aufweisen.

def watertightTest(faces):
    #   wenn jede Edge mindestens zu genau zwei Flächen zugeordnet ist, ist eine Mesh watertight (in diesem Fall)
 
    for face in faces:
 
        for a in range(0, len(face)):
 
            if (a == len(face)-1): b = 0
            else: b = a+1
 
            enthalten  = False                
            for face02 in faces:
                if (face != face02):
                    if ((face[a] in face02) and (face[b] in face02)): enthalten = True
            if (enthalten == False):
                print(">> ",a,b)
                print(face[a], face[b])
                return False                          
 
    return True
ws1920/tag_03.1584717344.txt.gz · Zuletzt geändert: 2020/03/20 16:15 von Zetraeder