κυρτών και σύνθετων σωμάτων

Σχετικά έγγραφα
Απαλλακτική Εργασία Γραφικά & Εικονική Πραγματικότητα. Παπαπαύλου Χρήστος ΑΜ: 6609

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΣΧΕ ΙΑΣΗΣ ΠΡΟΪΟΝΤΩΝ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ. Αλγόριθµοι Ανίχνευσης Συγκρούσεων και Εφαρµογή σε Γεωµετρικά Μοντέλα CAD

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗ-ΨΗΦΙΑΚΗ ΣΥΝΘΕΣΗ ΕΙΚΟΝΩΝ Διδάσκων: Ν. ΝΙΚΟΛΑΙΔΗΣ

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Εφαρμοσμένα Μαθηματικά ΙΙ

Μη γράφετε στο πίσω μέρος της σελίδας

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

HY Λογική Διδάσκων: Δ. Πλεξουσάκης Εαρινό Εξάμηνο. Φροντιστήριο 6

Μεταπτυχιακό Πρόγραμμα Φυσικού Τμήματος «Υπολογιστική Φυσική» Θέμα εργασίας στο A Μέρος του μαθήματος «Προσομοίωση Χαοτικών Συστημάτων»

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

3. Γραμμικά Συστήματα

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Μέθοδοι πολυδιάστατης ελαχιστοποίησης

Διάλεξη 1 - Σημειώσεις 1

Συμπίεση Δεδομένων

Μη γράφετε στο πίσω μέρος της σελίδας

Π(n) : 1 + a + + a n = an+1 1 a 1. a 1. + a k+1 = ak+2 1

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

Σφαίρα σε ράγες: Η συνάρτηση Lagrange. Ν. Παναγιωτίδης

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

Άσκηση 8 9. Ιδια με την άσκηση 8, αλλά τώρα η συνισταμένη έχει αντίθετη κατεύθυνση.

Εφαρμοσμένα Μαθηματικά ΙΙ

Κεφάλαιο 7. Τρισδιάστατα Μοντέλα

ΚΕΦΑΛΑΙΟ 3. Περιγραφή της Μεθόδου ΠΕΡΙΓΡΑΦΗ ΤΗΣ ΜΕΘΟΔΟΥ

Στ Τάξη. Α/Α Μαθηματικό περιεχόμενο Δείκτες Επιτυχίας Ώρες Διδ. 1 ENOTHTA 1

Διασυνδεδεμένες Δομές. Δυαδικά Δέντρα. Προγραμματισμός II 1

Γραφικά και Εικονική Πραγματικότητα Απαλλακτική εργασία Παπαπαύλου Χρήστος ΑΜ: 6609

ΚΕΦΑΛΑΙΟ 4. Ακέραια Πολύεδρα

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Εντολές επανάληψης Εντολές επανάληψης while for do-while ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Παράδειγμα #1 Εντολή while

Επαναληπτικές Διαδικασίες

ΣΧΕΔΙΑΣΗ ΜΗΧΑΝΟΛΟΓΙΚΩΝ ΚΑΤΑΣΚΕΥΩΝ ΜΕ Η/Υ (Computer Aided Design)

Π(n) : 1 + a + + a n = αν+1 1

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

Πληροφορική 2. Αλγόριθμοι

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου

5269: Υπολογιστικές Μέθοδοι για Μηχανικούς Συστήματα Γραμμικών Αλγεβρικών Εξισώσεων

5269: Υπολογιστικές Μέθοδοι για Μηχανικούς Συστήματα Γραμμικών Αλγεβρικών Εξισώσεων

Και τα στερεά συγκρούονται

Ειδικά θέματα Πληροφορικής Κινηματογραφίας

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δομές Δεδομένων και Αλγόριθμοι

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)

(Γραμμικές) Αναδρομικές Σχέσεις

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

έντρα ιδάσκοντες:. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

(Γραμμικές) Αναδρομικές Σχέσεις

Μ Α Θ Η Μ Α Τ Ι Κ Α Α Γ Υ Μ Ν Α Σ Ι Ο Υ

