Rotation von Zahlen
-
Hallo,
Ich möchte eine Scheibe rotieren, auf der am Rande Zahlen
sind, nur das die Zahlen ihre senkrechte-lesbare Position
beibehalten sollen. Das gelingt mir zwar schon, indem ich
die Zahlen vorher auf Ihren Ursprung zurückführe, dann
entgegengesetzt rotiere und wieder an den Ort auf der Scheibe
schiebe, aber vielleicht gibt's da eine Einfache Function oder
Verfahrensweise, die nicht so viel Performance kostet?Vielen Dank für's reinschauen.
-
vielleicht noch ein kleines code-posting zum Verständnis:
... glRotatef(0.0f+ROTATE,0.0f,0.0f,1.0f); // Drehung Scheibe //... Scheibe zeichnen GLfloat x_korrect = -0.055f; //Zahlen in der Mitte drehen GLfloat y_korrect = -0.036f; glPushMatrix(); //von der Scheibenposition zum Ursprung u. wieder zurück, //Korrektur Eckpunkt Zahlenbitmap zur Mitte glTranslatef(-0.053f-x_korrect, 0.581f-y_korrect,0.0f); glRotatef(0.0f-ROTATE,0.0f,0.0f,1.0f); glTranslatef(0.053f+x_korrect, -0.581f+y_korrect,0.0f); //selbstdefinierte Bitmap-Zahlen ShowText("00", weiss, 0.9, -0.053f, 0.581f, -0.4); glPopMatrix(); glPushMatrix(); glTranslatef( 0.249f-x_korrect, 0.501f-y_korrect,0.0f); glRotatef(0.0f-ROTATE,0.0f,0.0f,1.0f); glTranslatef(-0.249f+x_korrect, -0.501f+y_korrect,0.0f); ShowText("03", weiss, 0.9, 0.249f, 0.501f, -0.4); glPopMatrix(); .....//usw. glLoadIdentity();
Geht's auch einfacher?
-
wieso setzt du nicht mit glTranslate einfach nur die position auf der die zahlen sein sollen?
-
Okay, hab verstanden.