public static int Main(string [] args) { PSMoveTracker tracker = new PSMoveTracker(); PSMove move = new PSMove(); /* Calibrate the controller in the camera picture */ while (tracker.enable(move) != Status.Tracker_CALIBRATED); while (true) { /* Get a new image from the camera */ tracker.update_image(); /* Track controllers in the camera picture */ tracker.update(); /* Optional and not required by default byte r, g, b; tracker.get_color(move, out r, out g, out b); move.set_leds(r, g, b); move.update_leds(); */ /* If we're tracking, output the position */ if (tracker.get_status(move) == Status.Tracker_TRACKING) { float x, y, radius; tracker.get_position(move, out x, out y, out radius); Console.WriteLine(string.Format("Tracking: x:{0:0.000}, " + "y:{1:0.000}, radius:{2:0.000}", x, y, radius)); } else { Console.WriteLine("Not Tracking!"); } } return 0; }
public MoveTracker(PSMove move) { tracker = new PSMoveTracker(); while(tracker.enable(move) != Status.Tracker_CALIBRATED); tracker.set_auto_update_leds(move,1); image = tracker.get_image(); }
public static int psmove_tracker_get_position(PSMoveTracker tracker, PSMove move, SWIGTYPE_p_float x, SWIGTYPE_p_float y, SWIGTYPE_p_float radius) { int ret = psmoveapi_csharpPINVOKE.psmove_tracker_get_position(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move), SWIGTYPE_p_float.getCPtr(x), SWIGTYPE_p_float.getCPtr(y), SWIGTYPE_p_float.getCPtr(radius)); return ret; }
public static void psmove_tracker_get_size(PSMoveTracker tracker, SWIGTYPE_p_int width, SWIGTYPE_p_int height) { psmoveapi_csharpPINVOKE.psmove_tracker_get_size(PSMoveTracker.getCPtr(tracker), SWIGTYPE_p_int.getCPtr(width), SWIGTYPE_p_int.getCPtr(height)); }
public static void psmove_tracker_update_image(PSMoveTracker tracker) { psmoveapi_csharpPINVOKE.psmove_tracker_update_image(PSMoveTracker.getCPtr(tracker)); }
public static PSMoveFusion psmove_fusion_new(PSMoveTracker tracker, float z_near, float z_far) { IntPtr cPtr = psmoveapi_csharpPINVOKE.psmove_fusion_new(PSMoveTracker.getCPtr(tracker), z_near, z_far); PSMoveFusion ret = (cPtr == IntPtr.Zero) ? null : new PSMoveFusion(cPtr, false); return ret; }
public static void psmove_tracker_set_distance_parameters(PSMoveTracker tracker, float height, float center, float hwhm, float shape) { psmoveapi_csharpPINVOKE.psmove_tracker_set_distance_parameters(PSMoveTracker.getCPtr(tracker), height, center, hwhm, shape); }
public static void psmove_tracker_set_mirror(PSMoveTracker tracker, PSMove_Bool enabled) { psmoveapi_csharpPINVOKE.psmove_tracker_set_mirror(PSMoveTracker.getCPtr(tracker), (int)enabled); }
public static int psmove_tracker_get_color(PSMoveTracker tracker, PSMove move, SWIGTYPE_p_unsigned_char r, SWIGTYPE_p_unsigned_char g, SWIGTYPE_p_unsigned_char b) { int ret = psmoveapi_csharpPINVOKE.psmove_tracker_get_color(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move), SWIGTYPE_p_unsigned_char.getCPtr(r), SWIGTYPE_p_unsigned_char.getCPtr(g), SWIGTYPE_p_unsigned_char.getCPtr(b)); return ret; }
public static int psmove_tracker_set_camera_color(PSMoveTracker tracker, PSMove move, byte r, byte g, byte b) { int ret = psmoveapi_csharpPINVOKE.psmove_tracker_set_camera_color(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move), r, g, b); return ret; }
public static Status psmove_tracker_enable_with_color(PSMoveTracker tracker, PSMove move, byte r, byte g, byte b) { Status ret = (Status)psmoveapi_csharpPINVOKE.psmove_tracker_enable_with_color(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move), r, g, b); return ret; }
public static PSMove_Bool psmove_tracker_get_auto_update_leds(PSMoveTracker tracker, PSMove move) { PSMove_Bool ret = (PSMove_Bool)psmoveapi_csharpPINVOKE.psmove_tracker_get_auto_update_leds(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move)); return ret; }
public static void psmove_tracker_enable_deinterlace(PSMoveTracker tracker, PSMove_Bool enabled) { psmoveapi_csharpPINVOKE.psmove_tracker_enable_deinterlace(PSMoveTracker.getCPtr(tracker), (int)enabled); }
public static float psmove_tracker_distance_from_radius(PSMoveTracker tracker, float radius) { float ret = psmoveapi_csharpPINVOKE.psmove_tracker_distance_from_radius(PSMoveTracker.getCPtr(tracker), radius); return ret; }
public static void psmove_tracker_disable(PSMoveTracker tracker, PSMove move) { psmoveapi_csharpPINVOKE.psmove_tracker_disable(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move)); }
public static Status psmove_tracker_get_status(PSMoveTracker tracker, PSMove move) { Status ret = (Status)psmoveapi_csharpPINVOKE.psmove_tracker_get_status(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move)); return ret; }
public static float psmove_tracker_get_dimming(PSMoveTracker tracker) { float ret = psmoveapi_csharpPINVOKE.psmove_tracker_get_dimming(PSMoveTracker.getCPtr(tracker)); return ret; }
public static void psmove_tracker_set_auto_update_leds(PSMoveTracker tracker, PSMove move, PSMove_Bool auto_update_leds) { psmoveapi_csharpPINVOKE.psmove_tracker_set_auto_update_leds(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move), (int)auto_update_leds); }
public static Exposure psmove_tracker_get_exposure(PSMoveTracker tracker) { Exposure ret = (Exposure)psmoveapi_csharpPINVOKE.psmove_tracker_get_exposure(PSMoveTracker.getCPtr(tracker)); return ret; }
public static void psmove_tracker_set_dimming(PSMoveTracker tracker, float dimming) { psmoveapi_csharpPINVOKE.psmove_tracker_set_dimming(PSMoveTracker.getCPtr(tracker), dimming); }
public static SWIGTYPE_p_void psmove_tracker_get_frame(PSMoveTracker tracker) { IntPtr cPtr = psmoveapi_csharpPINVOKE.psmove_tracker_get_frame(PSMoveTracker.getCPtr(tracker)); SWIGTYPE_p_void ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_void(cPtr, false); return ret; }
public static void psmove_tracker_set_exposure(PSMoveTracker tracker, Exposure exposure) { psmoveapi_csharpPINVOKE.psmove_tracker_set_exposure(PSMoveTracker.getCPtr(tracker), (int)exposure); }
public PSMoveFusion(PSMoveTracker tracker, float z_near, float z_far) : this(psmoveapi_csharpPINVOKE.new_PSMoveFusion(PSMoveTracker.getCPtr(tracker), z_near, z_far), true) { }
public static int psmove_tracker_update(PSMoveTracker tracker, PSMove move) { int ret = psmoveapi_csharpPINVOKE.psmove_tracker_update(PSMoveTracker.getCPtr(tracker), PSMove.getCPtr(move)); return ret; }
public static PSMove_Bool psmove_tracker_get_mirror(PSMoveTracker tracker) { PSMove_Bool ret = (PSMove_Bool)psmoveapi_csharpPINVOKE.psmove_tracker_get_mirror(PSMoveTracker.getCPtr(tracker)); return ret; }
public static PSMoveTrackerRGBImage psmove_tracker_get_image(PSMoveTracker tracker) { PSMoveTrackerRGBImage ret = new PSMoveTrackerRGBImage(psmoveapi_csharpPINVOKE.psmove_tracker_get_image(PSMoveTracker.getCPtr(tracker)), true); return ret; }
internal static HandleRef getCPtr(PSMoveTracker obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; }