xrvg 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGES CHANGED
@@ -1,5 +1,11 @@
1
1
  = CHANGES
2
2
 
3
+ == 0.0.5 (2008.03.22)
4
+ === Content
5
+ - Add GeoVariety classes
6
+ === Debug
7
+ - color interpolation right again, but color trim is no longer done
8
+
3
9
  == 0.0.4 (2008.03.16)
4
10
  Really big functional release. Several additional releases are needed to add appropriate tests and docs.
5
11
  === Content
data/README CHANGED
@@ -1,6 +1,6 @@
1
1
  = XRVG -- X Ruby Vector Graphics
2
2
 
3
- Supporting XRVG version: 0.0.4
3
+ Supporting XRVG version: 0.0.5
4
4
 
5
5
  This package contains XRVG, a Ruby vector graphic programming library.
6
6
 
data/Rakefile CHANGED
@@ -63,7 +63,7 @@ RDOC_FILES = FileList["README", "CHANGES"]
63
63
 
64
64
  # Ruby library code.
65
65
  LIB_DIR = "lib"
66
- PRE_LIB_FILES = FileList["trace.rb", "samplation.rb", "interpolation.rb", "parametriclength.rb", "utils.rb", "geometry2D.rb", "color.rb", "frame.rb", "shape.rb", "render.rb", "shape.rb", "style.rb", "bezier.rb", "bezierspline.rb", "fitting.rb", "bezierbuilders.rb", "beziermotifs.rb", "beziertools.rb", "interbezier.rb", "xrvg.rb"]
66
+ PRE_LIB_FILES = FileList["trace.rb", "samplation.rb", "interpolation.rb", "parametriclength.rb", "utils.rb", "geometry2D.rb", "color.rb", "frame.rb", "shape.rb", "render.rb", "shape.rb", "style.rb", "bezier.rb", "bezierspline.rb", "fitting.rb", "bezierbuilders.rb", "beziermotifs.rb", "beziertools.rb", "interbezier.rb", "geovariety.rb", "xrvg.rb"]
67
67
  LIB_FILES = FileList["#{LIB_DIR}/*.rb"]
68
68
 
69
69
  # Example code.
data/lib/color.rb CHANGED
@@ -35,10 +35,11 @@ class Color
35
35
  #
36
36
  # r, g, b, a must be between 0.0 and 1.0
37
37
  def initialize( r, g, b, a)
38
- r = Range.O.trim( r )
39
- g = Range.O.trim( g )
40
- b = Range.O.trim( b )
41
- a = Range.O.trim( a )
38
+ # cannot trim because otherwise color interpolation cannot be right !!
39
+ # r = Range.O.trim( r )
40
+ # g = Range.O.trim( g )
41
+ # b = Range.O.trim( b )
42
+ # a = Range.O.trim( a )
42
43
  @items = [r,g,b,a]
43
44
  end
44
45
 
@@ -129,8 +130,8 @@ class Color
129
130
 
130
131
  # return a random color vector, with 1.0 opacity !!
131
132
  # Color.rand => Color[0.2345, 0.987623, 0.4123, 1.0]
132
- def Color.rand
133
- return Color[Kernel::rand,Kernel::rand,Kernel::rand,1.0]
133
+ def Color.rand( opacity )
134
+ return Color[Kernel::rand,Kernel::rand,Kernel::rand,opacity]
134
135
  end
135
136
 
136
137
  # return a black color vector
data/lib/interpolation.rb CHANGED
@@ -42,7 +42,8 @@ module Interpolation
42
42
  if dindex == index
43
43
  return value
44
44
  end
45
- result = pvalue + ((value + pvalue * (-1.0) ) * ((dindex - pindex) / (index - pindex )))
45
+ result = pvalue + ((value + (pvalue * (-1.0)) ) * ((dindex - pindex) / (index - pindex )))
46
+ Trace("pindex #{pindex} pvalue #{pvalue.inspect} index #{index} value #{value.inspect} dindex #{dindex} result #{result.inspect}")
46
47
  break
47
48
  end
48
49
  pvalue, pindex = value, index
data/lib/xrvg.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  # Please refer to README for XRVG introduction
4
4
 
5
5
  # XRVG version (used in rakefile)
6
- XRVG_VERSION = "0.0.4"
6
+ XRVG_VERSION = "0.0.5"
7
7
 
8
8
  # XRVG namespace
9
9
  module XRVG
@@ -38,7 +38,7 @@ require 'bezierbuilders'
38
38
  require 'beziermotifs'
39
39
  require 'beziertools'
40
40
  require 'interbezier'
41
- # require 'geovariety'
41
+ require 'geovariety'
42
42
  # require 'spiral'
43
43
  # require 'graph'
44
44
 
data/test/test_color.rb CHANGED
@@ -29,6 +29,10 @@ class ColorTest < Test::Unit::TestCase
29
29
  assert_equal( orange, Color.orange )
30
30
  end
31
31
 
32
+ def test_rand
33
+ assert_equal( 0.3, Color.rand( 0.3 ).a )
34
+ end
35
+
32
36
  def test_svg
33
37
  assert_equal( "rgb(0,0,0)", Color.black.svg )
34
38
  end
@@ -77,6 +81,7 @@ class ColorTest < Test::Unit::TestCase
77
81
 
78
82
  def test_format255
79
83
  assert_equal( [255,255,255,255], Color.white.format255 )
84
+ assert_equal( [25,25,25,25], Color[0.1,0.1,0.1,0.1].format255 )
80
85
  end
81
86
 
82
87
  end
@@ -88,6 +93,8 @@ class PaletteTest < Test::Unit::TestCase
88
93
  palette = Palette.new( :colorlist, [ 0.0, Color.black, 1.0, Color.white ] )
89
94
  assert_equal( Color[0.5, 0.5, 0.5, 1.0], palette.color( 0.5 ) )
90
95
  assert_equal( Color[0.5, 0.5, 0.5, 1.0], palette.sample( 0.5 ) )
96
+ palette = Palette[ :colorlist, [ 0.0, Color.blue, 0.3, Color.orange, 0.5, Color.yellow, 0.7, Color.green, 1.0, Color.blue] ]
97
+ assert_equal( Color[1.0, 0.75, 0.0, 1.0], palette.sample( 0.4 ) )
91
98
  end
92
99
 
93
100
  def test_reverse
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: xrvg
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.0.4
7
- date: 2008-03-16 00:00:00 +01:00
6
+ version: 0.0.5
7
+ date: 2008-03-22 00:00:00 +01:00
8
8
  summary: Ruby vector graphics library
9
9
  require_paths:
10
10
  - lib