Αντικείμενα και γεωμετρικοί μετασχηματισμοί

ΤΕΧΝΙΚΗ ΜΗΧΑΝΙΚΗ Ι ΕΙΣΑΓΩΓΙΚΕΣ ΕΝΝΟΙΕΣ- ΥΝΑΜΕΙΣ ΣΤΟ ΕΠΙΠΕ Ο ΚΑΙ ΣΤΟ

(Γραμμικές) Αναδρομικές Σχέσεις

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές

Το Πρόβλημα του Περιοδεύοντος Πωλητή - The Travelling Salesman Problem

Δυναμικός Προγραμματισμός

MPEG-4: Διαδραστικές εφαρμογές πολυμέσων

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

ιδάσκοντες: Φ. Αφράτη,. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Αριθμητική Ανάλυση και Εφαρμογές

Αλγόριθμοι και Πολυπλοκότητα

Παράλληλοι Αλγόριθμοι: Ανάλυση Εικόνας και Υπολογιστική Γεωμετρία. Πέτρος Ποτίκας CoReLab 4/5/2006

Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 6: Προτασιακός Λογισμός: Μέθοδος Επίλυσης Τμήμα Επιστήμης Υπολογιστών

Εισαγωγή στην Πληροφορική

) = Απόσταση σημείου από ευθεία. Υπολογισμός Εμβαδού Τριγώνου. και A

ΑΤΕΙ ΠΕΙΡΑΙΑ/ ΣΤΕΦ 15/10/2012 ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΑΠΑΝΤΗΣΕΙΣ ΓΡΑΠΤΗΣ ΕΞΕΤΑΣΗΣ ΣΤΗ ΦΥΣΙΚΗ

Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών

Θεωρία Πληροφορίας. Διάλεξη 4: Διακριτή πηγή πληροφορίας χωρίς μνήμη. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

MPEG-4 : Διαδραστικές εφαρμογές πολυμέσων

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 2 : Αλγόριθμοι. Δρ. Γκόγκος Χρήστος

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ

Με τη σύμβαση της «κινηματικής αλυσίδας», ο μηχανισμός αποτυπώνεται σε πίνακα παραμέτρων ως εξής:

Σημειώσεις του μαθήματος Μητρωϊκή Στατική

ΠΑΡΟΥΣΙΑΣΗ ΣΤΑΤΙΣΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ

Δυναμικός Προγραμματισμός

Μετασχηματισμοί Μοντελοποίησης (modeling transformations)

Ερώτημα 1. Μας δίνεται μια συλλογή από k ακολοθίες, k >=2 και αναζητούμε το πρότυπο Ρ, μεγέθους n.

Κεφάλαιο 6. Μέθοδοι επίλυσης προβλημάτων ακέραιου προγραμματισμού

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

Θέμα 1. με επαυξημένο 0 1 1/ 2. πίνακα. και κλιμακωτή μορφή αυτού

Εισαγωγή στη Διαδικασία Ιεραρχικής Ανάλυσης. Ρόκου Έλενα Μεταδιδακτορική Ερευνήτρια ΕΜΠ Κηρυττόπουλος Κωνσταντίνος Επ.

Σφαίρα σε ράγες: Η συνάρτηση Lagrange. Ν. Παναγιωτίδης

Ε.Α.Υ. Υπολογιστική Όραση. Κατάτμηση Εικόνας

Διδακτικά προβλήματα σχετικά με την έννοια της επανάληψης

Μηχανολογικό Σχέδιο με τη Βοήθεια Υπολογιστή. Αφφινικοί Μετασχηματισμοί Αναπαράσταση Γεωμετρικών Μορφών

Το μοντέλο Perceptron

8.1 Διαγωνοποίηση πίνακα

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Εντολές for, while, do-while Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

n, C n, διανύσματα στο χώρο Εισαγωγή

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

Υπολογιστική Νοημοσύνη. Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks

Ζητήματα ηήμ με τα δεδομένα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων

