[apps/graph/graph_view] Factor polar and parametric drawing

This commit is contained in:
Ruben Dashyan
2019-09-20 16:39:50 +02:00
committed by LeaNumworks
parent a7282e6f33
commit a705109b91

View File

@@ -64,18 +64,10 @@ void GraphView::drawRect(KDContext * ctx, KDRect rect) const {
continue;
}
// Polar
if (type == Shared::ContinuousFunction::PlotType::Polar) {
drawCurve(ctx, rect, tmin, tmax, tstep, [](float t, void * model, void * context) {
ContinuousFunction * f = (ContinuousFunction *)model;
Poincare::Context * c = (Poincare::Context *)context;
return f->evaluateXYAtParameter(t, c);
}, f.operator->(), context(), false, f->color());
continue;
}
// Parametric
assert(type == Shared::ContinuousFunction::PlotType::Parametric);
// Polar or parametric
assert(
type == Shared::ContinuousFunction::PlotType::Polar ||
type == Shared::ContinuousFunction::PlotType::Parametric);
drawCurve(ctx, rect, tmin, tmax, tstep, [](float t, void * model, void * context) {
ContinuousFunction * f = (ContinuousFunction *)model;
Poincare::Context * c = (Poincare::Context *)context;