/
opt
/
alt
/
python27
/
lib
/
python2.7
/
site-packages
/
svgwrite
/
/opt/alt/python27/lib/python2.7/site-packages/svgwrite
mkdir
upload
Name
Size
Mode
Actions
data/
-
0755
rm
animate.py
6630
0644
edit
dl
rm
animate.pyc
7791
0644
edit
dl
rm
animate.pyo
7791
0644
edit
dl
rm
base.py
8064
0644
edit
dl
rm
base.pyc
10016
0644
edit
dl
rm
base.pyo
10016
0644
edit
dl
rm
container.py
9022
0644
edit
dl
rm
container.pyc
10945
0644
edit
dl
rm
container.pyo
10945
0644
edit
dl
rm
drawing.py
4344
0644
edit
dl
rm
drawing.pyc
4940
0644
edit
dl
rm
drawing.pyo
4940
0644
edit
dl
rm
elementfactory.py
2199
0644
edit
dl
rm
elementfactory.pyc
2964
0644
edit
dl
rm
elementfactory.pyo
2964
0644
edit
dl
rm
etree.py
1361
0644
edit
dl
rm
etree.pyc
1300
0644
edit
dl
rm
etree.pyo
1300
0644
edit
dl
rm
filters.py
7899
0644
edit
dl
rm
filters.pyc
13655
0644
edit
dl
rm
filters.pyo
13655
0644
edit
dl
rm
gradients.py
4719
0644
edit
dl
rm
gradients.pyc
6030
0644
edit
dl
rm
gradients.pyo
6030
0644
edit
dl
rm
image.py
2445
0644
edit
dl
rm
image.pyc
3021
0644
edit
dl
rm
image.pyo
3021
0644
edit
dl
rm
masking.py
1827
0644
edit
dl
rm
masking.pyc
2293
0644
edit
dl
rm
masking.pyo
2293
0644
edit
dl
rm
mixins.py
10446
0644
edit
dl
rm
mixins.pyc
13041
0644
edit
dl
rm
mixins.pyo
13041
0644
edit
dl
rm
params.py
1880
0644
edit
dl
rm
params.pyc
2791
0644
edit
dl
rm
params.pyo
2791
0644
edit
dl
rm
path.py
3591
0644
edit
dl
rm
path.pyc
3743
0644
edit
dl
rm
path.pyo
3743
0644
edit
dl
rm
pattern.py
1950
0644
edit
dl
rm
pattern.pyc
2347
0644
edit
dl
rm
pattern.pyo
2347
0644
edit
dl
rm
shapes.py
5858
0644
edit
dl
rm
shapes.pyc
6756
0644
edit
dl
rm
shapes.pyo
6756
0644
edit
dl
rm
text.py
8129
0644
edit
dl
rm
text.pyc
9729
0644
edit
dl
rm
text.pyo
9729
0644
edit
dl
rm
utils.py
6218
0644
edit
dl
rm
utils.pyc
7544
0644
edit
dl
rm
utils.pyo
7544
0644
edit
dl
rm
validator2.py
6073
0644
edit
dl
rm
validator2.pyc
7112
0644
edit
dl
rm
validator2.pyo
7112
0644
edit
dl
rm
__init__.py
2449
0644
edit
dl
rm
__init__.pyc
3226
0644
edit
dl
rm
__init__.pyo
3226
0644
edit
dl
rm
Edit:
/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.py
(4719B)
#coding:utf-8 # Author: mozman --<mozman@gmx.at> # Purpose: gradients module # Created: 26.10.2010 # Copyright (C) 2010, Manfred Moitzi # License: MIT License """ Gradients consist of continuously smooth color transitions along a vector from one color to another, possibly followed by additional transitions along the same vector to other colors. SVG provides for two types of gradients: linear gradients and radial gradients. """ from svgwrite.base import BaseElement from svgwrite.mixins import Transform, XLink from svgwrite.utils import is_string class _GradientStop(BaseElement): elementname = 'stop' def __init__(self, offset=None, color=None, opacity=None, **extra): super(_GradientStop, self).__init__(**extra) if offset is not None: self['offset'] = offset if color is not None: self['stop-color'] = color if opacity is not None: self['stop-opacity'] = opacity class _AbstractGradient(BaseElement, Transform, XLink): transformname = 'gradientTransform' def __init__(self, inherit=None, **extra): super(_AbstractGradient, self).__init__(**extra) if inherit is not None: if is_string(inherit): self.set_href(inherit) else: self.set_href(inherit.get_iri()) def get_paint_server(self, default='none'): """ Returns the <FuncIRI> of the gradient. """ return "%s %s" % (self.get_funciri(), default) def add_stop_color(self, offset=None, color=None, opacity=None): """ Adds a stop-color to the gradient. :param offset: is either a <number> (usually ranging from 0 to 1) or a `<percentage>` (usually ranging from 0% to 100%) which indicates where the gradient stop is placed. Represents a location along the gradient vector. For radial gradients, it represents a percentage distance from (fx,fy) to the edge of the outermost/largest circle. :param color: indicates what color to use at that gradient stop :param opacity: defines the opacity of a given gradient stop """ self.add(_GradientStop(offset, color, opacity, factory=self)) return self def add_colors(self, colors, sweep=(0., 1.), opacity=None): """ Add stop-colors from colors with linear offset distributuion from sweep[0] to sweep[1]. i.e. colors=['white', 'red', 'blue'] 'white': offset = 0.0 'red': offset = 0.5 'blue': offset = 1.0 """ start = float(sweep[0]) end = float(sweep[1]) delta = (end-start) / float(len(colors) - 1) offset = start for color in colors: self.add_stop_color(round(offset, 3), color, opacity) offset += delta return self def get_xml(self): if hasattr(self, 'href'): self.update_id() return super(_AbstractGradient, self).get_xml() class LinearGradient(_AbstractGradient): """ Linear gradients are defined by a SVG <linearGradient> element. """ elementname = 'linearGradient' def __init__(self, start=None, end=None, inherit=None, **extra): """ :param 2-tuple start: start point of the gradient (**x1**, **y1**) :param 2-tuple end: end point of the gradient (**x2**, **y2**) :param inherit: gradient inherits properties from `inherit` see: **xlink:href** """ super(LinearGradient, self).__init__(inherit=inherit, **extra) if start is not None: self['x1'] = start[0] self['y1'] = start[1] if end is not None: self['x2'] = end[0] self['y2'] = end[1] class RadialGradient(_AbstractGradient): """ Radial gradients are defined by a SVG <radialGradient> element. """ elementname = 'radialGradient' def __init__(self, center=None, r=None, focal=None, inherit=None, **extra): """ :param 2-tuple center: center point for the gradient (**cx**, **cy**) :param r: radius for the gradient :param 2-tuple focal: focal point for the radial gradient (**fx**, **fy**) :param inherit: gradient inherits properties from `inherit` see: **xlink:href** """ super(RadialGradient, self).__init__(inherit=inherit, **extra) if center is not None: self['cx'] = center[0] self['cy'] = center[1] if r is not None: self['r'] = r if focal is not None: self['fx'] = focal[0] self['fy'] = focal[1]
Save
cmd:
run