Sha256: 2508b3627a41be7eaefc0af263d575ce879bd32c0ee8df2e06b5563f9351c06e

Contents?: true

Size: 578 Bytes

Versions: 9

Compression:

Stored size: 578 Bytes

Contents

require 'forwardable'

# The Nature of Code
# Daniel Shiffman
# http://natureofcode.com

# class Spore extends the class "VerletParticle2D"
class Particle < Physics::VerletParticle2D
  extend Forwardable
  def_delegators(:@app, :fill, :stroke, :stroke_weight, :ellipse, :physics)
  attr_reader :r

  def initialize(loc)
    super(loc)
    @app = $app
    @r = 8
    physics.add_particle(self)
    physics.add_behavior(Physics::AttractionBehavior2D.new(self, r * 4, -1))
  end

  def display
    fill 127
    stroke 0
    stroke_weight 2
    ellipse x, y, r * 2, r * 2
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
toxiclibs-1.0.0 examples/attract_repel/particle.rb
toxiclibs-0.9.3 examples/attract_repel/particle.rb
toxiclibs-0.9.2 examples/attract_repel/particle.rb
toxiclibs-0.9.1 examples/attract_repel/particle.rb
toxiclibs-0.9.0 examples/attract_repel/particle.rb
toxiclibs-0.8.0 examples/attract_repel/particle.rb
toxiclibs-0.6.0-java examples/attract_repel/particle.rb
toxiclibs-0.5.1-java examples/attract_repel/particle.rb
toxiclibs-0.5.0-java examples/attract_repel/particle.rb