previous | start | next

Selection Sort Algorithm Animation: draw

public void draw(Graphics2D g2)
{
   sortStateLock.lock();
   try
   {
      int deltaX = component.getWidth() / a.length;
      for (int i = 0; i < a.length; i++)
      {
         if (i == markedPosition)
            g2.setColor(Color.RED);
         else if (i <= alreadySorted)
            g2.setColor(Color.BLUE);
         else
            g2.setColor(Color.BLACK);
         g2.draw(new Line2D.Double(i * deltaX, 0, i * deltaX, a[i]));
      }
   }
   finally
   {
      sortStateLock.unlock();
   }
}

previous | start | next