testen ob punkt(x,y,z) in Volumen (diagonal geteilter Quader) liegt



  • hi,

    ich bin grad vor den kopf geschlagen. wie teste ich denn ob ein beliebiger punkt P element R3 in einem Volumen liegt?
    Bei mir ist in diesem fall ein extruiertes Dreieck ("Dreieck parallelverschoben in die Höhe" oder "diagonal geteilter Quader)

    gibts einen analytischen ansatz?

    vielen Dank

    gm



  • Gehirnmann! schrieb:

    hi,

    ich bin grad vor den kopf geschlagen. wie teste ich denn ob ein beliebiger punkt P element R3 in einem Volumen liegt?
    Bei mir ist in diesem fall ein extruiertes Dreieck ("Dreieck parallelverschoben in die Höhe" oder "diagonal geteilter Quader)

    gibts einen analytischen ansatz?

    vielen Dank

    gm

    Dazu fällt mir so auf die schnelle folgendes ein:

    1.) Testen, ob der Strahl von P in umgekehrter Extrusionsrichtung das Grunddreieck schneidet. Wenn nein, dann liegt der Punkt nicht im Volumen.

    2.) Wenn Ja, dann Länge des Liniensegments P bis Schnittpunkt mit Grunddreieck berechnen und überprüfen, ob die Länge größer als die Extrusionslänge ist. Wenn ja, dann liegt der Punkt nicht im Volumen. Ansonsten liegt der Punkt im Volumen.



  • läßt sich sowas nicht verallgemeinern?
    sowas wie:
    darstellung als doppelintergral, testen ob im lösungsintervall?
    (nur so ne dumme idee)



  • Gehirnmann! schrieb:

    läßt sich sowas nicht verallgemeinern?
    sowas wie:
    darstellung als doppelintergral, testen ob im lösungsintervall?
    (nur so ne dumme idee)

    Keine Ahnung, Integrale habe ich nach dem Studium ganz schnell wieder vergessen. 😃

    Anderer Ansatz wäre:

    Punkte des Dreiecks: A, B, C

    4 Vektoren: V1 = A->B, V2 = B->C, V3 = C->A, VE = Extrusionsvektor

    Dann muß für jeden Punkt im Volumen gelten:

    V1 * u + V2 * v + VE * w = P
    V2 * u + V3 * v + VE * w = P
    V3 * u + V1 * v + VE * w = P

    wobei jeweils gelten muss: u, v > 0 und <= 1 und w >= 0 und <= 1 und Verhältnis u zu v = Verhältnis der Entsprechenden Längen der Dreiecksseiten.

    Ähmmm, okay, bin kein Mathe-Genie, ich hoffe du weißt was ich meine.

    Allgemeingültig für jedes Volumen ist mir eindeutig zu hoch. 😉



  • Ähm, kurze Anmerkung: nur eine der drei obigen Gleichungen muß mit den angegeb. Bedingungen erfüllt sein.



  • Ähm, kurze Anmerkung: nur eine der drei obigen Gleichungen muß mit den angegeb. Bedingungen erfüllt sein.



  • Sorry, hab grade auf dem Heimweg nochmal darüber nachgedacht und bin zu dem Ergebnis gekommen, dass das Schwachsinn war. 😉

    Alle drei Gleichungen müssen zutreffen unter folgenden Bedingungen:

    u, v, w >=0 und <=1



  • man kann nat. allgemein argumentieren; in diesem speziellen fall kommt man aber schneller ans ziel, wenn man sich die speziellen eigenschaften des körpers zunutze macht. ein '(flächen-)'diagonalgeteiletr quader besitzt ja jede menge rechte winkel, also kommt mittels skalarprodukt ohne umwege sehr schnell zum ziel:

    die grundfläche sei das dreieck ABC, der rechte winkel des dreickes sei in Punkt A.

    zunächst ergänzen wir den körper wieder zum Quader.
    zu entscheiden ob P im Quader liegt, ist sehr leicht, wegen der rechten winkel. es muss gelten:

    0APABAB20\le\overline{AP}*\overline{AB}\le\|\overline{AB}\|^2
    0APACAC20\le\overline{AP}*\overline{AC}\le\|\overline{AC}\|^2
    0APAEAE20\le\overline{AP}*\overline{AE}\le\|\overline{AE}\|^2

    um zu unterscheiden, ob P im abgeschnittenen teil des körpers liegt oder im verbleibenden teil, betrachtet man noch einmal die projektionen von P auf AB und AC; es muss gelten:

    APABAB2+APACAC21\frac{\overline{AP}*\overline{AB}}{\|\overline{AB}\|^2}+\frac{\overline{AP}*\overline{AC}}{\|\overline{AC}\|^2}\le 1


Log in to reply