29 #ifndef COMPONENTS_DISKSHAPE_H
30 #define COMPONENTS_DISKSHAPE_H
41 template <
class Qtype>
class Quantum;
42 template <
class T>
class Matrix;
43 template <
class T>
class Vector;
virtual ~DiskShape()
The destructor does nothing special.
A Measure: astronomical direction.
std::vector< double > Vector
virtual casacore::Double minorAxisInRad() const
Base class for component shapes with two sides.
DiskShape()
The default GaussianShape is at the J2000 North Pole with a width of 1 arc-min on both axes...
virtual casacore::DComplex visibility(const casacore::Vector< casacore::Double > &uvw, const casacore::Double &frequency) const
Return the Fourier transform of the component at the specified point in the spatial frequency domain...
virtual void setWidthInRad(const casacore::Double majorAxis, const casacore::Double minorAxis, const casacore::Double positionAngle)
set or return the width and orientation of the disk.
Shape
The shapes of all the components.
casacore::Double _majorAxis
The parameters of the disk.
virtual casacore::String sizeToString() const
Get the string containing the various size quantities of a component.
virtual casacore::Bool ok() const
casacore::Function which checks the internal data of this class for correct dimensionality and consis...
virtual const ComponentShape * getPtr() const
return a pointer to this object.
casacore::Double _minorAxis
casacore::Quantum< casacore::Double > minorAxis() const
static void _rotateVis(casacore::Double &u, casacore::Double &v, const casacore::Double cpa, const casacore::Double spa)
casacore::Double _recipArea
Base class for component shapes.
std::complex< Double > DComplex
virtual casacore::Double positionAngleInRad() const
virtual casacore::Double sample(const casacore::MDirection &direction, const casacore::MVAngle &pixelLatSize, const casacore::MVAngle &pixelLongSize) const
Calculate the proportion of the flux that is in a pixel of specified size centered in the specified d...
bool Bool
Define the standard types used by Casacore.
virtual ComponentShape * clone() const
Return a pointer to a copy of this object upcast to a ComponentShape object.
casacore::Double _calcSample(const casacore::MDirection::MVType &compDirValue, const casacore::MDirection::MVType &dirVal, const casacore::Double majRad, const casacore::Double minRad, const casacore::Double pixValue) const
casacore::Double axialRatio() const
casacore::Double _area() const
area of disk
casacore::Double _calcVis(casacore::Double u, casacore::Double v, const casacore::Double factor) const
A disk model for the spatial distribution of emission.
casacore::Quantum< casacore::Double > positionAngle() const
virtual ComponentType::Shape type() const
get the type of the shape.
virtual casacore::Double majorAxisInRad() const
DiskShape & operator=(const DiskShape &other)
The assignment operator uses copy semantics.
String: the storage and methods of handling collections of characters.
Vector of three direction cosines.
casacore::Quantum< casacore::Double > majorAxis() const
Class to handle angle type conversions and I/O.
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.