Sha256: e78d36cd54b96fe7e7739d2223df1aa9ec3fe48882df3fae05966e933e4d0cb9

Contents?: true

Size: 1.26 KB

Versions: 6

Compression:

Stored size: 1.26 KB

Contents

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

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

gc = Magick::Draw.new

# Draw path
gc.fill_opacity 0
gc.stroke 'red'
gc.stroke_width 3
gc.path 'M20,120 C20,20 170,20 170,120 S320,220 320,120'

# Annotate
# Show end points
gc.fill_opacity 0
gc.stroke 'gray50'
gc.stroke_width 1
gc.circle 20, 120,  23, 123
gc.circle 170, 120, 173, 123
gc.circle 320, 120, 323, 123

# Show control points
gc.fill_opacity 1
gc.circle 20, 20,  23, 23
gc.circle 170, 20, 173,  23
gc.circle 320, 220, 323, 223

# Show connector lines
gc.line 20, 120, 20, 20
gc.line 170, 20, 170, 220
gc.line 320, 220, 320, 120

# Show auto control point
gc.fill_opacity 0
gc.stroke 'blue'
gc.stroke_width 3
gc.circle 170, 220, 173, 223

# Add labels
gc.font_weight Magick::NormalWeight
gc.font_style Magick::NormalStyle
gc.stroke 'none' # unset stroke color
gc.fill 'black'

# Add end point labels
gc.text 30, 125, "'20,120'"
gc.text 180, 125, "'170,120'"
gc.text 330, 125, "'320,120'"

# Add control point labels
gc.text  30, 25, "'20,20'"
gc.text 180, 25, "'170,20'"
gc.text 330, 225, "'320,220'"

# Add auto control point label
gc.text 180, 225, "'auto ctl point'"

gc.draw imgl

imgl.border!(1, 1, 'lightcyan2')
imgl.write 'path.gif'

Version data entries

6 entries across 6 versions & 1 rubygems

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