I'm looking to multiply an image when it touches another image 
thank you
  
  
            import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
 * Write a description of class Ball05 here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Ball05 extends Actor
{
    
    private int SIZE = 400;
    private int a = SIZE/2;
    private int b = a;
    private int diameter = 4 * SIZE / 5;
    private int n = 12;
    
    public void act() 
    {
        addBall05();
    }
    
    public void addBall05()
    {
        GreenfootImage img = new GreenfootImage(SIZE, SIZE);
        img.setColor(Color.BLACK);
       
        int m = Math.min(a, b);
        diameter = 4 * m / 5;
        int r2 = Math.abs(m - diameter) / 2;
        img.drawOval(a - diameter, b - diameter, 2 * diameter, 2 * diameter);
        
        img.setColor(Color.BLUE);
        for (int i = 0; i < n; i++)
        {
            double angle = 2 * Math.PI * i / n;
            int x = (int) Math.round(a + diameter * Math.cos(angle));
            int y = (int) Math.round(b + diameter * Math.sin(angle));
            
            img.fillOval(x - r2, y - r2, 2 * r2, 2 * r2);
            
        }
        setImage(img);
    }
}
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
 * Write a description of class Ball04 here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Ball04 extends Actor
{
    private int size = 400;
    private int a = size/2;
    private int b = a;
    private int r = 4 * size / 5;
    private int n = 12;
    
    public void act() 
    {
        drawImg();   
    }
    
    public void drawImg()
    {
        GreenfootImage img = new GreenfootImage(size, size);
        img.setColor(Color.BLACK);
       
        int m = Math.min(a, b);
        r   = 4 * m / 5;
        int r2 = Math.abs(m - r) / 2;
        img.drawOval(a - r, b - r, 2 * r, 2 * r);
        
        //img.setColor(Color.BLUE);
        for (int i = 0; i < n; i++)
        {
            double t = 2 * Math.PI * i / n;
            int x = (int) Math.round(a + r * Math.cos(t));
            int y = (int) Math.round(b + r * Math.sin(t));
            getWorld().addObject(new Ball04(), x+100, y+100);
            //img.fillOval(x - r2, y - r2, 2 * r2, 2 * r2);           
        }
        setImage(img);
    }
}
// in constructor
public MyWorld()
{
    super(600, 400, 1);
    addObject(new Ball(), 50, 50); // "this." is implicitly understood
}
/* ********************** */
// in a method called by constructor
public MyWorld()
{
    super(600, 400, 1);
    prepare(); // "this." is implicitly understood
}
private void prepare()
{
    Ball ball = new Ball();
    addObject(ball, 0, 0); // "this." is implicitly understood
    ball.setLocation(50, 50);
}
/* *********************** */
// in act method
if (this.getObjects(Ball.class).isEmpty()) this.addObject(new Ball(), 50, 50);import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
 * Write a description of class Ball04 here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Ball04 extends Actor
{
    private static final int SIZE = 400;
    private int a = SIZE/2;
    private int b = a;
    private int r = 4 * SIZE / 5;
    private int n = 12;
    
    public void act() 
    {
        paintComponent();       
    }
    
    public void paintComponent()
    {
        GreenfootImage img = new GreenfootImage(SIZE, SIZE);
        img.setColor(Color.BLACK);
       
        int m = Math.min(a, b);
        r   = 4 * m / 5;
        int r2 = Math.abs(m - r) / 2;
        img.drawOval(a - r, b - r, 2 * r, 2 * r);
        
        //img.setColor(Color.BLUE);
        for (int i = 0; i < n; i++)
        {
            double t = 2 * Math.PI * i / n;
            int x = (int) Math.round(a + r * Math.cos(t));
            int y = (int) Math.round(b + r * Math.sin(t));
            if(getWorld().getObjects(Ball06.class).isEmpty())
            {
                getWorld().addObject(new Ball06(), x+100, y+100);                
            }
            //img.fillOval(x - r2, y - r2, 2 * r2, 2 * r2);           
        }        
        setImage(img);
    }    
}