Example usage for com.badlogic.gdx.math Vector2 dst2

List of usage examples for com.badlogic.gdx.math Vector2 dst2

Introduction

In this page you can find the example usage for com.badlogic.gdx.math Vector2 dst2.

Prototype

public float dst2(float x, float y) 

Source Link

Usage

From source file:com.vlaaad.dice.game.actions.CreatureAction.java

License:Open Source License

protected final Array<Grid2D.Coordinate> coordinates(Creature creature, float radius,
        ICondition<Grid2D.Coordinate> condition) {

    int checkRadius = MathUtils.ceil(radius);
    float radius2 = radius * radius;

    Vector2 position = tmpVector.set(creature.getX(), creature.getY());
    Array<Grid2D.Coordinate> result = new Array<Grid2D.Coordinate>();

    for (int i = creature.getX() - checkRadius; i <= creature.getX() + checkRadius; i++) {
        for (int j = creature.getY() - checkRadius; j <= creature.getY() + checkRadius; j++) {

            if (position.dst2(i, j) > radius2)
                continue;
            Grid2D.Coordinate coordinate = Grid2D.obtain(i, j);
            if (condition.isSatisfied(coordinate)) {
                result.add(coordinate);//from  www .ja  va 2s . co  m
            } else {
                Grid2D.free(coordinate);
            }
        }
    }
    return result;
}