Κατασκευή Έλλειψης σε Ψηφιακό περιβάλλον διαφορετικό από αυτό που μας κληροδότησε ο Ευκλείδης (Κωνικές Τομές – Έλλειψη)

του Νίκου Δαπόντε

Το project αναρτήθηκε στην «Κοινότητα του Scratch» το 2013
https://scratch.mit.edu/projects/10348403/  (Μεταμορφώσεις μιας έλλειψης)

Σε προηγούμενη ανάρτηση μου στην «Ελληνική Πύλη Παιδείας» (Eduportal) με απασχόλησε η κατασκευή του Κύκλου σε ψηφιακό περιβάλλον. Τώρα, ήρθε η σειρά της Έλλειψης ως ένα ακόμα μέλος της οικογένειας των κωνικών τομών (Κύκλος – Έλλειψη – Παραβολή – Υπερβολή).

Εισαγωγή: Η Κατασκευή της έλλειψης σε ψηφιακά περιβάλλοντα

Ας ξεκινήσουμε με το ότι η έλλειψη μπορεί να είναι ένα όμορφο γεωμετρικό σχήμα αλλά δεν κατασκευάζεται με «χάρακα και διαβήτη». Έτσι, απουσιάζει παντελώς τόσο από τα «Στοιχεία του Ευκλείδη» όσο και από τη διδασκαλία της Γεωμετρίας. Η έλλειψη αποτελεί ένα «αλγεβρικό αντικείμενο» και ως τέτοιο αντιμετωπίζεται στο πλαίσιο της Αναλυτικής Γεωμετρίας.

Τρία είναι τα ερωτήματα που θα μας απασχολήσουν:

  • Ποια στοιχεία από την ιστορία των μαθηματικών μας εξυπηρετούν στη δημιουργία μιας «έλλειψης» σε ψηφιακά περιβάλλοντα που διαθέτουν ποικίλα εργαλεία γεωμετρικών κατασκευών;
  • Ποιες μηχανικές κατασκευές έχουν επινοηθεί για την κατασκευή ελλείψεων;
  • Ποιες άλλες ιδέες μπορούμε να εφαρμόσουμε για τη σχεδίαση ελλείψεων στο περιβάλλον του scratch;

Το ερώτημα: Πώς σχεδιάζουμε μια έλλειψη σε ψηφιακό περιβάλλον;

Η κατασκευή μιας έλλειψης μπορεί να τεθεί ως πρόβλημα με προϋποθέσεις – δεσμεύσεις που αναφερθήκαμε και στην αντίστοιχη περίπτωση του Κύκλου https://www.eduportal.gr/kyklos-8-structures/. Στόχος μας είναι να εμπλουτίσουμε τη σχεδίαση μιας έλλειψης μέσα από διαφορετικές προσεγγίσεις. Στις προτεινόμενες κατασκευές οι ενδιαφερόμενοι μπορούν να φτιάξουν μια έλλειψη ή να μελετήσουν τις ιδιότητές της, επιστρατεύοντας εμπειρίες και γνώσεις με την αξιοποίηση του προγραμματιστικού περιβάλλοντος του Scratch.

Εφαρμογή 1 Κατασκευή μιας έλλειψης, με ανίχνευση «σημείο προς σημείο» χρησιμοποιώντας το … δείκτη του ποντικιού.

Αρχικά, στην οθόνη υπάρχουν δύο αντικείμενα – σημεία Ε1 και Ε2  τα οποία μπορούμε να τοποθετούμε σε οποιαδήποτε σημεία της. Επίσης υπάρχει ένας μεταβολέας επιλογής του αθροίσματος των αποστάσεων ενός σημείου της έλλειψης από τις δύο εστίες. Δύο μετρητές μας πληροφορούν για το άθροισμα των αποστάσεων του δείκτη του ποντικιού από τις εστίες και για την εστιακή απόσταση  Ε1 Ε2. Όπως στην περίπτωση της κυκλικής διάταξης με τα κυκλάκια (βλέπε κατασκευές κύκλου στο Eduportal) το ενδιαφέρον βρίσκεται στον τρόπο με τον οποίο θα τοποθετούνται τα μικρά κυκλάκια Μ έτσι ώστε να σχηματίζουν έλλειψη σύμφωνα με τον παραπάνω ορισμό:

«Με τη μετακίνηση του δείκτη του ποντικιού, χωρίς κλικ, θα παίρνουμε το αποτύπωμά του αντικειμένου εφόσον το άθροισμα των αποστάσεων του από δύο σταθερά σημεία Ε1 και Ε2 είναι (περίπου) σταθερή».

