forked from bartvdbraak/blender
Freestyle: Added logical operators for binary predicates for 1D elements.
The implemented operators are: freestyle.predicates.AndBP1D freestyle.predicates.NotBP1D freestyle.predicates.OrBP1D
This commit is contained in:
parent
6161e4420e
commit
6a94e73a85
@ -155,7 +155,6 @@ class pyParameterUP0D(UnaryPredicate0D):
|
||||
## Unary predicates for 1D elements (curves)
|
||||
############################################
|
||||
|
||||
|
||||
class AndUP1D(UnaryPredicate1D):
|
||||
def __init__(self, pred1, pred2):
|
||||
UnaryPredicate1D.__init__(self)
|
||||
@ -515,6 +514,34 @@ class pyClosedCurveUP1D(UnaryPredicate1D):
|
||||
## Binary predicates for 1D elements (curves)
|
||||
#############################################
|
||||
|
||||
class AndBP1D(BinaryPredicate1D):
|
||||
def __init__(self, pred1, pred2):
|
||||
BinaryPredicate1D.__init__(self)
|
||||
self.__pred1 = pred1
|
||||
self.__pred2 = pred2
|
||||
|
||||
def __call__(self, inter1, inter2):
|
||||
return self.__pred1(inter1, inter2) and self.__pred2(inter1, inter2)
|
||||
|
||||
|
||||
class OrBP1D(BinaryPredicate1D):
|
||||
def __init__(self, pred1, pred2):
|
||||
BinaryPredicate1D.__init__(self)
|
||||
self.__pred1 = pred1
|
||||
self.__pred2 = pred2
|
||||
|
||||
def __call__(self, inter1, inter2):
|
||||
return self.__pred1(inter1, inter2) or self.__pred2(inter1, inter2)
|
||||
|
||||
|
||||
class NotBP1D(BinaryPredicate1D):
|
||||
def __init__(self, pred):
|
||||
BinaryPredicate1D.__init__(self)
|
||||
self.__pred = pred
|
||||
|
||||
def __call__(self, inter1, inter2):
|
||||
return not self.__pred(inter1, inter2)
|
||||
|
||||
|
||||
class pyZBP1D(BinaryPredicate1D):
|
||||
def __init__(self, iType=IntegrationType.MEAN):
|
||||
|
Loading…
Reference in New Issue
Block a user