Moved the Operators class from the 'freestyle' module to the 'freestyle.types' submodule.

This commit is contained in:
Tamito Kajiyama 2013-12-30 23:43:47 +09:00
parent e847328585
commit 0b22827033
42 changed files with 81 additions and 56 deletions

@ -21,5 +21,4 @@ Top-level module containing all Freestyle stylization constructs
"""
# module members
from _freestyle import Operators
from . import chainingiterators, functions, predicates, shaders, types, utils

@ -45,12 +45,13 @@ from _freestyle import (
Nature,
Noise,
NonTVertex,
Operators,
SShape,
SVertex,
SVertexIterator,
Stroke,
StrokeShader,
StrokeAttribute,
StrokeShader,
StrokeVertex,
StrokeVertexIterator,
TVertex,

@ -21,12 +21,12 @@
# Date : 26/07/2010
# Purpose : Interactive manipulation of stylization parameters
from freestyle import Operators
from freestyle.types import (
BinaryPredicate1D,
Interface0DIterator,
Nature,
Noise,
Operators,
StrokeAttribute,
UnaryPredicate0D,
UnaryPredicate1D,

@ -21,13 +21,12 @@
# Date : 12/08/2004
# Purpose : Smoothes lines using an anisotropic diffusion scheme
from freestyle import Operators
from freestyle.types import Stroke
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
ExternalContourUP1D,
NotUP1D,
Operators,
QuantitativeInvisibilityUP1D,
TrueBP1D,
TrueUP1D,
@ -39,6 +38,8 @@ from freestyle.shaders import (
StrokeTextureShader,
pyDiffusion2Shader,
)
from freestyle.types import Operators, Stroke
# pyDiffusion2Shader parameters
offset = 0.25

@ -23,8 +23,6 @@
# subjects them to the causal density so as to avoid
# cluttering
from freestyle import Operators
from freestyle.types import IntegrationType
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -38,6 +36,7 @@ from freestyle.shaders import (
ConstantColorShader,
ConstantThicknessShader,
)
from freestyle.types import IntegrationType, Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), pyHighViewMapDensityUP1D(0.3, IntegrationType.LAST))
Operators.select(upred)

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws lines having a high a priori density
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -35,6 +34,8 @@ from freestyle.shaders import (
ConstantColorShader,
ConstantThicknessShader,
)
from freestyle.types import Operators
Operators.select(AndUP1D(QuantitativeInvisibilityUP1D(0), pyHighViewMapDensityUP1D(0.1,5)))
bpred = TrueBP1D()

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Stretches the geometry of visible lines
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -33,6 +32,8 @@ from freestyle.shaders import (
ConstantColorShader,
TextureAssignerShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Produces a blueprint using circular contour strokes
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -39,6 +38,8 @@ from freestyle.shaders import (
pyBluePrintCirclesShader,
pyPerlinNoise1DShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ContourUP1D())
bpred = SameShapeIdBP1D()

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Produces a blueprint using elliptic contour strokes
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -39,6 +38,8 @@ from freestyle.shaders import (
pyBluePrintEllipsesShader,
pyPerlinNoise1DShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ContourUP1D())
bpred = SameShapeIdBP1D()

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Produces a blueprint using square contour strokes
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -39,6 +38,8 @@ from freestyle.shaders import (
pyBluePrintSquaresShader,
pyPerlinNoise1DShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ContourUP1D())
bpred = SameShapeIdBP1D()

@ -23,7 +23,6 @@
# infered from each object's material in a cartoon-like
# fashion.
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -35,6 +34,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
pyMaterialColorShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws each object's visible contour
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -35,6 +34,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
IncreasingColorShader,
)
from freestyle.types import Operators
Operators.select(AndUP1D(QuantitativeInvisibilityUP1D(0), ContourUP1D()))
bpred = SameShapeIdBP1D()

@ -22,8 +22,6 @@
# Purpose : The stroke points are colored in gray levels and depending
# on the 2d curvature value
from freestyle import Operators
from freestyle.types import Stroke
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -35,6 +33,8 @@ from freestyle.shaders import (
StrokeTextureShader,
py2DCurvatureColorShader,
)
from freestyle.types import Operators, Stroke
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws the external contour of the scene
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -35,6 +34,8 @@ from freestyle.shaders import (
ConstantColorShader,
ConstantThicknessShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ExternalContourUP1D())
Operators.select(upred)

@ -23,7 +23,6 @@
# chaining iterator (in particular each ViewEdge can be drawn
# several times
from freestyle import Operators
from freestyle.chainingiterators import pySketchyChainingIterator
from freestyle.predicates import (
AndUP1D,
@ -40,6 +39,8 @@ from freestyle.shaders import (
SpatialNoiseShader,
TextureAssignerShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ExternalContourUP1D())
Operators.select(upred)

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws a smooth external contour
from freestyle import Operators
from freestyle.chainingiterators import ChainPredicateIterator
from freestyle.predicates import (
AndUP1D,
@ -37,6 +36,8 @@ from freestyle.shaders import (
SamplingShader,
SmoothingShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ExternalContourUP1D())
Operators.select(upred)

@ -24,8 +24,6 @@
# object and trims them in order to produce
# a haloing effect around the target shape
from freestyle import Operators
from freestyle.types import Id
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
AndUP1D,
@ -41,6 +39,8 @@ from freestyle.shaders import (
TipRemoverShader,
pyTVertexRemoverShader,
)
from freestyle.types import Id, Operators
# id corresponds to the id of the target object
# (accessed by SHIFT+click)

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : The strokes are drawn through small occlusions
from freestyle import Operators
from freestyle.chainingiterators import pyFillOcclusionsAbsoluteChainingIterator
from freestyle.predicates import (
QuantitativeInvisibilityUP1D,
@ -32,6 +31,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
#Operators.bidirectional_chain(pyFillOcclusionsChainingIterator(0.1))

@ -22,7 +22,6 @@
# Purpose : Draws all lines whose Quantitative Invisibility
# is different from 0
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -34,6 +33,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import Operators
upred = NotUP1D(QuantitativeInvisibilityUP1D(0))
Operators.select(upred)

@ -21,8 +21,6 @@
# Date : 04/08/2005
# Purpose : Simulates a big brush fr oriental painting
from freestyle import Operators
from freestyle.types import IntegrationType
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.functions import pyInverseCurvature2DAngleF0D
from freestyle.predicates import (
@ -44,6 +42,8 @@ from freestyle.shaders import (
pyNonLinearVaryingThicknessShader,
pySamplingShader,
)
from freestyle.types import IntegrationType, Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -28,8 +28,6 @@
# ******** The Directional a priori density maps must ******
# ******** have been computed prior to using this style module ******
from freestyle import Operators
from freestyle.types import IntegrationType
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.functions import DensityF1D
from freestyle.predicates import (
@ -45,6 +43,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import IntegrationType, Operators
## custom density predicate
class pyDensityUP1D(UnaryPredicate1D):

@ -27,7 +27,6 @@
# the strokes using a second parameterization that only
# covers the visible portions.
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
QuantitativeInvisibilityUP1D,
@ -41,6 +40,8 @@ from freestyle.shaders import (
TextureAssignerShader,
pyHLRShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
## Chain following the same nature, but without the restriction

@ -25,8 +25,6 @@
# The suggestive contours must have been enabled in the
# options dialog to appear in the View Map.
from freestyle import Operators
from freestyle.types import Nature
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -37,6 +35,8 @@ from freestyle.shaders import (
IncreasingColorShader,
IncreasingThicknessShader,
)
from freestyle.types import Operators, Nature
Operators.select(pyNatureUP1D(Nature.SILHOUETTE))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(pyNatureUP1D(Nature.SILHOUETTE)))

@ -22,8 +22,6 @@
# Purpose : Draws the lines that are "closer" than a threshold
# (between 0 and 1)
from freestyle import Operators
from freestyle.types import IntegrationType
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
AndUP1D,
@ -37,6 +35,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
TextureAssignerShader,
)
from freestyle.types import IntegrationType, Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), pyZSmallerUP1D(0.5, IntegrationType.MEAN))
Operators.select(upred)

@ -21,8 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws only the lines that are occluded by a given object
from freestyle import Operators
from freestyle.types import Id
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
AndUP1D,
@ -36,6 +34,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import Id, Operators
## the id of the occluder (use SHIFT+click on the ViewMap to
## retrieve ids)

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Make the strokes more "polygonal"
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -34,6 +33,8 @@ from freestyle.shaders import (
PolygonalizationShader,
SamplingShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -22,7 +22,6 @@
# Purpose : Draws the visible lines (chaining follows same nature lines)
# (most basic style module)
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -34,6 +33,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -22,7 +22,6 @@
# Purpose : Draws the visible lines (chaining follows same nature lines)
# that do not belong to the external contour of the scene
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
AndUP1D,
@ -39,6 +38,8 @@ from freestyle.shaders import (
SpatialNoiseShader,
TextureAssignerShader,
)
from freestyle.types import Operators
upred = AndUP1D(QuantitativeInvisibilityUP1D(0), ExternalContourUP1D())
Operators.select(upred)

@ -23,7 +23,6 @@
# *** Quantitative Invisibility must have been
# enabled in the options dialog to use this style module ****
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -35,6 +34,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(1))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(1)))

@ -23,7 +23,6 @@
# *** Quantitative Invisibility must have been
# enabled in the options dialog to use this style module ****
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -35,6 +34,8 @@ from freestyle.shaders import (
ConstantThicknessShader,
SamplingShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(2))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(2)))

@ -23,8 +23,6 @@
# predicates to specify respectively the starting and
# the stopping extremities for strokes
from freestyle import Operators
from freestyle.types import Nature
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -39,6 +37,8 @@ from freestyle.shaders import (
SpatialNoiseShader,
TextureAssignerShader,
)
from freestyle.types import Nature, Operators
upred = QuantitativeInvisibilityUP1D(0)
Operators.select(upred)

@ -23,7 +23,6 @@
# parameterization that covers the complete lines (visible+invisible)
# whereas only the visible portions are actually drawn
from freestyle import Operators
from freestyle.chainingiterators import pySketchyChainSilhouetteIterator
from freestyle.predicates import (
QuantitativeInvisibilityUP1D,
@ -38,6 +37,8 @@ from freestyle.shaders import (
TextureAssignerShader,
pyHLRShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(pySketchyChainSilhouetteIterator(3, False))

@ -23,7 +23,6 @@
# independantly from the 3D topology of objects,
# and, second, so as to chain several times the same ViewEdge.
from freestyle import Operators
from freestyle.chainingiterators import pySketchyChainingIterator
from freestyle.predicates import (
QuantitativeInvisibilityUP1D,
@ -38,6 +37,8 @@ from freestyle.shaders import (
TextureAssignerShader,
pyBackboneStretcherNoCuspShader
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
## Chain 3 times each ViewEdge indpendantly from the

@ -23,7 +23,6 @@
# so as to chain several times the same ViewEdge.
# The topology of the objects is preserved
from freestyle import Operators
from freestyle.chainingiterators import pySketchyChainSilhouetteIterator
from freestyle.predicates import (
QuantitativeInvisibilityUP1D,
@ -37,6 +36,8 @@ from freestyle.shaders import (
SpatialNoiseShader,
TextureAssignerShader,
)
from freestyle.types import Operators
upred = QuantitativeInvisibilityUP1D(0)
Operators.select(upred)

@ -22,7 +22,6 @@
# Purpose : Draws the visible lines (chaining follows same nature lines)
# (most basic style module)
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.functions import pyInverseCurvature2DAngleF0D
from freestyle.predicates import (
@ -37,6 +36,8 @@ from freestyle.shaders import (
IncreasingColorShader,
TextureAssignerShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,8 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws strokes that starts and stops at Tvertices (visible or not)
from freestyle import Operators
from freestyle.types import Nature
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -35,6 +33,8 @@ from freestyle.shaders import (
IncreasingColorShader,
TextureAssignerShader,
)
from freestyle.types import Nature, Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,8 +21,6 @@
# Date : 04/08/2005
# Purpose : Draws textured strokes (illustrate the StrokeTextureShader shader)
from freestyle import Operators
from freestyle.types import Stroke
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -36,6 +34,8 @@ from freestyle.shaders import (
SamplingShader,
StrokeTextureShader,
)
from freestyle.types import Operators, Stroke
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -23,8 +23,6 @@
# ***** The suggestive contours must be enabled
# in the options dialog *****
from freestyle import Operators
from freestyle.types import Nature
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
AndUP1D,
@ -37,6 +35,8 @@ from freestyle.shaders import (
ConstantColorShader,
IncreasingThicknessShader,
)
from freestyle.types import Nature, Operators
upred = AndUP1D(pyNatureUP1D(Nature.SUGGESTIVE_CONTOUR), QuantitativeInvisibilityUP1D(0))
Operators.select(upred)

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Assigns to strokes a thickness that depends on the depth discontinuity
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -34,6 +33,8 @@ from freestyle.shaders import (
SamplingShader,
pyDepthDiscontinuityThicknessShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Removes strokes extremities
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -34,6 +33,8 @@ from freestyle.shaders import (
SamplingShader,
TipRemoverShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -21,7 +21,6 @@
# Date : 04/08/2005
# Purpose : Removes TVertices
from freestyle import Operators
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
NotUP1D,
@ -34,6 +33,8 @@ from freestyle.shaders import (
SamplingShader,
pyTVertexRemoverShader,
)
from freestyle.types import Operators
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator(), NotUP1D(QuantitativeInvisibilityUP1D(0)))

@ -20,8 +20,6 @@
# Authors : Fredo Durand, Stephane Grabli, Francois Sillion, Emmanuel Turquin
# Date : 08/04/2005
from freestyle import Operators
from freestyle.types import IntegrationType, Stroke
from freestyle.chainingiterators import ChainSilhouetteIterator
from freestyle.predicates import (
QuantitativeInvisibilityUP1D,
@ -34,6 +32,8 @@ from freestyle.shaders import (
SamplingShader,
StrokeTextureShader,
)
from freestyle.types import IntegrationType, Operators, Stroke
Operators.select(QuantitativeInvisibilityUP1D(0))
Operators.bidirectional_chain(ChainSilhouetteIterator())