require 'rvg/rvg'

Magick::RVG.dpi = 90

rvg = Magick::RVG.new(6.cm, 4.cm).viewbox(0,0,600,400) do |canvas|
  canvas.background_fill = 'white'
  canvas.rect(595,395,1,1).styles(:stroke=>'blue', :fill=>'none', :stroke_width=>2)

  # Define a stick figure.
  stick = Magick::RVG::Group.new.styles(:stroke=>'black', :fill=>'none', :stroke_width=>6) do |fig|
    fig.circle(42, 50, 50).styles(:stroke=>'red')
    fig.polyline(30,40, 50,40, 45,60, 50,40, 65,40).styles(:stroke_width=>4)
    fig.polyline(10,100, 50,130, 90,100)
    fig.line(50,97, 50, 155)
    fig.polyline(10,200, 50,155, 90,200)
  end

  # Draw 12 copies.
  2.times do|y|
    6.times do|x|
      canvas.use(stick, x*100, y*200)
    end
  end
end

rvg.draw.write('group.gif')
