9#include "GoodnessOfFitFilter.h"
14#include "ControlMeasure.h"
15#include "ControlMeasureLogData.h"
16#include "ControlNet.h"
17#include "ControlPoint.h"
18#include "SpecialPixel.h"
22 GoodnessOfFitFilter::GoodnessOfFitFilter(
23 AbstractFilter::FilterEffectivenessFlag flag,
28 GoodnessOfFitFilter::GoodnessOfFitFilter(
const GoodnessOfFitFilter &other)
29 : AbstractNumberFilter(other) {
33 GoodnessOfFitFilter::~GoodnessOfFitFilter() {
38 return evaluateImageFromMeasureFilter(imageAndNet);
42 bool GoodnessOfFitFilter::evaluate(
const ControlPoint *point)
const {
43 return evaluatePointFromMeasureFilter(point);
47 bool GoodnessOfFitFilter::evaluate(
const ControlMeasure *measure)
const {
48 double goodness =
Null;
50 if (measure->HasLogData(ControlMeasureLogData::GoodnessOfFit)) {
51 goodness = measure->GetLogData(ControlMeasureLogData::GoodnessOfFit).GetNumericalValue();
54 return AbstractNumberFilter::evaluate(goodness);
58 AbstractFilter *GoodnessOfFitFilter::clone()
const {
59 return new GoodnessOfFitFilter(*
this);
63 QString GoodnessOfFitFilter::getImageDescription()
const {
64 QString description = AbstractFilter::getImageDescription();
65 if (getMinForSuccess() == 1)
66 description +=
"measure that has a goodness of fit which is ";
68 description +=
"measures that have goodness of fits which are ";
70 description += descriptionSuffix();
75 QString GoodnessOfFitFilter::getPointDescription()
const {
76 return getImageDescription();
80 QString GoodnessOfFitFilter::getMeasureDescription()
const {
81 return "that have goodness of fits which are " + descriptionSuffix();
Base class for filters that are number-based.
This is free and unencumbered software released into the public domain.
const double Null
Value for an Isis Null pixel.
This is free and unencumbered software released into the public domain.