Απεικόνιση καμπυλών και επιφανειών

Σχετικά έγγραφα
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗ-ΨΗΦΙΑΚΗ ΣΥΝΘΕΣΗ ΕΙΚΟΝΩΝ Διδάσκων: Ν. ΝΙΚΟΛΑΙΔΗΣ

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

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

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

Βασικές Γνώσεις Μαθηματικών Α - Β Λυκείου

Καμπύλες και επιφάνειες

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

ds ds ds = τ b k t (3)

Απεικόνιση δεδομένων (data visualization)

ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ B ΤΑΞΗΣ. χρησιμοποιήσουμε καθημερινά φαινόμενα όπως το θερμόμετρο, Θετικοί-Αρνητικοί αριθμοί.

ΓΥΜΝΑΣΙΟ ΠΟΛΕΜΙΔΙΩΝ ΣΧ. ΧΡΟΝΙΑ

4.5.6 ΡΗΤΑ ΠΟΛΥΩΝΥΜΙΚΑ ΤΜΗΜΑΤΑ Η ΑΠΕΙΚΟΝΙΣΗ ΣΗΜΕΙΟΥ ΜΕ ΒΑΡΟΣ ΤΟ ΚΥΚΛΙΚΟ ΤΜΗΜΑ

14 η εβδομάδα (26/01/2017) Έγιναν οι ασκήσεις 28, 29 και 30. Έγινε επανάληψη στη Θεωρία Καμπυλών και στη Θεωρία Επιφανειών.

Σημειώσεις Μαθηματικών 1

(2) Θεωρούµε µοναδιαία διανύσµατα α, β, γ R 3, για τα οποία γνωρίζουµε ότι το διάνυσµα

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

X v (q) = ( x v (q), y v (q), z v (q) ) x u (q) y u (q) z u (q) x v (q) y v (q) z v (q) X 1 u (q) X 1. det. X 2 u (q) X 2. v (q)

Να επιλύουμε και να διερευνούμε γραμμικά συστήματα. Να ορίζουμε την έννοια του συμβιβαστού και ομογενούς συστήματος.

14 η εβδομάδα (27/01/2017) Έγιναν οι ασκήσεις 39, 41 και 42. Έγινε επανάληψη και λύθηκαν ερωτήματα και απορίες.

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

Επαναληπτικό Διαγώνισμα Μαθηματικών Θετικής-Τεχνολογικής Κατεύθυνσης Β Λυκείου

MAΘΗΜΑΤΙΚΑ. κριτήρια αξιολόγησης B ΓΥΜΝΑΣΙΟΥ. Πέτρος Μάρκος

ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ. Λογισμός ΙΙ. Χρήστος Θ. Αναστασίου Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μαθηματική Ανάλυση ΙI

b proj a b είναι κάθετο στο

Ημερολόγιο μαθήματος

Διαφορικός Λογισμός πολλών μεταβλητών

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

ΑΠΕΙΡΟΣΤΙΚΟΣ ΛΟΓΙΣΜΟΣ ΙΙΙ Χειμερινό εξάμηνο Ασκήσεις 1.

Ορισμένες σελίδες του βιβλίου

ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ. Ημερομηνία: Πέμπτη 12 Απριλίου 2018 Διάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ

ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΕΥΘΥΝΣΗΣ

ΑΝΑΛΥΣΗ ΙΙ- ΜΗΧΑΝΟΛΟΓΟΙ ΜΗΧΑΝΙΚΟΙ ΦΥΛΛΑΔΙΟ 1/2012

I.3 ΔΕΥΤΕΡΗ ΠΑΡΑΓΩΓΟΣ-ΚΥΡΤΟΤΗΤΑ

5 ΑΝΑΛΥΤΙΚΗ ΓΕΩΜΕΤΡΙΑ

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

Σημειώσεις για το μάθημα "Σχεδίαση με υπολογιστές και δίκτυα παραγωγής (CAD/CAM)"

