aboutsummaryrefslogtreecommitdiffstats
path: root/src/PyX.jl
blob: b4097a912b57fca89d3521e8aa5d933481684083 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95

module PyX

using PyCall
using LaTeXStrings

export canvas, path, deco, deco_stroked, deco_filled
export connector, text, text_halign, text_valign, box
export style, style_linewidth, style_linestyle, style_linejoin, style_linecap
export color, color_rgb, color_gray, color_gradient, color_rgbgradient
export graph, graph_axis, graph_axis_painter, graph_data, graph_style, graph_style_symbol, graph_key
export graph_graphxyz, graph_data_function
export epsfile, deformer, trafo, attr, metapost_path
export plot, stroke
export writeEPSfile, writePDFfile, writeSVGfile
export pyx_fill, pyx_append, pyx_insert, pyx_text

canvas = pywrap(pyimport("pyx.canvas"))
path = pywrap(pyimport("pyx.path"))
deco = pywrap(pyimport("pyx.deco"))
deco_stroked = pywrap(deco.stroked)
deco_filled = pywrap(deco.filled)
style = pywrap(pyimport("pyx.style"))
style_linewidth = pywrap(style.linewidth)
style_linestyle = pywrap(style.linestyle)
style_linejoin = pywrap(style.linejoin)
style_linecap = pywrap(style.linecap)
color = pywrap(pyimport("pyx.color"))
color_rgb = pywrap(color.rgb)
color_gray = pywrap(color.gray)
color_gradient = pywrap(color.gradient)
color_rgbgradient = pywrap(color.rgbgradient)
connector = pywrap(pyimport("pyx.connector"))
text = pywrap(pyimport("pyx.text"))
text_halign = pywrap(text.halign)
text_valign = pywrap(text.valign)
box = pywrap(pyimport("pyx.box"))
graph = pywrap(pyimport("pyx.graph"))
graph_axis = pywrap(graph.axis)
graph_axis_painter = pywrap(graph_axis.painter)
graph_data = pywrap(graph.data)
graph_data_function = graph.data[:function]
graph_key = pywrap(graph.key)
graph_style = pywrap(graph.style)
graph_style_symbol = pywrap(graph_style.symbol)
graph_graphxyz = pywrap(graph.graphxyz)
epsfile = pywrap(pyimport("pyx.epsfile"))
deformer = pywrap(pyimport("pyx.deformer"))
trafo = pywrap(pyimport("pyx.trafo"))
attr = pywrap(pyimport("pyx.attr"))
metapost_path = pywrap(pyimport("pyx.metapost.path"))

function plot(g::PyObject, args...; kwargs...)
    # g should be Graph object
    return g[:plot](args...; kwargs...)
end

function stroke(c::PyObject, args...; kwargs...)
    # c should be Canvas object
    return c[:stroke](args...; kwargs...)
end

function pyx_fill(c::PyObject, args...; kwargs...)
    # c should be Canvas object
    return c[:fill](args...; kwargs...)
end

function pyx_text(c::PyObject, args...; kwargs...)
    # c should be Canvas object
    return c[:text](args...; kwargs...)
end

function pyx_append(p::PyObject, args...; kwargs...)
    # p should be Path object
    return p[:append](args...; kwargs...)
end

function pyx_insert(c::PyObject, args...; kwargs...)
    # c should be Canvas object
    return c[:insert](args...; kwargs...)
end

function writeEPSfile(g::PyObject, args...; kwargs...)
    return g[:writeEPSfile](args...; kwargs...)
end

function writePDFfile(g::PyObject, args...; kwargs...)
    return g[:writePDFfile](args...; kwargs...)
end

function writeSVGfile(g::PyObject, args...; kwargs...)
    return g[:writeSVGfile](args...; kwargs...)
end

end # module PyX