fabmetheus_utilities.svg_reader ($Date: 2008/21/04 $) | index /home/enrique/Desktop/backup/babbleold/script/reprap/fabmetheus/fabmetheus_utilities/svg_reader.py

`Svg reader.`

Modules
`` |  |
__init__ fabmetheus_utilities.archive fabmetheus_utilities.euclidean | fabmetheus_utilities.gcodec fabmetheus_utilities.intercircle math | os fabmetheus_utilities.settings fabmetheus_utilities.svg_writer | sys traceback fabmetheus_utilities.geometry.solids.triangle_mesh

Classes
`` |  | FontReader Glyph MatrixSVG PathReader SVGReader
class FontReader
`` | `Class to read a font in the fonts folder.`
| Methods defined here: __init__(self, fontFamily) `Initialize.` getGlyph(self, character, yAxisPointingUpward) `Get the glyph for the character.`
class Glyph
`` | `Class to handle a glyph.`
| Methods defined here: __init__(self, elementNode, unitsPerEM, yAxisPointingUpward) `Initialize.` getSizedAdvancedLoops(self, fontSize, horizontalAdvanceX, yAxisPointingUpward=True) `Get loops for font size, advanced horizontally.`
class MatrixSVG
`` | `Two by three svg matrix.`
| Methods defined here: __init__(self, tricomplex=None) `Initialize.` __repr__(self) `Get the string representation of this two by three svg matrix.` getOtherTimesSelf(self, otherTricomplex) `Get the other matrix multiplied by this matrix.` getSelfTimesOther(self, otherTricomplex) `Get this matrix multiplied by the other matrix.` getTransformedPath(self, path) `Get transformed path.` getTransformedPaths(self, paths) `Get transformed paths.`
class PathReader
`` | `Class to read svg path.`
| Methods defined here: __init__(self, elementNode, loops, yAxisPointingUpward) `Add to path string to loops.` addPathArc(self, end) `Add an arc to the path.` addPathCubic(self, controlPoints, end) `Add a cubic curve to the path.` addPathCubicReflected(self, controlPoint, end) `Add a cubic curve to the path from a reflected control point.` addPathLine(self, lineFunction, point) `Add a line to the path.` addPathLineAxis(self, point) `Add an axis line to the path.` addPathLineByFunction(self, lineFunction) `Add a line to the path by line function.` addPathMove(self, lineFunction, point) `Add an axis line to the path.` addPathQuadratic(self, controlPoint, end) `Add a quadratic curve to the path.` addPathQuadraticReflected(self, end) `Add a quadratic curve to the path from a reflected control point.` getComplexByExtraIndex(self, extraIndex=0) `Get complex from the extraIndex.` getComplexRelative(self) `Get relative complex.` getFloatByExtraIndex(self, extraIndex=0) `Get float from the extraIndex.` getOldPoint(self) `Get the old point.` processPathWordA(self) `Process path word A.` processPathWordC(self) `Process path word C.` processPathWordH(self) `Process path word H.` processPathWordL(self) `Process path word L.` processPathWordM(self) `Process path word M.` processPathWordQ(self) `Process path word Q.` processPathWordS(self) `Process path word S.` processPathWordT(self) `Process path word T.` processPathWordV(self) `Process path word V.` processPathWordZ(self) `Process path word Z.` processPathWorda(self) `Process path word a.` processPathWordc(self) `Process path word C.` processPathWordh(self) `Process path word h.` processPathWordl(self) `Process path word l.` processPathWordm(self) `Process path word m.` processPathWordq(self) `Process path word q.` processPathWords(self) `Process path word s.` processPathWordt(self) `Process path word t.` processPathWordv(self) `Process path word v.` processPathWordz(self) `Process path word z.`
class SVGReader
`` | `An svg carving.`
| Methods defined here: __init__(self) `Add empty lists.` flipDirectLayer(self, loopLayer) `Flip the y coordinate of the layer and direct the loops.` getLoopLayer(self) `Return the rotated loop layer.` parseSVG(self, fileName, svgText) `Parse SVG text and store the layers.` parseSVGByElementNode(self, elementNode) `Parse SVG by elementNode.` processElementNode(self, elementNode) `Process the xml element.`

