liba 0.1.15
An algorithm library based on C/C++
Loading...
Searching...
No Matches
line3.h File Reference

three-dimensional line More...

#include "a.h"
#include "point3.h"
Include dependency graph for line3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  a_line3
 instance structure for three-dimensional line More...

Macros

#define a_line3_c(x)
#define a_line3_(_, x)
#define A_INTERN   A_PUBLIC extern
#define A_INTERN   static A_INLINE

Typedefs

typedef struct a_line3 a_line3
typedef struct a_line3 a::line3

Functions

externa_real a_line3_lim (a_line3 const *ctx)
externa_point3 const * a_line3_org (a_line3 const *ctx)
externa_vector3 const * a_line3_dir (a_line3 const *ctx)
externvoid a_line3_tgt (a_line3 const *ctx, a_point3 *res)
externvoid a_line3_set_org (a_line3 *ctx, a_real x, a_real y, a_real z)
externvoid a_line3_set_lim (a_line3 *ctx, a_real max)
int a_line3_set_dir (a_line3 *ctx, a_real x, a_real y, a_real z)
int a_line3_set_tgt (a_line3 *ctx, a_real x, a_real y, a_real z)
int a_line3_setv (a_line3 *ctx, a_point3 const *p, a_vector3 const *v)
int a_line3_set (a_line3 *ctx, a_point3 const *p, a_point3 const *q)
void a_line3_eval (a_line3 const *ctx, a_real w, a_point3 *res)
a_real a_line3_parm (a_line3 const *ctx, a_point3 const *rhs)
a_real a_line3_proj (a_line3 const *ctx, a_point3 const *rhs, a_point3 *res)
a_real a_line3_limparm (a_line3 const *ctx, a_real min, a_real max, a_point3 const *rhs)
a_real a_line3_limproj (a_line3 const *ctx, a_real min, a_real max, a_point3 const *rhs, a_point3 *res)
void a_line3_sdist (a_line3 const *ctx, a_point3 const *rhs, a_vector3 *res)
a_real a_line3_dist (a_line3 const *ctx, a_point3 const *rhs)
a_real a_line3_dist1 (a_line3 const *ctx, a_point3 const *rhs)
a_real a_line3_dist2 (a_line3 const *ctx, a_point3 const *rhs)
a_real a_line3_limdist (a_line3 const *ctx, a_real min, a_real max, a_point3 const *rhs, a_real *w, a_point3 *p)
a_real a_line3_limdist1 (a_line3 const *ctx, a_real min, a_real max, a_point3 const *rhs, a_real *w, a_point3 *p)
a_real a_line3_limdist2 (a_line3 const *ctx, a_real min, a_real max, a_point3 const *rhs, a_real *w, a_point3 *p)
a_real a_line3_segdist (a_line3 const *ctx, a_line3 const *rhs, a_real min1, a_real max1, a_real min2, a_real max2, a_real *w1, a_real *w2, a_point3 *p1, a_point3 *p2)
a_real a_line3_segdist2 (a_line3 const *ctx, a_line3 const *rhs, a_real min1, a_real max1, a_real min2, a_real max2, a_real *w1, a_real *w2, a_point3 *p1, a_point3 *p2)
int a_line3_int0 (a_line3 const *ctx, a_point3 const *rhs, a_real min, a_real max, a_real *w)
int a_line3_int1 (a_line3 const *ctx, a_line3 const *rhs, a_real min1, a_real max1, a_real min2, a_real max2, a_real *w1, a_real *w2)
void a_line3_rot (a_line3 const *ctx, a_line3 const *rhs, a_real angle, a_line3 *res)

Detailed Description

three-dimensional line