std::ostream & operator<<(std::ostream &out, const GfLineSeg &seg) { return out << '(' << "point 1:" << Gf_OstreamHelperP(seg.GetPoint(0.0)) << ' ' << "point 2:" << Gf_OstreamHelperP(seg.GetPoint(1.0)) << ')'; }
std::ostream & operator<<(std::ostream& out, const GfPlane& p) { return out << '[' << Gf_OstreamHelperP(p.GetNormal()) << " " << Gf_OstreamHelperP(p.GetDistanceFromOrigin()) << ']'; }
std::ostream& operator<<(std::ostream &out, GfRange3f const &r) { return out << '[' << Gf_OstreamHelperP(r.GetMin()) << "..." << Gf_OstreamHelperP(r.GetMax()) << ']'; }
std::ostream& operator<<(std::ostream &out, GfVec3f const &v) { return out << '(' << Gf_OstreamHelperP(v[0]) << ", " << Gf_OstreamHelperP(v[1]) << ", " << Gf_OstreamHelperP(v[2]) << ')'; }
std::ostream& operator<<(std::ostream& out, const GfMatrix2f& m) { return out << "( (" << Gf_OstreamHelperP(m[0][0]) << ", " << Gf_OstreamHelperP(m[0][1]) << "), (" << Gf_OstreamHelperP(m[1][0]) << ", " << Gf_OstreamHelperP(m[1][1]) << ") )"; }
std::ostream & operator<<(std::ostream& out, const GfRay& r) { return out << '[' << Gf_OstreamHelperP(r.GetStartPoint()) << " >> " << Gf_OstreamHelperP(r.GetDirection()) << ']'; }