21 class gsEdge :
public gsMeshElement<T>
24 typedef gsMeshElement<T> MeshElement;
25 typedef typename MeshElement::scalar_t scalar_t;
26 typedef typename MeshElement::gsVertexHandle gsVertexHandle;
27 typedef typename MeshElement::gsEdgeHandle gsEdgeHandle;
28 typedef typename MeshElement::gsFaceHandle gsFaceHandle;
29 typedef gsVector3d<T> gsVector;
30 typedef gsVector * gsVectorHandle;
35 gsEdge(gsVertexHandle
const & v0, gsVertexHandle
const & v1 ):
36 source(v0), target(v1), sharp(false)
47 std::ostream &print(std::ostream &os)
const
49 os<<
"gsEdge from "<< *source<<
" to "<<*target ;
56 if ( Xless<T>(source,target) )
57 std::swap(source,target);
61 bool operator< (gsEdge
const & rhs)
const
63 return ( Xless<T>(this->source,rhs.source)
66 ( (this->source->x() == rhs.source->x() &&
67 this->source->y() == rhs.source->y() &&
68 this->source->z() == rhs.source->z() ) &&
69 Xless<T>(this->target,rhs.target) ));
72 bool operator == (gsEdge
const & rhs)
const
74 return (((this->source->x())==rhs.source->x())&&
75 ((this->source->y())==rhs.source->y())&&
76 ((this->source->z())==rhs.source->z())&&
77 ((this->target->x())==rhs.target->x())&&
78 ((this->target->y())==rhs.target->y())&&
79 ((this->target->z())==rhs.target->z()));
81 bool operator> (gsEdge
const & rhs)
const
83 return !(*
this<rhs)&&!(*
this==rhs);
92 gsVertexHandle source, target;
93 std::vector<gsFaceHandle> nFaces;
95 std::vector<int> numPatches;
Provides gsMeshElement class - a vertex, edge, face or cell of a gsMesh.
bool operator!=(gsVertex< T > const &lhs, gsVertex< T > const &rhs)
Definition: gsVertex.h:240