ToRGB() public method

public ToRGB ( ) : Color
return Color
Esempio n. 1
0
        public void Draw(Rect aRect)
        {
#if RECTANGLE
            Cocoa.Color rgbColor;
#endif
            glViewport(0, 0, 520, 310);
            glMatrixMode(0x1701);
            glLoadIdentity();
            glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
            glClear(0x00004000);

            gluPerspective(60.0, 1.0, 1.5, 20.0);
            glMatrixMode(0x1700);

            glLoadIdentity();
            gluLookAt(0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);

            glRotatef(xrotate, 1.0f, 0.0f, 0.0f);
            glRotatef(yrotate, 0.0f, 1.0f, 0.0f);
            glRotatef(zrotate, 0.0f, 0.0f, 1.0f);
            glScalef(zoom, zoom, zoom);

            glBegin(0x0007);
#if RECTANGLE
            rgbColor = color1.ToRGB();
            glColor3f(rgbColor.RedComponent, rgbColor.GreenComponent, rgbColor.BlueComponent);
            glVertex2f(-1.0f, -1.0f);

            rgbColor = color2.ToRGB();
            glColor3f(rgbColor.RedComponent, rgbColor.GreenComponent, rgbColor.BlueComponent);
            glVertex2f(1.0f, -1.0f);

            rgbColor = color3.ToRGB();
            glColor3f(rgbColor.RedComponent, rgbColor.GreenComponent, rgbColor.BlueComponent);
            glVertex2f(1.0f, 1.0f);

            rgbColor = color4.ToRGB();
            glColor3f(rgbColor.RedComponent, rgbColor.GreenComponent, rgbColor.BlueComponent);
            glVertex2f(-1.0f, 1.0f);
#endif

#if CUBE
            glColor3f(0.0f, 1.0f, 0.0f);            // Color Blue
            glVertex3f(1.0f, 1.0f, -1.0f);          // Top Right Of The Quad (Top)
            glVertex3f(-1.0f, 1.0f, -1.0f);         // Top Left Of The Quad (Top)
            glVertex3f(-1.0f, 1.0f, 1.0f);          // Bottom Left Of The Quad (Top)
            glVertex3f(1.0f, 1.0f, 1.0f);

            glColor3f(1.0f, 0.5f, 0.0f);            // Color Orange
            glVertex3f(1.0f, -1.0f, 1.0f);          // Top Right Of The Quad (Bottom)
            glVertex3f(-1.0f, -1.0f, 1.0f);         // Top Left Of The Quad (Bottom)
            glVertex3f(-1.0f, -1.0f, -1.0f);        // Bottom Left Of The Quad (Bottom)
            glVertex3f(1.0f, -1.0f, -1.0f);

            glColor3f(1.0f, 0.0f, 0.0f);            // Color Red
            glVertex3f(1.0f, 1.0f, 1.0f);           // Top Right Of The Quad (Front)
            glVertex3f(-1.0f, 1.0f, 1.0f);          // Top Left Of The Quad (Front)
            glVertex3f(-1.0f, -1.0f, 1.0f);         // Bottom Left Of The Quad (Front)
            glVertex3f(1.0f, -1.0f, 1.0f);

            glColor3f(1.0f, 1.0f, 0.0f);            // Color Yellow
            glVertex3f(1.0f, -1.0f, -1.0f);         // Top Right Of The Quad (Back)
            glVertex3f(-1.0f, -1.0f, -1.0f);        // Top Left Of The Quad (Back)
            glVertex3f(-1.0f, 1.0f, -1.0f);         // Bottom Left Of The Quad (Back)
            glVertex3f(1.0f, 1.0f, -1.0f);

            glColor3f(0.0f, 0.0f, 1.0f);            // Color Blue
            glVertex3f(-1.0f, 1.0f, 1.0f);          // Top Right Of The Quad (Left)
            glVertex3f(-1.0f, 1.0f, -1.0f);         // Top Left Of The Quad (Left)
            glVertex3f(-1.0f, -1.0f, -1.0f);        // Bottom Left Of The Quad (Left)
            glVertex3f(-1.0f, -1.0f, 1.0f);         // Bottom Right Of The Quad (Left)

            glColor3f(1.0f, 0.0f, 1.0f);            // Color Violet
            glVertex3f(1.0f, 1.0f, -1.0f);          // Top Right Of The Quad (Right)
            glVertex3f(1.0f, 1.0f, 1.0f);           // Top Left Of The Quad (Right)
            glVertex3f(1.0f, -1.0f, 1.0f);          // Bottom Left Of The Quad (Right)
            glVertex3f(1.0f, -1.0f, -1.0f);         // Bottom Right Of The Quad (Right)
#endif
            glEnd();
            glFlush();
            frames++;
            DateTime end = DateTime.Now;
            if ((end - start).TotalSeconds > 1)
            {
                if (Application.SharedApplication.MainWindow != null)
                {
                    Application.SharedApplication.MainWindow.Title = System.String.Format("{0}fps", frames / (end - start).TotalSeconds);
                }
                frames = 0;
                start  = DateTime.Now;
            }
        }