processing 0.5.27 → 0.5.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ChangeLog.md +7 -0
- data/VERSION +1 -1
- data/lib/processing/context.rb +1 -1
- data/lib/processing/graphics.rb +11 -0
- data/lib/processing/graphics_context.rb +9 -0
- data/lib/processing/image.rb +3 -0
- data/processing.gemspec +3 -3
- data/test/helper.rb +23 -4
- data/test/test_graphics.rb +15 -0
- data/test/test_graphics_context.rb +25 -12
- data/test/test_image.rb +1 -1
- metadata +8 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 33803d0586a118766e9bde53ba8b67f3e6d71aa8f86440e0d2e6c9c9ce5a71d4
|
4
|
+
data.tar.gz: 5eabe17a44f13fe7a4f89eb06776305f317ad28c1768364a8506483c4342c4ed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 861948e620a781113a596c62ff01701bdc0e0f8952d2b6292724cee3946da2905869040df7854966174dc62ea1e1dac7fc49f555a8eae8cf5be6b95beff3eba6
|
7
|
+
data.tar.gz: d4600791e2dc54ea9ceac8a444e34e654b334e73654fe01b3ad170799b0f7fbd16c00667517e47edc832503bdceb675274def8298d2e8048411292b9e279a895
|
data/ChangeLog.md
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.5.
|
1
|
+
0.5.28
|
data/lib/processing/context.rb
CHANGED
data/lib/processing/graphics.rb
CHANGED
@@ -38,6 +38,17 @@ module Processing
|
|
38
38
|
endDraw__
|
39
39
|
end
|
40
40
|
|
41
|
+
# Saves image to file.
|
42
|
+
#
|
43
|
+
# @param filename [String] file name to save image
|
44
|
+
#
|
45
|
+
# @return [nil] nil
|
46
|
+
#
|
47
|
+
def save(filename)
|
48
|
+
@image__.save filename
|
49
|
+
nil
|
50
|
+
end
|
51
|
+
|
41
52
|
end# Graphics
|
42
53
|
|
43
54
|
|
@@ -802,6 +802,12 @@ module Processing
|
|
802
802
|
nil
|
803
803
|
end
|
804
804
|
|
805
|
+
def clear()
|
806
|
+
assertDrawing__
|
807
|
+
@painter__.background 0, 0
|
808
|
+
nil
|
809
|
+
end
|
810
|
+
|
805
811
|
# Draws a point.
|
806
812
|
#
|
807
813
|
# @param x [Numeric] horizontal position
|
@@ -1140,8 +1146,11 @@ module Processing
|
|
1140
1146
|
#
|
1141
1147
|
# @param filename [String] file name to save image
|
1142
1148
|
#
|
1149
|
+
# @return [nil] nil
|
1150
|
+
#
|
1143
1151
|
def save(filename)
|
1144
1152
|
@window__.canvas_image.save filename
|
1153
|
+
nil
|
1145
1154
|
end
|
1146
1155
|
|
1147
1156
|
# Applies translation matrix to current transformation matrix.
|
data/lib/processing/image.rb
CHANGED
data/processing.gemspec
CHANGED
@@ -26,9 +26,9 @@ Gem::Specification.new do |s|
|
|
26
26
|
s.required_ruby_version = '>= 3.0.0'
|
27
27
|
|
28
28
|
s.add_runtime_dependency 'xot', '~> 0.1.39'
|
29
|
-
s.add_runtime_dependency 'rucy', '~> 0.1.
|
30
|
-
s.add_runtime_dependency 'rays', '~> 0.1.
|
31
|
-
s.add_runtime_dependency 'reflexion', '~> 0.1.
|
29
|
+
s.add_runtime_dependency 'rucy', '~> 0.1.40'
|
30
|
+
s.add_runtime_dependency 'rays', '~> 0.1.44'
|
31
|
+
s.add_runtime_dependency 'reflexion', '~> 0.1.52'
|
32
32
|
|
33
33
|
s.add_development_dependency 'rake'
|
34
34
|
s.add_development_dependency 'test-unit'
|
data/test/helper.rb
CHANGED
@@ -5,15 +5,28 @@
|
|
5
5
|
require 'xot/test'
|
6
6
|
require 'processing/all'
|
7
7
|
|
8
|
+
require 'tempfile'
|
8
9
|
require 'test/unit'
|
9
10
|
|
10
11
|
include Xot::Test
|
11
12
|
|
12
13
|
|
13
|
-
def
|
14
|
-
|
15
|
-
|
16
|
-
|
14
|
+
def temppath(ext: nil, &block)
|
15
|
+
f = Tempfile.new
|
16
|
+
path = f.path
|
17
|
+
path += ".#{ext}" if ext
|
18
|
+
f.close!
|
19
|
+
block.call path
|
20
|
+
File.delete path
|
21
|
+
end
|
22
|
+
|
23
|
+
def get_pixels(image)
|
24
|
+
%i[@image @image__]
|
25
|
+
.map {image.instance_variable_get _1}
|
26
|
+
.compact
|
27
|
+
.first
|
28
|
+
.bitmap
|
29
|
+
.to_a
|
17
30
|
end
|
18
31
|
|
19
32
|
def graphics(width = 10, height = 10, &block)
|
@@ -21,3 +34,9 @@ def graphics(width = 10, height = 10, &block)
|
|
21
34
|
g.beginDraw {block.call g, g.getInternal__} if block
|
22
35
|
end
|
23
36
|
end
|
37
|
+
|
38
|
+
def assert_equal_vector(v1, v2, delta = 0.000001)
|
39
|
+
assert_in_delta v1.x, v2.x, delta
|
40
|
+
assert_in_delta v1.y, v2.y, delta
|
41
|
+
assert_in_delta v1.z, v2.z, delta
|
42
|
+
end
|
data/test/test_graphics.rb
CHANGED
@@ -15,6 +15,21 @@ class TestGraphics < Test::Unit::TestCase
|
|
15
15
|
assert_raise {g.beginDraw}
|
16
16
|
end
|
17
17
|
|
18
|
+
def test_save()
|
19
|
+
g = graphics 100, 100
|
20
|
+
g.beginDraw do
|
21
|
+
g.background 200
|
22
|
+
g.fill 255
|
23
|
+
g.stroke 0
|
24
|
+
g.ellipseMode :corner
|
25
|
+
g.ellipse 0, 0, g.width, g.height
|
26
|
+
end
|
27
|
+
temppath(ext: 'png') do |path|
|
28
|
+
assert_nothing_raised {g.save path}
|
29
|
+
assert_equal get_pixels(g), get_pixels(g.loadImage path)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
18
33
|
def test_inspect()
|
19
34
|
assert_match %r|#<Processing::Graphics:0x\w{16}>|, graphics.inspect
|
20
35
|
end
|
@@ -10,6 +10,23 @@ class TestGraphicsContext < Test::Unit::TestCase
|
|
10
10
|
G.new w, h
|
11
11
|
end
|
12
12
|
|
13
|
+
def test_color()
|
14
|
+
g = graphics
|
15
|
+
|
16
|
+
g.colorMode G::RGB, 255
|
17
|
+
c = g.color 10, 20, 30, 40
|
18
|
+
assert_equal 0x280a141e, c
|
19
|
+
assert_equal [10, 20, 30, 40], [g.red(c), g.green(c), g.blue(c), g.alpha(c)]
|
20
|
+
|
21
|
+
g.colorMode G::RGB, 1.0
|
22
|
+
c = g.color 0.1, 0.2, 0.3, 0.4
|
23
|
+
assert_equal 0x6619334c, c
|
24
|
+
assert_in_delta 0.1, g.red(c), 1 / 256.0
|
25
|
+
assert_in_delta 0.2, g.green(c), 1 / 256.0
|
26
|
+
assert_in_delta 0.3, g.blue(c), 1 / 256.0
|
27
|
+
assert_in_delta 0.4, g.alpha(c), 1 / 256.0
|
28
|
+
end
|
29
|
+
|
13
30
|
def test_colorMode()
|
14
31
|
g = graphics
|
15
32
|
assert_equal G::RGB, g.colorMode
|
@@ -40,21 +57,17 @@ class TestGraphicsContext < Test::Unit::TestCase
|
|
40
57
|
assert_raise {g.blendMode LEFT}
|
41
58
|
end
|
42
59
|
|
43
|
-
def
|
60
|
+
def test_clear()
|
61
|
+
colors = -> g {get_pixels(g).map(&:to_a).flatten.uniq}
|
62
|
+
|
44
63
|
g = graphics
|
64
|
+
assert_equal [0], colors[g]
|
45
65
|
|
46
|
-
g.
|
47
|
-
|
48
|
-
assert_equal 0x280a141e, c
|
49
|
-
assert_equal [10, 20, 30, 40], [g.red(c), g.green(c), g.blue(c), g.alpha(c)]
|
66
|
+
g.beginDraw {g.ellipse 0, 0, g.width, g.height}
|
67
|
+
assert_not_equal [0], colors[g]
|
50
68
|
|
51
|
-
g.
|
52
|
-
|
53
|
-
assert_equal 0x6619334c, c
|
54
|
-
assert_in_delta 0.1, g.red(c), 1 / 256.0
|
55
|
-
assert_in_delta 0.2, g.green(c), 1 / 256.0
|
56
|
-
assert_in_delta 0.3, g.blue(c), 1 / 256.0
|
57
|
-
assert_in_delta 0.4, g.alpha(c), 1 / 256.0
|
69
|
+
g.beginDraw {g.clear}
|
70
|
+
assert_equal [0], colors[g]
|
58
71
|
end
|
59
72
|
|
60
73
|
def test_lerp()
|
data/test/test_image.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: processing
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.28
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- xordog
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-10-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: xot
|
@@ -30,42 +30,42 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.1.
|
33
|
+
version: 0.1.40
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.1.
|
40
|
+
version: 0.1.40
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rays
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.1.
|
47
|
+
version: 0.1.44
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.1.
|
54
|
+
version: 0.1.44
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: reflexion
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.1.
|
61
|
+
version: 0.1.52
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.1.
|
68
|
+
version: 0.1.52
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|