Class for statistical Foot Ranking model
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
#include "global.h"
|
||||||
|
/*
|
||||||
|
-----------------------------------------------------------------------------
|
||||||
|
Class: FootModel
|
||||||
|
|
||||||
|
Desc: See header.
|
||||||
|
|
||||||
|
Copyright (c) 2003 by the person(s) listed below. All rights reserved.
|
||||||
|
David Wilson
|
||||||
|
-----------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
#include "Steps.h"
|
||||||
|
#include "FootModel.h"
|
||||||
|
|
||||||
|
|
||||||
|
FootModel::FootModel(Steps* model)
|
||||||
|
{
|
||||||
|
//Define and Init Non-Radar Values
|
||||||
|
double SV;
|
||||||
|
double ChaosSquare;
|
||||||
|
SV = model->GetRadarValues()[RADAR_STREAM] * model->GetRadarValues()[RADAR_VOLTAGE];
|
||||||
|
ChaosSquare = model->GetRadarValues()[RADAR_CHAOS] * model->GetRadarValues()[RADAR_CHAOS];
|
||||||
|
|
||||||
|
m_predictedMeter = BETA_ZERO;
|
||||||
|
m_predictedMeter += STREAM * model->GetRadarValues()[RADAR_STREAM];
|
||||||
|
m_predictedMeter += VOLTAGE * model->GetRadarValues()[RADAR_VOLTAGE];
|
||||||
|
m_predictedMeter += AIR * model->GetRadarValues()[RADAR_AIR];
|
||||||
|
m_predictedMeter += FREEZE * model->GetRadarValues()[RADAR_FREEZE];
|
||||||
|
m_predictedMeter += CHAOS * model->GetRadarValues()[RADAR_CHAOS];
|
||||||
|
m_predictedMeter += SXV * SV;
|
||||||
|
m_predictedMeter += CSQUARE * ChaosSquare;
|
||||||
|
if (model->GetDifficulty() == DIFFICULTY_HARD) m_predictedMeter += HEAVY;
|
||||||
|
if (model->GetDifficulty() == DIFFICULTY_EASY) m_predictedMeter += LIGHT;
|
||||||
|
}
|
||||||
|
|
||||||
|
FootModel::GetPMeter()
|
||||||
|
{
|
||||||
|
return m_predictedMeter;
|
||||||
|
}
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
#ifndef FOOTMODEL_H
|
||||||
|
#define FOOTMODEL_H
|
||||||
|
/*
|
||||||
|
-----------------------------------------------------------------------------
|
||||||
|
File: FootModel.h
|
||||||
|
|
||||||
|
Desc: Holds the equation for the statistical model for determining foot
|
||||||
|
ranking from Groove Radar and difficulty
|
||||||
|
|
||||||
|
Copyright (c) 2003 by the person(s) listed below. All rights reserved.
|
||||||
|
David Wilson
|
||||||
|
-----------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
Meter = 0.775 + 10.1 Stream + 5.27 Voltage - 0.905 Air - 1.10 Freeze
|
||||||
|
+ 2.86 Chaos + 0.722 Heavy - 0.877 Light - 6.35 SV Interaction
|
||||||
|
- 2.58 CSQ
|
||||||
|
*/
|
||||||
|
class FootModel
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
|
||||||
|
//Model Coefficients
|
||||||
|
#define BETA_ZERO (0.775)
|
||||||
|
#define STREAM (10.1)
|
||||||
|
#define VOLTAGE (5.27)
|
||||||
|
#define AIR (-0.905)
|
||||||
|
#define FREEZE (-1.10)
|
||||||
|
#define CHAOS (2.86)
|
||||||
|
#define HEAVY (0.722)
|
||||||
|
#define LIGHT (-0.877)
|
||||||
|
#define SXV (-6.35) // Square/Voltage Interaction Varible
|
||||||
|
#define CSQUARE (-2.58)
|
||||||
|
double m_predictedMeter;
|
||||||
|
|
||||||
|
public:
|
||||||
|
FootModel(Steps* model);
|
||||||
|
double GetPMeter;
|
||||||
|
};
|
||||||
|
#endif
|
||||||
Reference in New Issue
Block a user