glVertex3d() private method

private glVertex3d ( double x, double y, double z ) : void
x double
y double
z double
return void
Ejemplo n.º 1
0
        protected void DrawHand()
        {
            GL.glColor3d(1, 0.8, 0.6);

            GL.glBegin(GL.GL_QUADS);

            //Near
            GL.glVertex3d(-3.0, 2.0, 0.5);
            GL.glVertex3d(3.0, 2.0, 0.5);
            GL.glVertex3d(3.0, -2.0, 0.5);
            GL.glVertex3d(-3.0, -2.0, 0.5);

            //Far
            GL.glVertex3d(-3.0, 2.0, -0.5);
            GL.glVertex3d(3.0, 2.0, -0.5);
            GL.glVertex3d(3.0, -2.0, -0.5);
            GL.glVertex3d(-3.0, -2.0, -0.5);

            //Left
            GL.glVertex3d(-3.0, 2.0, -0.5);
            GL.glVertex3d(-3.0, 2.0, 0.5);
            GL.glVertex3d(-3.0, -2.0, 0.5);
            GL.glVertex3d(-3.0, -2.0, -0.5);

            //Right
            GL.glVertex3d(3.0, 2.0, 0.5);
            GL.glVertex3d(3.0, 2.0, -0.5);
            GL.glVertex3d(3.0, -2.0, -0.5);
            GL.glVertex3d(3.0, -2.0, 0.5);

            GL.glEnd();
        }
Ejemplo n.º 2
0
        void DrawFigures()
        {
            GL.glEnable(GL.GL_COLOR_MATERIAL);
            GL.glEnable(GL.GL_LIGHT0);
            GL.glEnable(GL.GL_LIGHTING);

            //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
            GL.glRotatef(ROBOT_angle, 0, 0, 1);
            GL.glCallList(ROBOT_LIST);
            //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

            // saw
            GL.glLineStipple(1, 0x1243);
            GL.glLineWidth(3);
            GL.glEnable(GL.GL_LINE_STIPPLE);

            GL.glColor3f(1, 1, 0);  //yellow
            GL.glBegin(GL.GL_LINES);
            float angle;

            for (int i = 0; i <= 9; i++)
            {
                angle = alpha + i * 6.283f / 10;
                GL.glVertex3d(0.5f * r * Math.Cos(angle), 0.5f * r * Math.Sin(angle), 0.01f);
                GL.glVertex3d(1.5f * r * Math.Cos(angle + 0.6), 1.5f * r * Math.Sin(angle + 0.6), 0.01f);
            }
            GL.glEnd();
            GL.glLineWidth(1);
            GL.glDisable(GL.GL_LINE_STIPPLE);
        }
Ejemplo n.º 3
0
 public void Draw()
 {
     GL.glEnable(GL.GL_LIGHTING);
     GL.glBegin(GL.GL_QUADS);
     //!!! for blended REFLECTION
     GL.glColor4d(0, 0, 1, 0.5);
     GL.glVertex3d(-3, -3, 0);
     GL.glVertex3d(-3, 3, 0);
     GL.glVertex3d(3, 3, 0);
     GL.glVertex3d(3, -3, 0);
     GL.glEnd();
 }
Ejemplo n.º 4
0
 void DrawFloor()
 {
     GL.glEnable(GL.GL_LIGHTING);
     GL.glBegin(GL.GL_QUADS);
     //!!! for blended REFLECTION
     GL.glColor4d(0, 0, 1, 0.5);
     GL.glVertex3d(-1, -1, 0);
     GL.glVertex3d(-1, 1, 0);
     GL.glVertex3d(1, 1, 0);
     GL.glVertex3d(1, -1, 0);
     GL.glEnd();
 }
