Ejemplo n.º 1
0
void ConnectDialog::performCalibration()
{
   if(ui->kinect->getStatus() != SystemStateReady)
        return;

	if(kinect->isCalibrated())
	{
		greenScreen->close();
		delete greenScreen;
		greenScreen = nullptr;
		ui->calibration->setStatus(SystemStateReady);
	}
	else if(greenScreen == nullptr)
	{
		QPixmap pixmap(5000, 5000);
		pixmap.fill(QColor("#09741b"));
		greenScreen = new QSplashScreen(pixmap);
		greenScreen->showFullScreen();
		greenScreen->setFont(QFont("Helvetica neue", 35));
		greenScreen->showMessage(tr("Calibration in progess..."), Qt::AlignCenter);
		greenScreen->raise();
		kinect->calibrate();
	}

	connect(kinect, SIGNAL(calibrated()), this, SLOT(performCalibration()));

    checkAndClose();
}
Ejemplo n.º 2
0
void JoyAxis::joyEvent(int value, bool ignoresets)
{
    setCurrentRawValue(value);
    //currentRawValue = value;
    bool safezone = !inDeadZone(currentRawValue);
    currentThrottledValue = calculateThrottledValue(value);

    if (this->stick)
    {
        if (safezone && !isActive)
        {
            isActive = eventActive = true;
            emit active(value);
        }
        else if (!safezone && isActive)
        {
            isActive = eventActive = false;
            emit released(value);
        }

        stick->joyEvent(ignoresets);
    }
    else
    {
        InputDevice *device = parentSet->getInputDevice();
        if (!device->isGameController() && !device->hasCalibrationThrottle(index))
        {
            performCalibration(currentRawValue);
            safezone = !inDeadZone(currentRawValue);
            currentThrottledValue = calculateThrottledValue(value);
        }

        if (safezone && !isActive)
        {
            isActive = eventActive = true;
            emit active(value);
            createDeskEvent(ignoresets);
        }
        else if (!safezone && isActive)
        {
            isActive = eventActive = false;
            emit released(value);

            createDeskEvent(ignoresets);
        }
        else if (isActive)
        {
            createDeskEvent(ignoresets);
        }
    }

    emit moved(currentRawValue);
}
Ejemplo n.º 3
0
ConnectDialog::ConnectDialog(WiimoteEngine* wiimoteEngine, QKinect* kinect, QWidget *parent) :
    QDialog(parent),
    wiimoteEngine(wiimoteEngine),
	kinect(kinect),
	greenScreen(nullptr),
    ui(new Ui::ConnectDialog)
{
    ui->setupUi(this);

	//setAttribute(Qt::WA_DeleteOnClose);

    ui->wiimote->setSystemName(tr("Wiimote"));
    ui->kinect->setSystemName(tr("Kinect"));
    ui->calibration->setSystemName(tr("Calibration"));

    connect(ui->wiimote, SIGNAL(clicked()), this, SLOT(connectWiimotes()));
    connect(ui->kinect, SIGNAL(clicked()), this, SLOT(connectKinect()));
    connect(ui->calibration, SIGNAL(clicked()), this, SLOT(performCalibration()));
}