MBR Ελάχιστο Περιβάλλον Ορθογώνιο (Minimum Bounding Rectangle) Το µικρότερο ορθογώνιο που περιβάλλει πλήρως το αντικείµενο 7 Παραδείγµατα MBR 8 6.

Σωστή απάντηση το: Γ. Απάντηση

Γ. Κορίλη Αλγόριθµοι ροµολόγησης

Να γράψετε τα αποτελέσματα αυτού του αλγόριθμου για Χ=13, Χ=9 και Χ=22. Και στις 3 περιπτώσεις το αποτέλεσμα του αλγορίθμου είναι 1

Συνδυαστική Απαρίθμηση

Transcript:

Τ.Ε.Ι. Αθηνών τμήμα Πληροφορικής Διπλωματική εργασία Ανίχνευση συγκρούσεων σε σκηνές 3Δ κυρτών και σύνθετων σωμάτων Κόνιαρης Χαράλαμπος Επιβλέπων καθηγητής : Δρ. Ιωάννης Πρατικάκης

Περιληπτικά (1) Γενικά για την ανίχνευση συγκρούσεων σε 3Δ Αντικείμενα, αναπαραστάσεις & έννοιες Σχήματα & μετασχηματισμοί Αναπαραστάσεις Κυρτός φλοιός Όγκοι οριοθέτησης Φάσεις ανίχνευσης συγκρούσεων Ευρεία φάση Στενή φάση ερωτήματα εγγύτητας

Περιληπτικά (2) Ανίχνευση συγκρουσεων μεταξύ κυρτών αντικειμένων Μέθοδος άξονα διαχωρισμού Υποστηρικτικές αντιστοιχίσεις Άθροισμα / διαφορά Minkowski Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA Ανίχνευση συγκρούσεων μεταξύ σύνθετων αντικειμένων

Περιληπτικά (3) Κατασκευή ιεραρχίας ΑΑΒΒ Έλεγχος τομής ιεραρχιών Επαναυπολογισμός ιεραρχιών Ανίχνευση συγκρούσεων μεταξύ κυρτών & σύνθετων αντικειμένων Απόκριση συγκρούσεων Επίλογος

Γενικά για την ανίχνευση συγκρούσεων σε 3Δ Ανάγκη ρεαλισμού σε αναπαράσταση αλληλεπίδρασης αντικειμένων σε 3Δ σκηνές Ανάγκη υπολογιστικής ισχύος ανάλογη με απαιτούμενη ακρίβεια Ποικιλία σε υλοποιήσεις ανάλογα με τους τύπους αναπαράστασης των αντικειμένων

Σχήματα & μετασχηματισμοί (1) Τύποι σχημάτων & κατηγοριοποίησή τους

Σχήματα & μετασχηματισμοί (2) Σύνολο συσχετισμένων μετασχηματισμών & υποσύνολά του

Αναπαραστάσεις Διαφορετική αναπαράσταση από αυτή του υποσυστήματος γραφικών Αναπαράσταση Winged Edge Πλήθος πληροφοριών Αναπαράσταση Dobkin - Kirkpatrick Μόνο σε κυρτά, πολύ γρήγορη για εύρεση υποστηρικτικών αντιστοιχίσεων,

Αναπαράσταση Dobkin Kirkpatrick (DK) Πολυεπίπεδος γράφος, απλοποίηση του σχήματος ανα επίπεδο

Αναπαράσταση Dobkin Kirkpatrick (DK) Πολυεπίπεδος γράφος, απλοποίηση του σχήματος ανα επίπεδο

Αναπαράσταση Dobkin Kirkpatrick (DK) Πολυεπίπεδος γράφος, απλοποίηση του σχήματος ανα επίπεδο

Κυρτός φλοιός (Convex Hull) Ελάχιστο κυρτό σχήμα που εσωκλείει ένα σύνολο σημείων

Κυρτός φλοιός (Convex Hull) Ελάχιστο κυρτό σχήμα που εσωκλείει ένα σύνολο σημείων