ΔΙΑΝΥΣΜΑΤΑ ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΑΡΙΘΜΟΥ ΜΕ ΔΙΑΝΥΣΜΑ. ΘΕΜΑ 2ο

Γραφικά Υπολογιστών: Spline Αναπαραστάσεις

Περιεχόμενα. Κεφάλαιο 1 ΣΥΣΤΗΜΑΤΑ ΣΥΝΤΕΤΑΓΜΕΝΩΝ ΣΕ ΜΙΑ ΕΥΘΕΙΑ Οι συντεταγμένες ενός σημείου Απόλυτη τιμή...14

Κεφάλαιο 1 Συστήματα γραμμικών εξισώσεων

ΠΕΡΙΕΧΟΜΕΝΑ KΕΦΑΛΑΙΟ 1 ΣΤΟΙΧΕΙΑ ΔΙΑΦΟΡΙΚΩΝ ΕΞΙΣΩΣΕΩΝ 1

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

ισδιάστατοι μετασχηματισμοί ΚΕΦΑΛΑΙΟ 4: ισδιάστατοι γεωμετρικοί μετασχηματισμοί

ΑΝΑΛΥΣΗ ΙΙ- ΜΗΧΑΝΟΛΟΓΟΙ ΜΗΧΑΝΙΚΟΙ ΦΥΛΛΑΔΙΟ 1/ Στον Ευκλείδειο χώρο ορίζουμε τις νόρμες: 0 2 xx, που ισχύει.

ΜΑΣ 371: Αριθμητική Ανάλυση ΙI ΑΣΚΗΣΕΙΣ. 1. Να βρεθεί το πολυώνυμο Lagrange για τα σημεία (0, 1), (1, 2) και (4, 2).

5ο Μάθημα Αλγόριθμοι Σχεδίασης Βασικών Σχημάτων

I.3 ΔΕΥΤΕΡΗ ΠΑΡΑΓΩΓΟΣ-ΚΥΡΤΟΤΗΤΑ

ΘΕΩΡΙΑ Β ΓΥΜΝΑΣΙΟΥ. Μια παράσταση που περιέχει πράξεις με μεταβλητές (γράμματα) και αριθμούς καλείται αλγεβρική, όπως για παράδειγμα η : 2x+3y-8

Τράπεζα Θεμάτων Διαβαθμισμένης Δυσκολίας-Μαθηματικά Ομάδας Προσανατολισμού Θετικών Σπουδών ΟΜΑΔΑΣ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΘΕΤΙΚΩΝ ΣΠΟΥΔΩΝ Β Λ Υ Κ Ε Ι Ο Υ

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (Εξ. Ιουνίου - 02/07/08) ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ

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

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

ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΘΕΤΙΚΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΤΗΣ Β ΛΥΚΕΙΟΥ

ΜΕΘΟΔΟΣ ΠΕΠΕΡΑΣΜΕΝΩΝ ΣΤΟΙΧΕΙΩΝ

Άλγεβρα 1 ο Κεφάλαιο ... ν παράγοντες

ΕΠΙΦΑΝΕΙΕΣ ΔΕΥΤΕΡΟΥ ΒΑΘΜΟΥ

ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2018 ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΕΥΘΥΝΣΗΣ

Οδηγίες για το Geogebra Μωυσιάδης Πολυχρόνης Δόρτσιος Κώστας

