Package com.szuppe.jakub.common

Examples of com.szuppe.jakub.common.SpeedVector2D


   */
  public void setFromMockup(BallMockup ballMockup)
  {
    this.radius = ballMockup.getRadius();
    this.topLeftCoordinates = new Coordinates2D(ballMockup.getTopLeftCoordinates());
    this.speed = new SpeedVector2D(ballMockup.getSpeed());
    this.acceleration = ballMockup.getAcceleration();
    lastRepaintTime = System.currentTimeMillis();
  }
View Full Code Here


    float yballDisplacement = (speed.getYSpeed() * timeInterval)
        + (0.5f * acceleration.getyAcc() * timeInterval * timeInterval);
    if (Math.abs(speed.getXSpeed()) < Math.abs(0.5f * acceleration.getxAcc() * timeInterval)
        || Math.abs(speed.getYSpeed()) < Math.abs(0.5f * acceleration.getyAcc() * timeInterval))
    {
      speed = new SpeedVector2D(0, 0);
      acceleration = new Acceleration2D(0, 0);
      ballDisplacementVector = new Coordinates2D(0, 0);
    }
    else
    {
      ballDisplacementVector = new Coordinates2D(xballDisplacement, yballDisplacement);
    }
    topLeftCoordinates = topLeftCoordinates.moveAlongVector(ballDisplacementVector);

    SpeedVector2D speedChange = acceleration.countSpeedChange(timeInterval);
    speed.add(speedChange);
  }
View Full Code Here

   */
  private PaddleMockup correctPaddleMockup(PaddleMockup paddleMockup, float levelHeight)
  {
    Coordinates2D correctedPaddleCoordinates = new Coordinates2D(paddleMockup.getX(), levelHeight
        - paddleMockup.getY());
    SpeedVector2D correctedSpeed = paddleMockup.getSpeed();
    correctedSpeed.reverseYSpeed();
    Acceleration2D correctedAcceleration = paddleMockup.getRetardation();
    correctedAcceleration.reverseYAcc();
    PaddleMockup correctedPaddleMockup = new PaddleMockup(correctedPaddleCoordinates, correctedSpeed,
        correctedAcceleration);
    return correctedPaddleMockup;
View Full Code Here

   * @return Poprawioną makietę.
   */
  private BallMockup correctBallMockup(BallMockup ballMockup, float levelHeight)
  {
    Coordinates2D correctedBallCoordinates = new Coordinates2D(ballMockup.getX(), levelHeight - ballMockup.getY());
    SpeedVector2D correctedSpeed = ballMockup.getSpeed();
    correctedSpeed.reverseYSpeed();
    Acceleration2D correctedAcceleration = ballMockup.getAcceleration();
    correctedAcceleration.reverseYAcc();
    BallMockup correctedBallMockup = new BallMockup(correctedBallCoordinates, ballMockup.getRadius(),
        correctedSpeed, correctedAcceleration);
    return correctedBallMockup;
View Full Code Here

  /**
   * @return Wektor prędkości.
   */
  public SpeedVector2D getSpeed()
  {
    return new SpeedVector2D(speed);
  }
View Full Code Here

  /**
   * @return Wektor prędkości piłki.
   */
  public SpeedVector2D getSpeed()
  {
    return new SpeedVector2D(speed);
  }
View Full Code Here

   * @param paddleConfig - konfiguracja.
   */
  public Paddle(PaddleConfig paddleConfig)
  {
    this.paddleConfig = paddleConfig;
    this.speed = new SpeedVector2D(0, 0);
    this.acceleration = new Acceleration2D(0, 0);
    this.verticles = new Vertices2D(paddleConfig.getStartVertices());
  }
View Full Code Here

      speed.subtract(paddleConfig.getAbsStepSpeed());
      if (speed.compareTo(paddleConfig.getMaxAbsSpeed()) > 0)
      {
        float ySpeed = paddleConfig.getMaxAbsSpeed().getYSpeed();
        float xSpeed = paddleConfig.getMaxAbsSpeed().getXSpeed();
        SpeedVector2D maxSpeedInLeft = new SpeedVector2D(-xSpeed, -ySpeed);
        speed.setSpeed(maxSpeedInLeft);
      }
      acceleration
          .setAccelerationOppositTo(paddleConfig.getAbsRetardation(), speed);
    }
View Full Code Here

   */
  public List<Collision> checkCollisionsWithBall(Ball ball)
  {
    final List<Collision> collisionList = new LinkedList<>();
    final Ray2D ballMovementRay = ball.getMovementRay();
    final SpeedVector2D ballSpeed = ball.getSpeed();
    final float radius = ball.getRadius();
    final List<Coordinates2D> verticesList = verticles.getVerticesList();

    try
    {
      // TOP CHECK
      final Coordinates2D paddleLeftTopCo = verticesList.get(1).moveAlongVector(
          new Coordinates2D(0, radius));
      final Coordinates2D paddleRightTopCo = verticesList.get(2).moveAlongVector(
          new Coordinates2D(0, radius));
      Line2D paddleTop = new Line2D(paddleLeftTopCo, paddleRightTopCo);
      Coordinates2D pointOfIntersection = paddleTop
          .intersectionPoint(ballMovementRay);
      double distance = Math.sqrt(Math.pow(
          pointOfIntersection.getX() - ball.getX(), 2)
          + Math.pow(pointOfIntersection.getY() - ball.getY(), 2));
      long timeTillCollision = (long) (distance / ballSpeed.getSpeedValue());
      Coordinates2D displacementFromVelocity = speed.countDisplacement(timeTillCollision);
      Coordinates2D displacementFromAcc = acceleration.countDisplacement(timeTillCollision);
      Coordinates2D displacement = displacementFromVelocity
          .moveAlongVector(displacementFromAcc);
      final Coordinates2D paddleLeftTopCoAfterTime = paddleLeftTopCo
View Full Code Here

  /**
   * @return Prędkość.
   */
  public SpeedVector2D getSpeed()
  {
    return new SpeedVector2D(speed);
  }
View Full Code Here

TOP

Related Classes of com.szuppe.jakub.common.SpeedVector2D

Copyright © 2018 www.massapicom. 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.