Εφαρμόσαμε αυτήν την ιδέα στο περιβάλλον του Scratch και δημιουργήσαμε έναν μικρόκοσμο δημιουργίας ελλείψεων.

Το project aναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/171116134/ με τίτλο Ellipse using mouse _ pointer

Παρακάτω δίνεται ο κώδικας προγραμματισμού με τον οποίο λειτουργεί ένα αντικείμενο – κουκίδα για τη σχεδίαση μιας έλλειψης:

Η προτεινόμενη τεχνική γεννήθηκε με αφετηρία τα διαθέσιμα εργαλεία του προγραμματιστικού περιβάλλοντος Scratch και εφαρμόζεται με ανάλογο τρόπο και στο περιβάλλον του λογισμικού Microworlds Pro.

Εφαρμογή 2 Κατασκευή μιας έλλειψης με την τεχνική του Ανθέμιου (5ος αιώνας μ.Χ.), αρχιτέκτονα ανοικοδόμησης της Αγίας Σοφίας στην Κωνσταντινούπολη.

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

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

Το project αναρτήθηκε στην «Κοινότητα του Scratch» το 2008
https://scratch.mit.edu/projects/283252/ με τίτλο ellipse000

Για τον προγραμματισμό χρειάστηκαν 36 αντικείμενα – κόκκινες κουκίδες για να τοποθετούνται στις θέσεις (x,y) που υπολογίζονται ξεχωριστά για καθένα από αυτά. Η γραφίδα υπακούει στον κώδικα σχεδίασης μιας έλλειψης από τις παραμετρικές της εξισώσεις:

Με το project τύπου animation που φτιάξαμε στο Scratch, απλά παρακολουθούμε την κατασκευή διαφορετικών ελλείψεων δηλαδή διαφορετικών μηκών μεγάλου και μικρού ημιάξονα.  Σε μια μόνο περίπτωση κατασκευάζεται ένας κύκλος (οι δύο εστίες Ε1 , Ε2 συμπίπτουν αν a = b).

Σημείωση. Σύμφωνα με μια άποψη, αυτή η τεχνική κατασκευής της έλλειψης αποδίδεται στον Ανθέμιο, όπως αναφέρει ο Ευτόκιος στα υπομνήματά του στο έργο «Κωνικές τομές» του Απολλώνιου. Από την άλλη, σε γαλλικούς δικτυακούς τόπους παρουσιάζεται ως «τεχνική του κηπουρού».

Ο Ανθέμιος, Βυζαντινός μαθηματικός και αρχιτέκτονας, γεννήθηκε στις Τράλλεις της Μ. Ασίας το 474 μ.Χ. και πέθανε περίπου το 534 μ.Χ. Αυτό που τον ανέδειξε ως αρχιτέκτονα είναι η ανοικοδόμηση του ναού της Αγίας Σοφίας στην Κωνσταντινούπολη, μαζί με τον Ισίδωρο το Μιλήσιο.  Ως μαθηματικός ασχολήθηκε με την κατασκευή ελλείψεων και παραβολών. Έγραψε ένα σημαντικό έργο με τίτλο «Περί παραδόξων μηχανημάτων».

Εφαρμογή 3 Κατασκευή έλλειψης από την εξίσωση σε καρτεσιανές συντεταγμένες

Στα Μαθηματικά της Β’ Λυκείου οι μαθητές γνωρίζουν ότι σε Καρτεσιανό σύστημα συντεταγμένων 0xy  η εξίσωση της έλλειψης, με μεγάλο ημιάξονα ΑΑ’ = 2 α και μικρό ημιάξονα ΒΒ’ = 2 β,  δίνεται από την εξίσωση: x2 / a2 + y2 / b2 = 1

Με τη δέσμευση να χρησιμοποιηθεί οπωσδήποτε η εξίσωση αυτής της μορφής, δημιουργήσαμε ένα πρόγραμμα το οποίο χαράσσει διαφορετικές ελλείψεις με επιθυμητή επιλογή διαφορετικών τιμών των α και β, στο προγραμματιστικό περιβάλλον του Scratch.

Όπως και στην περίπτωση της κατασκευής κύκλου που γνωρίσαμε ήδη έτσι και εδώ η εξίσωση της έλλειψης δεν εκφράζει συνάρτηση!

Το project αναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/171976208/

Ακολουθούμε την ίδια τεχνική κατασκευάζοντας δύο αντικείμενα – κουκίδες. Το πρώτο μεταβαίνει στις θέσεις που προσδιορίζονται από την εξίσωση y’ = (b/a) * sqrt(a2 – x2) με αρχή το σημείο –a στον οριζόντιο άξονα σύμφωνα με την επαναληπτική διαδικασία του κώδικα.

