mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[apps/reg] Display the regression layouts is RegressionController
This commit is contained in:
@@ -1,4 +1,13 @@
|
||||
#include "regression_controller.h"
|
||||
#include "model/cubic_model.h"
|
||||
#include "model/exponential_model.h"
|
||||
#include "model/linear_model.h"
|
||||
#include "model/logarithmic_model.h"
|
||||
#include "model/logistic_model.h"
|
||||
#include "model/power_model.h"
|
||||
#include "model/quadratic_model.h"
|
||||
#include "model/quartic_model.h"
|
||||
#include "model/trigonometric_model.h"
|
||||
#include <assert.h>
|
||||
|
||||
using namespace Poincare;
|
||||
@@ -13,27 +22,6 @@ RegressionController::RegressionController(Responder * parentResponder, Store *
|
||||
m_store(store),
|
||||
m_series(-1)
|
||||
{
|
||||
/*// aX+b
|
||||
m_regressionLayouts[0] = LayoutEngine::createStringLayout("aX+b");
|
||||
// aX^2+bX+c
|
||||
const ExpressionLayout * const * quadraticLayoutOperands[] = {
|
||||
|
||||
};
|
||||
m_regressionLayouts[1]
|
||||
// aX^3+bX^2+cX+d
|
||||
//TODO
|
||||
// aX^4+bX^3+cX^2+dX+e
|
||||
//TODO
|
||||
// aln(X)+b
|
||||
m_regressionLayouts[4] = LayoutEngine::createStringLayout("aln(X)+b");
|
||||
// ae^(bX)
|
||||
//TODO
|
||||
//aX^b
|
||||
//TODO
|
||||
// asin(bX+c)
|
||||
m_regressionLayouts[7] = LayoutEngine::createStringLayout("asin(bX+c)");
|
||||
// c/(1+ae^(-bX)
|
||||
//TODO*/
|
||||
}
|
||||
|
||||
const char * RegressionController::title() {
|
||||
@@ -68,6 +56,39 @@ void RegressionController::willDisplayCellAtLocation(HighlightCell * cell, int i
|
||||
I18n::Message messages[k_numberOfRows] = {I18n::Message::Linear, I18n::Message::Quadratic, I18n::Message::Cubic, I18n::Message::Quartic, I18n::Message::Logarithmic, I18n::Message::Exponential, I18n::Message::Power, I18n::Message::Trigonometric, I18n::Message::Logistic};
|
||||
MessageTableCellWithExpression * castedCell = static_cast<MessageTableCellWithExpression *>(cell);
|
||||
castedCell->setMessage(messages[j]);
|
||||
switch ((Model::Type) j) {
|
||||
// TODO virtualize ?
|
||||
case Model::Type::Linear:
|
||||
castedCell->setExpressionLayout(LinearModel::Layout());
|
||||
break;
|
||||
case Model::Type::Quadratic:
|
||||
castedCell->setExpressionLayout(QuadraticModel::Layout());
|
||||
break;
|
||||
case Model::Type::Cubic:
|
||||
castedCell->setExpressionLayout(CubicModel::Layout());
|
||||
break;
|
||||
case Model::Type::Quartic:
|
||||
castedCell->setExpressionLayout(QuarticModel::Layout());
|
||||
break;
|
||||
case Model::Type::Logarithmic:
|
||||
castedCell->setExpressionLayout(LogarithmicModel::Layout());
|
||||
break;
|
||||
case Model::Type::Exponential:
|
||||
castedCell->setExpressionLayout(ExponentialModel::Layout());
|
||||
break;
|
||||
case Model::Type::Power:
|
||||
castedCell->setExpressionLayout(PowerModel::Layout());
|
||||
break;
|
||||
case Model::Type::Trigonometric:
|
||||
castedCell->setExpressionLayout(TrigonometricModel::Layout());
|
||||
break;
|
||||
case Model::Type::Logistic:
|
||||
castedCell->setExpressionLayout(LogisticModel::Layout());
|
||||
break;
|
||||
default:
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user