pbox2d 0.8.0-java → 0.9.0-java
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/.mvn/extensions.xml +1 -1
- data/.travis.yml +5 -14
- data/CHANGELOG.md +5 -1
- data/README.md +2 -2
- data/examples/Rakefile +30 -0
- data/examples/blob/blobby.rb +45 -0
- data/examples/blob/bubbles.rb +52 -0
- data/examples/blob/lib/blob.rb +93 -0
- data/examples/blob/lib/boundary.rb +37 -0
- data/examples/blob/lib/bubble.rb +80 -0
- data/examples/blob/lib/bubble_factory.rb +12 -0
- data/examples/lib/shape_system.rb +1 -0
- data/examples/quick_test.rb +1 -1
- data/examples/test_contact/test_contact.rb +1 -2
- data/lib/box2d.jar +0 -0
- data/lib/pbox2d/version.rb +1 -1
- data/lib/pbox2d.rb +1 -0
- data/pbox2d.gemspec +1 -1
- data/pom.rb +11 -9
- data/pom.xml +8 -8
- metadata +11 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 203a9059e498b952cfac0196ec3c84534a10c7be
|
4
|
+
data.tar.gz: 357f9dbb6f251aa248c52608e5cbafdc588ba759
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 737c2fe8c3d8cfb5e40d9f9783c58845abe17120ff2b99f03998a34d27ab2082fe5d96cee87a4b18373a04b04e0d4e8b0258f18acff1c2822eb67b0ce18f3160
|
7
|
+
data.tar.gz: a4d1110c05595f4728605d0ec00fd6d2fd2610fc205aa85c1c7e9f154872290a54edcfec876cbf72e3e09611f759859ae628cfce8ffe35526025fd70c60d9682
|
data/.mvn/extensions.xml
CHANGED
data/.travis.yml
CHANGED
@@ -1,23 +1,14 @@
|
|
1
|
-
sudo: false
|
2
|
-
|
3
1
|
language: ruby
|
4
|
-
|
5
|
-
bundler_args: --without production
|
6
|
-
|
2
|
+
sudo: false
|
7
3
|
addons:
|
8
4
|
apt:
|
9
5
|
packages:
|
10
|
-
-
|
6
|
+
-oracle-java8-installer
|
11
7
|
|
12
8
|
rvm:
|
13
|
-
- jruby-
|
14
|
-
|
9
|
+
- jruby-9.0.5.0
|
15
10
|
jdk:
|
16
11
|
- oraclejdk8
|
17
|
-
|
18
|
-
|
19
|
-
- JRUBY_OPTS="$JRUBY_OPTS" JAVA_OPTS="-Djruby.version=$JRUBY_VERSION"
|
20
|
-
|
21
|
-
before_script:
|
22
|
-
- export JRUBY_OPTS="-Xcext.enabled=false -Xcompile.invokedynamic=false"
|
12
|
+
os:
|
13
|
+
- linux
|
23
14
|
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -60,6 +60,6 @@ The other thing you should know is there is a mismatch between the physics world
|
|
60
60
|
[Nature of Code book]:http://natureofcode.com/
|
61
61
|
[Sandi Metz]:http://www.poodr.com/
|
62
62
|
[this book]:http://www.crcpress.com/product/isbn/9781466565760
|
63
|
-
[zip]:https://github.com/ruby-processing/jbox2d/archive/0.
|
64
|
-
[tar]:https://github.com/ruby-processing/jbox2d/archive/0.
|
63
|
+
[zip]:https://github.com/ruby-processing/jbox2d/archive/0.9.0.zip
|
64
|
+
[tar]:https://github.com/ruby-processing/jbox2d/archive/0.9.0.tar.gz
|
65
65
|
[Wiki]:https://github.com/ruby-processing/jbox2d/wiki
|
data/examples/Rakefile
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# Simple demo Rakefile to autorun samples in current directory
|
2
|
+
# adjust path to rp5 executable, and or opts as required
|
3
|
+
|
4
|
+
SAMPLES_DIR = './'
|
5
|
+
|
6
|
+
desc 'run demo'
|
7
|
+
task default: [:demo]
|
8
|
+
|
9
|
+
desc 'demo'
|
10
|
+
task :demo do
|
11
|
+
samples_list.shuffle.each { |sample| run_sample sample }
|
12
|
+
end
|
13
|
+
|
14
|
+
def samples_list
|
15
|
+
files = []
|
16
|
+
Dir.chdir(SAMPLES_DIR)
|
17
|
+
Dir.glob('*.rb').each do |file|
|
18
|
+
files << File.join(SAMPLES_DIR, file)
|
19
|
+
end
|
20
|
+
files
|
21
|
+
end
|
22
|
+
|
23
|
+
def run_sample(sample_name)
|
24
|
+
puts "Running #{sample_name}...quit to run next sample"
|
25
|
+
open("|k9 --run #{sample_name}", 'r') do |io|
|
26
|
+
while l = io.gets
|
27
|
+
puts(l.chop)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# The Nature of Code
|
2
|
+
# <http:#www.shiffman.net/teaching/nature>
|
3
|
+
# Spring 2012
|
4
|
+
# Box2DProcessing example
|
5
|
+
|
6
|
+
# A blob skeleton
|
7
|
+
# Could be used to create blobbly characters a la Nokia Friends
|
8
|
+
# http://postspectacular.com/work/nokia/friends/start
|
9
|
+
|
10
|
+
# This seems to be broken with the Box2D 2.1.2 version I'm using
|
11
|
+
|
12
|
+
require 'pbox2d'
|
13
|
+
require 'forwardable'
|
14
|
+
require_relative 'lib/boundary'
|
15
|
+
require_relative 'lib/blob'
|
16
|
+
|
17
|
+
attr_reader :boundaries, :blob, :box2d
|
18
|
+
|
19
|
+
Vect = Struct.new(:x, :y)
|
20
|
+
|
21
|
+
def settings
|
22
|
+
size(400, 300)
|
23
|
+
end
|
24
|
+
|
25
|
+
def setup
|
26
|
+
sketch_title 'Blobby'
|
27
|
+
# Initialize box2d physics and create the world
|
28
|
+
@box2d = WorldBuilder.build(app: self, gravity: [0, -20])
|
29
|
+
box2d.create_world
|
30
|
+
@boundaries = []
|
31
|
+
boundaries << Boundary.new(box2d, Vect.new(width / 2, height - 5), Vect.new(width, 10))
|
32
|
+
boundaries << Boundary.new(box2d, Vect.new(width / 2, 5), Vect.new(width, 10))
|
33
|
+
boundaries << Boundary.new(box2d, Vect.new(width - 5, height / 2), Vect.new(10, height))
|
34
|
+
boundaries << Boundary.new(box2d, Vect.new(5, height / 2), Vect.new(10, height))
|
35
|
+
# Make a new blob
|
36
|
+
@blob = Blob.new
|
37
|
+
end
|
38
|
+
|
39
|
+
def draw
|
40
|
+
background(255)
|
41
|
+
# We must always step through time!
|
42
|
+
boundaries.each(&:display)
|
43
|
+
# Show the blob!
|
44
|
+
blob.display
|
45
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# The Nature of Code
|
2
|
+
# <http://www.shiffman.net/teaching/nature>
|
3
|
+
# Spring 2012
|
4
|
+
# Box2DProcessing example
|
5
|
+
|
6
|
+
# A blob skeleton
|
7
|
+
# Could be used to create blobbly characters a la Nokia Friends
|
8
|
+
# http://postspectacular.com/work/nokia/friends/start
|
9
|
+
|
10
|
+
require 'pbox2d'
|
11
|
+
require 'forwardable'
|
12
|
+
require_relative 'lib/boundary'
|
13
|
+
require_relative 'lib/bubble_factory'
|
14
|
+
require_relative 'lib/bubble'
|
15
|
+
|
16
|
+
|
17
|
+
attr_reader :boundaries, :box2d, :bubble, :bubble1, :bubble2, :bubble_factory
|
18
|
+
|
19
|
+
def settings
|
20
|
+
size(400, 400)
|
21
|
+
end
|
22
|
+
|
23
|
+
def setup
|
24
|
+
sketch_title 'Bubbles'
|
25
|
+
# Initialize box2d physics and create the world
|
26
|
+
@box2d = WorldBuilder.build(app: self, gravity: [0, 30])
|
27
|
+
box2d.create_world
|
28
|
+
@boundaries = []
|
29
|
+
boundaries << Boundary.new(box2d, Vect.new(160, 135), Vect.new(20, height * 0.21))
|
30
|
+
boundaries << Boundary.new(box2d, Vect.new(240, 135), Vect.new(20, height * 0.21))
|
31
|
+
boundaries << Boundary.new(box2d, Vect.new(130, 190), Vect.new(80, 20), 0.5)
|
32
|
+
boundaries << Boundary.new(box2d, Vect.new(270, 190), Vect.new(80, 20), -0.5)
|
33
|
+
boundaries << Boundary.new(box2d, Vect.new(100, height * 0.9), Vect.new(20, height * 0.8))
|
34
|
+
boundaries << Boundary.new(box2d, Vect.new(300, height * 0.9), Vect.new(20, height * 0.8))
|
35
|
+
@bubble_factory = BubbleFactory.new(xrange: (145..255))
|
36
|
+
@bubble = bubble_factory.create_bubble(height: height - 20, hue: 255)
|
37
|
+
@bubble1 = bubble_factory.create_bubble(height: height + 20, hue: 255)
|
38
|
+
@bubble2 = bubble_factory.create_bubble(height: height + 60, hue: 255)
|
39
|
+
end
|
40
|
+
|
41
|
+
def draw
|
42
|
+
background(0, 0, 255)
|
43
|
+
|
44
|
+
boundaries.each(&:display)
|
45
|
+
# Show the blobs!
|
46
|
+
@bubble = bubble_factory.create_bubble(height: height - 20, hue: 255) if ((frame_count % 240) == 0)
|
47
|
+
bubble.display
|
48
|
+
@bubble1 = bubble_factory.create_bubble(height: height + 20, hue: 255) if ((frame_count % 280) == 0)
|
49
|
+
bubble1.display
|
50
|
+
@bubble2 = bubble_factory.create_bubble(height: height + 60, hue: 255) if ((frame_count % 320) == 0)
|
51
|
+
bubble2.display
|
52
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# The Nature of Code
|
2
|
+
# <http://www.shiffman.net/teaching/nature>
|
3
|
+
# Spring 2012
|
4
|
+
# Box2DProcessing example
|
5
|
+
|
6
|
+
# A blob skeleton
|
7
|
+
# Could be used to create blobbly characters a la Nokia Friends
|
8
|
+
# http://postspectacular.com/work/nokia/friends/start
|
9
|
+
|
10
|
+
class Blob
|
11
|
+
include Processing::Proxy
|
12
|
+
# A list to keep track of all the points in our blob
|
13
|
+
attr_reader :skeleton, :body_radius, :radius, :total_points
|
14
|
+
# We should modify this constructor to receive arguments
|
15
|
+
# So that we can make many different types of blobs
|
16
|
+
|
17
|
+
def initialize
|
18
|
+
# Create the empty
|
19
|
+
@skeleton = []
|
20
|
+
# Let's make a volume of joints!
|
21
|
+
cvjd = ConstantVolumeJointDef.new
|
22
|
+
# Where and how big is the blob
|
23
|
+
center = Vec2.new(width / 2, height / 2)
|
24
|
+
@radius = 100
|
25
|
+
@total_points = 20
|
26
|
+
@body_radius = 12
|
27
|
+
# Initialize all the points
|
28
|
+
total_points.times do |i|
|
29
|
+
# Look polar to cartesian coordinate transformation!
|
30
|
+
theta = map1d(i, 0..total_points, 0..TWO_PI)
|
31
|
+
x = center.x + radius * sin(theta)
|
32
|
+
y = center.y + radius * cos(theta)
|
33
|
+
# Make each individual body
|
34
|
+
bd = BodyDef.new
|
35
|
+
bd.type = BodyType::DYNAMIC
|
36
|
+
bd.fixedRotation = true # no rotation!
|
37
|
+
bd.position.set(box2d.processing_to_world(Vec2.new(x, y)))
|
38
|
+
body = box2d.createBody(bd)
|
39
|
+
# The body is a circle
|
40
|
+
cs = CircleShape.new
|
41
|
+
cs.m_radius = box2d.scale_to_world(body_radius)
|
42
|
+
# Define a fixture
|
43
|
+
fd = FixtureDef.new
|
44
|
+
fd.shape = cs
|
45
|
+
# For filtering out collisions
|
46
|
+
#fd.filter.groupIndex = -2
|
47
|
+
# Parameters that affect physics
|
48
|
+
fd.density = 1
|
49
|
+
# Finalize the body
|
50
|
+
body.create_fixture(fd)
|
51
|
+
# Add it to the volume
|
52
|
+
cvjd.add_body(body)
|
53
|
+
# Store our own copy for later rendering
|
54
|
+
skeleton << body
|
55
|
+
end
|
56
|
+
# These parameters control how stiff vs. jiggly the blob is
|
57
|
+
cvjd.frequencyHz = 10.0
|
58
|
+
cvjd.dampingRatio = 1.0
|
59
|
+
# Put the joint thing in our world!
|
60
|
+
box2d.world.create_joint(cvjd)
|
61
|
+
end
|
62
|
+
|
63
|
+
# Time to draw the blob!
|
64
|
+
# Can you make it a cute character, a la
|
65
|
+
# http://postspectacular.com/work/nokia/friends/start
|
66
|
+
def display
|
67
|
+
# Draw the outline
|
68
|
+
begin_shape
|
69
|
+
no_fill
|
70
|
+
stroke(0)
|
71
|
+
stroke_weight(1)
|
72
|
+
skeleton.each do |b|
|
73
|
+
pos = box2d.body_coord(b)
|
74
|
+
vertex(pos.x, pos.y)
|
75
|
+
end
|
76
|
+
end_shape(CLOSE)
|
77
|
+
# Draw the individual circles
|
78
|
+
skeleton.each do |b|
|
79
|
+
# We look at each body and get its screen position
|
80
|
+
pos = box2d.body_coord(b)
|
81
|
+
# Get its angle of rotation
|
82
|
+
a = b.get_angle
|
83
|
+
push_matrix
|
84
|
+
translate(pos.x, pos.y)
|
85
|
+
rotate(a)
|
86
|
+
fill(175)
|
87
|
+
stroke(0)
|
88
|
+
stroke_weight(1)
|
89
|
+
ellipse(0, 0, body_radius * 2, body_radius * 2)
|
90
|
+
pop_matrix
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
class Boundary
|
2
|
+
include Processing::Proxy
|
3
|
+
attr_reader :box2d, :b, :pos, :size, :a
|
4
|
+
|
5
|
+
def initialize(b2d, pos, sz, a = 0)
|
6
|
+
@box2d, @pos, @size, @a = b2d, pos, sz, a
|
7
|
+
# Define the polygon
|
8
|
+
sd = PolygonShape.new
|
9
|
+
# Figure out the box2d coordinates
|
10
|
+
box2d_w = box2d.scale_to_world(size.x / 2)
|
11
|
+
box2d_h = box2d.scale_to_world(size.y / 2)
|
12
|
+
# We're just a box
|
13
|
+
sd.set_as_box(box2d_w, box2d_h)
|
14
|
+
# Create the body
|
15
|
+
bd = BodyDef.new
|
16
|
+
bd.type = BodyType::STATIC
|
17
|
+
bd.angle = a
|
18
|
+
bd.position.set(box2d.processing_to_world(pos.x, pos.y))
|
19
|
+
@b = box2d.create_body(bd)
|
20
|
+
# Attached the shape to the body using a Fixture
|
21
|
+
b.create_fixture(sd, 1)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Draw the boundary, it doesn't move so we don't have to ask the Body for location
|
25
|
+
def display
|
26
|
+
fill(0)
|
27
|
+
stroke(0)
|
28
|
+
stroke_weight(1)
|
29
|
+
rect_mode(CENTER)
|
30
|
+
a = b.get_angle
|
31
|
+
push_matrix
|
32
|
+
translate(pos.x, pos.y)
|
33
|
+
rotate(-a)
|
34
|
+
rect(0, 0, size.x,size.y)
|
35
|
+
pop_matrix
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# The Nature of Code
|
2
|
+
# <http://www.shiffman.net/teaching/nature>
|
3
|
+
# Spring 2012
|
4
|
+
# Box2DProcessing example
|
5
|
+
|
6
|
+
# A blob skeleton
|
7
|
+
# Could be used to create blobbly characters a la Nokia Friends
|
8
|
+
# http://postspectacular.com/work/nokia/friends/start
|
9
|
+
|
10
|
+
class Bubble
|
11
|
+
include Processing::Proxy
|
12
|
+
# A list to keep track of all the points in our blob
|
13
|
+
attr_reader :outline, :radius, :total_points, :hue
|
14
|
+
# We should modify this constructor to receive arguments
|
15
|
+
# So that we can make many different types of blobs
|
16
|
+
|
17
|
+
def initialize(pos:, hue:)
|
18
|
+
# Create the empty outline
|
19
|
+
@outline = []
|
20
|
+
@hue = hue
|
21
|
+
# Let's make a volume of joints!
|
22
|
+
cvjd = ConstantVolumeJointDef.new
|
23
|
+
# Where and how big is the blob
|
24
|
+
center = Vec2.new(pos.x, pos.y)
|
25
|
+
@total_points = 150
|
26
|
+
@radius = 25
|
27
|
+
# Initialize all the points
|
28
|
+
total_points.times do |i|
|
29
|
+
# Look polar to cartesian coordinate transformation!
|
30
|
+
theta = map1d(i, 0..total_points, 0..TWO_PI)
|
31
|
+
x = center.x + radius * sin(theta)
|
32
|
+
y = center.y + radius * cos(theta)
|
33
|
+
# Make each individual body
|
34
|
+
bd = BodyDef.new
|
35
|
+
bd.type = BodyType::DYNAMIC
|
36
|
+
bd.fixedRotation = true # no rotation!
|
37
|
+
bd.position.set(box2d.processing_to_world(Vec2.new(x, y)))
|
38
|
+
body = box2d.createBody(bd)
|
39
|
+
# The body is a circle
|
40
|
+
cs = CircleShape.new
|
41
|
+
cs.m_radius = box2d.scale_to_world(0)
|
42
|
+
# Define a fixture
|
43
|
+
fd = FixtureDef.new
|
44
|
+
fd.shape = cs
|
45
|
+
# For filtering out collisions
|
46
|
+
#fd.filter.groupIndex = -2
|
47
|
+
# Parameters that affect physics
|
48
|
+
fd.set_density(1.0)
|
49
|
+
fd.set_restitution(0.5)
|
50
|
+
fd.set_friction(0.5)
|
51
|
+
# Finalize the body
|
52
|
+
body.create_fixture(fd)
|
53
|
+
# Add it to the volume
|
54
|
+
cvjd.add_body(body)
|
55
|
+
# Store our own copy for later rendering
|
56
|
+
outline << body
|
57
|
+
end
|
58
|
+
# These parameters control how stiff vs. jiggly the blob is
|
59
|
+
cvjd.frequencyHz = 0.0
|
60
|
+
cvjd.dampingRatio = 0.0
|
61
|
+
# Put the joint thing in our world!
|
62
|
+
box2d.world.create_joint(cvjd)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Time to draw the blob!
|
66
|
+
# Can you make it a cute character, a la
|
67
|
+
# http://postspectacular.com/work/nokia/friends/start
|
68
|
+
def display
|
69
|
+
# Draw the outline
|
70
|
+
begin_shape
|
71
|
+
fill(hue)
|
72
|
+
stroke(0, 0, 255)
|
73
|
+
stroke_weight(0)
|
74
|
+
outline.each do |b|
|
75
|
+
pos = box2d.body_coord(b)
|
76
|
+
vertex(pos.x, pos.y)
|
77
|
+
end
|
78
|
+
end_shape(CLOSE)
|
79
|
+
end
|
80
|
+
end
|
data/examples/quick_test.rb
CHANGED
@@ -18,7 +18,7 @@ def setup
|
|
18
18
|
stroke_int(0) # set stroke this way to avoid overload warnings
|
19
19
|
srand(5)
|
20
20
|
# Initialize box2d physics and create the world
|
21
|
-
@box2d = WorldBuilder.build(
|
21
|
+
@box2d = WorldBuilder.build(app: self, scale: 10, gravity: [0, -20.0])
|
22
22
|
puts box2d.version # print out version of pbox2d gem in use
|
23
23
|
# To later set a custom gravity
|
24
24
|
# box2d.gravity(0, -20)
|
data/lib/box2d.jar
CHANGED
Binary file
|
data/lib/pbox2d/version.rb
CHANGED
data/lib/pbox2d.rb
CHANGED
data/pbox2d.gemspec
CHANGED
@@ -21,7 +21,7 @@ EOF
|
|
21
21
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
22
22
|
spec.files << 'lib/box2d.jar'
|
23
23
|
spec.require_paths = ['lib']
|
24
|
-
spec.add_dependency 'jruby_art', '~> 1.
|
24
|
+
spec.add_dependency 'jruby_art', '~> 1.2'
|
25
25
|
spec.add_development_dependency "rake", "~> 11.1"
|
26
26
|
spec.add_development_dependency "minitest", "~> 5.8"
|
27
27
|
spec.platform='java'
|
data/pom.rb
CHANGED
@@ -2,7 +2,7 @@ require 'fileutils'
|
|
2
2
|
project 'pbox2d', 'https://github.com/ruby-processing/jbox2d' do
|
3
3
|
|
4
4
|
model_version '4.0.0'
|
5
|
-
id 'ruby-processing:pbox2d', '0.
|
5
|
+
id 'ruby-processing:pbox2d', '0.9'
|
6
6
|
packaging 'jar'
|
7
7
|
|
8
8
|
description 'jbox2d for JRubyArt'
|
@@ -11,7 +11,7 @@ project 'pbox2d', 'https://github.com/ruby-processing/jbox2d' do
|
|
11
11
|
|
12
12
|
developer 'monkstone' do
|
13
13
|
name 'Martin Prout'
|
14
|
-
email '
|
14
|
+
email 'mamba2928@yahoo.co.uk'
|
15
15
|
roles 'developer'
|
16
16
|
end
|
17
17
|
|
@@ -29,23 +29,25 @@ project 'pbox2d', 'https://github.com/ruby-processing/jbox2d' do
|
|
29
29
|
'project.build.sourceEncoding' => 'UTF-8',
|
30
30
|
'maven.compiler.target' => '1.8',
|
31
31
|
'polyglot.dump.pom' => 'pom.xml',
|
32
|
-
'processing.api' =>
|
32
|
+
'processing.api' => 'http://processing.github.io/processing-javadocs/core/',
|
33
33
|
'jruby.api' => "http://jruby.org/apidocs/"
|
34
34
|
)
|
35
35
|
|
36
36
|
pom 'org.jruby:jruby:9.1.2.0'
|
37
|
-
jar 'org.processing:core:3.1'
|
37
|
+
jar 'org.processing:core:3.1.1'
|
38
38
|
plugin_management do
|
39
39
|
plugin :resources, '2.6'
|
40
40
|
plugin :dependency, '2.8'
|
41
|
-
plugin(
|
42
|
-
|
43
|
-
|
44
|
-
|
41
|
+
plugin(
|
42
|
+
:compiler, '3.5.1',
|
43
|
+
source: '${maven.compiler.source}',
|
44
|
+
target: '${maven.compiler.target}'
|
45
|
+
)
|
46
|
+
plugin( :javadoc, '2.10.4',
|
45
47
|
'detectOfflineLinks' => 'false',
|
46
48
|
'links' => ['${processing.api}', '${jruby.api}']
|
47
49
|
)
|
48
|
-
plugin( :jar, '2
|
50
|
+
plugin( :jar, '3.0.2',
|
49
51
|
'archive' => {
|
50
52
|
'manifestFile' => 'MANIFEST.MF'
|
51
53
|
}
|
data/pom.xml
CHANGED
@@ -11,7 +11,7 @@ DO NOT MODIFIY - GENERATED CODE
|
|
11
11
|
<modelVersion>4.0.0</modelVersion>
|
12
12
|
<groupId>ruby-processing</groupId>
|
13
13
|
<artifactId>pbox2d</artifactId>
|
14
|
-
<version>0.
|
14
|
+
<version>0.9</version>
|
15
15
|
<name>pbox2d</name>
|
16
16
|
<description>jbox2d for JRubyArt</description>
|
17
17
|
<url>https://github.com/ruby-processing/jbox2d</url>
|
@@ -29,7 +29,7 @@ DO NOT MODIFIY - GENERATED CODE
|
|
29
29
|
<developer>
|
30
30
|
<id>monkstone</id>
|
31
31
|
<name>Martin Prout</name>
|
32
|
-
<email>
|
32
|
+
<email>mamba2928@yahoo.co.uk</email>
|
33
33
|
<roles>
|
34
34
|
<role>developer</role>
|
35
35
|
</roles>
|
@@ -62,7 +62,7 @@ DO NOT MODIFIY - GENERATED CODE
|
|
62
62
|
<dependency>
|
63
63
|
<groupId>org.processing</groupId>
|
64
64
|
<artifactId>core</artifactId>
|
65
|
-
<version>3.1</version>
|
65
|
+
<version>3.1.1</version>
|
66
66
|
</dependency>
|
67
67
|
</dependencies>
|
68
68
|
<build>
|
@@ -81,15 +81,15 @@ DO NOT MODIFIY - GENERATED CODE
|
|
81
81
|
</plugin>
|
82
82
|
<plugin>
|
83
83
|
<artifactId>maven-compiler-plugin</artifactId>
|
84
|
-
<version>3.
|
84
|
+
<version>3.5.1</version>
|
85
85
|
<configuration>
|
86
|
-
<source
|
87
|
-
<target
|
86
|
+
<source>${maven.compiler.source}</source>
|
87
|
+
<target>${maven.compiler.target}</target>
|
88
88
|
</configuration>
|
89
89
|
</plugin>
|
90
90
|
<plugin>
|
91
91
|
<artifactId>maven-javadoc-plugin</artifactId>
|
92
|
-
<version>2.10.
|
92
|
+
<version>2.10.4</version>
|
93
93
|
<configuration>
|
94
94
|
<detectOfflineLinks>false</detectOfflineLinks>
|
95
95
|
<links>
|
@@ -100,7 +100,7 @@ DO NOT MODIFIY - GENERATED CODE
|
|
100
100
|
</plugin>
|
101
101
|
<plugin>
|
102
102
|
<artifactId>maven-jar-plugin</artifactId>
|
103
|
-
<version>2
|
103
|
+
<version>3.0.2</version>
|
104
104
|
<configuration>
|
105
105
|
<archive>
|
106
106
|
<manifestFile>MANIFEST.MF</manifestFile>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pbox2d
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Martin Prout
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jruby_art
|
@@ -16,20 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
20
|
-
- - ">="
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: 1.1.1
|
19
|
+
version: '1.2'
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
24
|
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: '1.
|
30
|
-
- - ">="
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: 1.1.1
|
26
|
+
version: '1.2'
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: rake
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -81,6 +75,13 @@ files:
|
|
81
75
|
- README.md
|
82
76
|
- Rakefile
|
83
77
|
- examples/README.md
|
78
|
+
- examples/Rakefile
|
79
|
+
- examples/blob/blobby.rb
|
80
|
+
- examples/blob/bubbles.rb
|
81
|
+
- examples/blob/lib/blob.rb
|
82
|
+
- examples/blob/lib/boundary.rb
|
83
|
+
- examples/blob/lib/bubble.rb
|
84
|
+
- examples/blob/lib/bubble_factory.rb
|
84
85
|
- examples/bumpy_surface_noise.rb
|
85
86
|
- examples/collision_listening.rb
|
86
87
|
- examples/data/java_args.txt
|