Example #1
0
// GetAccelerometerState returns the axis-based gravity adjusted accelerometer
// state in the form of x-axis, y-axis, and z-axis states.
func (device *Device) GetAccelerometerState() (float64, float64, float64) {

	tiltState := C.freenect_get_tilt_state(device.device)

	var x, y, z C.double
	C.freenect_get_mks_accel(tiltState, &x, &y, &z)

	return float64(x), float64(y), float64(z)
}
Example #2
0
// Tells the device to update it's state data. If you're going to be reading values off the device,
// it's really necessary to be calling this function on a draw/game loop or go routine, otherwise the data will be stale.
func (tilt *Tilt) Refresh() {
	C.freenect_update_tilt_state(tilt.device.dev)
	state := C.freenect_get_tilt_state(tilt.device.dev)

	tilt.Angle = float32(C.freenect_get_tilt_degs(state))
	tilt.Status = int(C.freenect_get_tilt_status(state))
	var x, y, z C.double
	C.freenect_get_mks_accel(state, &x, &y, &z)
	tilt.AccelX = float32(x)
	tilt.AccelY = float32(y)
	tilt.AccelZ = float32(z)
}
Example #3
0
//FREENECTAPI freenect_raw_tilt_state* freenect_get_tilt_state(freenect_device *dev);
func (dev *Device) GetTiltState() *RawTiltState {
	return (*RawTiltState)(unsafe.Pointer(C.freenect_get_tilt_state(dev.ptr())))
}
Example #4
0
// GetTiltStatus returns the current status of the tilting motor.
func (device *Device) GetTiltStatus() TiltStatus {

	tiltState := C.freenect_get_tilt_state(device.device)

	return TiltStatus(C.freenect_get_tilt_status(tiltState))
}
Example #5
0
// GetTiltAngle returns the current angle the Kinect is tilted.
func (device *Device) GetTiltAngle() float64 {

	tiltState := C.freenect_get_tilt_state(device.device)

	return float64(C.freenect_get_tilt_degs(tiltState))
}