import math; size(7.5cm); add(grid(4,4,gray)); pair aleapair(real x, real y, real Dx, real Dy=Dx){ return (x+(2*unitrand()-1)*Dx,y+(2*unitrand()-1)*Dy); } pair aleapair(pair pt, real Dx, real Dy=Dx){ return (pt.x+(2*unitrand()-1)*Dx,pt.y+(2*unitrand()-1)*Dy); } srand((int)time("%S")); for(int k=0; k<100; ++k){ dot(aleapair(x=1,y=1,Dx=.5),5bp+unitrand()*red); dot(aleapair(3,1,.25,.75),5bp+unitrand()*blue); dot(aleapair(3,3,.5,.2),5bp+unitrand()*green); dot(aleapair(pt=(1,3),.5),5bp+unitrand()*purple); } dot("$(0,0)$",(0,0),NE); dot("$(2,2)$",(2,2),SW);