Yet again a Collision post, but also Translation

Hi,

I have set up my collisions like so:

 
//Object 1 coordinates
x1 = 0;		//Top left x
y1 = 100;	//Top left y
x2 = 100;	//Bottom right x
y2 = 0;		//Bottom right y

//Object 2 coordinates  
dx1 = 0;	//same layout as above..
dy1 = 300;	
dx2 = 100;	
dy2 = 200;	


//Object 1
glBegin(GL_QUADS);
	glVertex2i(0,0);
	glVertex2i(x2,y2);	
	glVertex2i(100,100);	
        glVertex2i(x1,y1);
glEnd();

//Object 2
glTranslatef(0.0f, Translate, 0.0f);
glBegin(GL_QUADS);
	glVertex2i(0,200);
	glVertex2i(dx2,dy2);	
	glVertex2i(100,300);	
	glVertex2i(dx1,dy1);
glEnd();

Now, this draws two squares with the top left and bottom right corners set as variables.
When I press a key I increment the ‘Translate’ variable which moves my square down towards the other one.

My question is, how come when I begin translating, the coordinate variables dont change but the object moves. My collision test is very simple:

  
 if ((dx1 < x2) && (dy1 < y2))
    Collided!

It works if i set up each point in each square with a variable, then increment each one with a keypress. But this means 18 variables and 18 input parameters in the function, which seems wasteful.
I know its been posted before but ive not seen any actual code posted. Please can some one clarify for me. thanks a lot