线段类,可以计算与其他片元的交点或与其他类配合使用计算片元的交点,只能计算是否有交点,但是无法求出交点。
类方法如下:
void set(const vec_type &s , const vec_type &e)
设置线段的起点和终点
vec_type &start()
const vec_type &start() const
得到线段的起点
vec_type &end()
const vec_type &end() const
bool valid() const
判断当前线段是否起点和终点都输入了,缺一就返回假。
bool intersect(const BoundingBox &bb) const
判断和包围盒是否相交
bool intersect(const BoundingSphere &bs) const
判断和包围球是否有交点
bool intersect(const Vec3f &v1 , const Vec3f &v2 , const Vec3f &v3 , float &r)
判断线段和三角形是否有交点
void mult(const Linesegment &seg , const Matrix &m)
void mult(const Matrix &m , const LineSegment &seg)
线段与矩阵相乘