Το δεύτερο αντικείμενο σχεδιάζει την αντίστοιχη καμπύλη για αρνητικές τιμές του y με κώδικα παρόμοιο με αυτόν του πρώτου αντικειμένου.

Στο μικρό πρόγραμμα που φτιάξαμε ο ενδιαφερόμενος μπορεί να σχεδιάζει ελλείψεις επιλέγοντας τις τιμές των a και b με τη βοήθεια των αντίστοιχων μεταβολέων (sliders) και στη συνέχεια κάνοντας κλικ στο πλήκτρο < ΚΕΝΟ>. Με κλικ στην οθόνη σβήνουμε τα γραφικά.

Εφαρμογή 4 Κατασκευή έλλειψης από τις παραμετρικές εξισώσεις

Μια έλλειψη μπορεί να σχεδιαστεί εύκολα αν αξιοποιήσουμε τις παραμετρικές εξισώσεις του κύκλου που διδάσκονται στα Μαθηματικά της Β’ Λυκείου. Έτσι, εφοδιασμένοι με τo ζευγάρι των εξισώσεων:

κατασκευάζουμε διαφορετικές ελλείψεις στο προγραμματιστικό περιβάλλον του Scratch.

Ακολουθούμε παρόμοια λογική προγραμματισμού με αυτήν της κατασκευής κύκλου με παραμετρικές εξισώσεις. Αυτή τη φορά το αντικείμενο μεταβαίνει στις θέσεις που προσδιορίζονται από τις  εξισώσεις  x = α * ημ φ και y= β * συν φ.

Το project αναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/171978735/

Η διαδικασία με την οποία μοντελοποιείται μαθηματικά η κατασκευή μιας έλλειψης εμπεριέχει τις γνωστές εξισώσεις για την έλλειψη. Εδώ, θα χρειαστεί να οικοδομήσουμε ένα block με τίτλο  ελλειψη <α> <β> ώστε η σχεδίαση να γίνεται πολύ γρήγορα.

Με άλλα λόγια, αυτή η μοντελοποίηση κατασκευής βασίζεται σε ένα «σώμα μαθηματικών γνώσεων» και δεν έχει ως αφετηρία τις πρόσθετες δυνατότητες του προγραμματιστικού περιβάλλοντος, όπως στη εφαρμογή 1. 

Εφαρμογή 5 Ο ελλειψογράφος του Πρόκλου (412 – 485 μ.Χ.)

Στο Scratch φτιάξαμε ένα μικρό πρόγραμμα «Δυναμικής Γεωμετρίας» στο οποίο μπορούμε να επιλέξουμε:

  1. Τη θέση του Α με το μεταβολέα ΟΑ
  2. Τη θέση της γραφίδας Μ με το μεταβολέα <α>

Το project αναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/172049618/

Με κατάλληλη επιλογή των σημείων Α και Μ δημιουργούνται διάφορες ελλείψεις αλλά και κύκλοι. Για παράδειγμα, αν επιλέξουμε ΟΑ=120 και α=60, τότε η γραφίδα σχεδιάζει έναν κύκλο.

Κώδικας προγραμματισμού για το sprite που σχεδιάζει τις ελλείψεις:

Σημειώσεις.

  1. Η παραπάνω τεχνική κατασκευής μιας έλλειψης αποδίδεται στον Αρχιμήδη (287 – 212 π.Χ.) και στα αγγλικά ονομάζεται Archimedes’ Trammel.
  2. Στο εργαστήριο Μαθηματικών του Πανεπιστημίου της Modena στην Ιταλία εκτίθενται μοντέλα μαθηματικών μηχανών με σκοπό τη βελτίωση της διδασκαλίας των μαθηματικών. Μεταξύ αυτών συναντήσαμε τον ελλειψογράφο του Πρόκλου.

Εφαρμογή 6 Ο ελλειψογράφος του Franz van Schooten (1615 – 1660)

Ο καθηγητής μαθηματικών Franz van Schooten, του Πανεπιστημίου του Leiden, γενίκευσε τον ελλειψογράφο του Πρόκλου με τη χρησιμοποίηση ενός  ορθογωνίου πλαισίου BAC.

Οι κορυφές Α και Β αποτελούν τους οδηγούς που δεσμεύονται να κινούνται στους άξονες y και x αντίστοιχα. Η τρίτη κορυφή C είναι ελεύθερη και διαγράφει έλλειψη που έχει ως κέντρο την αρχή των αξόνων (x, y) αλλά ο μεγάλος άξονας της σχηματίζει μια γωνία με τον άξονα-x.

