if ( far.testSwap( near ) )
if ( far.testSwap( near, this ) )
	protected void overlapSwap( List rtList )	{		for ( int i = 0; i < rtList.size( ); i++ )		{			long max_loop = rtList.size( ) - i;			int n = -1;			boolean restart = true;			while ( restart && n < max_loop )			{				restart = false;				n++;				Object event = rtList.get( i );				Object3D far = getObjectFromEvent( event );				for ( int j = i + 1; j < rtList.size( ); j++ )				{					Object event2 = rtList.get( j );					Object3D near = getObjectFromEvent( event2 );					if ( far.testZOverlap( near ) )					{						if ( far.testSwap( near ) )						{							rtList.set( i, event2 );							rtList.set( j, event );							restart = true;							break;						}					}				}			}		}	}