|
|
[1 introduction]
[2 overview]
[3 reference]
[4 GUI]
Index
E3d_TriangleNormal
E3d_GetAngle2D_deg
E3d_GetAngle2D_rad
E3d_LonLatToXYZ_deg
E3d_LonLatToXYZ_rad
E3d_LonLatToXYZUnit_rad
E3d_SolveQuintic
E3d_TriangleNormal
Calculate the normal vector of a triangle
Syntax
void E3d_TriangleNormal(const E3dCoord3* PPoint0, const E3dCoord3* PPoint1, const E3dCoord3* PPoint2, E3dCoord3* PNormal)
Arguments
const E3dCoord3* PPoint0 Point0
const E3dCoord3* PPoint1 Point1
const E3dCoord3* PPoint2 Point2
E3dCoord3* PNormal Pointer to the result
Description
Returns the normal vector of a triangle, specified by 3 points, in PNormal.
Return value
None.
E3d_GetAngle2D_deg
Get angle of a normalized 2D vector, in degrees
Syntax
E3dCoordinate E3d_GetAngle2D_deg(const E3dCoordinate PX, const E3dCoordinate PY)
Arguments
const E3dCoordinate PX The X coordinate of the point
const E3dCoordinate PX The X coordinate of the point
Description
Returns the angle of a 2D vector, in degrees, from the +X axis.
Return value
The angle in degrees.
E3d_GetAngle2D_rad
Get angle of a normalized 2D vector, in radians
Syntax
E3dCoordinate E3d_GetAngle2D_rad(const E3dCoordinate PX, const E3dCoordinate PY)
Arguments
const E3dCoordinate PX The X coordinate of the point
const E3dCoordinate PX The X coordinate of the point
Description
Returns the angle of a 2D vector, in radians, from the +X axis.
Return value
The angle in radians.
E3d_LonLatToXYZ_deg
Compute XYZ from Longitude, Latitude (degrees) and Distance
Syntax
void E3d_LonLatToXYZ_deg(E3dCoordinate PLongitude, const E3dCoordinate PLatitude, const E3dCoordinate PDistance, E3dCoord3* P3DPosition)
Arguments
E3dCoordinate PLongitude Longitude, in degrees
const E3dCoordinate PLatitude Latitude, in degrees
const E3dCoordinate PDistance Radius
E3dCoord3* P3DPosition Pointer to return value
Description
XYZ coordinates from longitude, latitude and distance.
Return value
None.
E3d_LonLatToXYZ_rad
Compute XYZ from Longitude, Latitude (radians) and Distance
Syntax
void E3d_LonLatToXYZ_rad(const E3dCoordinate PLongitude, const E3dCoordinate PLatitude, const E3dCoordinate PDistance, E3dCoord3* P3DPosition)
Arguments
const E3dCoordinate PLongitude Longitude, in radians
const E3dCoordinate PLatitude Latitude, in radians
const E3dCoordinate PDistance Radius
E3dCoord3* P3DPosition Pointer to return value
Description
XYZ coordinates from longitude, latitude and distance.
Return value
None.
E3d_LonLatToXYZUnit_rad
Derived from this, by simplification:
Syntax
void E3d_LonLatToXYZUnit_rad(const E3dCoordinate PLongitude, const E3dCoordinate PLatitude, E3dCoord3* P3DPosition)
Arguments
const E3dCoordinate PLongitude Longitude, in radians
const E3dCoordinate PLatitude Latitude, in radians
PDistance Radius
E3dCoord3* P3DPosition Pointer to return value
Description
XYZ coordinates from longitude and latitude
Return value
None.
E3d_SolveQuintic
Quintic equation solver
Syntax
int E3d_SolveQuintic(const double dd[6], const double xstart, double sol[5], double soli[5])
Arguments
dd(0:4) (i) vector containing the polynomial coefficients
sol(1:4) (o) results, real part
soli(1:4) (o) results, imaginary part
Nsol (o) number of real solutions
Description
Uses a hybrid method: first, a real solution is obtained numerically by the Newton method,
then, the remaining four roots are obtained analytically by QUARTIC
Return value
The number of roots found, or an error code, such as E_INCOMPATIBLE_DATA
© 1996-2022 By Gabor Nagy
|