ΜΑΘΗΜΑΤΙΚΑ ΘΕΤΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ ΛΥΜΕΝΕΣ & ΑΛΥΤΕΣ ΑΣΚΗΣΕΙΣ. Επιμέλεια: Γ. Π. Βαξεβάνης (Γ. Π. Β.

Συνοπτική Θεωρία Μαθηματικών Α Γυμνασίου

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Μέθοδος Ελαχίστων Τετραγώνων (για την προσαρμογή (ή λείανση) δεδομένων/μετρήσεων)

Κεφάλαιο 4: Στοιχεία της εκδοχής hp της ΜΠΣ στις 2- διαστάσεις

ΓΥΜΝΑΣΙΟ ΚΑΣΤΕΛΛΑΝΩΝ ΜΕΣΗΣ ΑΛΓΕΒΡΑ

ΣΤΟΙΧΕΙΑ ΙΑΝΥΣΜΑΤΙΚΟΥ ΛΟΓΙΣΜΟΥ

12. Το εμβαδόν ενός τριγώνου ΑΒΓ είναι ίσο με

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ. ΕΝΟΤΗΤΑ: Διανύσματα στους Rn, Cn, διανύσματα στο χώρο (1) ΔΙΔΑΣΚΩΝ: Βλάμος Παναγιώτης ΙΟΝΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Γ. Ν. Π Α Π Α Δ Α Κ Η Σ Μ Α Θ Η Μ Α Τ Ι Κ Ο Σ ( M S C ) ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ. ΠΡΟΓΡΑΜΜΑ: Σπουδές στις Φυσικές Επιστήμες

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

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

π (α,β). Έστω τα διανύσματα π (α,β) να βρεθούν:

Μαθηματικά Προσανατολισμού Β Λυκείου Ασκήσεις από την Τράπεζα θεμάτων Ευθεία Εξίσωση ευθείας

Εισαγωγή στην Αριθμητική Ανάλυση

Α ΜΕΡΟΣ - ΑΛΓΕΒΡΑ. Α. Οι πραγματικοί αριθμοί και οι πράξεις τους

ΑΛΓΕΒΡΑ Α Τάξης Ημερησίου ΓΕΛ

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

ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΘΕΤΙΚΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΤΗΣ Β ΛΥΚΕΙΟΥ

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

Εφαρμοσμένα Μαθηματικά ΙΙ 4ο Σετ Ασκήσεων (Λύσεις) Διπλά Ολοκληρώματα Επιμέλεια: Ι. Λυχναρόπουλος

Τράπεζα συναρτήσει των διανυσμάτων α,β,γ. Μονάδες 13 β) να αποδείξετε ότι τα σημεία Α, Β, Γ είναι συνευθειακά. Μονάδες 12

Μ Α Θ Η Μ Α Τ Ι Κ Α Γ ΓΥΜΝΑΣΙΟΥ ΖΕΡΒΟΣ ΜΑΝΟΛΗΣ

B ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ. Ημερομηνία: Τετάρτη 12 Απριλίου 2017 Διάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ

Σημειώσεις Μαθηματικών 1

{ } S= M(x, y,z) : x= f (u,v), y= f (u,v), z= f (u,v), για u,v (1.1)

1.1 ΟΡΙΣΜΟΙ, ΣΤΟΙΧΕΙΩΔΗΣ ΠΡΟΣΕΓΓΙΣΗ

Μαθηματικά Θετικής Τεχνολογικής Κατεύθυνσης Β Λυκείου

Σύντομος οδηγός αναφοράς Για Windows Έκδοση 4.0

Απειροστικός Λογισμός ΙΙΙ Υποδείξεις - Συχνά Λάθη

, ο αριθμός στον οποίο αντιστοιχεί ο 2 καλείται δεύτερος όρος της ακολουθίας και τον συμβολίζουμε συνήθως με

μαθηματικά β γυμνασίου

ΠΕΡΙΕΧΟΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΟΡΘΟΓΩΝΙΩΝ ΣΥΝΤΕΤΑΓΜΕΝΩΝ...23 ΑΠΟΛΥΤΗ ΤΙΜΗ. ΑΝΙΣΟΤΗΤΕΣ...15 ΚΕΦΑΛΑΙΟ 3 ΕΥΘΕΙΕΣ...32 ΚΕΦΑΛΑΙΟ 4 ΚΥΚΛΟΙ...43

από t 1 (x) = A 1 x A 1 b.

ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ

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

Θέματα Εξετάσεων Σεπτεμβρίου 2012:

1 ΘΕΩΡΙΑΣ...με απάντηση

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

Transcript:

