# How do you tile a set of semi-random points?

Hello,

So I have a Circle Packing algorithm that generates a set of points in a square. I am trying to figure out how to get the set of points to tile now.
I want to be able to generate a set of points in a square. Then simply copy-paste the set right next to each other. But of course doing that now causes the points to overlap.

Any advice on how to do this? And any info on where to even start looking at how to do this would be really great too!

Isn’t this simply a matter of placing the copy further away? i.e. offset the copy by the length of the original square.

Yes and no. Doing that creates an obvious line between the copies. Where as I want it to be seamless, sorry I didn’t specify.

Huh? A line of what? Sorry, perhaps I’m not understanding the context.

A human looking at any repeating pattern may be able to notice the point where it loops, but I’m assuming that’s not what you mean (since you are explicitly asking for the pattern to tessellate). So I presume you mean something to do with how the points are being visually represented, but I don’t think you specified how you’re doing that.

I’m sorry, I should have included a screenshot.

The white circles are ones that the circle packing algorithm generated. The gray circles are the generated white square circles, just copy pasted.

As you can see, they overlap a lot in some places, and leave large gaps in others. If I increase the offset at which they are pasted in at (to get rid of the overlapping), there starts to be a large blank lines between the pasted in squares.

So your problem is not actually about how to tile a given pattern, your problem is that the pattern you generated does not look good when tiled. (A “seamless” tiling is not a special tiling technique, it’s a special kind of pattern that looks good when tiled. The actual tessellation isn’t different.)

I don’t happen to know of any algorithms for generating seamless patterns off-hand, but there probably are some out there. Try searching for something involving the words “seamless tessellation”?

A fast lazy fix might be to reduce the density of the pattern until the blank spaces between tiles stop looking incongruous.

Side note: What you have there is not a collection of points, but a collection of circles. Points have no size. Those circles vary in size and their sizes are important to the problem under consideration. If you just had points, this would probably not be an issue.