|
Blender V4.3
|
#include <ChainingIterators.h>
Inherits Freestyle::ChainingIterator.
Public Member Functions | |
| ChainPredicateIterator (bool iRestrictToSelection=true, bool iRestrictToUnvisited=true, ViewEdge *begin=nullptr, bool orientation=true) | |
| ChainPredicateIterator (UnaryPredicate1D &upred, BinaryPredicate1D &bpred, bool iRestrictToSelection=true, bool iRestrictToUnvisited=true, ViewEdge *begin=nullptr, bool orientation=true) | |
| ChainPredicateIterator (const ChainPredicateIterator &brother) | |
| virtual | ~ChainPredicateIterator () |
| virtual string | getExactTypeName () const |
| virtual int | traverse (const AdjacencyIterator &it) |
| virtual int | init () |
Public Member Functions inherited from Freestyle::ChainingIterator | |
| ChainingIterator (bool iRestrictToSelection=true, bool iRestrictToUnvisited=true, ViewEdge *begin=nullptr, bool orientation=true) | |
| ChainingIterator (const ChainingIterator &brother) | |
| ViewVertex * | getVertex () |
| bool | isIncrementing () const |
| virtual int | increment () |
| virtual int | decrement () |
Public Member Functions inherited from Freestyle::ViewEdgeInternal::ViewEdgeIterator | |
| ViewEdgeIterator (ViewEdge *begin=nullptr, bool orientation=true) | |
| ViewEdgeIterator (const ViewEdgeIterator &it) | |
| virtual | ~ViewEdgeIterator () |
| ViewEdge * | getCurrentEdge () |
| void | setCurrentEdge (ViewEdge *edge) |
| ViewEdge * | getBegin () |
| void | setBegin (ViewEdge *begin) |
| bool | getOrientation () const |
| void | setOrientation (bool orientation) |
| void | changeOrientation () |
| virtual ViewEdge * | operator* () |
| virtual ViewEdge * | operator-> () |
| virtual ViewEdgeIterator & | operator++ () |
| virtual ViewEdgeIterator | operator++ (int) |
| virtual ViewEdgeIterator & | operator-- () |
| virtual ViewEdgeIterator | operator-- (int) |
| virtual bool | isBegin () const |
| virtual bool | isEnd () const |
| virtual bool | operator== (ViewEdgeIterator &it) const |
| virtual bool | operator!= (ViewEdgeIterator &it) const |
Public Member Functions inherited from Freestyle::Iterator | |
| virtual | ~Iterator () |
Protected Attributes | |
| BinaryPredicate1D * | _binary_predicate |
| UnaryPredicate1D * | _unary_predicate |
Protected Attributes inherited from Freestyle::ChainingIterator | |
| bool | _restrictToSelection |
| bool | _restrictToUnvisited |
| bool | _increment |
Protected Attributes inherited from Freestyle::ViewEdgeInternal::ViewEdgeIterator | |
| bool | _orientation |
| ViewEdge * | _edge |
| ViewEdge * | _begin |
Additional Inherited Members | |
Public Attributes inherited from Freestyle::ChainingIterator | |
| ViewEdge * | result |
| void * | py_c_it |
A "generic" user-controlled ViewEdge iterator. This iterator is in particular built from a unary predicate and a binary predicate. First, the unary predicate is evaluated for all potential next ViewEdges in order to only keep the ones respecting a certain constraint. Then, the binary predicate is evaluated on the current ViewEdge together with each ViewEdge of the previous selection. The first ViewEdge respecting both the unary predicate and the binary predicate is kept as the next one. If none of the potential next ViewEdge respects these 2 predicates, 0 is returned.
Definition at line 307 of file ChainingIterators.h.
|
inline |
Builds a ChainPredicateIterator from a starting ViewEdge and its orientation.
| iRestrictToSelection | Indicates whether to force the chaining to stay within the set of selected ViewEdges or not. |
| iRestrictToUnvisited | Indicates whether a ViewEdge that has already been chained must be ignored ot not. |
| begin | The ViewEdge from where to start the iteration. |
| orientation | If true, we'll look for the next ViewEdge among the ViewEdges that surround the ending ViewVertex of begin. If false, we'll search over the ViewEdges surrounding the ending ViewVertex of begin. |
Definition at line 327 of file ChainingIterators.h.
References _binary_predicate, and _unary_predicate.
|
inline |
Builds a ChainPredicateIterator from a unary predicate, a binary predicate, a starting ViewEdge and its orientation.
| iRestrictToSelection | Indicates whether to force the chaining to stay within the set of selected ViewEdges or not. |
| iRestrictToUnvisited | Indicates whether a ViewEdge that has already been chained must be ignored ot not. |
| upred | The unary predicate that the next ViewEdge must satisfy. |
| bpred | The binary predicate that the next ViewEdge must satisfy together with the actual pointed ViewEdge. |
| begin | The ViewEdge from where to start the iteration. |
| orientation | If true, we'll look for the next ViewEdge among the ViewEdges that surround the ending ViewVertex of begin. If false, we'll search over the ViewEdges surrounding the ending ViewVertex of begin. |
Definition at line 356 of file ChainingIterators.h.
References _binary_predicate, and _unary_predicate.
|
inline |
Copy constructor
Definition at line 369 of file ChainingIterators.h.
References _binary_predicate, and _unary_predicate.
|
inlinevirtual |
Destructor.
Definition at line 376 of file ChainingIterators.h.
References _binary_predicate, and _unary_predicate.
|
inlinevirtual |
Returns the string "ChainPredicateIterator"
Reimplemented from Freestyle::ChainingIterator.
Definition at line 383 of file ChainingIterators.h.
|
inlinevirtual |
Initializes the iterator context.
Reimplemented from Freestyle::ChainingIterator.
Definition at line 394 of file ChainingIterators.h.
|
virtual |
This method iterates over the potential next ViewEdges and returns the one that will be followed next. When reaching the end of a chain, 0 is returned.
Reimplemented from Freestyle::ChainingIterator.
Definition at line 186 of file ChainingIterators.cpp.
References _binary_predicate, _unary_predicate, Freestyle::ViewEdgeInternal::ViewEdgeIterator::getCurrentEdge(), Freestyle::BinaryPredicate1D::result, and Freestyle::UnaryPredicate1D::result.
|
protected |
Definition at line 310 of file ChainingIterators.h.
Referenced by ChainPredicateIterator(), ChainPredicateIterator(), ChainPredicateIterator(), traverse(), and ~ChainPredicateIterator().
|
protected |
Definition at line 311 of file ChainingIterators.h.
Referenced by ChainPredicateIterator(), ChainPredicateIterator(), ChainPredicateIterator(), traverse(), and ~ChainPredicateIterator().