Απεικόνιση καμπυλών και επιφανειών Αφού μοντελοποιήσουμε τα αντικείμενα αλληλεπιδραστικά με καμπύλες και επιφάνειες πρέπει να τα απεικονίσουμε Αν χρησιμοποιούμε ray tracing πρέπει να υπολογίσουμε τομές των ακτινών με τις επιφάνειες Εκτός από τα quadrics η εύρεσητωντομών απαιτεί επίλυση μη γραμμικών εξισώσεων υψηλού βαθμού.

Απεικόνιση καμπυλών και επιφανειών Εναλλακτικά μπορούμε να υπολογίσουμε σημεία των καμπυλών και επιφανειών και να τις προσεγγίσουμε με ευθύγραμμα τμήματα ή πολύγωνα που ορίζονται από τα σημεία αυτά.

Υπολογισμός των τιμών πολυωνύμων pu ( ) n = k = 0 k uck Υπολογισμός των τιμών της p(u) σε σύνολο τιμών u k του u και χρήση πολυγωνικής γραμμής (GL_LINE_STRIP) για προσέγγιση και απεικόνιση. Απλός αλλά «ακριβός» τρόπος: χρήση του ορισμού

Υπολογισμός των τιμών πολυωνύμων Ομαδοποίηση των υπολογισμών, μέθοδος Horner Για n=3 p( u) = c0 + u( c1+ u( c2+ uc3)) Πολλαπλασιασμούς όσους και o βαθμός n του πολυωνύμου Αν τα u k είναι ισαπέχοντα (u k+1 -u k =h) μπορώ να χρησιμοποιήσω τη μέθοδο των πρόσω διαφορών (forward differences) για να υπολογίσω τα p(u κ ) με Ο(n) προσθέσεις, χωρίς πολλαπλασιασμούς.

Υπολογισμός των τιμών πολυωνύμων p p 0 Δ ( uk) = ( uk) 1 Δ p( uk) = p( uk+ 1) p( uk) m+ 1 m m Δ p uk =Δ p uk+ 1 Δ p uk ( ) ( ) ( ) Για πολυώνυμο βαθμού n το Δ n p(u k ) ίδιο για όλα τα u k Βασιζόμαστε σε αυτό για να υπολογίσουμε τα p(u k ) Χρειαζόμαστε τις n+1 πρώτες τιμές p(u 0 ), p(u 1 ).. p(u n ) για τον υπολογισμό του Δ n p(u k )

Υπολογισμός των τιμών πολυωνύμων n=3

Αναδρομική υποδιαίρεση καμπυλών Bezier Δεν απαιτείται ποτέ ο υπολογισμός τιμών του πολυωνύμου από τον ορισμό, χρησιμοποιούνται μόνο οι τιμές των σημείων ελέγχου Το πολυώνυμο Βezier πάντα εντός του convex hull. Υποδιαιρώ το p(u) σε δύο επίσης κυβικά πολυώνυμα l(u), r(u) u l =2u p u r =2u p -1

Αναδρομική υποδιαίρεση καμπυλών Bezier Κάθε νέο πολυώνυμο έχει 4 σημεία ελέγχου {l 0, l 1, l 2, l 3 }, {r 0, r 1, r 2, r 3 } που ορίζουν και το convex hull του. Τα νέα convex hulls εντός του αρχικού.

Αναδρομική υποδιαίρεση καμπυλών Bezier Για κάθε τμήμα ελέγχω πόσο «ευθύγραμμο» είναι Πόσο αποκλίνουν τα l 1, l 2 από το ευθ. τμήμα που ορίζεται από τα l 0, l 3 Αν είναι αρκετά επίπεδο το παριστάνω με το ευθύγραμμο τμήμα l 0, l 3 Αν όχι το υποδιαιρώ περαιτέρω Δεν χρειάζεται να υπολογίσω τιμές του πολυωνύμου, υπολογίζω μόνο νέα σημεία ελέγχου από τα προηγούμενα

