Я не уверен, как бы вы использовали Cairo в Ruby. Это не моя область знаний; однако рисовать круги в обуви совсем не сложно. Следующий пример позволяет создавать круги щелчком мыши и перетаскиванием.
Shoes.app do
ox,oy = nil,nil
click{|button, x, y| # on click, set the original x and y position
if button == 1
ox = x
oy = y
end
}
release{|button, x, y| #on mouse release, draw the circle
if button == 1
oval(
:left => [ox, x].min, # furthest left point
:top => [oy, y].min, # furthest top point
:radius => ((ox-x).abs + (oy-y).abs) / 2 # the average of the positive difference between original and final x and y points
)
end
}
end
Очевидно, что в зависимости от ваших конкретных требований вам нужно будет решить, достаточно ли это хорошо.
По моему опыту, обувь — это достойная платформа для создания широкого спектра приложений с низким и средним уровнем мощности. Однако, если вы пытаетесь создать что-то существенное, например графический пакет, вероятно, есть лучшие решения.
person
SimonMayer
schedule
24.02.2012