Freestyle Predicates (freestyle.predicates)#
This module contains predicates operating on vertices (0D elements) and polylines (1D elements). It is also intended to be a collection of examples for predicate definition in Python.
User-defined predicates inherit one of the following base classes, depending on the object type (0D or 1D) to operate on and the arity (unary or binary):
- class freestyle.predicates.AndBP1D#
- class freestyle.predicates.AndUP1D#
- class freestyle.predicates.ContourUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>ContourUP1D
- __call__(inter)#
Returns true if the Interface1D is a contour. An Interface1D is a contour if it is bordered by a different shape on each of its sides.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if the Interface1D is a contour, false otherwise.
- Return type:
bool
- class freestyle.predicates.DensityLowerThanUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>DensityLowerThanUP1D
- __init__(threshold, sigma=2.0)#
Builds a DensityLowerThanUP1D object.
- Parameters:
threshold (float) – The value of the threshold density. Any Interface1D having a density lower than this threshold will match.
sigma (float) – The sigma value defining the density evaluation window size used in the
freestyle.functions.DensityF0D
functor.
- __call__(inter)#
Returns true if the density evaluated for the Interface1D is less than a user-defined density value.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if the density is lower than a threshold.
- Return type:
bool
- class freestyle.predicates.EqualToChainingTimeStampUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>freestyle.types.EqualToChainingTimeStampUP1D
- __init__(ts)#
Builds a EqualToChainingTimeStampUP1D object.
- Parameters:
ts (int) – A time stamp value.
- __call__(inter)#
Returns true if the Interface1D’s time stamp is equal to a certain user-defined value.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if the time stamp is equal to a user-defined value.
- Return type:
bool
- class freestyle.predicates.EqualToTimeStampUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>EqualToTimeStampUP1D
- __init__(ts)#
Builds a EqualToTimeStampUP1D object.
- Parameters:
ts (int) – A time stamp value.
- __call__(inter)#
Returns true if the Interface1D’s time stamp is equal to a certain user-defined value.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if the time stamp is equal to a user-defined value.
- Return type:
bool
- class freestyle.predicates.ExternalContourUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>ExternalContourUP1D
- __call__(inter)#
Returns true if the Interface1D is an external contour. An Interface1D is an external contour if it is bordered by no shape on one of its sides.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if the Interface1D is an external contour, false otherwise.
- Return type:
bool
- class freestyle.predicates.FalseBP1D#
Class hierarchy:
freestyle.types.BinaryPredicate1D
>FalseBP1D
- __call__(inter1, inter2)#
Always returns false.
- Parameters:
inter1 (
freestyle.types.Interface1D
) – The first Interface1D object.inter2 (
freestyle.types.Interface1D
) – The second Interface1D object.
- Returns:
False.
- Return type:
bool
- class freestyle.predicates.FalseUP0D#
Class hierarchy:
freestyle.types.UnaryPredicate0D
>FalseUP0D
- __call__(it)#
Always returns false.
- Parameters:
it (
freestyle.types.Interface0DIterator
) – An Interface0DIterator object.- Returns:
False.
- Return type:
bool
- class freestyle.predicates.FalseUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>FalseUP1D
- __call__(inter)#
Always returns false.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
False.
- Return type:
bool
- class freestyle.predicates.Length2DBP1D#
Class hierarchy:
freestyle.types.BinaryPredicate1D
>Length2DBP1D
- __call__(inter1, inter2)#
Returns true if the 2D length of inter1 is less than the 2D length of inter2.
- Parameters:
inter1 (
freestyle.types.Interface1D
) – The first Interface1D object.inter2 (
freestyle.types.Interface1D
) – The second Interface1D object.
- Returns:
True or false.
- Return type:
bool
- class freestyle.predicates.MaterialBP1D#
Checks whether the two supplied ViewEdges have the same material.
- class freestyle.predicates.NotBP1D#
- class freestyle.predicates.NotUP1D#
- class freestyle.predicates.ObjectNamesUP1D#
- class freestyle.predicates.OrBP1D#
- class freestyle.predicates.OrUP1D#
- class freestyle.predicates.QuantitativeInvisibilityRangeUP1D#
- class freestyle.predicates.QuantitativeInvisibilityUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>QuantitativeInvisibilityUP1D
- __init__(qi=0)#
Builds a QuantitativeInvisibilityUP1D object.
- Parameters:
qi (int) – The Quantitative Invisibility you want the Interface1D to have.
- __call__(inter)#
Returns true if the Quantitative Invisibility evaluated at an Interface1D, using the
freestyle.functions.QuantitativeInvisibilityF1D
functor, equals a certain user-defined value.- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if Quantitative Invisibility equals a user-defined value.
- Return type:
bool
- class freestyle.predicates.SameShapeIdBP1D#
Class hierarchy:
freestyle.types.BinaryPredicate1D
>SameShapeIdBP1D
- __call__(inter1, inter2)#
Returns true if inter1 and inter2 belong to the same shape.
- Parameters:
inter1 (
freestyle.types.Interface1D
) – The first Interface1D object.inter2 (
freestyle.types.Interface1D
) – The second Interface1D object.
- Returns:
True or false.
- Return type:
bool
- class freestyle.predicates.ShapeUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>ShapeUP1D
- __init__(first, second=0)#
Builds a ShapeUP1D object.
- Parameters:
first (int) – The first Id component.
second (int) – The second Id component.
- __call__(inter)#
Returns true if the shape to which the Interface1D belongs to has the same
freestyle.types.Id
as the one specified by the user.- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True if Interface1D belongs to the shape of the user-specified Id.
- Return type:
bool
- class freestyle.predicates.TrueBP1D#
Class hierarchy:
freestyle.types.BinaryPredicate1D
>TrueBP1D
- __call__(inter1, inter2)#
Always returns true.
- Parameters:
inter1 (
freestyle.types.Interface1D
) – The first Interface1D object.inter2 (
freestyle.types.Interface1D
) – The second Interface1D object.
- Returns:
True.
- Return type:
bool
- class freestyle.predicates.TrueUP0D#
Class hierarchy:
freestyle.types.UnaryPredicate0D
>TrueUP0D
- __call__(it)#
Always returns true.
- Parameters:
it (
freestyle.types.Interface0DIterator
) – An Interface0DIterator object.- Returns:
True.
- Return type:
bool
- class freestyle.predicates.TrueUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>TrueUP1D
- __call__(inter)#
Always returns true.
- Parameters:
inter (
freestyle.types.Interface1D
) – An Interface1D object.- Returns:
True.
- Return type:
bool
- class freestyle.predicates.ViewMapGradientNormBP1D#
Class hierarchy:
freestyle.types.BinaryPredicate1D
>ViewMapGradientNormBP1D
- __init__(level, integration_type=IntegrationType.MEAN, sampling=2.0)#
Builds a ViewMapGradientNormBP1D object.
- Parameters:
level (int) – The level of the pyramid from which the pixel must be read.
integration_type (
freestyle.types.IntegrationType
) – The integration method used to compute a single value from a set of values.sampling (float) – The resolution used to sample the chain: GetViewMapGradientNormF0D is evaluated at each sample point and the result is obtained by combining the resulting values into a single one, following the method specified by integration_type.
- __call__(inter1, inter2)#
Returns true if the evaluation of the Gradient norm Function is higher for inter1 than for inter2.
- Parameters:
inter1 (
freestyle.types.Interface1D
) – The first Interface1D object.inter2 (
freestyle.types.Interface1D
) – The second Interface1D object.
- Returns:
True or false.
- Return type:
bool
- class freestyle.predicates.WithinImageBoundaryUP1D#
Class hierarchy:
freestyle.types.UnaryPredicate1D
>WithinImageBoundaryUP1D
- __init__(xmin, ymin, xmax, ymax)#
Builds an WithinImageBoundaryUP1D object.
- Parameters:
xmin (float) – X lower bound of the image boundary.
ymin (float) – Y lower bound of the image boundary.
xmax (float) – X upper bound of the image boundary.
ymax (float) – Y upper bound of the image boundary.
- __call__(inter)#
Returns true if the Interface1D intersects with image boundary.
- class freestyle.predicates.pyBackTVertexUP0D#
Check whether an Interface0DIterator references a TVertex and is the one that is hidden (inferred from the context).
- class freestyle.predicates.pyClosedCurveUP1D#
- class freestyle.predicates.pyDensityFunctorUP1D#
- class freestyle.predicates.pyDensityUP1D#
- class freestyle.predicates.pyDensityVariableSigmaUP1D#
- class freestyle.predicates.pyHighDensityAnisotropyUP1D#
- class freestyle.predicates.pyHighDirectionalViewMapDensityUP1D#
- class freestyle.predicates.pyHighSteerableViewMapDensityUP1D#
- class freestyle.predicates.pyHighViewMapDensityUP1D#
- class freestyle.predicates.pyHighViewMapGradientNormUP1D#
- class freestyle.predicates.pyHigherCurvature2DAngleUP0D#
- class freestyle.predicates.pyHigherLengthUP1D#
- class freestyle.predicates.pyHigherNumberOfTurnsUP1D#
- class freestyle.predicates.pyIsInOccludersListUP1D#
- class freestyle.predicates.pyIsOccludedByIdListUP1D#
- class freestyle.predicates.pyIsOccludedByItselfUP1D#
- class freestyle.predicates.pyIsOccludedByUP1D#
- class freestyle.predicates.pyLengthBP1D#
- class freestyle.predicates.pyLowDirectionalViewMapDensityUP1D#
- class freestyle.predicates.pyLowSteerableViewMapDensityUP1D#
- class freestyle.predicates.pyNFirstUP1D#
- class freestyle.predicates.pyNatureBP1D#
- class freestyle.predicates.pyNatureUP1D#
- class freestyle.predicates.pyParameterUP0D#
- class freestyle.predicates.pyParameterUP0DGoodOne#
- class freestyle.predicates.pyProjectedXBP1D#
- class freestyle.predicates.pyProjectedYBP1D#
- class freestyle.predicates.pyShapeIdListUP1D#
- class freestyle.predicates.pyShapeIdUP1D#
- class freestyle.predicates.pyShuffleBP1D#
- class freestyle.predicates.pySilhouetteFirstBP1D#
- class freestyle.predicates.pyUEqualsUP0D#
- class freestyle.predicates.pyVertexNatureUP0D#
- class freestyle.predicates.pyViewMapGradientNormBP1D#
- class freestyle.predicates.pyZBP1D#
- class freestyle.predicates.pyZDiscontinuityBP1D#
- class freestyle.predicates.pyZSmallerUP1D#