Class for parameterized infinite planes. More...
#include <cmtkParametricPlane.h>
Public Types | |
typedef ParametricPlane | Self |
This class. | |
typedef SmartPointer< Self > | SmartPtr |
Smart pointer. | |
typedef FixedVector < 3, Types::Coordinate > | CoordinateVectorType |
Coordinate vector. | |
Public Member Functions | |
ParametricPlane () | |
Default constructor. | |
cmtkGetSetMacro (Self::CoordinateVectorType, Origin) | |
Origin of the coordinate system the plane parameters refer to. | |
void | SetRho (const Types::Coordinate rho) |
Set parameter Rho. | |
Types::Coordinate | GetRho () const |
Get parameter Rho. | |
void | SetTheta (const Units::Degrees &theta) |
Set parameter Theta. | |
const Units::Degrees | GetTheta () const |
Get parameter Theta. | |
void | SetPhi (const Units::Degrees &phi) |
Set parameter Phi. | |
const Units::Degrees | GetPhi () const |
Get parameter Phi. | |
void | SetNormal (const Self::CoordinateVectorType &normal) |
Set normal vector and determine rotation angles from it. | |
void | GetParameters (CoordinateVector &v) const |
Get all parameters. | |
void | SetParameters (const CoordinateVector &v) |
Set all parameters. | |
char | GetWhichSide (const Self::CoordinateVectorType &point) const |
Determine which side of the plane a point is on. | |
void | Mirror (Self::CoordinateVectorType &toPoint, const Self::CoordinateVectorType &fromPoint) const |
Mirror point with respect to plane. | |
void | MirrorInPlace (Self::CoordinateVectorType &point) const |
Mirror point in-place with respect to plane. | |
void | Project (Self::CoordinateVectorType &toPoint, const Self::CoordinateVectorType &fromPoint) const |
Project point onto plane. | |
void | ProjectInPlace (Self::CoordinateVectorType &point) const |
Project point onto plane in-place. | |
AffineXform * | GetAlignmentXform (const byte normalAxis=0) const |
Get transformation that aligns this plane with the coordinate system. | |
AffineXform::MatrixType | GetMirrorXformMatrix () const |
Get affine transformation matrix of the mirror transform. | |
const Self::CoordinateVectorType & | GetNormal () const |
Return normal vector. | |
Private Member Functions | |
void | Update () |
Update internal fields after change of parameters. | |
Private Attributes | |
Types::Coordinate | Rho |
Radius of tangent sphere with center at Origin. | |
Units::Degrees | Theta |
Rotation angle of tangent point around z axis through Origin. | |
Units::Degrees | Phi |
Elevation angle of tangent point over x/y plane through Origin. | |
Self::CoordinateVectorType | Normal |
Plane normal. | |
Types::Coordinate | SquareNormal |
Square norm of plane normal. |
Class for parameterized infinite planes.
Definition at line 53 of file cmtkParametricPlane.h.
Coordinate vector.
Definition at line 63 of file cmtkParametricPlane.h.
This class.
Definition at line 57 of file cmtkParametricPlane.h.
Smart pointer.
Definition at line 60 of file cmtkParametricPlane.h.
cmtk::ParametricPlane::cmtkGetSetMacro | ( | Self::CoordinateVectorType | , |
Origin | |||
) |
Origin of the coordinate system the plane parameters refer to.
This is NOT the origin of the plane. In fact, this coordinate does not even need to be on the plane itself. It is merely the coordinate in space relative to which the plane is parameterized.
const Self::CoordinateVectorType& cmtk::ParametricPlane::GetNormal | ( | ) | const [inline] |
Return normal vector.
Definition at line 209 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator<<().
void cmtk::ParametricPlane::GetParameters | ( | CoordinateVector & | v ) | const [inline] |
Get all parameters.
Definition at line 115 of file cmtkParametricPlane.h.
References cmtk::Vector< T >::SetDim().
const Units::Degrees cmtk::ParametricPlane::GetPhi | ( | ) | const [inline] |
Get parameter Phi.
Definition at line 106 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator<<().
Types::Coordinate cmtk::ParametricPlane::GetRho | ( | ) | const [inline] |
Get parameter Rho.
Definition at line 82 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator<<(), and cmtk::ImageSymmetryPlaneCommandLineBase::ParseCommandLine().
const Units::Degrees cmtk::ParametricPlane::GetTheta | ( | ) | const [inline] |
Get parameter Theta.
Definition at line 94 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator<<().
char cmtk::ParametricPlane::GetWhichSide | ( | const Self::CoordinateVectorType & | point ) | const [inline] |
Determine which side of the plane a point is on.
Definition at line 134 of file cmtkParametricPlane.h.
void cmtk::ParametricPlane::Mirror | ( | Self::CoordinateVectorType & | toPoint, |
const Self::CoordinateVectorType & | fromPoint | ||
) | const [inline] |
Mirror point with respect to plane.
Definition at line 146 of file cmtkParametricPlane.h.
void cmtk::ParametricPlane::MirrorInPlace | ( | Self::CoordinateVectorType & | point ) | const [inline] |
Mirror point in-place with respect to plane.
Definition at line 153 of file cmtkParametricPlane.h.
Referenced by cmtk::TransformedVolumeAxes::TransformedVolumeAxes().
void cmtk::ParametricPlane::Project | ( | Self::CoordinateVectorType & | toPoint, |
const Self::CoordinateVectorType & | fromPoint | ||
) | const [inline] |
Project point onto plane.
Definition at line 171 of file cmtkParametricPlane.h.
void cmtk::ParametricPlane::ProjectInPlace | ( | Self::CoordinateVectorType & | point ) | const [inline] |
Project point onto plane in-place.
Definition at line 178 of file cmtkParametricPlane.h.
void cmtk::ParametricPlane::SetParameters | ( | const CoordinateVector & | v ) | [inline] |
Set all parameters.
Definition at line 123 of file cmtkParametricPlane.h.
void cmtk::ParametricPlane::SetPhi | ( | const Units::Degrees & | phi ) | [inline] |
Set parameter Phi.
Definition at line 100 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator>>().
void cmtk::ParametricPlane::SetRho | ( | const Types::Coordinate | rho ) | [inline] |
Set parameter Rho.
Definition at line 76 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator>>().
void cmtk::ParametricPlane::SetTheta | ( | const Units::Degrees & | theta ) | [inline] |
Set parameter Theta.
Definition at line 88 of file cmtkParametricPlane.h.
Referenced by cmtk::ClassStream::operator>>().
Plane normal.
Definition at line 222 of file cmtkParametricPlane.h.
Referenced by GetAlignmentXform(), GetMirrorXformMatrix(), SetNormal(), and Update().
Units::Degrees cmtk::ParametricPlane::Phi [private] |
Elevation angle of tangent point over x/y plane through Origin.
Definition at line 219 of file cmtkParametricPlane.h.
Referenced by SetNormal(), and Update().
Types::Coordinate cmtk::ParametricPlane::Rho [private] |
Radius of tangent sphere with center at Origin.
Definition at line 213 of file cmtkParametricPlane.h.
Referenced by GetAlignmentXform(), and GetMirrorXformMatrix().
Square norm of plane normal.
Definition at line 225 of file cmtkParametricPlane.h.
Referenced by GetMirrorXformMatrix(), SetNormal(), and Update().
Units::Degrees cmtk::ParametricPlane::Theta [private] |
Rotation angle of tangent point around z axis through Origin.
Definition at line 216 of file cmtkParametricPlane.h.
Referenced by SetNormal(), and Update().