92#if defined(__cplusplus)
93 A_INLINE
a_real lim()
const {
return max; }
94 A_INLINE
void set_lim(
a_real max_) { max = max_; }
95 A_INLINE
a_point3 const &org()
const {
return orig; }
98 a_line3_set_org(
this, x, y, z);
100 A_INLINE
a_vector3 const &dir()
const {
return dir_; }
103 return a_line3_set_dir(
this, x, y, z);
105 A_INLINE
void tgt(
a_point3 &res)
const { a_line3_tgt(
this, &res); }
108 return a_line3_set_tgt(
this, x, y, z);
112 return a_line3_setv(
this, &p, &v);
116 return a_line3_set(
this, &p, &q);
120 a_line3_eval(
this, w, &res);
124 return a_line3_parm(
this, &rhs);
128 return a_line3_proj(
this, &rhs, &res);
132 return a_line3_limparm(
this, min, max_, &rhs);
136 return a_line3_limproj(
this, min, max_, &rhs, &res);
140 return a_line3_dist(
this, &rhs);
144 return a_line3_dist1(
this, &rhs);
148 return a_line3_dist2(
this, &rhs);
152 return a_line3_limdist(
this, min, max_, &rhs, &w, &p);
156 return a_line3_limdist1(
this, min, max_, &rhs, &w, &p);
160 return a_line3_limdist2(
this, min, max_, &rhs, &w, &p);
165 return a_line3_segdist(
this, &rhs, min1, max1, min2, max2, &w1, &w2, &p1, &p2);
170 return a_line3_segdist2(
this, &rhs, min1, max1, min2, max2, &w1, &w2, &p1, &p2);
174 return a_line3_int0(
this, &rhs, min, max_, &w);
179 return a_line3_int1(
this, &rhs, min1, max1, min2, max2, &w1, &w2);
183 a_line3_rot(
this, &rhs, angle, &res);