Loading...
Searching...
No Matches
casacore::WCExtension Class Reference
images package (libcasa_images) » Regions_module

More...

`#include <WCExtension.h>`

## Public Member Functions

| WCExtension (const ImageRegion &region, const WCBox &extendBox)
| Construct the extension of an image region using the axes and blc,trc given in the extendBox.
| WCExtension (const WCExtension &other)
| Copy constructor (copy semantics).
virtual | ~WCExtension ()
WCExtension & | operator= (const WCExtension &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.
Public Member Functions inherited from casacore::WCCompound
| WCCompound (const ImageRegion &region1, const ImageRegion &region2)
| Construct from one or more image regions.
| WCCompound (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)
| WCCompound (const PtrBlock< const ImageRegion * > &regions)
| WCCompound (Bool takeOver, const PtrBlock< const WCRegion * > &regions)
| Construct from multiple regions given as a Block.
| WCCompound (const WCCompound &other)
| Copy constructor (copy semantics).
virtual | ~WCCompound ()
const PtrBlock< const WCRegion * > & | regions () const
| Get the contributing regions.
Public Member Functions inherited from casacore::WCRegion
| WCRegion ()
| WCRegion (const WCRegion &other)
| Copy constructor (copy semantics).
virtual | ~WCRegion ()
| Destructor.
Bool | operator!= (const WCRegion &other) const
virtual uInt | ndim () const
| Get the dimensionality (i.e.
const Record & | getAxesDesc () const
| Get the description of all axes.
const Record & | getAxisDesc (uInt axis) const
| Get the description of the given axis.
Int | axisNr (const Record &desc, const Record &axesDesc) const
| Return the axis number of the description of an axis in the full axes description.
Bool | isAxisDescEqual (const Record &desc1, const Record &desc2) const
| Are both axis descriptions equal?
const String & | comment () const
| Get or set the comment.
void | setComment (const String &comment)
virtual LCRegion * | toLCRegion (const CoordinateSystem &cSys, const IPosition &shape) const
| Convert to an LCRegion using the given new coordinate system and shape.
LCRegion * | toLCRegionAxes (const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &outOrder) const
| Convert to an LCRegion using the given coordinate system and shape.
void | defineRecordFields (RecordInterface &record, const String &className) const
| Define the type and class name in the record.

## Static Public Member Functions

static String | className ()
| Get the class name (to store in the record).
static WCExtension * | fromRecord (const TableRecord &, const String &tableName)
| Convert correct object from a record.
Static Public Member Functions inherited from casacore::WCRegion
static WCRegion * | fromRecord (const TableRecord &rec, const String &tableName)
| Convert correct object from a record.

## Protected Member Functions

virtual Bool | canExtend () const
| WCExtension can extend a region if WCBox can do so.
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.
Protected Member Functions inherited from casacore::WCCompound
WCCompound & | operator= (const WCCompound &other)
| Assignment (copy semantics) makes only sense for a derived class.
void | multiToLCRegion (PtrBlock< const LCRegion * > &regions, const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &extendAxes) const
| Convert each WCRegion to an LCRegion.
TableRecord | makeRecord (const String &tableName) const
| Store the contributing regions in a record.
Protected Member Functions inherited from casacore::WCRegion
WCRegion & | operator= (const WCRegion &other)
| Assignment (copy semantics) makes only sense for a derived class.
void | addAxisDesc (const Record &axisDesc)
| Add an axis with its description.
Record | makeAxisDesc (const CoordinateSystem &cSys, uInt pixelAxis) const
| Make a description of a pixel axis in the coordinate system.
Record | makeAxesDesc (const CoordinateSystem &cSys) const
| Make a description of all pixel axes in the coordinate system (in pixel axes order).
void | makeWorldAbsolute (Vector< Double > &world, const Vector< Int > &absRel, const CoordinateSystem &cSys, const IPosition &shape) const
| Convert relative to absolute world as needed.
void | checkAxes (const IPosition &pixelAxes, const CoordinateSystem &cSys, const Vector< String > &quantityUnits) const

## Private Member Functions

| WCExtension (Bool takeOver, const PtrBlock< const WCRegion * > &regions)
| Construct from multiple regions given as a Block.
void | findAxes (IPosition &extendBoxAxes, IPosition &stretchBoxAxes, IPosition &stretchRegionAxes) const
| Find the axes to be extended and stretched.

## Additional Inherited Members

Static Protected Member Functions inherited from casacore::WCCompound
static void | unmakeRecord (PtrBlock< const WCRegion * > &, const TableRecord &, const String &tableName)
| Retrieve the contributing objects from the record.
Static Protected Member Functions inherited from casacore::WCRegion
static void | unitInit ()
static void | convertPixel (Double &pixel, const Double &value, const String &unit, const Int absRel, const Double refPix, const Int shape)

## Detailed Description

Make the extension of an image region.

### Intended use:

Public interface

### Prerequisite

- WCCompound

### Synopsis

The WCExtension class is a specialization of class WCCompound. It makes it possible to extend a region along straight lines to other dimensions. It is also possible to extend existing axes with length 1, i.e. to stretch such axes. E.g. a circle in the RA,DEC plane can be extended to a cylinder in a RA,DEC,FREQ cube. It is possible to extend over more than one dimension. One can also limit the extension range E.g. in the forementioned example the circle can be extended for a given range of frequencies only.
The extension axes and ranges have to be given as a WCBox object. The axes which are part of the box and the region are the axes to be stretched. Box axes which are not part of the region are the extension axes.

Note that regions get automatically extended when a region is used for a higher dimensioned image. The extension is done for all unknown axes (for their entire length).

### Example

Definition at line 84 of file WCExtension.h.

## Constructor & Destructor Documentation

## WCExtension() [1/3]

casacore::WCExtension::WCExtension | ( | const ImageRegion & | region,
|  | const WCBox & | extendBox )

Construct the extension of an image region using the axes and blc,trc given in the extendBox.

The axes in region and box have to be disjoint.

Referenced by fromRecord(), operator=(), and WCExtension().

## WCExtension() [2/3]

casacore::WCExtension::WCExtension | ( | const WCExtension & | other | ) |

Copy constructor (copy semantics).

References WCExtension().

## ~WCExtension()

virtual casacore::WCExtension::~WCExtension | ( |  | ) |

virtual

## WCExtension() [3/3]

casacore::WCExtension::WCExtension | ( | Bool | takeOver,
|  | const PtrBlock< const WCRegion * > & | regions )

private

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.

References casacore::WCCompound::regions().

## Member Function Documentation

## canExtend()

virtual Bool casacore::WCExtension::canExtend | ( |  | ) | const

protected virtual

WCExtension can extend a region if WCBox can do so.

Reimplemented from casacore::WCRegion.

## className()

String casacore::WCExtension::className | ( |  | ) |

static

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

## cloneRegion()

virtual WCRegion * casacore::WCExtension::cloneRegion | ( |  | ) | const

virtual

Make a copy of the derived object.

Implements casacore::WCRegion.

## doToLCRegion()

virtual LCRegion * casacore::WCExtension::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.

References casacore::shape().

## findAxes()

void casacore::WCExtension::findAxes | ( | IPosition & | extendBoxAxes,
|  | IPosition & | stretchBoxAxes,
|  | IPosition & | stretchRegionAxes ) const

private

Find the axes to be extended and stretched.

The extend axes are the axis numbers in the box. For the stretch axes both box and region axes are returned.

## fromRecord()

WCExtension * casacore::WCExtension::fromRecord | ( | const TableRecord & | ,
|  | const String & | tableName )

static

Convert correct object from a record.

References WCExtension().

## operator=()

WCExtension & casacore::WCExtension::operator= | ( | const WCExtension & | other | ) |

Assignment (copy semantics).

References WCExtension().

## operator==()

virtual Bool casacore::WCExtension::operator== | ( | const WCRegion & | other | ) | const

virtual

Comparison.

Reimplemented from casacore::WCCompound.

## toRecord()

virtual TableRecord casacore::WCExtension::toRecord | ( | const String & | tableName | ) | const

virtual

Convert the (derived) object to a record.

Implements casacore::WCRegion.

## type()

virtual String casacore::WCExtension::type | ( |  | ) | const

virtual

Get the region type.

Returns className()

Implements casacore::WCRegion.

The documentation for this class was generated from the following file:

- images/Regions/WCExtension.h