Όγκοι οριοθέτησης (Bounding Volumes) Χρήση ανάλογα με τις ανάγκες της εκάστοτε εφαρμογής Τα πιο συνηθισμένα : σφαίρες και κουτιά (ευθυγραμμισμένα ή όχι στους άξονες)

Σφαίρες οριοθέτησης Ακριβός υπολογισμός τους Αμετάβλητες υπό περιστροφές Φθηνός έλεγχος σύγκρουσης μεταξύ σφαιρών

Προσανατολισμένα κουτιά οριοθέτησης (ΟΒΒs) Ακριβός υπολογισμός τους Εσωκλείουν πολύ καλά το σχήμα

Κουτιά οριοθέτησης ευθυγραμμισμένα στους άξονες (ΑΑΒΒs) Φθηνός υπολογισμός τους Δεν εσωκλείουν πολύ καλά το σχήμα

Φάσεις ανίχνευσης συγκρούσεων Ευρεία φάση : ανίχνευση & επιλογή ζευγών σχημάτων πιθανών για σύγκρουση Στενή φάση : ανίχνευση σύγκρουσης μεταξύ δύο σχημάτων ερωτήματα εγγύτητας

Ευρεία φάση Ανάγκη εύρεσης υπολογισμού των ζευγών σε χρόνο μικρότερο της τάξης Ο(n 2 ) Αλγόριθμος Sweep & Prune

Ερωτήματα εγγύτητας Στενή φάση Εύρεση κοινών σημείων Εύρεση επιπέδου/άξονα διαχωρισμού Υπολογισμός ελάχιστης απόστασης & πλησιέστερων σημείων Υπολογισμός βάθους διαπέρασης & σημείων μαρτύρων

Ανίχνευση συγκρούσεων μεταξύ κυρτών σχημάτων Μέθοδος άξονα διαχωρισμού

Ανίχνευση συγκρούσεων μεταξύ κυρτών σχημάτων Μέθοδος άξονα διαχωρισμού

Ανίχνευση συγκρούσεων μεταξύ κυρτών σχημάτων Μέθοδος άξονα διαχωρισμού

Ανίχνευση συγκρούσεων μεταξύ κυρτών σχημάτων Μέθοδος άξονα διαχωρισμού

Ανίχνευση συγκρούσεων μεταξύ κυρτών σχημάτων Υποστηρικτικές αντιστοιχίσεις

Ανίχνευση συγκρούσεων μεταξύ κυρτών σχημάτων Υποστηρικτικές αντιστοιχίσεις

Άθροισμα / διαφορά Minkowski Άθροισμα Minkowski Minkowski : A + B = { a+ b: a A, b B} A B A + B

