We are a group of ecologists interested in designing and evaluating road-based wildlife survey designs. Using a complex road network over a large geographic extent (e.g. thousands of square km), we require a method that will create, based on a specified radius distance, an output file of all possible, adjacent, non-overlapping, road-centred circles for the entire road network - given a single, arbitrarily chosen starting point. The method must be robust to complex road patterns (including intersections and switchbacks). Conceptually, the problem seems fairly straightforward: from a given centroid, search exactly 2*radius until a road is encountered, then establish another centroid (and circle of radius x distance) and continue searching while complying with the 2*radius rule. If conflicts result from complying with the search rule - e.g., a new centroid could be in location A or B - simply taking the first new centroid would be an acceptable solution.
Advice on how to implement this with ArcGIS, R, SAS/GIS, or other software would be very helpful. Our preference is for a script or similar solution that could be set up to run in batch-mode after the starting point and radius definition were designated.