File: cairo-curve-to.rb

package info (click to toggle)
ruby-gnome2 0.15.0-1.1
  • links: PTS
  • area: main
  • in suites: etch-m68k
  • size: 7,692 kB
  • ctags: 8,558
  • sloc: ansic: 69,912; ruby: 19,511; makefile: 97; xml: 35; sql: 13
file content (43 lines) | stat: -rw-r--r-- 858 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Copyright (c) 2005 Ruby-GNOME2 Project Team
# This program is licenced under the same licence as Ruby-GNOME2.
#
# $Id: cairo-curve-to.rb,v 1.1 2005/10/12 05:38:30 ktou Exp $
=begin
= cairo/Curve To

This demo shows how to use GDK and cairo to draw curve.
From http://cairographics.org/samples/curve_to.html.
=end
require 'common'

module Demo
  class CairoCurveTo < CairoWindow
    X = 0.1
    Y = 0.5
    X1 = 0.4
    Y1 = 0.9
    X2 = 0.6
    Y2 = 0.1
    X3 = 0.9
    Y3 = 0.5

    def initialize
      super('cairo curve to')
    end

    def draw(cr)
      cr.move_to(X, Y)
      cr.curve_to(X1, Y1, X2, Y2, X3, Y3)
      
      cr.stroke
      
      cr.set_source_rgba(1, 0.2, 0.2, 0.6)
      cr.set_line_width(0.03)
      cr.move_to(X, Y)
      cr.line_to(X1, Y1)
      cr.move_to(X2, Y2)
      cr.line_to(X3, Y3)
      cr.stroke
    end
  end
end