uk.ac.ed.simulator_pdb
Class SimulationJava3DController

java.lang.Object
  extended byuk.ac.ed.simulator_pdb.Java3DController
      extended byuk.ac.ed.simulator_pdb.SimulationJava3DController

public class SimulationJava3DController
extends Java3DController


Nested Class Summary
protected  class SimulationJava3DController.BondPositions
           
protected  class SimulationJava3DController.ParticlePositions
           
 
Field Summary
static double MAX_BOND_DIST
           
static double MAX_COLLISION_DIST
           
static double PROBABILITY_OF_BOND_UPDATE
           
 
Fields inherited from class uk.ac.ed.simulator_pdb.Java3DController
model, view
 
Constructor Summary
SimulationJava3DController(Model model, Java3DView view)
           
 
Method Summary
protected  void alignForBonding(javax.vecmath.Matrix4d bond1_to_world_transform, javax.vecmath.Matrix4d bond2_to_world_transform, double ratio)
           
protected  boolean alignForBonding(SimBond bond1, SimBond bond2)
           
protected  void checkForBondUpdates(SimBond bond)
           
protected  boolean collide(SimCluster cluster, javax.vecmath.Matrix4d new_transformation_matrix)
           
protected  boolean collide(SimCluster cluster1, javax.vecmath.Matrix4d new_cluster1_transformation, SimCluster cluster2, javax.vecmath.Matrix4d new_cluster2_transformation)
           
protected  boolean constrain(SimCluster cluster, javax.vecmath.Matrix4d new_transformation_matrix)
           
protected  double getClusterEnergy(SimCluster cluster, javax.vecmath.Matrix4d transformation_matrix)
           
protected  void initModelEventHandler()
           
protected  boolean isAlignedForBonding(javax.vecmath.Matrix4d bond1_to_world_transform, javax.vecmath.Matrix4d bond2_to_world_transform)
           
protected  boolean isAlignedForBonding(SimBond bond1, SimBond bond2)
           
protected  boolean isOrientatedForBonding(javax.vecmath.Matrix4d bond1_to_world_transform, javax.vecmath.Matrix4d bond2_to_world_transform)
           
protected  boolean isPositionedForBonding(javax.vecmath.Matrix4d bond1_to_world_transform, javax.vecmath.Matrix4d bond2_to_world_transform)
           
protected  boolean moveCluster(SimCluster cluster)
           
protected  void orientateForBonding(javax.vecmath.Matrix4d bond1_to_world_transform, javax.vecmath.Matrix4d bond2_to_world_transform, double ratio)
           
protected  void positionForBonding(javax.vecmath.Matrix4d bond1_to_world_transform, javax.vecmath.Matrix4d bond2_to_world_transform, double ratio)
           
protected  void testBondChanges(SimBond bond, java.util.ArrayList nearby_bonds, java.util.ArrayList possible_new_bonds)
           
 void update()
           
protected  void updateBonds(SimBond bond, java.util.ArrayList possible_new_bonds)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_COLLISION_DIST

public static final double MAX_COLLISION_DIST
See Also:
Constant Field Values

MAX_BOND_DIST

public static final double MAX_BOND_DIST
See Also:
Constant Field Values

PROBABILITY_OF_BOND_UPDATE

public static final double PROBABILITY_OF_BOND_UPDATE
See Also:
Constant Field Values
Constructor Detail

SimulationJava3DController

public SimulationJava3DController(Model model,
                                  Java3DView view)
Method Detail

update

public void update()

initModelEventHandler

protected void initModelEventHandler()

moveCluster

protected boolean moveCluster(SimCluster cluster)

constrain

protected boolean constrain(SimCluster cluster,
                            javax.vecmath.Matrix4d new_transformation_matrix)

getClusterEnergy

protected double getClusterEnergy(SimCluster cluster,
                                  javax.vecmath.Matrix4d transformation_matrix)

collide

protected boolean collide(SimCluster cluster,
                          javax.vecmath.Matrix4d new_transformation_matrix)

collide

protected boolean collide(SimCluster cluster1,
                          javax.vecmath.Matrix4d new_cluster1_transformation,
                          SimCluster cluster2,
                          javax.vecmath.Matrix4d new_cluster2_transformation)

checkForBondUpdates

protected void checkForBondUpdates(SimBond bond)

testBondChanges

protected void testBondChanges(SimBond bond,
                               java.util.ArrayList nearby_bonds,
                               java.util.ArrayList possible_new_bonds)

updateBonds

protected void updateBonds(SimBond bond,
                           java.util.ArrayList possible_new_bonds)

orientateForBonding

protected void orientateForBonding(javax.vecmath.Matrix4d bond1_to_world_transform,
                                   javax.vecmath.Matrix4d bond2_to_world_transform,
                                   double ratio)

positionForBonding

protected void positionForBonding(javax.vecmath.Matrix4d bond1_to_world_transform,
                                  javax.vecmath.Matrix4d bond2_to_world_transform,
                                  double ratio)

alignForBonding

protected void alignForBonding(javax.vecmath.Matrix4d bond1_to_world_transform,
                               javax.vecmath.Matrix4d bond2_to_world_transform,
                               double ratio)

alignForBonding

protected boolean alignForBonding(SimBond bond1,
                                  SimBond bond2)

isOrientatedForBonding

protected boolean isOrientatedForBonding(javax.vecmath.Matrix4d bond1_to_world_transform,
                                         javax.vecmath.Matrix4d bond2_to_world_transform)

isPositionedForBonding

protected boolean isPositionedForBonding(javax.vecmath.Matrix4d bond1_to_world_transform,
                                         javax.vecmath.Matrix4d bond2_to_world_transform)

isAlignedForBonding

protected boolean isAlignedForBonding(javax.vecmath.Matrix4d bond1_to_world_transform,
                                      javax.vecmath.Matrix4d bond2_to_world_transform)

isAlignedForBonding

protected boolean isAlignedForBonding(SimBond bond1,
                                      SimBond bond2)