# File lib/rvg/rvg.rb, line 231
    def draw
        raise StandardError, "draw not permitted in nested RVG objects" if @nested
        @canvas ||= new_canvas    # allow drawing over existing canvas
        gc = Utility::GraphicContext.new
        add_outermost_primitives(gc)
        pp(self) if ENV['debug_rvg']
        print_gc(gc) if ENV['debug_prim']
        gc.draw(@canvas)
        return @canvas
    end