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:
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:
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:
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:
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:
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¶