Ejemplo n.º 5
0
        protected void DrawRoom()
        {
            GL.glColor3f(1.0f, 1.0f, 1.0f);
            GL.glEnable(GL.GL_TEXTURE_2D);
            GL.glBindTexture(GL.GL_TEXTURE_2D, texture[0]);
            GL.glDisable(GL.GL_LIGHTING);

            GL.glBegin(GL.GL_QUADS);

            GL.glTexCoord2d(1, 1);
            GL.glVertex3d(-100, 100, 100);
            GL.glTexCoord2d(0.75, 1);
            GL.glVertex3d(100, 100, 100);
            GL.glTexCoord2d(0.75, 0);
            GL.glVertex3d(100, -100, 100);
            GL.glTexCoord2d(1, 0);
            GL.glVertex3d(-100, -100, 100);

            GL.glTexCoord2d(0.25, 1);
            GL.glVertex3d(-100, 100, -100);
            GL.glTexCoord2d(0.5, 1);
            GL.glVertex3d(100, 100, -100);
            GL.glTexCoord2d(0.5, 0);
            GL.glVertex3d(100, -100, -100);
            GL.glTexCoord2d(0.25, 0);
            GL.glVertex3d(-100, -100, -100);

            GL.glTexCoord2d(0.25, 1);
            GL.glVertex3d(-100, 100, -100);
            GL.glTexCoord2d(0, 1);
            GL.glVertex3d(-100, 100, 100);
            GL.glTexCoord2d(0, 0);
            GL.glVertex3d(-100, -100, 100);
            GL.glTexCoord2d(0.25, 0);
            GL.glVertex3d(-100, -100, -100);

            GL.glTexCoord2d(0.75, 1);
            GL.glVertex3d(100, 100, 100);
            GL.glTexCoord2d(0.5, 1);
            GL.glVertex3d(100, 100, -100);
            GL.glTexCoord2d(0.5, 0);
            GL.glVertex3d(100, -100, -100);
            GL.glTexCoord2d(0.75, 0);
            GL.glVertex3d(100, -100, 100);

            GL.glEnd();
            GL.glDisable(GL.GL_TEXTURE_2D);
        }
Ejemplo n.º 6
0
        protected void DrawFloor()
        {
            GL.glEnable(GL.GL_LIGHTING);
            GL.glEnable(GL.GL_COLOR_MATERIAL);
            GL.glColor4d(0, 0, 1, 0.3);

            GL.glBegin(GL.GL_QUADS);

            GL.glVertex3d(-7, -4, 7);
            GL.glVertex3d(7, -4, 7);
            GL.glVertex3d(7, -4, -7);
            GL.glVertex3d(-7, -4, -7);

            GL.glEnd();
            GL.glDisable(GL.GL_LIGHTING);
        }
Ejemplo n.º 7
0
        void DrawFiguresRef()
        {
            GL.glPushMatrix();

            // must be in scene to be reflected too
            GL.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, pos);

            //Draw Light Source
            GL.glDisable(GL.GL_LIGHTING);
            GL.glTranslatef(pos[0], pos[1], pos[2]);
            //Yellow Light source
            GL.glColor3f(1, 1, 0);
            GL.glTranslatef(-pos[0], -pos[1], -pos[2]);
            //projection line from source to plane
            GL.glBegin(GL.GL_LINES);
            GL.glColor3d(0.5, 0.5, 0);
            GL.glVertex3d(pos[0], pos[1], 0);
            GL.glVertex3d(pos[0], pos[1], pos[2]);
            GL.glEnd();

            GL.glEnable(GL.GL_LIGHTING);

            GL.glRotated(intOptionB, 0, 0, 1);

            GL.glColor3f(1, 0, 0);
            GL.glTranslated(0, -0.5, 1);
            GL.glRotated(intOptionC, 1, 1, 1);

            GL.glRotated(-intOptionC, 1, 1, 1);
            GL.glTranslated(0, -0.5, -1);

            GL.glTranslated(1, 2, 1.5);
            GL.glRotated(90, 1, 0, 0);
            GL.glColor3d(0, 1, 1);
            GL.glRotated(intOptionB, 1, 0, 0);

            GL.glRotated(-intOptionB, 1, 0, 0);
            GL.glRotated(-90, 1, 0, 0);
            GL.glTranslated(-1, -2, -1.5);

            GL.glRotated(intOptionB, 0, 0, 1);

            GL.glPopMatrix();
        }
