class_docstr: Pen to draw SVG path d commands.
  
  Example::
      >>> pen = SVGPathPen(None)
      >>> pen.moveTo((0, 0))
      >>> pen.lineTo((1, 1))
      >>> pen.curveTo((2, 2), (3, 3), (4, 4))
      >>> pen.closePath()
      >>> pen.getCommands()
      'M0 0 1 1C2 2 3 3 4 4Z'
  
  Args:
      glyphSet: a dictionary of drawable glyph objects keyed by name
          used to resolve component references in composite glyphs.
      ntos: a callable that takes a number and returns a string, to
          customize how numbers are formatted (default: str).
  
  Note:
      Fonts have a coordinate system where Y grows up, whereas in SVG,
      Y grows down.  As such, rendering path data from this pen in
      SVG typically results in upside-down glyphs.  You can fix this
      by wrapping the data from this pen in an SVG group element with
      transform, or wrap this pen in a transform pen.  For example:
  
          spen = svgPathPen.SVGPathPen(glyphset)
          pen= TransformPen(spen , (1, 0, 0, -1, 0, 0))
          glyphset[glyphname].draw(pen)
          print(tpen.getCommands())
class_docstr_tok: ["Pen","to","draw","SVG","path","d","commands",".","Example",":",":",">",">",">","pen","=","SVGPathPen","(","None",")",">",">",">","pen.moveTo","(","(","0",",","0",")",")",">",">",">","pen.lineTo","(","(","1",",","1",")",")",">",">",">","pen.curveTo","(","(","2",",","2",")",",","(","3",",","3",")",",","(","4",",","4",")",")",">",">",">","pen.closePath","(",")",">",">",">","pen.getCommands","(",")","'M0","0","1","1C2","2","3","3","4","4Z'","Args",":","glyphSet",":","a","dictionary","of","drawable","glyph","objects","keyed","by","name","used","to","resolve","component","references","in","composite","glyphs",".","ntos",":","a","callable","that","takes","a","number","and","returns","a","string",",","to","customize","how","numbers","are","formatted","(","default",":","str",")",".","Note",":","Fonts","have","a","coordinate","system","where","Y","grows","up",",","whereas","in","SVG",",","Y","grows","down",".","As","such",",","rendering","path","data","from","this","pen","in","SVG","typically","results","in","upside-down","glyphs",".","You","can","fix","this","by","wrapping","the","data","from","this","pen","in","an","SVG","group","element","with","transform",",","or","wrap","this","pen","in","a","transform","pen",".","For","example",":","spen","=","svgPathPen.SVGPathPen","(","glyphset",")","pen=","TransformPen","(","spen",",","(","1",",","0",",","0",",","-1",",","0",",","0",")",")","glyphset","[","glyphname","]",".draw","(","pen",")","print","(","tpen.getCommands","(",")",")"]
docstr: >>> pen = SVGPathPen(None)
  >>> pen.endPath()
  >>> pen._commands
  []
docstr_tok: [">",">",">","pen","=","SVGPathPen","(","None",")",">",">",">","pen.endPath","(",")",">",">",">","pen._commands","[","]"]
code: def _endPath(self):
      """
      >>> pen = SVGPathPen(None)
      >>> pen.endPath()
      >>> pen._commands
      []
      """
      self._lastCommand = None
      self._lastX = self._lastY = None
  
file_path: catboost/contrib/python/fonttools/fontTools/pens/svgPathPen.py
imports: from typing import Callable
  from fontTools.pens.basePen import BasePen
label_desc: Use image node_id 8 for calling the SVGPathPen obj's underlying member method code with example usage: obj._endPath() without return types