|
vec3d | operator+ (const vec3d &a, const vec3d &b) |
vec3d | operator- (const vec3d &a, const vec3d &b) |
vec3d | operator* (const vec3d &a, double b) |
vec3d | operator* (double b, const vec3d &a) |
vec3d | operator* (const vec3d &a, const vec3d &b) |
vec3d | operator/ (const vec3d &a, double b) |
vec3d | operator- (const vec3d &in) |
bool | operator== (const vec3d &a, const vec3d &b) |
bool | operator!= (const vec3d &a, const vec3d &b) |
double | dist (const vec3d &a, const vec3d &b) |
double | dist_squared (const vec3d &a, const vec3d &b) |
double | dot (const vec3d &a, const vec3d &b) |
vec3d | cross (const vec3d &a, const vec3d &b) |
double | angle (const vec3d &a, const vec3d &b) |
double | signed_angle (const vec3d &a, const vec3d &b, const vec3d &ref) |
double | cos_angle (const vec3d &a, const vec3d &b) |
double | radius_of_circle (const vec3d &p1, const vec3d &p2, const vec3d &p3) |
void | center_of_circle (const vec3d &p1, const vec3d &p2, const vec3d &p3, vec3d ¢er) |
bool | triangle_plane_intersect_test (const vec3d &org, const vec3d &norm, const vec3d &p1, const vec3d &p2, const vec3d &p3) |
double | triangle_plane_minimum_dist (const vec3d &org, const vec3d &norm, const vec3d &p1, const vec3d &p2, const vec3d &p3, vec3d &pa, vec3d &pb) |
double | triangle_plane_maximum_dist (const vec3d &org, const vec3d &norm, const vec3d &p1, const vec3d &p2, const vec3d &p3, vec3d &pa, vec3d &pb) |
bool | plane_plane_intersection (const vec3d &p0, const vec3d &n0, const vec3d &p1, const vec3d &n1, vec3d &p, vec3d &v) |
double | angle_pnt_2_plane (const vec3d &ptplane, vec3d norm, const vec3d &ptaxis, vec3d axis, const vec3d &pt, int ccw, vec3d &prot) |
double | signed_dist_pnt_2_plane (const vec3d &org, const vec3d &norm, const vec3d &pnt) |
double | dist_pnt_2_plane (const vec3d &org, const vec3d &norm, const vec3d &pnt) |
double | dist_pnt_2_line (const vec3d &line_pt1, const vec3d &line_pt2, const vec3d &pnt) |
double | dist_pnt_2_ray (const vec3d &line_pt1, const vec3d &dir_unit_vec, const vec3d &pnt) |
vec3d | proj_u_on_v (const vec3d &u, const vec3d &v) |
vec3d | proj_pnt_on_line_seg (const vec3d &line_pt1, const vec3d &line_pt2, const vec3d &pnt) |
vec3d | proj_pnt_on_ray (const vec3d &line_pt1, const vec3d &line_dir, const vec3d &pnt) |
vec3d | proj_pnt_on_line (const vec3d &line_pt1, const vec3d &line_pt2, const vec3d &pnt) |
vec3d | proj_pnt_to_plane (const vec3d &org, const vec3d &plane_ln1, const vec3d &plane_ln2, const vec3d &pnt) |
vec3d | proj_vec_to_plane (const vec3d &vec, const vec3d &norm) |
int | tri_seg_intersect (const vec3d &A, const vec3d &B, const vec3d &C, const vec3d &D, const vec3d &E, double &u, double &w, double &t) |
int | tri_ray_intersect (const vec3d &A, const vec3d &B, const vec3d &C, const vec3d &D, const vec3d &E, double &u, double &w, double &t) |
int | plane_ray_intersect (const vec3d &A, const vec3d &B, const vec3d &C, const vec3d &D, const vec3d &E, double &t) |
int | plane_ray_intersect (const vec3d &orig, const vec3d &norm, const vec3d &D, const vec3d &E, double &t) |
int | ray_ray_intersect (const vec3d &A, const vec3d &B, const vec3d &C, const vec3d &D, vec3d &int_pnt1, vec3d &int_pnt2) |
double | tetra_volume (const vec3d &A, const vec3d &B, const vec3d &C) |
double | area (const vec3d &A, const vec3d &B, const vec3d &C) |
double | poly_area (const std::vector< vec3d > &pnt_vec) |
double | dist3D_Segment_to_Segment (const vec3d &S1P0, const vec3d &S1P1, const vec3d &S2P0, const vec3d &S2P1) |
double | dist3D_Segment_to_Segment (const vec3d &S1P0, const vec3d &S1P1, const vec3d &S2P0, const vec3d &S2P1, double *Lt, vec3d *Ln, double *St, vec3d *Sn) |
double | nearSegSeg (const vec3d &L0, const vec3d &L1, const vec3d &S0, const vec3d &S1, double *Lt, vec3d *Ln, double *St, vec3d *Sn) |
double | pointLineDistSquared (const vec3d &p, const vec3d &lp0, const vec3d &lp1, double &t, vec3d &pon) |
double | pointSegDistSquared (const vec3d &p, const vec3d &sp0, const vec3d &sp1, double &t, vec3d &pon) |
vec3d | point_on_line (const vec3d &lp0, const vec3d &lp1, const double &t) |
vec2d | MapToPlane (const vec3d &p, const vec3d &planeOrig, const vec3d &planeVec1, const vec3d &planeVec2) |
vec3d | MapFromPlane (const vec2d &uw, const vec3d &planeOrig, const vec3d &planeVec1, const vec3d &planeVec2) |
int | plane_half_space (const vec3d &planeOrig, const vec3d &planeNorm, const vec3d &pnt) |
bool | line_line_intersect (const vec3d &p1, const vec3d &p2, const vec3d &p3, const vec3d &p4, double *s, double *t) |
vec3d | RotateArbAxis (const vec3d &p, double theta, const vec3d &r) |
bool | PtInTri (const vec3d &v0, const vec3d &v1, const vec3d &v2, const vec3d &p) |
vec3d | BarycentricWeights (const vec3d &v0, const vec3d &v1, const vec3d &v2, const vec3d &p) |
void | BilinearWeights (const vec3d &p0, const vec3d &p1, const vec3d &p, std::vector< double > &weights) |
double | tri_tri_min_dist (const vec3d &v0, const vec3d &v1, const vec3d &v2, const vec3d &v3, const vec3d &v4, const vec3d &v5, vec3d &p1, vec3d &p2) |
double | pnt_tri_min_dist (const vec3d &v0, const vec3d &v1, const vec3d &v2, const vec3d &pnt, vec3d &pnearest) |
vec3d | slerp (const vec3d &a, const vec3d &b, const double &t) |
void | printpt (const vec3d &v) |
vec3d | ToSpherical (const vec3d &v) |
vec3d | ToSpherical2 (const vec3d &v, const vec3d &vdet) |
vec3d | ToCartesian (const vec3d &v) |
vec3d is typically used to describe coordinate points and vectors in 3D space. All 3 elements in the vector are of type double.
Definition at line 235 of file Vec3d.h.