Isis Developer Reference
|
Store and/or manipulate pixel values. More...
#include <Pixel.h>
Public Member Functions | |
Pixel () | |
Constructs an empty Pixel. | |
Pixel (int sample, int line, int band, double DN) | |
Constructs a Pixel given a line, sample, band, and DN. | |
Pixel (const Pixel &pixel) | |
Constructs a Pixel, given a Pixel. | |
virtual | ~Pixel () |
Default destructor. | |
Pixel & | operator= (const Pixel &other) |
Copy assignment operator. | |
int | line () const |
int | sample () const |
int | band () const |
double | DN () const |
unsigned char | To8Bit () |
Converts internal pixel value to an unsigned char pixel with special pixel translations. | |
short int | To16Bit () |
Converts internal pixel value to a short int pixel with special pixel translations. | |
short unsigned int | To16Ubit () |
Converts internal pixel value to a short int pixel with special pixel translations. | |
float | To32Bit () |
Converts internal pixel value to float with special pixel translations. | |
double | ToDouble () |
Converts stored pixel value to a double. | |
float | ToFloat () |
Converts internal pixel value to float with pixel translations and care for overflows (underflows are assumed to cast to 0!) | |
std::string | ToString () |
Returns the name of the pixel type as a string. | |
bool | IsSpecial () |
Returns true if the input pixel is special. | |
bool | IsValid () |
Returns true if the input pixel is valid. | |
bool | IsNull () |
Returns true if the input pixel is null. | |
bool | IsHigh () |
Returns true if the input pixel is one of the high saturation types. | |
bool | IsLow () |
Returns true if the input pixel is one of the low saturation types. | |
bool | IsHrs () |
Returns true if the input pixel is high representation saturation. | |
bool | IsHis () |
Returns true if the input pixel is high instrument saturation. | |
bool | IsLis () |
Returns true if the input pixel is low instrument saturation. | |
bool | IsLrs () |
Returns true if the input pixel is low representation saturation. | |
Static Public Member Functions | |
static unsigned char | To8Bit (const double d) |
Converts double pixels to unsigned char pixels with special pixel translations. | |
static short int | To16Bit (const double d) |
Converts double pixels to short int pixels with special pixel translations. | |
static short unsigned int | To16UBit (const double d) |
Converts double pixels to short unsigned int pixels with special pixel translations. | |
static float | To32Bit (const double d) |
Converts double pixels to float pixels with special pixel translations. | |
static double | ToDouble (const unsigned char t) |
Converts unsigned char pixels to double pixels with special pixel translations. | |
static double | ToDouble (const short int t) |
Converts short int pixels to double pixels with special pixel translations. | |
static double | ToDouble (const short unsigned int t) |
Converts short unsigned int pixels to double pixels with special pixel translations. | |
static double | ToDouble (const float t) |
Converts float pixels to double pixels with special pixel translations. | |
static float | ToFloat (const unsigned char d) |
Converts unsigned char to float with pixel translations and care for overflows (underflows are assumed to cast to 0!) | |
static float | ToFloat (const short int d) |
Converts short int to float with pixel translations and care for overflows (underflows are assumed to cast to 0!) | |
static float | ToFloat (const short unsigned int d) |
Converts short unsigned int to float with pixel translations and care for overflows (underflows are assumed to cast to 0!) | |
static float | ToFloat (const double d) |
Converts double to float with pixel translations and care for overflows (underflows are assumed to cast to 0!) | |
static std::string | ToString (double d) |
Takes a double pixel value and returns the name of the pixel type as a string. | |
static bool | IsSpecial (const double d) |
Returns true if the input pixel is special. | |
static bool | IsSpecial (const float f) |
Returns true if the input pixel is special. | |
static bool | IsValid (const double d) |
Returns true if the input pixel is valid. | |
static bool | IsNull (const double d) |
Returns true if the input pixel is null. | |
static bool | IsHigh (const double d) |
Returns true if the input pixel is one of the high saturation types. | |
static bool | IsLow (const double d) |
Returns true if the input pixel is one of the low saturation types. | |
static bool | IsHrs (const double d) |
Returns true if the input pixel is high representation saturation. | |
static bool | IsHis (const double d) |
Returns true if the input pixel is high instrument saturation. | |
static bool | IsLis (const double d) |
Returns true if the input pixel is low instrument saturation. | |
static bool | IsLrs (const double d) |
Returns true if the input pixel is low representation saturation. | |
Store and/or manipulate pixel values.
This class can store pixel information and also contains utility methods for testing and modifying pixel and special pixel values that can be used without instanteating the class.
Isis::Pixel::Pixel | ( | ) |
Constructs an empty Pixel.
References Isis::Null.
Isis::Pixel::Pixel | ( | int | sample, |
int | line, | ||
int | band, | ||
double | DN ) |
Isis::Pixel::Pixel | ( | const Pixel & | pixel | ) |
|
virtual |
Default destructor.
|
inline |
|
inlinestatic |
Returns true if the input pixel is one of the high saturation types.
d | Pixel value to test |
References Isis::HIGH_INSTR_SAT8, and Isis::HIGH_REPR_SAT8.
|
inline |
Returns true if the input pixel is high instrument saturation.
References IsHis().
Referenced by IsHis(), and ToString().
|
inlinestatic |
Returns true if the input pixel is high instrument saturation.
d | Pixel value to test |
References Isis::HIGH_INSTR_SAT8.
|
inline |
Returns true if the input pixel is high representation saturation.
References IsHrs().
Referenced by IsHrs(), and ToString().
|
inlinestatic |
Returns true if the input pixel is high representation saturation.
d | Pixel value to test |
References Isis::HIGH_REPR_SAT8.
|
inline |
Returns true if the input pixel is low instrument saturation.
References IsLis().
Referenced by IsLis(), and ToString().
|
inlinestatic |
Returns true if the input pixel is low instrument saturation.
d | Pixel value to test |
References Isis::LOW_INSTR_SAT8.
|
inline |
|
inlinestatic |
Returns true if the input pixel is one of the low saturation types.
d | Pixel value to test |
References Isis::LOW_INSTR_SAT8, and Isis::LOW_REPR_SAT8.
|
inline |
Returns true if the input pixel is low representation saturation.
References IsLrs().
Referenced by IsLrs(), and ToString().
|
inlinestatic |
Returns true if the input pixel is low representation saturation.
d | Pixel value to test |
References Isis::LOW_REPR_SAT8.
|
inline |
Returns true if the input pixel is null.
References IsNull().
Referenced by IsNull(), and ToString().
|
inlinestatic |
Returns true if the input pixel is null.
d | Pixel value to test |
References Isis::NULL8.
|
inline |
Returns true if the input pixel is special.
Not special implies it is valid to use in computations.
References IsSpecial().
Referenced by IsSpecial(), and ToString().
|
inlinestatic |
Returns true if the input pixel is special.
Not special implies it is valid to use in computations.
d | Pixel value to test |
References Isis::VALID_MIN8.
|
inlinestatic |
Returns true if the input pixel is special.
Not special implies it is valid to use in computations. This method applies to a 4-byte floating point rather than an 8-byte double.
f | Pixel value to test |
References Isis::VALID_MIN4.
|
inline |
|
inlinestatic |
Returns true if the input pixel is valid.
Valid implies the pixel is neither hrs, lrs, his, lis, nor null.
d | Pixel value to test |
References Isis::VALID_MIN8.
int Isis::Pixel::sample | ( | ) | const |
short int Isis::Pixel::To16Bit | ( | ) |
|
static |
Converts double pixels to short int pixels with special pixel translations.
d | Double pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT2, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT2, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT2, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT2, Isis::LOW_REPR_SAT8, Isis::NULL2, Isis::NULL8, Isis::VALID_MAX2, Isis::VALID_MIN2, and Isis::VALID_MIN8.
short unsigned int Isis::Pixel::To16Ubit | ( | ) |
Converts internal pixel value to a short int pixel with special pixel translations.
References To16UBit().
|
static |
Converts double pixels to short unsigned int pixels with special pixel translations.
d | Double pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT8, Isis::HIGH_INSTR_SATU2, Isis::HIGH_REPR_SAT8, Isis::HIGH_REPR_SATU2, Isis::LOW_INSTR_SAT8, Isis::LOW_INSTR_SATU2, Isis::LOW_REPR_SAT8, Isis::LOW_REPR_SATU2, Isis::NULL8, Isis::NULLU2, Isis::VALID_MAX2, Isis::VALID_MIN2, and Isis::VALID_MIN8.
Referenced by To16Ubit().
float Isis::Pixel::To32Bit | ( | ) |
|
static |
Converts double pixels to float pixels with special pixel translations.
d | Double pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT4, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT4, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT4, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT4, Isis::LOW_REPR_SAT8, Isis::NULL4, Isis::NULL8, Isis::VALID_MAX8, and Isis::VALID_MIN8.
unsigned char Isis::Pixel::To8Bit | ( | ) |
|
static |
Converts double pixels to unsigned char pixels with special pixel translations.
d | Double pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT1, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT1, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT1, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT1, Isis::LOW_REPR_SAT8, Isis::NULL1, Isis::NULL8, Isis::VALID_MAX1, Isis::VALID_MIN1, and Isis::VALID_MIN8.
double Isis::Pixel::ToDouble | ( | ) |
Converts stored pixel value to a double.
|
static |
Converts float pixels to double pixels with special pixel translations.
d | Float pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT4, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT4, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT4, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT4, Isis::LOW_REPR_SAT8, Isis::NULL4, Isis::NULL8, Isis::VALID_MAX4, and Isis::VALID_MIN4.
|
static |
Converts short int pixels to double pixels with special pixel translations.
d | Short int pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT2, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT2, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT2, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT2, Isis::LOW_REPR_SAT8, Isis::NULL2, Isis::NULL8, and Isis::VALID_MIN2.
|
static |
Converts short unsigned int pixels to double pixels with special pixel translations.
d | Short unsigned int pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT8, Isis::HIGH_INSTR_SATU2, Isis::HIGH_REPR_SAT8, Isis::HIGH_REPR_SATU2, Isis::LOW_INSTR_SAT8, Isis::LOW_INSTR_SATU2, Isis::LOW_REPR_SAT8, Isis::LOW_REPR_SATU2, Isis::NULL8, Isis::NULLU2, and Isis::VALID_MINU2.
|
static |
Converts unsigned char pixels to double pixels with special pixel translations.
d | Unsigned char pixel value to be converted to a double |
References Isis::HIGH_INSTR_SAT1, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT1, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT1, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT1, Isis::LOW_REPR_SAT8, Isis::NULL1, Isis::NULL8, Isis::VALID_MAX1, and Isis::VALID_MIN1.
float Isis::Pixel::ToFloat | ( | ) |
|
static |
Converts double to float with pixel translations and care for overflows (underflows are assumed to cast to 0!)
t | Double pixel value to be converted to a float |
References Isis::HIGH_INSTR_SAT4, Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT4, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT4, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT4, Isis::LOW_REPR_SAT8, Isis::NULL4, Isis::NULL8, Isis::VALID_MAX8, and Isis::VALID_MIN8.
|
static |
Converts short int to float with pixel translations and care for overflows (underflows are assumed to cast to 0!)
t | Short int pixel value to be converted to a float |
References Isis::HIGH_INSTR_SAT2, Isis::HIGH_INSTR_SAT4, Isis::HIGH_REPR_SAT2, Isis::HIGH_REPR_SAT4, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT2, Isis::LOW_INSTR_SAT4, Isis::LOW_REPR_SAT2, Isis::LOW_REPR_SAT4, Isis::NULL2, Isis::NULL4, Isis::VALID_MAX2, and Isis::VALID_MIN2.
|
static |
Converts short unsigned int to float with pixel translations and care for overflows (underflows are assumed to cast to 0!)
t | Short unsigned int pixel value to be converted to a float |
References Isis::HIGH_INSTR_SAT4, Isis::HIGH_INSTR_SATU2, Isis::HIGH_REPR_SAT4, Isis::HIGH_REPR_SAT8, Isis::HIGH_REPR_SATU2, Isis::LOW_INSTR_SAT4, Isis::LOW_INSTR_SATU2, Isis::LOW_REPR_SAT4, Isis::LOW_REPR_SATU2, Isis::NULL4, Isis::NULLU2, Isis::VALID_MAXU2, and Isis::VALID_MINU2.
|
static |
Converts unsigned char to float with pixel translations and care for overflows (underflows are assumed to cast to 0!)
t | Unsigned char pixel value to be converted to a float |
References Isis::HIGH_INSTR_SAT1, Isis::HIGH_INSTR_SAT4, Isis::HIGH_REPR_SAT1, Isis::HIGH_REPR_SAT4, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT1, Isis::LOW_INSTR_SAT4, Isis::LOW_REPR_SAT1, Isis::LOW_REPR_SAT4, Isis::NULL1, Isis::NULL4, Isis::VALID_MAX1, and Isis::VALID_MIN1.
string Isis::Pixel::ToString | ( | ) |
Returns the name of the pixel type as a string.
References ToString().
Referenced by ToString().
|
static |