liba 0.1.15
An algorithm library based on C/C++
Loading...
Searching...
No Matches
three-dimensional line
Collaboration diagram for three-dimensional line:

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

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

Macro Definition Documentation

◆ a_line3_

#define a_line3_ ( _,
x )
Value:
a_cast_s(a_line3 _, x)
instance structure for three-dimensional line
Definition line3.h:88

◆ a_line3_c

#define a_line3_c ( x)
Value:
a_cast_s(a_line3, x)

static cast to three-dimensional line