vicky5 Δημοσ. 23 Μαρτίου 2011 Μέλος Δημοσ. 23 Μαρτίου 2011 ναι το φανταζομαι αυτο απλα ειναι πτυχιακη και οριζει ο καθηγητης γλωσσα προγραμματισμου...σκεψουν εγω την εμαθα την Opengl σε παραδειγματα c++ η μονη διαφορα ειναι οτι εχει μπροστα gl. ενω η c++ οχι...αυτη καλειται και μου λεει το gl ειναι κενο Pvw ginetai ayto???? public void cylinder() { gl.glScaled(0.7, 0.7, 0.7); gl.glColor4f(1f, 0.5f, 1f, 1f); gl.glTranslatef(1f, 0f, 1f); gl.glRotatef(-90.0f, 1.0f, 0.0f, 0.0f); glu.gluDisk(jog, 0.0, 1.0, 32, 1); glu.gluCylinder(jog, 1.0f, 1.0, 2.0, 32, 1); gl.glTranslatef(0.0f, 0.0f, 2.0f); glu.gluDisk(jog, 0.0, 1.0, 32, 1); gl.glTranslatef(0.0f, 0.0f, -2.0f); gl.glRotatef(90.0f, 1.0f, 0.0f, 0.0f); glu.gluDeleteQuadric(jog); gl.glFlush(); }
V.I.Smirnov Δημοσ. 23 Μαρτίου 2011 Δημοσ. 23 Μαρτίου 2011 Παρατηρώντας το παραπάνω απόσπασμα, σου ξαναλέω ότι πριν την gluCylinder() πρέπει πρώτα να κληθεί η gluNewQuadric(). Aν η χρήση της στην java έχει κάποια ιδιομορφία, πρέπει να σου το πει κάποιος που ξέρει java. Εγώ Οpengl ξέρω, αλλά java δεν ξέρω (και ούτε θέλω να μάθω) ... -
vicky5 Δημοσ. 23 Μαρτίου 2011 Μέλος Δημοσ. 23 Μαρτίου 2011 public void cylinder() { GLUquadric quadric; quadric = glu.gluNewQuadric(); gl.glScaled(0.7, 0.7, 0.7); gl.glColor4f(1f, 0.5f, 1f, 1f); gl.glTranslatef(1f, 0f, 1f); gl.glRotatef(-90.0f, 1.0f, 0.0f, 0.0f); glu.gluDisk(jog, 0.0, 1.0, 32, 1); glu.gluCylinder(jog, 1.0f, 1.0, 2.0, 32, 1); gl.glTranslatef(0.0f, 0.0f, 2.0f); glu.gluDisk(jog, 0.0, 1.0, 32, 1); gl.glTranslatef(0.0f, 0.0f, -2.0f); gl.glRotatef(90.0f, 1.0f, 0.0f, 0.0f); glu.gluDeleteQuadric(jog); gl.glFlush(); και χτυπαει ακριβως το ιδιο.... να σε ρωτησω κατι αμα ξερεις...παρατηρησα οτι ολες οι μεθοδοι που κανουν κατι στο gl και στο glu exoyn to GLAutoDrawable drawable...παιζει ρολο? γιατι αν το βαλω εκει δεν ξερω πως μπορω να το καλεσω μετα
V.I.Smirnov Δημοσ. 23 Μαρτίου 2011 Δημοσ. 23 Μαρτίου 2011 Δεν μου φαίνεται σωστό. Με την gluNewQuadric() πρέπει να οριστεί μια κωνική που θα χρησιμοποιηθεί παρακάτω. Εσύ ορίζεις την 'quadric' αλλά στις επόμενες κλήσεις χρησιμοποιείς την 'jog' που δεν έχει οριστεί. Για δοκίμασε να αλλάξεις το όνομα... Το άλλο που ρωτάς αφορά πιθανόν κάποια ιδιομορφία της java για την χρήση του openGL. Δεν ξέρω java και δεν μπορώ να σου απαντήσω επ' αυτού. Στην C++ δεν υπάρχει τέτοιο πράγμα - εγώ δεν το έχω δει πουθενά. -
vicky5 Δημοσ. 23 Μαρτίου 2011 Μέλος Δημοσ. 23 Μαρτίου 2011 το αλλαξα και αυτο τιποτα...σε ευχαριστω για τη βοηθεια...ακομα και ας μη βρισκω τη λυση
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.