Package org.cmj.flowy.simulation.math

Examples of org.cmj.flowy.simulation.math.Vector2.multiply()


                        // Pressure
                        float scalar = halfMass * (particle.pressure + neighbour.pressure) / neighbour.density;

                        Vector2 force = theSKPressure.CalculateGradient(distance);
                        force.multiply(scalar);
                        particle.force.subtract(force);
                        neighbour.force.add(force);

                        // Viscosity
                        scalar = massViscosityProduct * theSKViscosity.CalculateLaplacian(distance)
 
View Full Code Here


                        scalar = massViscosityProduct * theSKViscosity.CalculateLaplacian(distance)
                                 / neighbour.density;

                        force = Vector2.Subtract(neighbour.velocity, particle.velocity);

                        force.multiply(scalar);

                        particle.force.add(force);
                        neighbour.force.subtract(force);      
                    }
                }
View Full Code Here

                    particleSeparation.y = neighbour.position.y - particle.position.y;
                    final float particleSeparationSquared = particleSeparation.getLengthSqaured();
                    if (particleSeparationSquared < minDistSq) {
                        if (particleSeparationSquared > Constants.FLOAT_EPSILON) {
                            final float distLen = particleSeparation.getLength();
                            particleSeparation.multiply(0.5f * (distLen - minDist) / distLen);
                            neighbour.position.subtract(particleSeparation);
                            neighbour.oldPosition.subtract(particleSeparation);
                            particle.position.add(particleSeparation);
                            particle.oldPosition.add(particleSeparation);
                        }
View Full Code Here

        Vector2 normal = theDirection.PerpendicularRight();
        normal = Vector2.Mult(normal, dist);
        Vector2 particleVelocity = Vector2.Add(theDirection, normal);
        particleVelocity.normalize();
        float velLen = (float) RAND.nextDouble() * (theMaxVelocity - theMinVelocity) + theMinVelocity;
        particleVelocity.multiply(velLen);
        return particleVelocity;
    }


    public void setDirection(final Vector2 direction) {
View Full Code Here

     
      // Position = Position + (1.0f - Damping) * (Position - PositionOld) +
    // dt * dt * a;
    acceleration.multiply(timeStep * timeStep);
    Vector2 temp = Vector2.Subtract(position, positionOld);
    temp.multiply(1.0f - theDamping);
    temp.add(acceleration);
    position.add(temp);
    positionOld.x = origPosX;
    positionOld.y = origPosY;
   
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.