How do you program circular flight plans in GPS? In a recent Buzzfeed article about aerial surveillance, I have seen a map showing perfectly circular flight patterns. Given how precise the patterns are, I highly doubt that the aircraft were being hand-flown.

According to the article, the planes used for this kind of survey work are GA (among others, Cessna and Pilatus PC-12 are mentioned in the article).

I was wondering how would you get to fly such a pattern using a GA-grade autopilot?

I did some research and so far the only way I could find was selecting a circular pattern in a G1000 equipped with the "Search and Rescue" additional SD card. However in this case it seems you can only have a circle where the centre of the circumference corresponds to a known waypoint (See third last page in this PDF manual), so probably that method doesn't offer enough flexibility for the purpose of aerial surveillance (e.g. what if there are no waypoints over the area you need to survey?).

Another way I imagine you could achieve something similar to a perfect circle could be by carefully setting aileron/rudder trim I guess, but I doubt you could hold a stable pattern over time just by using trim controls, due to wind, turbulence etc.

Does anyone have more insight on how you could achieve a perfectly circular flight pattern while being able to arbitrarily place the centre of the circle in any geographical location?
Custom waypoints would work, but it would not be a smooth circle. And as far as I know looping the set of waypoints is not straight forward. Another way is the CWS (control wheel steering) function of some autopilots such as the King KFC 225 to hold a bank angle and to control the radius with the speed, but as you pointed out in a comment, it would not be perfect due to the wind.

Also a unit such as the Garmin 650/750 available for FAR 23 (small aircraft) has the new radius-to-fix and orbit functions: