34namespace ViewVertexInternal {
54 edge_pointers_container::iterator
_tbegin;
55 edge_pointers_container::iterator
_tend;
60 edges_container::iterator
_end;
92 edge_pointers_container::iterator end,
93 edge_pointers_container::iterator iter)
102 edges_container::iterator end,
103 edges_container::iterator iter)
169 return !(*
this !=
b);
204 if (tmp2.first == tmp.first) {
215#ifdef WITH_CXX_GUARDEDALLOC
216 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:orientedViewEdgeIterator")
230namespace ViewEdgeInternal {
243 _previous_edge =
nullptr;
244 _next_edge =
nullptr;
250 _vertex = vi._vertex;
252 _previous_edge = vi._previous_edge;
253 _next_edge = vi._next_edge;
261 _previous_edge = prev;
268 _vertex = vi._vertex;
270 _previous_edge = vi._previous_edge;
271 _next_edge = vi._next_edge;
280 return "SVertexIterator";
326 _vertex = _next_edge->
vertexB();
327 _previous_edge = _next_edge;
328 _next_edge = _next_edge->
nextEdge();
334 if (!_previous_edge) {
338 if ((!_next_edge) && (!_vertex)) {
339 _vertex = _previous_edge->
vertexB();
343 _vertex = _previous_edge->
vertexA();
344 _next_edge = _previous_edge;
351 return _vertex == _begin;
356 return (!_vertex) || (_vertex == _begin && _previous_edge);
359 virtual float t()
const
364 virtual float u()
const
375 return (_vertex == it_exact->_vertex);
386 FEdge *_previous_edge;
390#ifdef WITH_CXX_GUARDEDALLOC
391 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:SVertexIterator")
435 return "ViewEdgeIterator";
509 cerr <<
"Warning: method increment() not implemented" << endl;
531 cerr <<
"Warning: method decrement() not implemented" << endl;
550 return _edge == it._edge;
556 return !(*
this == it);
564#ifdef WITH_CXX_GUARDEDALLOC
565 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:ViewEdgeIterator")
Classes to define a View Map (ViewVertex, ViewEdge, etc.)
ATTR_WARN_UNUSED_RESULT const BMVert * v
ViewEdge * viewedge() const
virtual real getLength2D() const
vector< directedViewEdge > edges_container
vector< directedViewEdge * > edge_pointers_container
virtual ~SVertexIterator()
virtual SVertexIterator & operator--()
virtual SVertex * operator->()
virtual string getExactTypeName() const
SVertexIterator & operator=(const SVertexIterator &vi)
virtual SVertexIterator * copy() const
virtual bool isBegin() const
virtual bool isEnd() const
virtual bool operator==(const Interface0DIteratorNested &it) const
virtual SVertexIterator operator--(int)
virtual SVertexIterator operator++(int)
virtual SVertex & operator*()
SVertexIterator(const SVertexIterator &vi)
SVertexIterator(SVertex *v, SVertex *begin, FEdge *prev, FEdge *next, float t)
virtual SVertexIterator & operator++()
virtual ~ViewEdgeIterator()
virtual ViewEdge * operator*()
virtual ViewEdgeIterator & operator++()
ViewEdge * getCurrentEdge()
virtual bool isBegin() const
ViewEdgeIterator(ViewEdge *begin=nullptr, bool orientation=true)
bool getOrientation() const
void setOrientation(bool orientation)
virtual ViewEdgeIterator & operator--()
virtual ViewEdgeIterator operator++(int)
void setBegin(ViewEdge *begin)
virtual ViewEdge * operator->()
virtual bool operator!=(ViewEdgeIterator &it) const
virtual bool isEnd() const
ViewEdgeIterator(const ViewEdgeIterator &it)
void setCurrentEdge(ViewEdge *edge)
virtual string getExactTypeName() const
virtual bool operator==(ViewEdgeIterator &it) const
virtual ViewEdgeIterator operator--(int)
virtual orientedViewEdgeIterator operator++(int)
edge_pointers_container::iterator _tend
edge_pointers_container::iterator _tvertex_iter
virtual bool isBegin() const
edge_pointers_container::iterator _tbegin
edges_container::iterator _end
virtual bool operator!=(const orientedViewEdgeIterator &b) const
orientedViewEdgeIterator(Nature::VertexNature iNature)
TVertex::edge_pointers_container edge_pointers_container
edges_container::iterator _begin
virtual ViewVertex::directedViewEdge & operator*() const
virtual ViewVertex::directedViewEdge * operator->() const
NonTVertex::edges_container edges_container
edges_container::iterator _nontvertex_iter
orientedViewEdgeIterator()
orientedViewEdgeIterator(edges_container::iterator begin, edges_container::iterator end, edges_container::iterator iter)
orientedViewEdgeIterator(const orientedViewEdgeIterator &iBrother)
virtual orientedViewEdgeIterator & operator++()
orientedViewEdgeIterator(edge_pointers_container::iterator begin, edge_pointers_container::iterator end, edge_pointers_container::iterator iter)
virtual bool isEnd() const
virtual ~orientedViewEdgeIterator()
Nature::VertexNature _Nature
virtual bool operator==(const orientedViewEdgeIterator &b) const
pair< ViewEdge *, bool > directedViewEdge
local_group_size(16, 16) .push_constant(Type b
draw_view in_light_buf[] float
static const VertexNature T_VERTEX
static const VertexNature NON_T_VERTEX