Ejemplo n.º 8
0
        void drawground()
        {
            {
                GL.glBindTexture(GL.GL_TEXTURE_2D, TextureGround[0]);
                GL.glNormal3f(0.0f, -1.0f, 0.0f);
                GL.glBegin(GL.GL_QUADS);

                GL.glTexCoord2f(0.0f, 0.0f);
                GL.glVertex3d(-20, -20, ground[0, 2] - 0.05);
                GL.glTexCoord2f(1.0f, 0.0f);
                GL.glVertex3d(-20, 20, ground[0, 2] - 0.05);
                GL.glTexCoord2f(1.0f, 1.0f);
                GL.glVertex3d(20, 20, ground[0, 2] - 0.05);
                GL.glTexCoord2f(0.0f, 1.0f);
                GL.glVertex3d(20, -20, ground[0, 2] - 0.05);

                GL.glColor3f(0, 0, 0);

                GL.glEnd();
            }
        }
Ejemplo n.º 9
0
        void DrawFloor3()
        {
            float[] WHITE   = { 1f, 1f, 1f };
            float[] RED     = { 1, 0, 0 };
            float[] GREEN   = { 0, 1, 0 };
            float[] MAGENTA = { 1, 0, 1 };

            int width = 45;
            int depth = 45;

            GL.glEnable(GL.GL_LIGHTING);
            GL.glBegin(GL.GL_QUADS);

            for (int x = -width; x < width; x += 2)
            {
                for (int z = -depth; z < depth; z += 2)
                {
                    if ((x + z) % 4 == 0)
                    {
                        GL.glColor4d(1, 0, 0, 0.5);
                    }
                    else
                    {
                        GL.glColor4d(1, 1, 1, 0.5);
                    }

                    GL.glVertex3d(x + hghg + xExis, z + yExis, ground[0, 2] - 0.05);
                    GL.glVertex3d(x + hghg + 2 + xExis, z + yExis, ground[0, 2] - 0.05);
                    GL.glVertex3d(x + 2 + hghg + xExis, z + 2 + yExis, ground[0, 2] - 0.05);
                    GL.glVertex3d(x + hghg + xExis, z + 2 + yExis, ground[0, 2] - 0.05);
                }
            }


            GL.glEnd();
        }
