Eiffel Media API
Overview Cluster Class Classes Index      Previous Next      Top Features

em.goof.force

Class EM_GOOF_GRAVITY


Direct ancestors

EM_GOOF_BINARY_FORCE

Creation

Features

Invariants

indexing

description

An EM_GOOF_BINARY_FORCE that is mass dependent to represent normal (physically adequate) gravity.

date

$Date: 2005/10/23 09:39:25 $

revision

$Revision: 1.4 $

class

EM_GOOF_GRAVITY

inherit

EM_GOOF_BINARY_FORCE

create

make (a_strength: DOUBLE)

-- Make the gravity

feature {EM_GOOF_FORCE, EM_GOOF_PHYSICS} -- Initialization

make (a_strength: DOUBLE)

-- Make the gravity

feature {EM_GOOF_FORCE, EM_GOOF_PHYSICS} -- Processing

process (objects: DS_LINKED_LIST[EM_GOOF_OBJECT])

-- Apply force to all physicables
-- Every force is applied to every possible pair of physicable objects

-- (From EM_GOOF_FORCE)

require
is_objects: objects /= void
process_objects (object1,object2: EM_GOOF_PHYSICABLE)

-- Apply force between objec1 and object2

-- (From EM_GOOF_BINARY_FORCE)

require
object_1_not_void: object1 /= void
object_2_not_void: object2 /= void

feature {EM_GOOF_FORCE, EM_GOOF_PHYSICS} -- Properties

set_strength (a_strength: DOUBLE)

-- Set strength

ensure
strength_set: strength = a_strength
strength: DOUBLE

-- Strength of force

invariant


-- From ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)

end