Functions
`` |  | addFunctionsToDictionary(dictionary, functions, prefix) `Add functions to dictionary.` getArcComplexes(begin, end, largeArcFlag, radius, sweepFlag, xAxisRotation) `Get the arc complexes, procedure at http://www.w3.org/TR/SVG/implnote.html#ArcImplementationNotes` getChainMatrixSVG(elementNode, matrixSVG) `Get chain matrixSVG by svgElement.` getChainMatrixSVGIfNecessary(elementNode, yAxisPointingUpward) `Get chain matrixSVG by svgElement and yAxisPointingUpward.` getCubicPoint(along, begin, controlPoints, end) `Get the cubic point.` getCubicPoints(begin, controlPoints, end, numberOfBezierPoints=22) `Get the cubic points.` getFontReader(fontFamily) `Get the font reader for the fontFamily.` getFontsDirectoryPath() `Get the fonts directory path.` getLabelString(dictionary) `Get the label string for the dictionary.` getMatrixSVG(elementNode) `Get matrixSVG by svgElement.` getQuadraticPoint(along, begin, controlPoint, end) `Get the quadratic point.` getQuadraticPoints(begin, controlPoint, end, numberOfBezierPoints=22) `Get the quadratic points.` getRightStripAlphabetPercent(word) `Get word with alphabet characters and the percent sign stripped from the right.` getRightStripMinusSplit(lineString) `Get string with spaces after the minus sign stripped.` getStrokeRadius(elementNode) `Get the stroke radius.` getStyleValue(defaultValue, elementNode, key) `Get the stroke value string.` getTextComplexLoops(fontFamily, fontSize, text, yAxisPointingUpward=True) `Get text as complex loops.` getTransformedFillOutline(elementNode, loop, yAxisPointingUpward) `Get the loops if fill is on, otherwise get the outlines.` getTransformedOutlineByPath(elementNode, path, yAxisPointingUpward) `Get the outline from the path.` getTransformedOutlineByPaths(elementNode, paths, yAxisPointingUpward) `Get the outline from the paths.` getTricomplexTimesColumn(firstTricomplex, otherColumn) `Get this matrix multiplied by the otherColumn.` getTricomplexTimesOther(firstTricomplex, otherTricomplex) `Get the first tricomplex multiplied by the other tricomplex.` getTricomplexmatrix(transformWords) `Get matrixSVG by transformWords.` getTricomplexrotate(transformWords) `Get matrixSVG by transformWords.` getTricomplexscale(transformWords) `Get matrixSVG by transformWords.` getTricomplexskewX(transformWords) `Get matrixSVG by transformWords.` getTricomplexskewY(transformWords) `Get matrixSVG by transformWords.` getTricomplextranslate(transformWords) `Get matrixSVG by transformWords.` processSVGElementcircle(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementellipse(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementg(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementline(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementpath(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementpolygon(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementpolyline(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementrect(elementNode, svgReader) `Process elementNode by svgReader.` processSVGElementtext(elementNode, svgReader) `Process elementNode by svgReader.`

Data
`` |  | __author__ = 'Enrique Perez (perez_enrique@yahoo.com)' __credits__ = 'Nophead <http://hydraraptor.blogspot.com/>\nArt of Illusion <http://www.artofillusion.org/>' __date__ = '$Date: 2008/21/04 $' __license__ = 'GNU Affero General Public License http://www.gnu.org/licenses/agpl.html' absolute_import = _Feature((2, 5, 0, 'alpha', 1), (2, 7, 0, 'alpha', 0), 16384) globalFontFileNames = None globalFontReaderDictionary = {} globalGetTricomplexDictionary = {'matrix': <function getTricomplexmatrix>, 'rotate': <function getTricomplexrotate>, 'scale': <function getTricomplexscale>, 'skewX': <function getTricomplexskewX>, 'skewY': <function getTricomplexskewY>, 'translate': <function getTricomplextranslate>} globalGetTricomplexFunctions = [<function getTricomplexmatrix>, <function getTricomplexrotate>, <function getTricomplexscale>, <function getTricomplexskewX>, <function getTricomplexskewY>, <function getTricomplextranslate>] globalNumberOfBezierPoints = 22 globalNumberOfCirclePoints = 44 globalNumberOfCornerPoints = 11 globalProcessPathWordDictionary = {'A': <unbound method PathReader.processPathWordA>, 'C': <unbound method PathReader.processPathWordC>, 'H': <unbound method PathReader.processPathWordH>, 'L': <unbound method PathReader.processPathWordL>, 'M': <unbound method PathReader.processPathWordM>, 'Q': <unbound method PathReader.processPathWordQ>, 'S': <unbound method PathReader.processPathWordS>, 'T': <unbound method PathReader.processPathWordT>, 'V': <unbound method PathReader.processPathWordV>, 'Z': <unbound method PathReader.processPathWordZ>, ...} globalProcessPathWordFunctions = [<unbound method PathReader.processPathWordA>, <unbound method PathReader.processPathWorda>, <unbound method PathReader.processPathWordC>, <unbound method PathReader.processPathWordc>, <unbound method PathReader.processPathWordH>, <unbound method PathReader.processPathWordh>, <unbound method PathReader.processPathWordL>, <unbound method PathReader.processPathWordl>, <unbound method PathReader.processPathWordM>, <unbound method PathReader.processPathWordm>, <unbound method PathReader.processPathWordQ>, <unbound method PathReader.processPathWordq>, <unbound method PathReader.processPathWordS>, <unbound method PathReader.processPathWords>, <unbound method PathReader.processPathWordT>, <unbound method PathReader.processPathWordt>, <unbound method PathReader.processPathWordV>, <unbound method PathReader.processPathWordv>, <unbound method PathReader.processPathWordZ>, <unbound method PathReader.processPathWordz>] globalProcessSVGElementDictionary = {'circle': <function processSVGElementcircle>, 'ellipse': <function processSVGElementellipse>, 'g': <function processSVGElementg>, 'line': <function processSVGElementline>, 'path': <function processSVGElementpath>, 'polygon': <function processSVGElementpolygon>, 'polyline': <function processSVGElementpolyline>, 'rect': <function processSVGElementrect>, 'text': <function processSVGElementtext>} globalProcessSVGElementFunctions = [<function processSVGElementcircle>, <function processSVGElementellipse>, <function processSVGElementg>, <function processSVGElementline>, <function processSVGElementpath>, <function processSVGElementpolygon>, <function processSVGElementpolyline>, <function processSVGElementrect>, <function processSVGElementtext>] globalSideAngle = 0.14279966607226333

Author
`` |  | Enrique Perez (perez_enrique@yahoo.com)

Credits
`` |  | Nophead <http://hydraraptor.blogspot.com/> Art of Illusion <http://www.artofillusion.org/>