24 #ifndef PXR_BASE_GF_LINE_H
25 #define PXR_BASE_GF_LINE_H
84 return _p0 == l._p0 && _dir == l._dir;
90 return ! (*
this ==
r);
115 double *t1 =
nullptr,
double *t2 =
nullptr);
123 #endif // PXR_BASE_GF_LINE_H
GF_API std::ostream & operator<<(std::ostream &, const GfLine &)
bool operator==(const GfLine &l) const
GF_API bool GfFindClosestPoints(const GfLine &l1, const GfLine &l2, GfVec3d *p1=nullptr, GfVec3d *p2=nullptr, double *t1=nullptr, double *t2=nullptr)
GF_API friend bool GfFindClosestPoints(const GfLine &, const GfLine &, GfVec3d *, GfVec3d *, double *, double *)
GfLine()
The default constructor leaves line parameters undefined.
double Set(const GfVec3d &p0, const GfVec3d &dir)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
const GfVec3d & GetDirection() const
Return the normalized direction of the line.
#define PXR_NAMESPACE_CLOSE_SCOPE
bool operator!=(const GfLine &r) const
GF_API GfVec3d FindClosestPoint(const GfVec3d &point, double *t=NULL) const
GfLine(const GfVec3d &p0, const GfVec3d &dir)
Construct a line from a point and a direction.
GfVec3d GetPoint(double t) const
double Normalize(double eps=GF_MIN_VECTOR_LENGTH)