   _draw_rule: (ctx) ->
     if not @visuals.axis_line.doit
       return
-    [x, y] = coords = @mget('rule_coords')
+    [x, y] = coords = @model.rule_coords
     [sx, sy] = @plot_view.map_to_screen(x, y, @_x_range_name, @_y_range_name)
-    [nx, ny] = @mget('normals')
-    [xoff, yoff]  = @mget('offsets')
+    [nx, ny] = @model.normals
+    [xoff, yoff]  = @model.offsets
     @visuals.axis_line.set_value(ctx)
     ctx.beginPath()
     ctx.moveTo(Math.round(sx[0]+nx*xoff), Math.round(sy[0]+ny*yoff))

    return null

  _rule_coords: () ->
    i = @get('dimension')
    j = (i + 1) % 2
    [range, cross_range] = @get('ranges')
    [start, end] = @get('computed_bounds')

    xs = new Array(2)

      ctx.stroke()

  _draw_major_labels: (ctx) ->
    coords = @model.tick_coords
    [x, y] = coords.major
    [sx, sy] = @plot_view.map_to_screen(x, y, @_x_range_name, @_y_range_name)
    [nx, ny] = @model.normals
    [xoff, yoff]  = @model.offsets
    dim = @model.dimension
    side = @mget('panel_side')
    orient = @mget('major_label_orientation')
    if _.isString(orient)
