Вы должны определить минимальный и максимальный радиус. Например:
var max_rad = 40;
var min_rad = 5;
Радиус является максимумом min_rad
и разницей max_rad
и расстоянием до мыши. Например:
var rad = max(min_rad, max_rad - dist(x, y, mouseX, mouseY)/4);
См. пример:
function setup() {
createCanvas(400, 400);
colorMode(HSB, 400);
}
function draw() {
background(220);
noFill();
noStroke();
var max_rad = 40;
var min_rad = 5;
for(var y=10;y<400; y+=40){
for(var x=10; x<400; x+=40){
var myHue = map(y,0,400,230,320);
fill(myHue,400-x,400);
var rad = max(min_rad, max_rad - dist(x, y, mouseX, mouseY)/4);
ellipse(x,y,rad);
}
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.9.0/p5.js"></script>