static gboolean on_key_release (ClutterActor *actor, ClutterEvent *event, gpointer data) { GFreenectDevice *kinect; gdouble angle; guint key; g_return_val_if_fail (event != NULL, FALSE); kinect = GFREENECT_DEVICE (data); key = clutter_event_get_key_symbol (event); switch (key) { case CLUTTER_KEY_space: SHOW_SKELETON = !SHOW_SKELETON; break; case CLUTTER_KEY_plus: set_threshold (100); break; case CLUTTER_KEY_minus: set_threshold (-100); break; case CLUTTER_KEY_Up: set_tilt_angle (kinect, 5); break; case CLUTTER_KEY_Down: set_tilt_angle (kinect, -5); break; } set_info_text (); return TRUE; }
static void on_destroy (ClutterActor *actor, gpointer data) { GFreenectDevice *device = GFREENECT_DEVICE (data); gfreenect_device_stop_depth_stream (device, NULL); gfreenect_device_stop_video_stream (device, NULL); clutter_main_quit (); }
static void on_destroy (ClutterActor *actor, gpointer data) { ClutterContent *content; GFreenectDevice *device = GFREENECT_DEVICE (data); content = clutter_actor_get_content (depth_tex); if (content == depth_canvas) g_object_unref (depth_image); else g_object_unref (depth_canvas); gfreenect_device_stop_depth_stream (device, NULL); gfreenect_device_stop_video_stream (device, NULL); clutter_main_quit (); }