From 8cbc601b4c03e4111b3dd59afe7d0456d807b0ad Mon Sep 17 00:00:00 2001 From: Gary Macbook Date: Fri, 23 Aug 2013 10:03:29 +0200 Subject: [PATCH] Added a y=b^data function --- spyview/ImageData.C | 6 ++++++ spyview/ImageData.H | 1 + spyview/ImageWindow.C | 2 ++ spyview/spyview.C | 6 +++++- 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/spyview/ImageData.C b/spyview/ImageData.C index 6a4c760..7c196fa 100644 --- a/spyview/ImageData.C +++ b/spyview/ImageData.C @@ -1092,6 +1092,12 @@ void ImageData::scale(double factor) raw_data[i] = raw_data[i]*factor; } +void ImageData::power2(double x) +{ + for (int i=0; iparameters[0].value, op->parameters[1].value, 0, 1, op->parameters[2].value, op->parameters[3].value); else if (op->name == "power") id.gamma(op->parameters[0].value,op->parameters[1].value); + else if (op->name == "power2") + id.power2(op->parameters[0].value); else if (op->name == "scale data") id.scale(op->parameters[0].value); else if (op->name == "even odd") diff --git a/spyview/spyview.C b/spyview/spyview.C index 5216a5d..2f3ea85 100644 --- a/spyview/spyview.C +++ b/spyview/spyview.C @@ -522,11 +522,15 @@ int main(int argc, char **argv) gradmag.addParameter("Axis Bias [0-1.0]",0.5); Define_Image_Operation(&gradmag); - Image_Operation gamma("power","y = x^p, p<0 & abs(x) truncate x, y<0 & p not int => set y=0"); // a better name + Image_Operation gamma("power","y = data^p. If p<0 & abs(data) truncate x to avoid 1/0. If data<0 & p not int => set data=0 to avoid complex numbers"); // a better name gamma.addParameter("Power", 0.5); gamma.addParameter("Epsilon", 1e-20); Define_Image_Operation(&gamma); + Image_Operation power2("power2","y = b^data"); + power2.addParameter("Base (b)", 10); + Define_Image_Operation(&power2); + Define_Image_Operation(new Image_Operation("norm lbl","Stretch the contrast of each line to full scale")); Define_Image_Operation(new Image_Operation("norm cbc","Stretch the contrast of each column to full scale")); -- 2.25.1