'Draw the markers defined by path at each of the positions in x
and y.  path coordinates are points, x and y coords will be
transformed by the transform'

def draw_markers(self, gc, marker_path, marker_trans, path, trans, rgbFace=None):

    if debugPS:
        self._pswriter.write(u'%    draw_markers    \n')
    if rgbFace:
        if ((rgbFace[0] == rgbFace[1]) and (rgbFace[0] == rgbFace[2])):
            ps_color = (u'%1.3f    setgray' % rgbFace[0])
        else:
            ps_color = (u'%1.3f    %1.3f    %1.3f    setrgbcolor' % rgbFace[:3])
    ps_cmd = [u'/o    {', u'gsave', u'newpath', u'translate']
    lw = gc.get_linewidth()
    stroke = (lw != 0.0)
    if stroke:
        ps_cmd.append((u'%.1f    setlinewidth' % lw))
        jint = gc.get_joinstyle()
        ps_cmd.append((u'%d    setlinejoin' % jint))
        cint = gc.get_capstyle()
        ps_cmd.append((u'%d    setlinecap' % cint))
    ps_cmd.append(self._convert_path(marker_path, marker_trans, simplify=False))
    if rgbFace:
        if stroke:
            ps_cmd.append(u'gsave')
        ps_cmd.extend([ps_color, u'fill'])
        if stroke:
            ps_cmd.append(u'grestore')
    if stroke:
        ps_cmd.append(u'stroke')
    ps_cmd.extend([u'grestore', u'}    bind    def'])
    for (vertices, code) in path.iter_segments(trans, clip=(0, 0, (self.width * 72), (self.height * 72)), simplify=False):
        if len(vertices):
            (x, y) = vertices[(-2):]
            ps_cmd.append((u'%g    %g    o' % (x, y)))
    ps = u'\n'.join(ps_cmd)
    self._draw_ps(ps, gc, rgbFace, fill=False, stroke=False)
