示例#1
0
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;
}
示例#2
0
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 ();
}
示例#3
0
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 ();
}