Η δημιουργία ενός ελλειψογράφου μπορεί να πραγματοποιηθεί στο περιβάλλον του Scratch.

Το project αναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/285286/

Με τους μεταβολείς < ΑΒ > και < AC > επιλέγουμε τις θέσεις των σημείων Β και C πάνω στις δύο κάθετες πλευρές του ορθογωνίου τριγώνου BΑC.

Σημείωση

Τα σημεία Α και Β εκτελούν απλές αρμονικές ταλαντώσεις στον κατακόρυφο και τον οριζόντιο άξονα, αντίστοιχα. Ταυτόχρονα, το σημείο C βρίσκεται διαρκώς στη ράβδο που είναι κάθετη στη ράβδο ΑΒ. Με το τρέξιμο του προγράμματος βλέπουμε το σημείο C να διαγράφει έλλειψη.

Όσοι ενδιαφέρονται για τον προγραμματισμό μπορούν να συμβουλευτούν τον κώδικα του προγράμματος.

Εφαρμογή 7 Κατασκευή έλλειψης με τον μηχανισμό του Franz van Schooten (1615 – 1660).

Εκτός από τον ελλειψογράφο του ο Franz van Schooten επινόησε και τον  παρακάτω μηχανισμό κατασκευής μιας έλλειψης.

Βασιζόμενοι σ’ αυτόν το μηχανισμό φτιάξαμε το «Γεωμετρικό μοντέλο» του στο Scratch με σκοπό να πειραματιστούμε. Χρειαζόμαστε δύο αρθρωτά σκέλη ΟΒ και ΑΒ. Το σημείο Α παραμένει ακλόνητο στο κέντρο της οθόνης, το σημείο Ο ολισθαίνει στον άξονα χ και το σημείο Β διαγράφει κύκλο με κέντρο το Α και ακτίνα ΑΒ. Στο σκέλος ΟΒ τοποθετείτε μια γραφίδα η οποία χρησιμεύει για τη χάραξη της έλλειψης. Η θέση της γραφίδας, πάνω στο σκέλος ΟΒ, προσδιορίζεται με τον αντίστοιχο μεταβολέα. Με κλικ στο πράσινο σημαιάκι ξεκινάει το πρόγραμμα σχεδίασης ελλείψεων. Αν θέλουμε να σβήσουμε τα γραφικά της οθόνης πατάμε το πλήκτρο < κενό > (space bar).


Το project αναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/283759/

Σημείωση: Ένας παρόμοιος μηχανισμός εκτίθεται στο εργαστήριο Μαθηματικών του Πανεπιστημίου της Modena στην Ιταλία.

Εφαρμογή 8 Κατασκευή δέσμης ελλείψεων με χρωματικές αποχρώσεις 

Στην προηγούμενη ανάρτηση κατασκευάσαμε ομόκεντρους χρωματιστούς κύκλους αξιοποιώντας την προγραμματιστική ιδιότητα του Scratch να σχεδιάζουμε με τη βοήθεια χρωματικών σκιάσεων. Την ίδια ακριβώς τεχνική εφαρμόζουμε και στην περίπτωση της σχεδίασης «ομόκεντρων» χρωματιστών ελλείψεων.

Το project αναρτήθηκε στην «Κοινότητα του Scratch»
https://scratch.mit.edu/projects/10023434/

ΟΔΗΓΙΕΣ: Χρησιμοποίησε TURBO MODE (Shift + πράσινο σημαιάκι). Με τη βοήθεια του μεταβολέα μπορείς να αλλάζεις την πυκνότητα σχεδίασης των ελλείψεων (1-6). Με κλικ και σύρσιμο των κύκλων E1 και E2, προσδιορίζουμε τις θέσεις των δύο εστιών της δέσμης των ελλείψεων. Επιπλέον, επιλέγετε το χρώμα των ελλείψεων με το πάτημα του πλήκτρου <ΚΕΝΟ >.

Σημείωση: Η ιδέα της σχεδίασης είναι απλή αλλά ιδιαίτερα αποτελεσματική: ζητάμε από πολλά αντικείμενα – κουκίδες να τοποθετούνται σε τυχαίες θέσεις της οθόνης και να αφήνουν σημαδάκια με χρωματιστή απόχρωση που να είναι ανάλογη με το άθροισμα των αποστάσεων τους από δύο ακλόνητα σημεία, τις γνωστές εστίες της έλλειψης. Αυτή η ιδέα είναι αποτυπωμένη στον πυρήνα του προγράμματος.

