Δημιουργήστε ένα βασικό πρόγραμμα το οποίο εμφανίζει ένα παράθυρο παράθυρο OpenGL . Αν δεν είστε εξοικειωμένοι με αυτή τη διαδικασία , υπάρχει ένα φροντιστήριο για τα βασικά στοιχεία της OpenGL 2
Προσθέστε το αρχείο κεφαλίδας math.h στο πρόγραμμά σας πληκτρολογώντας τον ακόλουθο κώδικα στην αρχή του προγράμματος . : # περιλαμβάνουν Ξεκινήστε τη μέθοδο κύκλο σας με την προσθήκη του παρακάτω κώδικα πριν από τη λειτουργία της οθόνης επανάκλησης σας : void drawCircle ( λάμψη x , y λάμψη , λάμψη ακτίνα , int num_lines ) { } Οι μεταβλητές \\ "x \\ " και \\ "y \\ " θα πρέπει να χρησιμοποιείται για τη ρύθμιση το κέντρο του κύκλου στο παράθυρό σας , ενώ \\ " ακτίνα \\" , βέβαια , ορίζει την ακτίνα του κύκλου . Οι ακέραιος \\ " num_lines \\ " είναι ο αριθμός των γραμμών που χρησιμοποιούνται για τη σύνθεση του κύκλου . Όσο μεγαλύτερος είναι ο αριθμός , τόσο πιο ομαλή ο κύκλος θα φαίνεται να είναι Προστίθεται το ακόλουθο set-up κώδικα μέσα σε παρένθεση : . Γωνία float GO GO num_lines int glColor3f ( 0.0 , 0.0 , 0.0 ) GO η μεταβλητή \\ " γωνία \\" θα περιέχει τη γωνία των γραμμών που χρησιμοποιούνται για την κατασκευή του κύκλο. Η κλήση προς τη λειτουργία glColor3f ( ) καθορίζει το χρώμα των γραμμών σε μαύρο , όπου η σειρά των τριών 0s αντιστοιχούν στην ένταση του κόκκινου , του πράσινου και του μπλε σε μια κλίμακα από το 0 έως 1. Εισάγετε τον παρακάτω για βρόχου κώδικας μετά την glBegin () κλήση : . For (int i = 0 ? i < num_lines ? i + + ) { γωνία = i * 2 * M_PI /num_lines ? glVertex2f ( x + ( cos ( γωνία ) * ακτίνα) , y + ( sin ( γωνία ) * ακτίνα) ) ? } Αυτός ο βρόχος επιτυγχάνει τρεις τα πράγματα . Πρώτον, επαναλαμβάνει num_lines φορές , όπου num_lines είναι ένας ακέραιος , τη χάραξη μιας γραμμής σε κάθε επανάληψη και οδηγούν σε έναν κύκλο που αποτελείται από num_lines ευθείες γραμμές . Δεύτερον, υπολογίζει την γωνία των γραμμών σε σχέση με το κέντρο του κύκλου σε ακτίνια . \\ " M_PI \\ " είναι μια συνεχής μεταβλητή που ορίζεται στο math.h εκπροσωπούν pi . Τέλος , η glVertex2f ( ) κλήση υπολογίζει το ( x , y ) συντεταγμένες των τελικών σημείων των γραμμών Μετά το for- loop , πληκτρολογήστε την ακόλουθη γραμμή κώδικα : . GlEnd ( ) GO Αυτό λέει OpenGL τελειώσετε τη σχεδίαση γραμμών . να σχεδιάσετε τον κύκλο στη σκηνή σας , προσθέστε μια κλήση στο drawCircle (μέθοδος ) για την λειτουργία της απεικόνισης επανάκλησης του προγράμματός σας , η οποία θα πρέπει να έχουν ετοιμάσει στο Βήμα 1 . Καθορίστε τιμές για Χ, Υ, ακτίνα , και num_lines , όπου x και y αντιπροσωπεύει ένα σημείο εντός σκηνή σας , η ακτίνα είναι μια η ακτίνα του κύκλου , και num_lines είναι ο αριθμός των γραμμών που απαρτίζουν τον κύκλο. Και πάλι , αν δεν είστε εξοικειωμένοι με το OpenGL και επανάκλησης οθόνη , ανατρέξτε στο φροντιστήριο OpenGL . Μεταγλώττιση και εκτέλεση του προγράμματος σας . Αν έχετε πληκτρολογήσει σωστά τη λειτουργία , θα πρέπει να συνταχθεί χωρίς σφάλμα . Αν έχετε καθορίσει έγκυρες τιμές για x , y και ακτίνα , θα πρέπει να δείτε ένα μαύρο κύκλο που εμφανίζεται σε λευκό φόντο .
εικόνων 3
Η 4
5 < p> Προσθέστε τον ακόλουθο κώδικα κάτω από το glColor3f ( ) κλήση από το Βήμα 4 : glBegin ( GL_LINE_LOOP ) GO Αυτό λέει OpenGL που τυχόν ακόλουθες γραμμές με σκοπό την κατάρτιση γραμμές . Συγκεκριμένα , αυτό τραβάει ένα \\ " GL_LINE_LOOP , \\ ", το οποίο καταλήγει σε σειρά συνδεδεμένων γραμμών
Η 6
Η 7
8
Η 9
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα