GLAMERDOC++
Gravitational Lensing Code Library
|
represents a point in spherical coordinates, theta = 0 is equator More...
#include <geometry.h>
Public Member Functions | |
SphericalPoint (T r, T theta, T phi) | |
SphericalPoint (Point_3d< T > &x) | |
SphericalPoint & | operator= (const SphericalPoint &p) |
SphericalPoint & | operator= (Point_3d< T > &x) |
bool | operator== (const SphericalPoint &p) const |
void | TOcartisian (T x[]) const |
output Cartesian coordinates of the point | |
Point_3d< T > | TOcartisian () const |
output cartisian coordinates of the point | |
void | cartisianTOspherical (T const x[]) |
set the spherical coordinates of the point from the cartisian coordinates | |
void | TOspherical (Point_3d< T > &x) |
void | StereographicProjection (const SphericalPoint ¢ral, T x[]) const |
Calculates the stereographic projection of the point onto a plane. | |
void | StereographicProjection (const SphericalPoint ¢ral, Point_2d &x) const |
Point_2d | StereographicProjection (const SphericalPoint ¢ral) const |
void | OrthographicProjection (const SphericalPoint ¢ral, T x[]) const |
Calculates the orthographic projection of the point onto a plane. | |
Point_2d | OrthographicProjection (const SphericalPoint ¢ral) const |
void | InverseOrthographicProjection (const SphericalPoint ¢ral, T const x[]) |
Convert from an orthographic projection of the plane onto the unit sphere. | |
void | InverseOrthographicProjection (const SphericalPoint ¢ral, const Point_2d &x) |
SphericalPoint< T > | InverseOrthographicProjection (const Point_2d &x) |
T | angular_separation (SphericalPoint &p) |
angle between points. This uses the haversine formula that is more stable for small angles than the more commin formula | |
Point_3d< T > | unitPhi () |
unit vector in phi direction | |
Point_3d< T > | unitTheta () |
unit vector in theta direction | |
T | OrthographicAngleTheta (const SphericalPoint ¢ral) |
the angle between the orthographic x-axis and the constant theta curve | |
T | OrthographicAnglePhi (const SphericalPoint ¢ral) |
the angle between the orthographic x-axis and the constant Phi curve | |
Point_3d< T > | theta_hat () const |
Point_3d< T > | phi_hat () const |
Public Attributes | |
T | r |
T | theta |
T | phi |
represents a point in spherical coordinates, theta = 0 is equator
SphericalPoint< T > Utilities::Geometry::SphericalPoint< T >::InverseOrthographicProjection | ( | const Point_2d & | x | ) |
x | 2D coordinate on projection |
void Utilities::Geometry::SphericalPoint< T >::InverseOrthographicProjection | ( | const SphericalPoint< T > & | central, |
const Point_2d & | x ) |
central | point on the sphere where the tangent plane touches |
x | 2D output coordinate on projection |
void Utilities::Geometry::SphericalPoint< T >::InverseOrthographicProjection | ( | const SphericalPoint< T > & | central, |
T const | x[] ) |
Convert from an orthographic projection of the plane onto the unit sphere.
central | point on the sphere where the tangent plane touches |
x | 2D output coordinate on projection |
T Utilities::Geometry::SphericalPoint< T >::OrthographicAnglePhi | ( | const SphericalPoint< T > & | central | ) |
the angle between the orthographic x-axis and the constant Phi curve
central | point on the sphere where the tangent plane touches |
T Utilities::Geometry::SphericalPoint< T >::OrthographicAngleTheta | ( | const SphericalPoint< T > & | central | ) |
the angle between the orthographic x-axis and the constant theta curve
central | point on the sphere where the tangent plane touches |
Point_2d Utilities::Geometry::SphericalPoint< T >::OrthographicProjection | ( | const SphericalPoint< T > & | central | ) | const |
central | point on the sphere where the tangent plane touches |
void Utilities::Geometry::SphericalPoint< T >::OrthographicProjection | ( | const SphericalPoint< T > & | central, |
T | x[] ) const |
Calculates the orthographic projection of the point onto a plane.
The result is in radian units. Near the central point this is a rectolinear projection onto a tangent plane. Points in the oposite hemosphere are maped to points on the border at |x| = 1
central | point on the sphere where the tangent plane touches |
x | 2D output coordinate on projection |
Point_2d Utilities::Geometry::SphericalPoint< T >::StereographicProjection | ( | const SphericalPoint< T > & | central | ) | const |
central | point on the sphere where the tangent plane touches |
void Utilities::Geometry::SphericalPoint< T >::StereographicProjection | ( | const SphericalPoint< T > & | central, |
Point_2d & | x ) const |
central | point on the sphere where the tangent plane touches |
x | 2D output coordinate on projection |
void Utilities::Geometry::SphericalPoint< T >::StereographicProjection | ( | const SphericalPoint< T > & | central, |
T | x[] ) const |
Calculates the stereographic projection of the point onto a plane.
The result is in radian units. Near the central point this is a rectolinear projection onto a tangent plane.
central | point on the sphere where the tangent plane touches |
x | 2D output coordinate on projection |
void Utilities::Geometry::SphericalPoint< T >::TOcartisian | ( | T | x[] | ) | const |
output Cartesian coordinates of the point
output cartisian coordinates