Άθροισμα / διαφορά Minkowski Διαφορά Minkowski Minkowski : A B = { a b: a A, b B} = A + ( B) Α Β Α - Β

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK 1. Αρχικοποίηση του συνόλου Q με ένα σημείο (Q 1 ) 2. D = - Q 1 3. Εύρεση A = support_point(d) 4. Αν Α Q ή Α όχι πιο ακραίο απ το τελευταίο σημείο του συνόλου Q, έξοδος (όχι σύγκρουση) 5. Q = Q + {A} 6. Αν ο κυρτος φλοιός του Q περιέχει την αρχή των αξόνων,έξοδος (σύγκρουση) 7. Αφαίρεση από το Q των σημείων εκείνων που δεν ανήκουν στο σχήμα (γραμμή για 2Δ / τρίγωνο για 3Δ) το οποίο απέχει λιγότερο από την αρχή των αξόνων και υπολογισμός του D ως ένα κάθετο διάνυσμα στο σχήμα αυτό & με φορά προς την αρχή των αξόνων 8. Επιστροφή στο βήμα 3

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (1) 1. Αρχικοποίηση του συνόλου Q με ένα σημείο (Q 1 ) Q 1 C

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (2) 2. D = - Q 1 3. Εύρεση A = support_point(d) 4. Αν Α Q ή Α όχι πιο ακραίο απ το τελευταίο σημείο του συνόλου Q, έξοδος (όχι σύγκρουση) 5. Q = Q + {A} Q 1 C Q 2

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (3) 6. Αν ο κυρτος φλοιός του Q περιέχει την αρχή των αξόνων,έξοδος (σύγκρουση) 7. Υπολογισμός του D ως ένα κάθετο διάνυσμα στο σχήμα αυτό & με φορά προς την αρχή των αξόνων Q 1 D C Q 2

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (4) 8. Επιστροφή στο βήμα 3 3. Εύρεση A = support_point(d) 4. Αν Α Q ή Α όχι πιο ακραίο απ το τελευταίο σημείο του συνόλου Q, έξοδος (όχι σύγκρουση) 5. Q = Q + {A} Q 1 C Q 3 Q 2

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (5) 6. Αν ο κυρτος φλοιός του Q περιέχει την αρχή των αξόνων,έξοδος (σύγκρουση) 7. Αφαίρεση από το Q των σημείων εκείνων (Q 2 ) που δεν ανήκουν στο σχήμα (γραμμή για 2Δ / τρίγωνο για 3Δ) το οποίο απέχει λιγότερο από την αρχή των αξόνων και υπολογισμός του D ως ένα κάθετο διάνυσμα στο σχήμα αυτό & με φορά προς την αρχή των αξόνων Q 1 C D Q 3

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (6) 8. Επιστροφή στο βήμα 3 3. Εύρεση A = support_point(d) 4. Αν Α Q ή Α όχι πιο ακραίο απ το τελευταίο σημείο του συνόλου Q, έξοδος (όχι σύγκρουση) 5. Q = Q + {A} Q 1 C Q 4 Q 3

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (7) 6. Αν ο κυρτος φλοιός του Q περιέχει την αρχή των αξόνων,έξοδος (σύγκρουση) 7. Αφαίρεση από το Q των σημείων εκείνων (Q 1 ) που δεν ανήκουν στο σχήμα (γραμμή για 2Δ / τρίγωνο για 3Δ) το οποίο απέχει λιγότερο από την αρχή των αξόνων και υπολογισμός του D ως ένα κάθετο διάνυσμα στο σχήμα αυτό & με φορά προς την αρχή των αξόνων C Q 4 D Q 3

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (8) 8. Επιστροφή στο βήμα 3 3. Εύρεση A = support_point(d) 4. Αν Α Q ή Α όχι πιο ακραίο απ το τελευταίο σημείο του συνόλου Q, έξοδος (όχι σύγκρουση) C A = Q 4 ή Q 3 Q 4 D Q 3

Εύρεση ελαχιστης απόστασης - Αλγόριθμος GJK (8) 8. Επιστροφή στο βήμα 3 3. Εύρεση A = support_point(d) 4. Αν Α Q ή Α όχι πιο ακραίο απ το τελευταίο σημείο του συνόλου Q, έξοδος (όχι σύγκρουση) ΤΕΛΟΣ! C A = Q 4 ή Q 3 Q 4 D Ελάχιστη απόσταση = D Q 3

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA 1. Αρχικοποίηση του συνόλου W με τα σημεία του συνόλου Q στον αλγόριθμο GJK τη στιγμή τερματισμού του 2. Υπολογισμός ελαχίστου μήκους διανύσματος D, από κάθε πλευρά του σχήματος του W ως την αρχή των αξόνων 3. Α = support_point(-d) 4. Αν A D = 2 D τότε έξοδος 5. Q = Q +{A} 6. Επιστροφή στο βήμα 2

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA (1) 1. Αρχικοποίηση του συνόλου W με τα σημεία του συνόλου Q στον αλγόριθμο GJK τη στιγμή τερματισμού του Q 1 C Q 2 Q 3

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA (2) 2. Υπολογισμός ελαχίστου μήκους διανύσματος D, από κάθε πλευρά του σχήματος του W ως την αρχή των αξόνων Q 1 C Q 2 D Q 3

