11#ifndef EASY3D_CORE_ORIENTED_LINE_H
12#define EASY3D_CORE_ORIENTED_LINE_H
14#include <easy3d/core/vec.h>
29 return (x > 0) ? POSITIVE : ((x < 0) ? NEGATIVE : ZERO);
75 pi_[0] = p.x * q.y - p.y * q.x;
76 pi_[1] = p.x * q.z - p.z * q.x;
78 pi_[3] = p.y * q.z - p.z * q.y;
101 a.pi_[0] * b.pi_[4] +
102 a.pi_[1] * b.pi_[5] +
103 a.pi_[2] * b.pi_[3] +
104 a.pi_[4] * b.pi_[0] +
105 a.pi_[5] * b.pi_[1] +
108 return sign(cross_product);
OrientedLine implements plucker coordinates, which enables oriented lines to be compared.
Definition: oriented_line.h:43
static Sign side(const GenericOrientedLine< FT > &a, const GenericOrientedLine< FT > &b)
Definition: oriented_line.h:97
Base class for vector types. It provides generic functionality for N dimensional vectors.
Definition: vec.h:34
Definition: collider.cpp:182
Sign
The sign.
Definition: oriented_line.h:20
Sign sign(T x)
returns the sign of a value.
Definition: oriented_line.h:28