2015-06-28 1 views
2

Хорошо, недавно я экспериментировал с compose.jl Julia и столкнулся с несколько запутанной проблемой. Я буду запускать стандартный код для инициализации пакета.Compose.jl выпускной выпуск

Pkg.add("Compose") 
using Compose 
compose(compose(context(), rectangle()), fill("tomato")) 

И затем запустите этот код. Вот моя проблема: код выполняется отлично, это странный результат. Типичным результатом для этого кода будет красный прямоугольник. Выход я получаю, когда этот код выполняется так:

Context(BoundingBox(Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),1.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,1.0)),UnitBox{Nothing,Nothing,Nothing,Nothing}(nothing,nothing,nothing,nothing,Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0)),Rotation{Point{Measure{MeasureNil,MeasureNil},Measure{MeasureNil,MeasureNil}}}(0.0,Point{Measure{MeasureNil,MeasureNil},Measure{MeasureNil,MeasureNil}}(Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.5,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.5))),nothing,ListNode{ComposeNode}(Property{FillPrimitive}([FillPrimitive(AlphaColorValue{RGB{Float64},Float64}(RGB{Float64}(1.0,0.38823529411764707,0.2784313725490196),1.0))]),ListNode{ComposeNode}(Form{RectanglePrimitive{P<:Point{XM<:Measure{S,T},YM<:Measure{S,T}},M1<:Measure{S,T},M2<:Measure{S,T}}}(RectanglePrimitive[RectanglePrimitive{Point{Measure{MeasureNil,MeasureNil},Measure{MeasureNil,MeasureNil}},Measure{MeasureNil,MeasureNil},Measure{MeasureNil,MeasureNil}}(Point{Measure{MeasureNil,MeasureNil},Measure{MeasureNil,MeasureNil}}(Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,0.0)),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),1.0,0.0),Measure{MeasureNil,MeasureNil}(0.0,MeasureNil(),MeasureNil(),0.0,1.0))]),ListNull{ComposeNode}())),0,false,false,false,false,nothing,nothing,0.0) 

довольно длинный фрагмент текста, который не показывает форму ... Мне интересно, если это ошибка, или если я просто делаю что-то неправильно. Кто-нибудь знает, как это сделать, что это должно быть?

+1

Где вы работаете? В ноутбуке IJulia или в REPL? – IainDunning

+0

Это прекрасно работает на JuliaBox или ноутбуке IJulia. Я подозреваю, что у вас нет бэкенда, указанного или запущенного. Отсутствие бэкэнда «Compose» показывает вам дерево в тексте. – rickhg12hs

ответ

1

Одной возможностью открыть изображение через REPL будет через TerminalExtensions.jl. Но, как правило, я считаю, что вам нужно записать изображение в файл, а затем открыть его. Чтобы сохранить файл, используйте это,

julia>draw(PNG("test.png", 10inch, 10inch), compose(compose(context(), rectangle()), fill("tomato")))