#include <itkAzimuthElevationToCartesianTransform.h>
Transforms from an azimuth, elevation, radius coordinate system to a Cartesian coordinate system, or vice versa.
The three coordinate axis are azimuth, elevation, and range.
The azimuth elevation coordinate system is defined similarly to spherical coordinates but is slightly different in that the azimuth and elevation are measured in degrees between the r-axis (i.e z axis) and the projection on the x-z and y-z planes, respectively. Range, or r, is the distance from the origin.
The equations form performing the conversion from azimuth-elevation coordinates to cartesian coordinates are as follows:
The reversed transforms are:
In this class, we can also set what a "forward" transform means. If we call SetForwardAzimuthElevationToCartesian(), a forward transform will return cartesian coordinates when passed azimuth,elevation,r coordinates. Calling SetForwardCartesianToAzimuthElevation() will cause the forward transform to return azimuth,elevation,r coordinates from cartesian coordinates.
Setting the FirstSampleDistance to a non-zero value means that a r value of 12 is actually (12 + FirstSampleDistance) distance from the origin.
There are two template parameters for this class:
TParametersValueType The type to be used for scalar numeric values. Either float or double.
VDimension The number of dimensions of the vector space (must be >=3).
Definition at line 88 of file itkAzimuthElevationToCartesianTransform.h.
Static Public Attributes | |
static constexpr unsigned int | ParametersDimension = VDimension * (VDimension + 1) |
static constexpr unsigned int | SpaceDimension = VDimension |
![]() | |
static constexpr unsigned int | InputSpaceDimension |
static constexpr unsigned int | OutputSpaceDimension |
static constexpr unsigned int | ParametersDimension |
static constexpr unsigned int | SpaceDimension |
![]() | |
static constexpr unsigned int | InputSpaceDimension |
static constexpr unsigned int | OutputSpaceDimension |
static constexpr unsigned int | ParametersDimension |
![]() | |
static constexpr unsigned int | InputSpaceDimension |
static constexpr unsigned int | OutputSpaceDimension |
![]() | |
static constexpr TransformCategoryEnum | BSpline |
static constexpr TransformCategoryEnum | BSpline |
static constexpr TransformCategoryEnum | DisplacementField |
static constexpr TransformCategoryEnum | DisplacementField |
static constexpr TransformCategoryEnum | Linear |
static constexpr TransformCategoryEnum | Linear |
static constexpr TransformCategoryEnum | Spline |
static constexpr TransformCategoryEnum | Spline |
static constexpr TransformCategoryEnum | UnknownTransformCategory |
static constexpr TransformCategoryEnum | UnknownTransformCategory |
static constexpr TransformCategoryEnum | VelocityField |
static constexpr TransformCategoryEnum | VelocityField |
Private Attributes | |
double | m_AzimuthAngularSeparation {} |
double | m_ElevationAngularSeparation {} |
double | m_FirstSampleDistance {} |
bool | m_ForwardAzimuthElevationToPhysical {} |
long | m_MaxAzimuth {} |
long | m_MaxElevation {} |
double | m_RadiusSampleSize {} |
Additional Inherited Members | |
![]() | |
static Pointer | New () |
![]() | |
static InverseTransformBasePointer | InvertTransform (const TTransform &transform) |
![]() | |
FixedParametersType | m_FixedParameters |
ParametersType | m_Parameters |
using itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::ConstPointer = SmartPointer<const Self> |
Definition at line 98 of file itkAzimuthElevationToCartesianTransform.h.
Standard coordinate point type for this class
using itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::MatrixType = Matrix<TParametersValueType, Self::SpaceDimension, Self::SpaceDimension> |
Standard matrix type for this class.
Definition at line 128 of file itkAzimuthElevationToCartesianTransform.h.
using itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::Pointer = SmartPointer<Self> |
Definition at line 97 of file itkAzimuthElevationToCartesianTransform.h.
using itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::Self = AzimuthElevationToCartesianTransform |
Standard class type aliases.
Definition at line 95 of file itkAzimuthElevationToCartesianTransform.h.
using itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::Superclass = AffineTransform<TParametersValueType, VDimension> |
Definition at line 96 of file itkAzimuthElevationToCartesianTransform.h.
|
protected |
Create an AzimuthElevationToCartesianTransform object.
Referenced by ITK_DISALLOW_COPY_AND_MOVE(), and itkOverrideGetNameOfClassMacro().
|
overrideprotecteddefault |
Destroy an AzimuthElevationToCartesianTransform object.
|
inline |
Back transform from cartesian to azimuth-elevation.
Definition at line 151 of file itkAzimuthElevationToCartesianTransform.h.
References m_ForwardAzimuthElevationToPhysical, itk::point(), TransformAzElToCartesian(), and TransformCartesianToAzEl().
Referenced by BackTransformPoint().
|
inline |
Definition at line 167 of file itkAzimuthElevationToCartesianTransform.h.
References BackTransform(), and itk::point().
|
inlineoverridevirtual |
Overrides the TransformCategoryEnum to UnknownTransformCategory. Even though this class derives from AffineTransform, its not a linear transform
Implements TransformBaseTemplate< double >.
Definition at line 176 of file itkAzimuthElevationToCartesianTransform.h.
References TransformBaseTemplate< double >::UnknownTransformCategory.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::ITK_DISALLOW_COPY_AND_MOVE | ( | AzimuthElevationToCartesianTransform< TParametersValueType, VDimension > | ) |
References AzimuthElevationToCartesianTransform().
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkGetConstMacro | ( | AzimuthAngularSeparation | , |
double | ) |
Set the number of degrees between each azimuth unit.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkGetConstMacro | ( | ElevationAngularSeparation | , |
double | ) |
Set the number of degrees between each elevation unit.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkGetConstMacro | ( | FirstSampleDistance | , |
double | ) |
Set the distance to add to the radius.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkGetConstMacro | ( | MaxAzimuth | , |
long | ) |
Set the maximum azimuth. The maximum azimuth and elevation can be set so that the resulting cartesian space is symmetric about the z axis. Therefore, the line defined by azimuth/2,elevation/2 = z-axis.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkGetConstMacro | ( | MaxElevation | , |
long | ) |
Set the maximum elevation The maximum azimuth and elevation can be set so that the resulting cartesian space is symmetric about the z axis. Therefore, the line defined by azimuth/2,elevation/2 = z-axis.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkGetConstMacro | ( | RadiusSampleSize | , |
double | ) |
Set the number of cartesian units between each unit along the R .
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkNewMacro | ( | Self | ) |
New macro for creation of through a Smart Pointer.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkOverrideGetNameOfClassMacro | ( | AzimuthElevationToCartesianTransform< TParametersValueType, VDimension > | ) |
References AzimuthElevationToCartesianTransform().
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkSetMacro | ( | AzimuthAngularSeparation | , |
double | ) |
Set the number of degrees between each azimuth unit.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkSetMacro | ( | ElevationAngularSeparation | , |
double | ) |
Set the number of degrees between each elevation unit.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkSetMacro | ( | FirstSampleDistance | , |
double | ) |
Set the distance to add to the radius.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkSetMacro | ( | MaxAzimuth | , |
long | ) |
Set the maximum azimuth. The maximum azimuth and elevation can be set so that the resulting cartesian space is symmetric about the z axis. Therefore, the line defined by azimuth/2,elevation/2 = z-axis.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkSetMacro | ( | MaxElevation | , |
long | ) |
Set the maximum elevation The maximum azimuth and elevation can be set so that the resulting cartesian space is symmetric about the z axis. Therefore, the line defined by azimuth/2,elevation/2 = z-axis.
itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::itkSetMacro | ( | RadiusSampleSize | , |
double | ) |
Set the number of cartesian units between each unit along the R .
|
overrideprotected |
Print contents of an AzimuthElevationTransform.
void itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::SetAzimuthElevationToCartesianParameters | ( | const double | sampleSize, |
const double | firstSampleDistance, | ||
const long | maxAzimuth, | ||
const long | maxElevation ) |
void itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::SetAzimuthElevationToCartesianParameters | ( | const double | sampleSize, |
const double | firstSampleDistance, | ||
const long | maxAzimuth, | ||
const long | maxElevation, | ||
const double | azimuthAngleSeparation, | ||
const double | elevationAngleSeparation ) |
Set the transformation parameters.
void itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::SetForwardAzimuthElevationToCartesian | ( | ) |
Defines that the forward transform goes from azimuth,elevation to cartesian.
void itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::SetForwardCartesianToAzimuthElevation | ( | ) |
Defines that the forward transform goes from cartesian to azimuth, elevation.
OutputPointType itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::TransformAzElToCartesian | ( | const InputPointType & | point | ) | const |
Transform a point from azimuth-elevation coordinates to Cartesian coordinates.
References itk::point().
Referenced by BackTransform().
OutputPointType itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >::TransformCartesianToAzEl | ( | const OutputPointType & | point | ) | const |
Transform a point from Cartesian coordinates to azimuth-elevation coordinates.
References itk::point().
Referenced by BackTransform().
|
override |
Transform from azimuth-elevation to cartesian.
References itk::point().
|
private |
Definition at line 250 of file itkAzimuthElevationToCartesianTransform.h.
|
private |
Definition at line 251 of file itkAzimuthElevationToCartesianTransform.h.
|
private |
Definition at line 252 of file itkAzimuthElevationToCartesianTransform.h.
|
private |
Definition at line 253 of file itkAzimuthElevationToCartesianTransform.h.
Referenced by BackTransform().
|
private |
Definition at line 247 of file itkAzimuthElevationToCartesianTransform.h.
|
private |
Definition at line 248 of file itkAzimuthElevationToCartesianTransform.h.
|
private |
Definition at line 249 of file itkAzimuthElevationToCartesianTransform.h.
|
staticconstexpr |
Definition at line 102 of file itkAzimuthElevationToCartesianTransform.h.
|
staticconstexpr |
Dimension of the domain space.
Definition at line 101 of file itkAzimuthElevationToCartesianTransform.h.