Ejemplo n.º 10
0
        public void drawPenguin()
        {
            GL.glPushMatrix();
            //  drawaxe();
            GL.glRotatef(90, 0.0f, 1.0f, 0.0f);

            GL.glRotatef(-90, 1.0f, 0.0f, 0.0f);


            //drawaxe();
            GL.glTranslated(0.0, -200, 0);
            GL.glTranslated(0.0, speed, 0);  // going forward
            GL.glRotated(spirala, 0, 0, 1);  //turn 180 deg

            // drawaxe();



            if (speedFlg)
            {
                if (!spiralaFlg)
                {
                    if (forward)
                    {
                        if (speed < 380)
                        {
                            speed += 5;
                            GL.glRotated(flap * 6, 0, 0, 1);  //Jump
                        }
                        if (speed >= 380)
                        {
                            speedFlg   = false;
                            spiralaFlg = true;
                            forward    = false;
                        }
                    }
                    if (!forward)
                    {
                        if (speed > 0)
                        {
                            speed -= 5;
                            GL.glRotated(flap * 6, 0, 0, 1);
                        }
                        if (speed <= 0)
                        {
                            speedFlg   = false;
                            spiralaFlg = true;
                            forward    = true;
                        }
                    }
                }
            }
            if (!speedFlg)
            {
                if (spiralaFlg)
                {
                    if (spirala < spindLim)
                    {
                        spirala += 18;
                        GL.glTranslated(0.0, 0, 0 + flap * 8);
                    }
                    else
                    {
                        spiralaFlg = false;
                        spindLim  += 180;
                    }
                }
                if (!spiralaFlg)
                {
                    speedFlg = true;
                }
            }

            if (!checkBox)
            {
                if (!flapFlg)
                {
                    flap += 0.5f;
                    if (flap >= 5)
                    {
                        flapFlg = true;
                    }
                }
                if (flapFlg)
                {
                    flap -= 0.5f;
                    if (flap <= 0)
                    {
                        flapFlg = false;
                    }
                }
            }
            if (checkBox)
            {
                flap = 0;
            }



            GL.glPushMatrix();

            GL.glScaled(scale_inc, scale_inc, scale_inc); //size of penguin
            //drawaxe();

            float[] front_ambuse = { 0.9f, 0.9f, 0.9f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, front_ambuse);

            GL.glColor3f(1.0f, 1.0f, 1.0f);
            //Front body
            GL.glBegin(GL.GL_QUADS);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-3, 3, 0);
            GL.glVertex3d(3, 3, 0);
            GL.glVertex3d(4, 4, 5);
            GL.glVertex3d(-4, 4, 5);
            GL.glEnd();

            GL.glBegin(GL.GL_QUADS);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-4, 4, 5);
            GL.glVertex3d(4, 4, 5);
            GL.glVertex3d(2.5, 3, 12);
            GL.glVertex3d(-2.5, 3, 12);
            GL.glEnd();

            float[] backLow_ambuse = { 0.01f, 0.01f, 0.01f, 1.0f };
            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, backLow_ambuse);

            GL.glColor3f(0.01f, 0.01f, 0.01f);

            //Back body
            GL.glBegin(GL.GL_QUADS);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-3, 0, 0);
            GL.glVertex3d(3, 0, 0);
            GL.glVertex3d(4, -1, 5);
            GL.glVertex3d(-4, -1, 5);
            GL.glEnd();

            float[] backHigh_ambuse = { 0.18f, 0.18f, 0.18f, 1.0f };
            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, backHigh_ambuse);

            GL.glColor3f(0.18f, 0.18f, 0.18f);

            GL.glBegin(GL.GL_QUADS);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-4, -1, 5);
            GL.glVertex3d(4, -1, 5);
            GL.glVertex3d(2.5, 0, 12);
            GL.glVertex3d(-2.5, 0, 12);
            GL.glEnd();


            float[] SideFront_ambuse = { 0.91f, 0.91f, 0.91f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, SideFront_ambuse);
            GL.glColor3f(0.91f, 0.91f, 0.91f);

            //leftSide-front body
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-3, 3, 0);
            GL.glVertex3d(-3.5, 1, 0);
            GL.glVertex3d(-4, 4, 5);
            GL.glVertex3d(-4.2, 1, 5.5);
            GL.glVertex3d(-2.5, 3, 12);
            GL.glEnd();

            //rightSide-front body
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(3, 3, 0);
            GL.glVertex3d(3.5, 1, 0);
            GL.glVertex3d(4, 4, 5);
            GL.glVertex3d(4.2, 1, 5.5);
            GL.glVertex3d(2.5, 3, 12);
            GL.glEnd();


            float[] SideBack_ambuse = { 0.1f, 0.1f, 0.1f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, SideBack_ambuse);
            GL.glColor3f(0.1f, 0.1f, 0.1f);

            //leftSide-front body
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-3, 0, 0);
            GL.glVertex3d(-3.5, 1, 0);
            GL.glVertex3d(-4, -1, 5);
            GL.glVertex3d(-4.2, 1, 5.5);
            GL.glVertex3d(-2.5, 0, 12);
            GL.glVertex3d(-2.5, 3, 12);
            GL.glEnd();

            //rightSide-front body
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(3, 0, 0);
            GL.glVertex3d(3.5, 1, 0);
            GL.glVertex3d(4, -1, 5);
            GL.glVertex3d(4.2, 1, 5.5);
            GL.glVertex3d(2.5, 0, 12);
            GL.glVertex3d(2.5, 3, 12);
            GL.glEnd();


            ////// neck
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);

            GL.glVertex3d(2.5, 3, 12);
            GL.glVertex3d(-2.5, 3, 12);
            GL.glVertex3d(0, 1.0, 15);
            GL.glEnd();

            GL.glColor3f(0f, 0.0f, 0.0f);

            float[] beak_ambuse = { 0.6021f, 0.3001f, 0.0156f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, beak_ambuse);
            GL.glColor3f(0.6021f, 0.3001f, 0.0156f);

            ////// beak -left
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-2.5, 3, 12);
            GL.glVertex3d(0, 1.0, 15);
            GL.glVertex3d(0, 6.0, 10);
            GL.glEnd();
            ////// beak -right
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(2.5, 3, 12);
            GL.glVertex3d(0, 1.0, 15);
            GL.glVertex3d(0, 6.0, 10);
            GL.glEnd();


            float[] wing_ambuse = { 0.7421f, 0.4101f, 0.0156f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, wing_ambuse);
            GL.glColor3f(0.7421f, 0.4101f, 0.0156f);

            ////// wing -left
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(-2.5, 3, 12);
            GL.glVertex3d(-4.2, +1.0, 5.5);
            GL.glVertex3d(-5 + (float)-flap * 0.4, -5.0 + (float)flap * 0.4, 4);

            GL.glEnd();
            ////// wing -right
            GL.glBegin(GL.GL_TRIANGLE_STRIP);
            GL.glNormal3d(0, 0, 1);
            GL.glVertex3d(2.5, 3, 12);
            GL.glVertex3d(4.2, +1.0, 5.5);
            GL.glVertex3d(5 + (float)flap * 0.4, -5.0 + (float)flap * 0.4, 4);
            GL.glEnd();


            //Head
            float[] head_ambuse = { 0.1117f, 0.1296f, 0.1562f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, head_ambuse);
            GL.glColor3f(0.1117f, 0.1296f, 0.1562f);

            GL.glPushMatrix();
            GL.glTranslated(0, 1.5, 13);
            GLUT.glutSolidSphere(3.2, 64, 64);
            GL.glPopMatrix();



            //Legs
            float[] legs_ambuse = { 0.5021f, 0.2001f, 0.0156f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, legs_ambuse);
            GL.glColor3f(0.1117f, 0.1296f, 0.1562f);

            GL.glPushMatrix();
            GL.glTranslated(-2.2, 3, 0);
            GLUT.glutSolidSphere(1.8, 32, 100);
            GL.glPopMatrix();
            GL.glPushMatrix();
            GL.glTranslated(2.2, 3, 0);
            GLUT.glutSolidSphere(1.8, 32, 100);
            GL.glPopMatrix();


            GL.glPushMatrix();



            //Eyes
            float[] eyesW_ambuse = { 1f, 1f, 1f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, eyesW_ambuse);
            GL.glColor3f(1f, 1f, 1f);

            GL.glPushMatrix();
            GL.glTranslated(-1.2, 3.5, 13);
            GLUT.glutSolidSphere(1, 32, 32);
            GL.glPopMatrix();
            GL.glPushMatrix();
            GL.glTranslated(1.2, 3.5, 13);
            GLUT.glutSolidSphere(1, 32, 32);
            GL.glPopMatrix();

            float[] eyesB_ambuse = { 0f, 0f, 0f, 1.0f };

            GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE, eyesB_ambuse);
            GL.glColor3f(1f, 1f, 1f);

            GL.glPushMatrix();
            GL.glTranslated(-1.2, 3.9, 12.8);
            GLUT.glutSolidSphere(0.7, 32, 32);
            GL.glPopMatrix();
            GL.glPushMatrix();
            GL.glTranslated(1.2, 3.9, 12.8);
            GLUT.glutSolidSphere(0.7, 32, 32);
            GL.glPopMatrix();

            GL.glPopMatrix();
            GL.glPopMatrix();
            GL.glPopMatrix();
        }