casacore::WCUnion Class Reference

Make the union of 2 or more image regions. More...

#include <WCUnion.h>

Inheritance diagram for casacore::WCUnion:
casacore::WCCompound casacore::WCRegion

List of all members.

Public Member Functions

 WCUnion (const ImageRegion &region1, const ImageRegion &region2)
 Construct the union of one or more image regions.
 WCUnion (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)
 WCUnion (const PtrBlock< const ImageRegion * > &regions)
 WCUnion (Bool takeOver, const PtrBlock< const WCRegion * > &regions)
 Construct from multiple regions given as a Block.
 WCUnion (const WCUnion &other)
 Copy constructor (copy semantics).
virtual ~WCUnion ()
WCUnionoperator= (const WCUnion &other)
 Assignment (copy semantics).
virtual Bool operator== (const WCRegion &other) const
 Comparison.
virtual WCRegioncloneRegion () 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 WCUnionfromRecord (const TableRecord &, const String &tableName)
 Convert correct object from a record.

Protected Member Functions

virtual LCRegiondoToLCRegion (const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &outOrder) const
 Convert to an LCRegion using the given coordinate system and shape.

Detailed Description

Make the union of 2 or more image regions.

Intended use:

Public interface

Prerequisite

Synopsis

The WCUnion class is a specialization of class WCCompound . It makes it possible to take the union 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 a union.

The union of regions is the collection of the pixels masked-on in any region. Note that the bounding box of a union is determined by the outermost pixels. It means that if regions are very far apart, the bounding box of the union is very large and therefore inefficient.

The regions in a union can have different axes and dimensionalities. The axes and dimensionality of a union 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 union 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.

Example

Definition at line 85 of file WCUnion.h.


Constructor & Destructor Documentation

casacore::WCUnion::WCUnion ( const ImageRegion region1,
const ImageRegion region2 
)

Construct the union of one or more image regions.

The image regions have to contain WCRegion objects, otherwise an exception is thrown.

casacore::WCUnion::WCUnion ( 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::WCUnion::WCUnion ( const PtrBlock< const ImageRegion * > &  regions  ) 
casacore::WCUnion::WCUnion ( 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::WCUnion::WCUnion ( const WCUnion other  ) 

Copy constructor (copy semantics).

virtual casacore::WCUnion::~WCUnion (  )  [virtual]

Member Function Documentation

static String casacore::WCUnion::className (  )  [static]

Get the class name (to store in the record).

virtual WCRegion* casacore::WCUnion::cloneRegion (  )  const [virtual]

Make a copy of the derived object.

Implements casacore::WCRegion.

virtual LCRegion* casacore::WCUnion::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 WCUnion* casacore::WCUnion::fromRecord ( const TableRecord ,
const String tableName 
) [static]

Convert correct object from a record.

Reimplemented from casacore::WCRegion.

WCUnion& casacore::WCUnion::operator= ( const WCUnion other  ) 

Assignment (copy semantics).

Reimplemented from casacore::WCCompound.

virtual Bool casacore::WCUnion::operator== ( const WCRegion other  )  const [virtual]

Comparison.

Reimplemented from casacore::WCCompound.

virtual TableRecord casacore::WCUnion::toRecord ( const String tableName  )  const [virtual]

Convert the (derived) object to a record.

Implements casacore::WCRegion.

virtual String casacore::WCUnion::type (  )  const [virtual]

Get the region type.

Returns className()

Implements casacore::WCRegion.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1