It should work; I don't know of any current bugs in this area.
Does this work for you?
import Leap, sys, thread, time
class SampleListener(Leap.Listener):
def on_connect(self, controller):
controller.enable_gesture(Leap.Gesture.TYPE_CIRCLE);
controller.config.set("Gesture.Circle.MinRadius", 100.0)
controller.config.save()
def on_frame(self, controller):
frame = controller.frame()
gestures = frame.gestures()
for gesture in gestures:
circle = Leap.CircleGesture(gesture)
print "Radius " + str(circle.radius)
def main():
# Create a sample listener and controller
listener = SampleListener()
controller = Leap.Controller()
# Have the sample listener receive events from the controller
controller.add_listener(listener)
# Keep this process running until Enter is pressed
print "Press Enter to quit..."
try:
sys.stdin.readline()
except KeyboardInterrupt:
pass
finally:
# Remove the sample listener when done
controller.remove_listener(listener)
if __name__ == "__main__":
main()