Αναδρομική υποδιαίρεση καμπυλών Bezier Πως υπολογίζουμε τα νέα σημεία ελέγχου? T T p( u) = u M p= b( u) p B 3 (1 u) 2 T 3 u(1 u) b( u) = MBu= 2 3 u (1 u) 3 u

Αναδρομική υποδιαίρεση καμπυλών Bezier Το l(u), πρέπει να περνάει από τα p(0), p(1/2) l(0) = l0 = p0 l(1) = l = p(1/ 2) = (1/ 8)( p + 3p + 3 p + p ) 3 0 1 2 3 H κλίση του l(u), πρέπει να είναι ίδια με του p(u) στα p(0), p(1/2) u l =2u p και du l =2du p l'(0) = 3( l1 l0) = p'(0) = (3/ 2)( p1 p0) l'(1) = 3( l l ) = p'(1/ 2) = (3 / 8)( p p + p + p ) 3 2 0 1 2 3

Αναδρομική υποδιαίρεση καμπυλών Bezier Γεωμετρικός υπολογισμός Ταυτόχρονος και για τα δύο τμήματα. Υπολογισμός μόνο με shifts και προσθέσεις

Αναδρομική υποδιαίρεση επιφανειών Bezier Επέκταση της υποδιαίρεσης καμπυλών: Χωρισμός της επιφάνειας σε 4 επιφάνειες και υπολογισμός των 16 σημείων ελέγχου για κάθε υπο-επιφάνεια Εργάζομαι σε δύο βήματα: Υποδιαίρεση προς την κατεύθυνση του v των 4 καμπυλών που ορίζόνται για σταθερό u=0, 1/3, 2/3, 1 7 σημεία ελέγχου (παλιά και καινούργια) για κάθε καμπύλη

Αναδρομική υποδιαίρεση επιφανειών Bezier

Αναδρομική υποδιαίρεση επιφανειών Bezier Υποδιαίρεση προς την κατεύθυνση του u των 7 καμπυλών που ορίζόνται για σταθερό v από τα νέα σημεία 7 σημεία ελέγχου (παλιά και καινούργια) για κάθε καμπύλη. Συνολικά 49 σημεία ελέγχου που χωρίζονται σε 4 ομάδες των 16 (με επικαλύψεις) για την κατασκευή των 4 υπο-επιφανειών.

Αναδρομική υποδιαίρεση επιφανειών Bezier

Απεικόνιση άλλων τύπων καμπυλών με χρήση αναδρομικής υποδιαίρεσης Ευκολία/ταχύτητα της μεθόδου αναδρομικής υποδιαίρεσης για τα Bezier Κάθετύποςκαμπύληςμπορείναμετατραπεί σε άλλο τύπο με επιλογή νέων, κατάλληλων σημείων ελέγχου. Μετατρέπω πολυώνυμα παρεμβολής & spline σε Bezier και τα απεικονίζω με αναδρομική υποδιαίρεση.

Μετατροπή τύπων καμπύλης p( u) = T u MBp T p( u) = u Mq p = M Mq 1 B Από τα q της αρχικής μορφής υπολογίζω τα p της μορφής Bezier με την χρήση των κατάλληλων πινάκων

Επιφάνειες 2ου βαθμού (Quadrics) Επιφάνειες σε πεπλεγμένη μορφή με όρους x i y j z k και άθροισμα δυνάμεων μικρότερο ή ίσο του 2 Ελλειψοειδή, ελλειπτικοί κώνοι (κώνοι με τομή έλλειψη) & κύλινδροι, παραβολοειδή, υπερβολοειδή 2 2 2 a x + 2a xy+ a y + 2a yz+ a z + 2a xz+ bx+ b y+ b z+ c= 0 11 12 22 23 33 13 1 2 3

Επιφάνειες 2ου βαθμού (Quadrics) Παράσταση σε τετραγωνική μορφή T T pap+ bp+ c = 0 a a 11 12 a13 b1 x A= a a 12 22 a23, b 2, y b= p= a b 13 a23 a 33 3 z Μετασχηματισμός σε τυπική μορφή για κατάταξη σε κάποια οικογένεια Ευθυγράμμιση των αξόνων με τους άξονες συντεταγμένων. Συνδυασμός περιστροφής και μετατόπισης

Επιφάνειες 2ου βαθμού (Quadrics) Αντικατάσταση p=mp +d Ο A αντικαθίσταται από τον D=M T AM Ο M μπορεί να επιλεγεί ώστε ο νέος πίνακας να είναι διαγώνιος Τα στοιχεία του D χαρακτηρίζουν τον τύπο του quadric

Απεικόνιση αλγεβρικών επιφανειώνquadrics Ηαπεικόνισηquadrics με ray tracing εύκολη, ητομήμεευθεία(ακτίνα) υπολογίζεται απλά p(a)=p 0 +ad Αντικατάσταση στην εξίσωση του quadric δίνει εξίσωση 2oυ βαθμού ως προς το a. 0, 1, 2 λύσεις. Κάθετο διάνυσμα n=2ap+b

Απεικόνιση αλγεβρικών επιφανειώνquadrics Ανάλογη μέθοδο για εύρεση τομής με επιφάνειες μεγαλύτερου βαθμού Για όρους x i y j z k μπορώ να έχω μέχρι και ι+j+k σημεία τομής. Υπολογισμός δύσκολος, με αριθμητικές μεθόδους.

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

Αναδρομική υποδιαίρεση καμπυλών και επιφανειών Κάθε νέα πολυγωνική καμπύλη βελτίωση της προηγούμενης. Σταματάω όταν πετύχω την ομαλότητα που χρειάζομαι για την συγκεκριμένη εφαρμογή. Γενίκευση σε άλλα είδη καμπυλών Αντίστοιχα και για επιφάνειες-αναδρομική υποδιαίρεση για προσέγγιση σφαίρας. Προσέγγιση γενικής επιφάνειας με πολυγωνικό πλέγμα συνεχώς υποδιαιρούμενο.

Αναδρομική υποδιαίρεση καμπυλών και επιφανειών Γεωμετρικά απλή σύλληψη αλλά δύσκολη στην μαθηματική της έκφραση και στην ανάλυση/υλοποίηση Πως αποθηκεύουμε τα νέα σημεία και πως τα συμβολίζουμε Δυσκολία στην γενική περίπτωση πολυγωνικού πλέγματος (όχι μόνο τρίγωνα) Κενά στο σχήμα

Αναδρομική υποδιαίρεση καμπυλών και επιφανειών Πλειάδα μεθόδων για δημιουργία/αναπαράσταση καμπυλών με υποδιαίρεση

Καμπύλες και επιφάνειες στην OpenGL Η OpenGL υποστηρίζει καμπύλες και επιφάνειες Bezier Evaluators: μηχανισμός υπολογισμού σημείων στις Bezier. Μπορούμε να δημιουργήσουμε σημεία άλλων ειδών καμπυλών & επιφανειών μετατρέποντας τες σε Bezier Υπολογισμός σημείων ελέγχου Bezier.

Καμπύλες και επιφάνειες στην OpenGL Evaluators μιας διάστασης: μια παράμετρος u Δημιουργία 1, 2, 3, 4-διαστατων δεδομένων Καμπύλες σε 2, 3 & 4 (ομογενείς) διατάσεις Κάθετα διανύσματα Χρώματα RGBA, συντεταγμένες υφής Evaluators δύο διαστάσεων: δύο παράμετροι u, v Επιφάνειες σε 3 & 4 (ομογενείς) διατάσεις

Evaluators 1 διάστασης glmap1f(type, u_min, u_max, stride, order, point_array) Type: είδος δεδομένων που θα μας δώσει ο evaluator GL_MAP1_VERTEX_3: x,y,z GL_MAP1_VERTEX_4: x,y,z,w GL_MAP1_NORMAL: κάθετα διανύσματα GL_MAP1_COLOR4: RGBA

