RegionBox.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef REGIONBOX_H_
00027 #define REGIONBOX_H_
00028
00029 #include <QList>
00030 #include <QString>
00031 #include <casa/Arrays/Vector.h>
00032
00033 namespace casa {
00034
00035 class RegionBox {
00036 public:
00037 RegionBox(const QList<int> &pixel_x, const QList<int> &pixel_y);
00038 QString toString(const Vector<int>& imageBLC, const Vector<int>& imageTRC) const;
00039 QString toStringLabelled(const Vector<int>& imageBLC, const Vector<int>& imageTRC) const;
00040
00041 void update( const QList<int> & pixelX, const QList<int> & pixelY );
00042 bool isInBox( double valueX, double valueY ) const;
00043 virtual ~RegionBox();
00044 private:
00045 void clear();
00046
00047
00048
00049 QVector<int> getActualBLC( const Vector<int>& imageBLC, const Vector<int>& imageTRC, bool* valid) const;
00050 QVector<int> getActualTRC( const Vector<int>& imageBLC, const Vector<int>& imageTRC, bool* valid ) const;
00051 bool isInImage( const QVector<int>& coords, const Vector<int>& imageBLC,
00052 const Vector<int>& imageTRC ) const;
00053 void initBox( const QList<int> & pixelX, const QList<int>& pixelY );
00054 QList<int> regionBoxBLC;
00055 QList<int> regionBoxTRC;
00056 };
00057
00058 }
00059 #endif