Make the intersection of 2 or more image regions. More...
#include <WCIntersection.h>
Public Member Functions | |
| WCIntersection (const ImageRegion ®ion1, const ImageRegion ®ion2) | |
| Construct the intersection of one or more image regions. | |
| WCIntersection (const ImageRegion *region1, const ImageRegion *region2=0, const ImageRegion *region3=0, const ImageRegion *region4=0, const ImageRegion *region5=0, const ImageRegion *region6=0, const ImageRegion *region7=0, const ImageRegion *region8=0, const ImageRegion *region9=0, const ImageRegion *region10=0) | |
| WCIntersection (const PtrBlock< const ImageRegion * > ®ions) | |
| WCIntersection (Bool takeOver, const PtrBlock< const WCRegion * > ®ions) | |
| Construct from multiple regions given as a Block. | |
| WCIntersection (const WCIntersection &other) | |
| Copy constructor (copy semantics). | |
| virtual | ~WCIntersection () |
| WCIntersection & | operator= (const WCIntersection &other) |
| Assignment (copy semantics). | |
| virtual Bool | operator== (const WCRegion &other) const |
| Comparison. | |
| virtual WCRegion * | cloneRegion () const |
| Make a copy of the derived object. | |
| virtual String | type () const |
| Get the region type. | |
| virtual TableRecord | toRecord (const String &tableName) const |
| Convert the (derived) object to a record. | |
Static Public Member Functions | |
| static String | className () |
| Get the class name (to store in the record). | |
| static WCIntersection * | fromRecord (const TableRecord &, const String &tableName) |
| Convert correct object from a record. | |
Protected Member Functions | |
| virtual LCRegion * | doToLCRegion (const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &outOrder) const |
| Convert to an LCRegion using the given coordinate system and shape. | |
Make the intersection of 2 or more image regions.
Public interface
The WCIntersection class is a specialization of class WCCompound . It makes it possible to take the intersection of 2 or more image regions. Note that only world coordinate regions can be used in a compound, thus an LCSlicer object is not allowed in an intersection.
The intersection of regions is the collection of the pixels masked-on in all regions.
The regions in a intersection can have different axes and dimensionalities. The axes and dimensionality of a intersection are determined by the collection of all different axes in its regions. Each individual region will be auto-extended along the axes not being part of the region. E.g. one can define a WCBox with axis RA and another WCBox with axis DEC. The intersection will be 2-dim with axes RA and DEC. The first box will be auto-extended to cover the DEC axis, which results in a 2-dim box with its DEC axis the length of the image's DEC axis. Similarly the second box will be auto-extended to cover the RA axis.
Definition at line 82 of file WCIntersection.h.
| casacore::WCIntersection::WCIntersection | ( | const ImageRegion & | region1, | |
| const ImageRegion & | region2 | |||
| ) |
Construct the intersection of one or more image regions.
The image regions have to contain WCRegion objects, otherwise an exception is thrown.
| casacore::WCIntersection::WCIntersection | ( | const ImageRegion * | region1, | |
| const ImageRegion * | region2 = 0, |
|||
| const ImageRegion * | region3 = 0, |
|||
| const ImageRegion * | region4 = 0, |
|||
| const ImageRegion * | region5 = 0, |
|||
| const ImageRegion * | region6 = 0, |
|||
| const ImageRegion * | region7 = 0, |
|||
| const ImageRegion * | region8 = 0, |
|||
| const ImageRegion * | region9 = 0, |
|||
| const ImageRegion * | region10 = 0 | |||
| ) |
| casacore::WCIntersection::WCIntersection | ( | const PtrBlock< const ImageRegion * > & | regions | ) |
| casacore::WCIntersection::WCIntersection | ( | Bool | takeOver, | |
| const PtrBlock< const WCRegion * > & | regions | |||
| ) |
Construct from multiple regions given as a Block.
When takeOver is True, the destructor will delete the given regions. Otherwise a copy of the regions is made.
| casacore::WCIntersection::WCIntersection | ( | const WCIntersection & | other | ) |
Copy constructor (copy semantics).
| virtual casacore::WCIntersection::~WCIntersection | ( | ) | [virtual] |
| static String casacore::WCIntersection::className | ( | ) | [static] |
Get the class name (to store in the record).
| virtual WCRegion* casacore::WCIntersection::cloneRegion | ( | ) | const [virtual] |
Make a copy of the derived object.
Implements casacore::WCRegion.
| virtual LCRegion* casacore::WCIntersection::doToLCRegion | ( | const CoordinateSystem & | cSys, | |
| const IPosition & | shape, | |||
| const IPosition & | pixelAxesMap, | |||
| const IPosition & | outOrder | |||
| ) | const [protected, virtual] |
Convert to an LCRegion using the given coordinate system and shape.
pixelAxesMap(i) gives the pixel axis in cSys of axes i in the axesDesc.
Implements casacore::WCRegion.
| static WCIntersection* casacore::WCIntersection::fromRecord | ( | const TableRecord & | , | |
| const String & | tableName | |||
| ) | [static] |
Convert correct object from a record.
Reimplemented from casacore::WCRegion.
| WCIntersection& casacore::WCIntersection::operator= | ( | const WCIntersection & | other | ) |
Assignment (copy semantics).
Reimplemented from casacore::WCCompound.
Comparison.
Reimplemented from casacore::WCCompound.
| virtual TableRecord casacore::WCIntersection::toRecord | ( | const String & | tableName | ) | const [virtual] |
Convert the (derived) object to a record.
Implements casacore::WCRegion.
| virtual String casacore::WCIntersection::type | ( | ) | const [virtual] |
1.6.1