Εφαρμογή 9 Κατασκευή έλλειψης με την «τεχνική της ανίχνευσης – σάρωσης»

Ας θεωρήσουμε στην οθόνη του υπολογιστή μας δύο αντικείμενα – εστίες έλλειψης (Ε1 και Ε2) τα οποία τοποθετούμε (με κλικ και σύρσιμο) στις θέσεις που επιθυμούμε. Έστω ότι θέλουμε να εντοπίσουμε τα σημεία μιας έλλειψης για την οποία γνωρίζουμε το άθροισμα των αποστάσεων τους από τις εστίες. Αυτό που μας ζητείται είναι να σχηματίσουμε την έλλειψη με τον περιορισμό – δέσμευση να χρησιμοποιήσουμε μόνο έναν ορισμένο αριθμό αντικειμένων – κουκίδων, για παράδειγμα 41.

Χρειαζόμαστε μια νέα ιδέα! Φανταζόμαστε ότι τα διαθέσιμα αντικείμενα, αρχικά, τοποθετούνται σε μια κατακόρυφη γραμμή, το ένα κάτω από το άλλο και σε ίσες αποστάσεις, στο αριστερό μέρος του πράσινου πίνακα.

Το project αναρτήθηκε στην «Κοινότητα του Scratch» το 2008
https://scratch.mit.edu/projects/181487/

Στη συνέχεια, δίνουμε εντολή να προχωράνε με σταθερή ταχύτητα οριζόντια έτσι ώστε να «σαρώνουν» την οθόνη από τη μια άκρη στην άλλη. Καθώς προχωράνε, ελέγχουν συνεχώς το άθροισμα των αποστάσεων τους από τις δύο εστίες, με σκοπό να «εντοπίζουν» τις κατάλληλες θέσεις της έλλειψης. Όποτε αυτό συμβαίνει, αφήνουν το αποτύπωμά τους.
Τρέχοντας το πρόγραμμα παρατηρούμε τη συλλογή των 41 αντικειμένων (μια γραμμή) να κινείται παράλληλα προς τα δεξιά «σαρώνοντας» την οθόνη και «ανιχνεύοντας» τις θέσεις της έλλειψης με δοσμένο το άθροισμα των αποστάσεων που έχουμε επιλέξει με το μεταβολέα .

Γρήγορα διαπιστώνουμε ότι τα 41 αντικείμενα – κουκίδες δεν καλύπτουν ομοιόμορφα την επιθυμητή έλλειψη, όπως φαίνεται καθαρά στη σελίδα οθόνης. Για μια καλύτερη έλλειψη θα χρειαστούμε μεγαλύτερο αριθμό αντικειμένων που να σαρώνουν την οθόνη σύμφωνα πάντα με τους κανόνες που περιγράψαμε.

Σημείωση Για κάθε σημείο φτιάξαμε τη διαδικασία – πυρήνα του προγράμματος που περιλαμβάνει τον  υπολογισμό του αθροίσματος των αποστάσεων d1, d2 από τις δύο εστίες. Μια εντολή ελέγχου εξασφαλίζει την αποτύπωση της κουκίδας μόνο στην περίπτωση που το άθροισμα των αποστάσεων d1+d2 ισούται (περίπου) με τη επιλεγόμενη τιμή k.

Η ιδέα αυτή εφαρμόζεται στο περιβάλλον του Scratch και για τις 41 κουκίδες εφόσον αυτό διαθέτει την λειτουργία < απόσταση κουκίδας από το Ε1 ή το Ε2 >.

Σημείωση: Εκτός από τους παραπάνω τρόπους προγραμματισμού της σχεδίασης ελλείψεων  σε Logo-Like περιβάλλοντα (κυρίως στο Scratch) θεωρώ ότι τa ακόλουθα projects έχουν ιδιαίτερο ενδιαφέρον.

  1. Κατασκευή Κύκλου, Έλλειψης και Παραβολής σύμφωνα με τον μεγάλο Γεωμέτρη Απολλώνιο.
  2. Οικογένεια Κωνικών τομών
  3. Έλλειψη από δύο κύκλους

Για περισσότερα…..

  • https://scratch.mit.edu/projects/10104165/ Ellipse from two circles using blocks
  • https://scratch.mit.edu/projects/10238071/ Drawing an ellipse using the mouse (Use BLOCKS )
  • https://scratch.mit.edu/projects/10358584/ 3D Morphing…..
  • https://scratch.mit.edu/projects/231174/ ellipse_filler
  • https://scratch.mit.edu/projects/1779757/ Drawing an ellipse in a rectangle
  • https://scratch.mit.edu/projects/64850000/  ellipse with 2 random dots