Εύρεση βάθους διαπέρασης - 3. Α = support_point(-d) 4. Αν A D = 2 D τότε έξοδος 5. Q = Q +{A} 6. Επιστροφή στο βήμα 2 Αλγόριθμος EPA (3) Q 1 C Q 2 Α D Q 4 Q 3

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA (4) 2. Υπολογισμός ελαχίστου μήκους διανύσματος D, από κάθε πλευρά του σχήματος του W ως την αρχή των αξόνων Q 1 Q 2 D C Q 4 Q 3

Εύρεση βάθους διαπέρασης - 3. Α = support_point(-d) 4. Αν A D = 2 D τότε έξοδος 5. Q = Q +{A} 6. Επιστροφή στο βήμα 2 Αλγόριθμος EPA (5) Q 5 Α Q 1 Q 2 C D Q 4 Q 3

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA (6) 2. Υπολογισμός ελαχίστου μήκους διανύσματος D, από κάθε πλευρά του σχήματος του W ως την αρχή των αξόνων Q 5 Q 1 Q 2 C Q 4 D Q 3

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA (7) 3. Α = support_point(-d) 4. Αν A D = D 2 τότε έξοδος Q 5 Q 1 Q 2 C Q 4 D Α Q 3

Εύρεση βάθους διαπέρασης - Αλγόριθμος EPA (7) 3. Α = support_point(-d) 4. Αν A D = D 2 τότε έξοδος Q 5 Q 1 Q 2 ΤΕΛΟΣ! C Q 4 D Α Βάθος διαπέρασης = D Q 3

Ανίχνευση συγκρούσεων μεταξύ σύνθετων αντικειμένων Χρήση ιεραρχιών αποτελούμενων από όγκους οριοθέτησης για διαμέριση των αντικειμένων Ιεραρχίες από δυαδικά δέντρα Ποικιλία τύπων όγκων οριοθέτησης ανάλογα με τη χρήση για την οποία προορίζονται Αν δύο όγκοι οι οποίοι είναι φύλλα σε δεντρα δύο αντικειμένων συγκρούονται, τότε μόνο εξετάζονται τα εσωκλειόμενα σχήματα για σύγκρουση

Κατασκευή ιεραρχίας ΑΑΒΒ Αναδρομική διαδικασία : ξεκινώντας από το αρχικό ΑΑΒΒ, κάθε φορά χωρίζεται σε δύο μικρότερα, ύστερα παρομοίως για καθένα από τα δύο, κ.ο.κ. Ο αλγόριθμος τερματίζει όταν κατασκευαστούν τόσα ΑΑΒΒs, όσα & τα πρωτογενή σχήματα του αντικειμένου(1:1 αντιστοιχία).

Κατασκευή ιεραρχίας ΑΑΒΒ - αλγόριθμος Είσοδος : σύνολο πρωτογενών σχημάτων, W 1. Υπολογισμός ΑΑΒΒ του W & έυρεση άξονα Α μεγίστου μήκους 2. Αν το W αποτελείται από ένα πρωτογενές, έξοδος (κόμβος φύλλο) 3. Διαχωρισμός των πρωτογενών του W στο θετικό & αρνητικό ημισδιάστημα, στα οποία είναι κάθετος ο Α 4. Επανάληψη αλγορίθμου για καθένα από τα δύο υποσύνολα

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος Παράδειγμα διαμέρισης αντικειμένου σε ιεραρχία ΑΑΒΒ

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (1) Υπολογισμός του ΑΑΒΒ του αντικειμένου & εύρεση μεγαλύτερου άξονα Α

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (1) Υπολογισμός του ΑΑΒΒ του αντικειμένου & εύρεση μεγαλύτερου άξονα Α Α

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (2) Διαχωρισμός των πρωτογενών στα δύο ημιδιαστήματα (+ & -) Α

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (2) Διαχωρισμός των πρωτογενών στα δύο ημιδιαστήματα (+ & -) Α

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (2) Διαχωρισμός των πρωτογενών στα δύο ημιδιαστήματα (+ & -) Α s 2 > s 1 s 1 s 2

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (2) Διαχωρισμός των πρωτογενών στα δύο ημιδιαστήματα (+ & -) Α s 2 > s 1 s 1 s 2

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (3) Υπολογισμός του ΑΑΒΒ του θετικού υποσυνόλου & εύρεση μεγαλύτερου άξονα Α

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (4) Διαχωρισμός των πρωτογενών στα δύο ημιδιαστήματα (+ & -)

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (5) Υπολογισμός του ΑΑΒΒ του θετικού υποσυνόλου & εύρεση μεγαλύτερου άξονα Α

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (6) Παρομοίως με τα προηγούμενα

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (7) Παρομοίως με τα προηγούμενα

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (8) Παρομοίως με τα προηγούμενα

