Working on The Witness: The Nebraska Problem
mollyrocket.com
mollyrocket.com
Certain real-world plants "use" Fibonacci sequences to avoid gaps in their leaf-coverage, which seems eerily reminiscent of OP's problem with covering up gaps using... ah, virtual plants.
As for primes, it seems to me like the typical corn-row problem comes about when there's a certain kind of periodicity in the layout.
Yes, I read the entire thing (on my phone, even) before starting a reply... Why did you want to know?
> Incidentally, the way plants get distributed is somewhat different from the way they distribute parts of themselves
Certainly, but the OPs goal of "no repeated gaps along a line" only maps to one of those cases... AFAIK plants have no particular incentive to avoid the occasional line-segment as they compete for placement.
[1] The number is 1,472,221 as of two minutes ago, if anyone cares.
1. It should not be possible to draw a rectangle wider than a certain diameter and length through the points (at any orientation).
2. The distance between any point and the nearest neighbouring point must not exceed a specified threshold.
An easy way to sample points from a random distribution but with additional constraints applied would be to do rejection sampling - if a point doesn't meet the constraints, reject it and start again. For this to work, you would need to formulate your constraints based on the number of points accepted so far so you don't reject all the points (for example, sample the first few points randomly, and then sample the next points using rejection criteria based on a multiple of the theoretical minimum values of the distance between points / size of the rectangles for the number of points sampled so far).This requires being able to efficiently work out the greatest distance between points and finding the largest rectangle of a given width. You could do the former with a quad-tree; if the new candidate point is too close to the nearest neighbour, reject it; if it is accepted, add it to the quad-tree. For the rectangles, you could optimise by creating a Fibonacci heap with the largest rectangle so far for each point - the largest rectangle will never get bigger as you add more points, so you should be able to do much better than O(n^2) time in the number of points (I haven't verified this, however) because you can skip checking most points most times.
A great illustration of the cornerstone of the scientific method at work.
I sent an email to the author, and he was able to fix the script.
Yesterday was my nephew's first birthday. My family had a basketball theme. In between superficial conversations I noticed the pattern on a cheap rubber basketball was made of dots that form overlapping, concentric circles. I thought the pattern was neat and it stuck with me...