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,
24 int minimumForSuccess) : AbstractNumberFilter(flag, minimumForSuccess) {
28 GoodnessOfFitFilter::GoodnessOfFitFilter(
const GoodnessOfFitFilter &other)
29 : AbstractNumberFilter(other) {
33 GoodnessOfFitFilter::~GoodnessOfFitFilter() {
37 bool GoodnessOfFitFilter::evaluate(
const QPair<QString, ControlNet *> *imageAndNet)
const {
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();
This is free and unencumbered software released into the public domain.
const double Null
Value for an Isis Null pixel.