Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 4

GL2 gg=glad.getGL().

getGL2();
gg.glClear(GL2.GL_COLOR_BUFFER_BIT);

GLU glu=new GLU();


gg.glLoadIdentity();
glu.gluOrtho2D(-50, 50, -50, 50);

//first polygon
gg.glEnable(GL2.GL_LINE_SMOOTH);
gg.glHint(GL2.GL_LINE_SMOOTH_HINT, GL2.GL_NICEST);
gg.glEnable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPolygonOffset(1f, 1f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(1f,1f,1f); //white
gg.glVertex2i(-5,0);
gg.glVertex2i(-5 ,15);
gg.glVertex2i(5,15);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glDisable(GL2.GL_POLYGON_OFFSET_FILL);

gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_LINE);
gg.glLineWidth(5f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(0f,0f,0f); //black
gg.glVertex2i(-5,0);
gg.glVertex2i(-5 ,15);
gg.glVertex2i(5,15);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_FILL);
gg.glFlush();

//second polygon
gg.glEnable(GL2.GL_LINE_SMOOTH);
gg.glHint(GL2.GL_LINE_SMOOTH_HINT, GL2.GL_NICEST);
gg.glEnable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPolygonOffset(1f, 1f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(01f,1f,0f); //yellow
gg.glVertex2i(-5 ,15);
gg.glVertex2i(0 ,20);
gg.glVertex2i( 10,20);
gg.glVertex2i(5,15);
gg.glEnd();
gg.glDisable(GL2.GL_POLYGON_OFFSET_FILL);

gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_LINE);
gg.glLineWidth(5f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(0f,0f,0f); //black
gg.glVertex2i(-5 ,15);
gg.glVertex2i(0 ,20);
gg.glVertex2i( 10,20);
gg.glVertex2i(5,15);
gg.glEnd();
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_FILL);
gg.glFlush();

//third polygon
gg.glEnable(GL2.GL_LINE_SMOOTH);
gg.glHint(GL2.GL_LINE_SMOOTH_HINT, GL2.GL_NICEST);
gg.glEnable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPolygonOffset(1f, 1f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(1f,0f,0f); //red
gg.glVertex2i(5,15);
gg.glVertex2i( 10,20);
gg.glVertex2i( 10,7);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glDisable(GL2.GL_POLYGON_OFFSET_FILL);

gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_LINE);
gg.glLineWidth(5f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(0f,0f,0f); //black
gg.glVertex2i(5,15);
gg.glVertex2i( 10,20);
gg.glVertex2i( 10,7);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_FILL);
gg.glFlush();

//first polygon move


gg.glPushMatrix();
gg.glTranslated(-40, 0, 1);
gg.glRotated(-40,0,0,1);
gg.glScaled(1.5,1.5,0);
gg.glEnable(GL2.GL_LINE_SMOOTH);
gg.glHint(GL2.GL_LINE_SMOOTH_HINT, GL2.GL_NICEST);
gg.glEnable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPolygonOffset(1f, 1f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(1f,1f,1f); //white
gg.glVertex2i(-5,0);
gg.glVertex2i(-5 ,15);
gg.glVertex2i(5,15);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glDisable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPopMatrix();

gg.glPushMatrix();
gg.glTranslated(-40, 0, 1);
gg.glRotated(-40,0,0,1);
gg.glScaled(1.5,1.5,0);
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_LINE);
gg.glLineWidth(5f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(0f,0f,0f); //black
gg.glVertex2i(-5,0);
gg.glVertex2i(-5 ,15);
gg.glVertex2i(5,15);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_FILL);
gg.glFlush();
gg.glPopMatrix();

//second polygon move


gg.glPushMatrix();
gg.glTranslated(-40, 0, 1);
gg.glRotated(-40,0,0,1);
gg.glScaled(1.5,1.5,0);
gg.glEnable(GL2.GL_LINE_SMOOTH);
gg.glHint(GL2.GL_LINE_SMOOTH_HINT, GL2.GL_NICEST);
gg.glEnable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPolygonOffset(1f, 1f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(01f,1f,0f); //yellow
gg.glVertex2i(-5 ,15);
gg.glVertex2i(0 ,20);
gg.glVertex2i( 10,20);
gg.glVertex2i(5,15);
gg.glEnd();
gg.glDisable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPopMatrix();

gg.glPushMatrix();
gg.glTranslated(-40, 0, 1);
gg.glRotated(-40,0,0,1);
gg.glScaled(1.5,1.5,0);
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_LINE);
gg.glLineWidth(5f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(0f,0f,0f); //black
gg.glVertex2i(-5 ,15);
gg.glVertex2i(0 ,20);
gg.glVertex2i( 10,20);
gg.glVertex2i(5,15);
gg.glEnd();
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_FILL);
gg.glFlush();
gg.glPopMatrix();

//third polygon move


gg.glPushMatrix();
gg.glTranslated(-40, 0, 1);
gg.glRotated(-40,0,0,1);
gg.glScaled(1.5,1.5,0);
gg.glEnable(GL2.GL_LINE_SMOOTH);
gg.glHint(GL2.GL_LINE_SMOOTH_HINT, GL2.GL_NICEST);
gg.glEnable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPolygonOffset(1f, 1f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(1f,0f,0f); //red
gg.glVertex2i(5,15);
gg.glVertex2i( 10,20);
gg.glVertex2i( 10,7);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glDisable(GL2.GL_POLYGON_OFFSET_FILL);
gg.glPopMatrix();

gg.glPushMatrix();
gg.glTranslated(-40, 0, 1);
gg.glRotated(-40,0,0,1);
gg.glScaled(1.5,1.5,0);
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_LINE);
gg.glLineWidth(5f);
gg.glBegin(GL2.GL_POLYGON);
gg.glColor3f(0f,0f,0f);//black
gg.glVertex2i(5,15);
gg.glVertex2i( 10,20);
gg.glVertex2i( 10,7);
gg.glVertex2i(5,0);
gg.glEnd();
gg.glPolygonMode(GL2.GL_FRONT_AND_BACK, GL2.GL_FILL);
gg.glFlush();
gg.glPopMatrix();

You might also like