Evaluators 1 διάστασης u_min, u_max: όρια της παραμέτρου u Order: τάξη πολυωνύμου (βαθμός+1 ) point_array: σημεία ελέγχου (όσα και η τάξη) διάσταση: αντίστοιχα με τον τύπο Stride: απόσταση δεδομένων στον πίνακα που αντιστοιχούν σε διαδοχικά σημεία ελέγχου. Μπορούμε να ορίσουμε και να χρησιμοποιήσουμε πολλούς evaluators ταυτόχρονα (σημεία και κάθετα διανύσματα)

Καμπύλες Bezier τάξης n (βαθμού n-1) Ορίζονται από n σημεία ελέγχου p 0 p n-1 Η καμπύλη κείται εντός του convex hull των σημείων ελέγχου, έχει αρχή το p 0 και τέλος το p n-1, και τα εφαπτόμενα διανύσματα στο p 0 και στο p n-1 είναι ίδιας διεύθυνσης και φοράς με τα p 1 - p 0 και p n-1 p n-2 p n 1 n 1 ( u) = Bi ( u) i= 0 p i

Evaluators 1 διάστασης Ενεργοποίηση: glenable(type) Υπολογισμός τιμής της καμπύλης για συγκεκριμένο u: glevalcoord1f(u) Μπορεί να αντικαταστήσει εντολές glvertex, glcolor, glnormal ανάλογα με το type.

Evaluators 1 διάστασης Σχεδίαση πολυγωνικής γραμμής 100 σημείων που προσεγγίζει καμπύλη Bezier στο u=[0,1] glbegin(gl_line_strip) For(i=0;i<100;i++) glevalcoord1f((float)i/100) glend

Evaluators 1 διάστασης Aν οι τιμές του u όπου επιθυμώ υπολογισμό τηςκαμπύληςείναιισαπέχουσες: glmapgrid1f(points,u_min,u_max) glevalmesh1(gl_line,p_min,p_max) Εναλλακτικά: GL_POINT

Evaluators 2 διαστάσεων glmap2f(type, u_min, u_max, ustride, uorder, v_min, v_max, vstride, vorder, point_array) Type: ίδιο με των evaluators 1 διάστασης, αντί για MAP1 MAP2 Για δικυβική Βezier επιφάνεια στο [0,1]x[0,1] (16 σημεία ελέγχου) glmap2f(gl_map2_vertex_3, 0, 1, 3, 4, 0,1, 12, 4, point_array)

Evaluators 2 διαστάσεων Για πλέγμα For(j=0;j<100;j++){ glbegin(gl_line_strip); For(i=0;i<100;i++) glevalcoord2f(i/100, j/100); glend(); glbegin(gl_line_strip); For(i=0;i<100;i++) glevalcoord2f(j/100, i/100); glend(); }

Evaluators 2 διαστάσεων Για ομοιόμορφο πλέγμα (τιμές των u,v όπου επιθυμώ υπολογισμό της επιφάνειας είναι ισαπέχουσες): glmapgrid2f(u_points,u_min,u_max, v_points,v_min,v_max) glevalmesh2(gl_line,u_p_min,u_p_max, v_p_min,v_p_max) Εναλλακτικά: GL_POINT, GL_FILL

Evaluators 2 διαστάσεων Αυτόματος υπολογισμός κάθετων διανυσμάτων της επιφάνειας καθώς χρησιμοποιούνται οι evaluators: glenable(gl_auto_normal)

Quadrics και OpenGL Υποστήριξη στην GLU: κύλινδροι, σφαίρες, δακτυλίους GLUQuadricObj *p; p=glunewquadric(); gluquadricdrawstyle(p,glu_line); glucylinder(p,τop_radius, BOTTOM_RADIUS, HEIGHT, 5,5) Κύλινδρος με κέντρο την αρχή και άξονα τον y, απεικονισμένος με wireframe