Κατασκευή ιεραρχίας ΑΑΒΒ αλγόριθμος (8) Όλα πλέον τα ΑΑΒΒs περικλείουν από ένα πρωτογενές σχήμα ΤΕΛΟΣ!

Έλεγχος τομής ιεραρχιών ΑΑΒΒ Γρήγοροι έλεγχοι καθώς τα AABBs είναι ευθυγραμμισμένα στους άξονες Πολλοί έλεγχοι καθώς το ταίριασμα των AABBs δεν είναι πολύ καλό Υπολογίζεται αναδρομικά : Αν υπάρχει σύγκρουση μεταξύ δύο AABBs, αυτό με το μικρότερο όγκο ελέγχεται για σύγκρουση με τα δύο παιδιά του άλλου Σε περίπτωση σύγκρουσης μεταξύ φύλλων, καλείται εξειδικευμένος αλγόριθμος για τα δύο περικλειόμενα σχήματα

Έλεγχος τομής ιεραρχιών ΑΑΒΒ - αλγόριθμος Είσοδος : δύο κόμβοι Α, Β 1. Αν τα ΑΑΒΒs των Α, Β δε συγκρούονται, επέστρεψε ψευδές 2. Αν Α, Β φύλλα, κάλεσε αλγόριθμο ανίχνευσης σύγκρουσης για τα εσωκλειόμενα σχήματα 3. Αν όγκος_ααββ ΑΑΒΒ(Α) ) < όγκος_ααββ ΑΑΒΒ(Β) ή Α = φύλλο, αντιμετάθεσε τους κόμβους 4. Αν το Β βρίσκεται στο θετικό ημιδιάστημα του Α, επέστρεψε το αποτέλεσμα (Result) της διαδικασίας με ορίσματα το θετικό παιδί του Α & το Β 5. Αν Result = ψευδές, έξοδος & επιστροφή του αποτελέσματος της διαδικασίας με ορίσματα το αρνητικό παιδί του Α & το Β 6. Επέστρεψε αληθές

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (1) Παράδειγμα ελέγχου τομής ιεραρχιών

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (2)

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (3)

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (4)

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (5)

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (6)

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (7)

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (8) Και τα δύο ΑΑΒΒs είναι τελικοί κόμβοι στην ιεραρχία

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (8) Έλεγχος τομής μεταξύ των περιεχόμενων πρωτογενών σχημάτων

