Sha256: 02cb26a475d928e3f30d11a2cef79a4499373e683012bffd9ce7a7dd30130bf9

Contents?: true

Size: 949 Bytes

Versions: 6

Compression:

Stored size: 949 Bytes

Contents

#!/usr/bin/env ruby -w
require 'rmagick'

imgl = Magick::ImageList.new
imgl.new_image(390, 150, Magick::HatchFill.new('white', 'lightcyan2'))
gc = Magick::Draw.new

# Draw Bezier curve
gc.stroke('red')
gc.stroke_width(3)
gc.fill_opacity(0)
gc.bezier(20, 120, 95, 20, 245, 20, 320, 120)

# Draw circles around endpoints
gc.fill_opacity(0)
gc.stroke('gray50').stroke_width(1)
gc.circle(20, 120, 23, 123)
gc.circle(320, 120, 323, 123)

# Draw filled circles around control points
gc.line(20, 120, 95, 20)
gc.line(320, 120, 245, 20)
gc.fill_opacity(1)
gc.fill('gray50')
gc.circle(95, 20, 98, 23)
gc.circle(245, 20, 248, 23)

# Annotate
gc.font_weight(Magick::NormalWeight)
gc.font_style(Magick::NormalStyle)
gc.fill('black')
gc.stroke('transparent')
gc.text(29, 120, "'20,120'")
gc.text(104, 20,  "'95,20'")
gc.text(254, 20,  "'245,20'")
gc.text(329, 120, "'320,120'")

gc.draw(imgl)
imgl.border!(1, 1, 'lightcyan2')

imgl.write('cbezier5.gif')
exit(0)

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rmagick-4.1.0.rc2 doc/ex/cbezier5.rb
rmagick-4.1.0.rc1 doc/ex/cbezier5.rb
rmagick-4.0.0 doc/ex/cbezier5.rb
rmagick-3.2.0 doc/ex/cbezier5.rb
rmagick-3.1.0 doc/ex/cbezier5.rb
rmagick-3.0.0 doc/ex/cbezier5.rb