|
Programmer
Join Date: May 2005
Location: Kosova
Posts: 94
Rep Power: 4 
|
Actually, only the code for filling the objects has loops, and this not. However, here is the entire method:
public void paintComponent( Graphics g )
{
super.paintComponent(g);
for( int i=0; i< fRectVec.size(); i++ )
{
g.setColor( ((Specific)fRectVec.elementAt(i)).gCol() );
g.fillRect( Math.min(((Specific)fRectVec.elementAt(i)).gX1(),((Specific)fRectVec.elementAt(i)).gX2()), Math.min(((Specific)fRectVec.elementAt(i)).gY2(),((Specific)fRectVec.elementAt(i)).gY1()), Math.abs(((Specific)fRectVec.elementAt(i)).gX1() - ((Specific)fRectVec.elementAt(i)).gX2()), Math.abs(((Specific)fRectVec.elementAt(i)).gY1() - ((Specific)fRectVec.elementAt(i)).gY2()) );
}
for( int i=0; i< fOvalVec.size(); i++ )
{
g.setColor( ((Specific)fOvalVec.elementAt(i)).gCol() );
g.fillOval( Math.min(((Specific)fOvalVec.elementAt(i)).gX1(),((Specific)fOvalVec.elementAt(i)).gX2()), Math.min(((Specific)fOvalVec.elementAt(i)).gY2(),((Specific)fOvalVec.elementAt(i)).gY1()), Math.abs(((Specific)fOvalVec.elementAt(i)).gX1() - ((Specific)fOvalVec.elementAt(i)).gX2()), Math.abs(((Specific)fOvalVec.elementAt(i)).gY1() - ((Specific)fOvalVec.elementAt(i)).gY2()) );
}
for( int i=0; i< OvalVec.size(); i++ )
{
g.setColor( ((Specific)OvalVec.elementAt(i)).gCol() );
g.drawOval( Math.min(((Specific)OvalVec.elementAt(i)).gX1(),((Specific)OvalVec.elementAt(i)).gX2()), Math.min(((Specific)OvalVec.elementAt(i)).gY2(),((Specific)OvalVec.elementAt(i)).gY1()), Math.abs(((Specific)OvalVec.elementAt(i)).gX1() - ((Specific)OvalVec.elementAt(i)).gX2()), Math.abs(((Specific)OvalVec.elementAt(i)).gY1() - ((Specific)OvalVec.elementAt(i)).gY2()) );
}
for( int i=0; i< RectVec.size(); i++ )
{
g.setColor( ((Specific)RectVec.elementAt(i)).gCol() );
g.drawRect( Math.min(((Specific)RectVec.elementAt(i)).gX1(),((Specific)RectVec.elementAt(i)).gX2()), Math.min(((Specific)RectVec.elementAt(i)).gY2(),((Specific)RectVec.elementAt(i)).gY1()), Math.abs(((Specific)RectVec.elementAt(i)).gX1() - ((Specific)RectVec.elementAt(i)).gX2()), Math.abs(((Specific)RectVec.elementAt(i)).gY1() - ((Specific)RectVec.elementAt(i)).gY2()) );
}
for( int i=0; i<LineVec.size(); i++ )
{
g.setColor( ((Specific)LineVec.elementAt(i)).gCol() );
g.drawLine( ((Specific)LineVec.elementAt(i)).gX1(), ((Specific)LineVec.elementAt(i)).gY1(), ((Specific)LineVec.elementAt(i)).gX2(), ((Specific)LineVec.elementAt(i)).gY2());
}
for( int i=0; i<freeVec.size(); i++ )
{
g.setColor( ((Specific)freeVec.elementAt(i)).gCol() );
g.drawLine( ((Specific)freeVec.elementAt(i)).gX1(), ((Specific)freeVec.elementAt(i)).gY1(), ((Specific)freeVec.elementAt(i)).gX2(), ((Specific)freeVec.elementAt(i)).gY2());
}
g.setColor( color );
if( mode == 1 )
g.fillRect( Math.min(X1,X2), Math.min(Y1,Y2), Math.abs(X1-X2),Math.abs(Y1-Y2));
if( mode == 2 )
g.fillOval( Math.min(X1,X2), Math.min(Y1,Y2), Math.abs(X1-X2),Math.abs(Y1-Y2));
if( mode == 3 )
g.drawRect( Math.min(X1,X2), Math.min(Y1,Y2), Math.abs(X1-X2),Math.abs(Y1-Y2));
if( mode == 4 )
g.drawOval( Math.min(X1,X2), Math.min(Y1,Y2), Math.abs(X1-X2),Math.abs(Y1-Y2));
if( mode == 5 )
g.drawLine( X1, Y1, X2, Y2 );
if( mode == 6 )
g.drawLine( LX1, LY1, LX2, LY2 );
repaint();
}
}
|