Έλεγχος τομής ιεραρχιών ΑΑΒΒ (8) ΤΕΛΟΣ!

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ Φθηνός υπολογιστικά συγκριτικά με μεθόδους για άλλους όγκους οριοθέτησης Δε χρειάζεται να ξαναυπολογιστεί η ιεραρχία από την αρχή Αρκεί να υπολογιστούν ξανά μόνο τα ΑΑΒΒs των τελικών κόμβων Υπολογίζεται ως η αναδρομική ένωση των νέων ΑΑΒΒs, από τους τελικούς κόμβους ως τη ρίζα του δέντρου

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ - αλγόριθμος Είσοδος : κόμβοι Α, Β Χ.box : το ΑΑΒΒ του κόμβου Χ 1. Αν Α εσωτερικός κόμβος, θέσε ως Α.box το αποτέλεσμα της διαδικασίας με ορίσματα τα παιδιά του Α 2. Αν Β εσωτερικός κόμβος, θέσε ως Β.box το αποτέλεσμα της διαδικασίας με ορίσματα τα παιδιά του Β 3. Αν Α φύλλο, υπολόγισε το Α.box 4. Αν B φύλλο, υπολόγισε το B.box 5. Επέστρεψε το ΑΑΒΒ που εσωκλείει τα ΑΑΒΒs των Α & Β

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος Αρχικά, το σχήμα πριν μεταβληθεί

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος Αρχικά, το σχήμα πριν μεταβληθεί

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος Το σχήμα υφίσταται μετασχηματισμό περιστροφής, οπότε η ιεραρχία πρέπει να επαναυπολογιστεί

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (1) Αρχικά υπολογίζονται τα ΑΑΒΒs στους κόμβους - φύλλα

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (2) Μετά από κάποιες επαναλήψεις, αθροίζονται τα ΑΑΒΒs των φύλλων για να σχηματίσουν τα ΑΑΒΒs του αμέσως ανώτερου επιπέδου

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (3) Η διαδικασία συνεχίζεται..

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (4) Η διαδικασία συνεχίζεται..

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (5) Η διαδικασία συνεχίζεται..

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (6) Η διαδικασία τελειώνει με τη κατασκευή του ΑΑΒΒ του κόμβου - ρίζας

Επαναυπολογισμός ιεραρχιών ΑΑΒΒ αλγόριθμος (6) Η διαδικασία τελειώνει με τη κατασκευή του ΑΑΒΒ του κόμβου - ρίζας ΤΕΛΟΣ!

Ανίχνευση συγκρούσεων μεταξύ κυρτών & σύνθετων αντικειμένων Μπορεί να θεωρηθεί ως ιδιαίτερη περίπτωση ανίχνευσης σύγκρουσης μεταξύ σύνθετων αντικειμένων Το κυρτό θεωρείται ως μοναδικός κόμβος - φύλλο μιας ιεραρχίας

Απόκριση συγκρούσεων Αμοιβαίο συμπλήρωμα της ανίχνευσης συγκρούσεων Δεδομένα εισόδου της τα δεδομένα εξόδου της ανίχνευσης συγκρούσεων Συνήθης η εξομοίωση φυσικής απόκρισης σωμάτων Ποικιλία τύπων απόκρισης ανάλογα με την απαιτούμενη περίσταση

Απόκριση συγκρούσεων Υλοποίηση συστήματος με μονοσήμαντες σχέσεις μεταξύ τύπων αντικειμένων nn ( 1) Αν n το πλήθος των αντικειμένων, ανάγκη για 2 βάσεις με δεδομένα απόκρισης, μία για κάθε ζεύγος αντικειμένων Αν t το πλήθος των τύπων αντικειμένων, υλοποίηση t αποκρίσεων για κάθε τύπο αντικειμένου

Απόκριση συγκρούσεων Δεδομένα απόκρισης nn ( 1) 2 Πλήθος αντικειμένων n Αποκρίσεις t 2 Πλήθος τύπων αντικειμένων t

Απόκριση συγκρούσεων Δεδομένα απόκρισης nn ( 1) 2 ( n 1):2 Πλήθος αντικειμένων n Αποκρίσεις t 2 t :1 1: kk, 1, n t Πλήθος τύπων αντικειμένων t 1 i = k i = n

Επίλογος Προσέγγιση ανίχνευσης συγκρούσεων από αλγεβρική σε γεωμετρική περισσότερο διαισθητική, ελαχιστοποίηση αριθμητικών σφαλμάτων Δυσκολία ανάπτυξης γενικευμένου συστήματος ανίχνευσης συγκρούσεων, υλοποιήσεις ανάλογα με τις εκάστοτε ανάγκες Ανίχνευση συγκρούσεων μεταξύ έυκαμπτων σχημάτων & μεταξύ των δομικών μονάδων του ίδιου αντικειμένου ως παραπλήσια θέματα έρευνας Ανίχνευση συγκρούσεων συνεχής στο χρόνο, υπό διάφορους τύπους συσχετισμένων μετασχηματισμών των αντικειμένων, ως επίσης παραπλήσιο θέμα έρευνας