Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.atnf.csiro.au/people/mcalabre/WCS/wcslib/wcstrig_8h.html
Дата изменения: Unknown Дата индексирования: Sun Apr 10 22:39:03 2016 Кодировка: Поисковые слова: m 11 |
WCSLIB
5.15
|
#include <math.h>
#include "wcsconfig.h"
Go to the source code of this file.
Macros | |
#define | WCSTRIG_TOL 1e-10 |
Domain tolerance for asin() and acos() functions. More... | |
Functions | |
double | cosd (double angle) |
Cosine of an angle in degrees. More... | |
double | sind (double angle) |
Sine of an angle in degrees. More... | |
void | sincosd (double angle, double *sin, double *cos) |
Sine and cosine of an angle in degrees. More... | |
double | tand (double angle) |
Tangent of an angle in degrees. More... | |
double | acosd (double x) |
Inverse cosine, returning angle in degrees. More... | |
double | asind (double y) |
Inverse sine, returning angle in degrees. More... | |
double | atand (double s) |
Inverse tangent, returning angle in degrees. More... | |
double | atan2d (double y, double x) |
Polar angle of ![]() | |
When dealing with celestial coordinate systems and spherical projections (some moreso than others) it is often desirable to use an angular measure that provides an exact representation of the latitude of the north or south pole. The WCSLIB routines use the following trigonometric functions that take or return angles in degrees:
These "trigd" routines are expected to handle angles that are a multiple of returning an exact result. Some C implementations provide these as part of a system library and in such cases it may (or may not!) be preferable to use them. WCSLIB provides wrappers on the standard trig functions based on radian measure, adding tests for multiples of
.
However, wcstrig.h also provides the choice of using preprocessor macro implementations of the trigd functions that don't test for multiples of (compile with -DWCSTRIG_MACRO). These are typically 20% faster but may lead to problems near the poles.
#define WCSTRIG_TOL 1e-10 |
Domain tolerance for the asin() and acos() functions to allow for floating point rounding errors.
If lies in the range
then it will be treated as
.
double cosd | ( | double | angle | ) |
cosd() returns the cosine of an angle given in degrees.
[in] | angle | [deg]. |
double sind | ( | double | angle | ) |
sind() returns the sine of an angle given in degrees.
[in] | angle | [deg]. |
void sincosd | ( | double | angle, |
double * | sin, | ||
double * | cos | ||
) |
sincosd() returns the sine and cosine of an angle given in degrees.
[in] | angle | [deg]. |
[out] | sin | Sine of the angle. |
[out] | cos | Cosine of the angle. |
double tand | ( | double | angle | ) |
tand() returns the tangent of an angle given in degrees.
[in] | angle | [deg]. |
double acosd | ( | double | x | ) |
acosd() returns the inverse cosine in degrees.
[in] | x | in the range [-1,1]. |
double asind | ( | double | y | ) |
asind() returns the inverse sine in degrees.
[in] | y | in the range [-1,1]. |
double atand | ( | double | s | ) |
atand() returns the inverse tangent in degrees.
[in] | s |
double atan2d | ( | double | y, |
double | x | ||
) |
atan2d() returns the polar angle, , in degrees, of polar coordinates
corresponding to Cartesian coordinates
. It is equivalent to the
function of WCS Paper II, though with transposed arguments.
[in] | y | Cartesian ![]() |
[in] | x | Cartesian ![]() |