12 m_calculation(calculation)
15 assert(calculation !=
nullptr);
24 float lowerBound = m_calculation->
lowerBound();
25 float upperBound = m_calculation->
upperBound();
32 drawHistogram(ctx, rect, EvaluateAtAbscissa, m_law,
nullptr, 0, 1,
false,
Palette::GreyMiddle,
Palette::YellowDark, lowerBound, upperBound+0.5f);
40 return (
char *)m_labels[index];
43 float LawCurveView::EvaluateAtAbscissa(
float abscissa,
void *
model,
void * context) {
virtual bool isContinuous() const =0
static constexpr KDColor YellowDark
const SettingsMessageTree model
void markRectAsDirty(KDRect rect)
void drawAxes(KDContext *ctx, KDRect rect, Axis axis) const
void drawCurve(KDContext *ctx, KDRect rect, EvaluateModelWithParameter evaluation, void *model, void *context, KDColor color, bool colorUnderCurve=false, float colorLowerBound=0.0f, float colorUpperBound=0.0f, bool continuously=false) const
void drawLabels(KDContext *ctx, KDRect rect, Axis axis, bool shiftOrigin) const
virtual double lowerBound()
static constexpr KDColor GreyMiddle
virtual float evaluateAtAbscissa(float x) const =0
void drawHistogram(KDContext *ctx, KDRect rect, EvaluateModelWithParameter evaluation, void *model, void *context, float firstBarAbscissa, float barWidth, bool fillBar, KDColor defaultColor, KDColor highlightColor, float highlightLowerBound=INFINITY, float highlightUpperBound=-INFINITY) const
static constexpr KDColor WallScreen
void fillRect(KDRect rect, KDColor color)
virtual double upperBound()
void drawRect(KDContext *ctx, KDRect rect) const override
char * label(Axis axis, int index) const override