public void runPowTest(float argRandom) { float a = (float) StrictMath.pow(argRandom, MathUtils.randomFloat(-100, 100)); aStore += a; }
public void runFastPowTest(float argRandom) { float a = MathUtils.fastPow(argRandom, MathUtils.randomFloat(-100, 100)); aStore += a; }
public void runMaxTest(float argRandom) { float a = StrictMath.max(argRandom, MathUtils.randomFloat(-100, 100)); aStore += a; }
public void runAtan2Test(float argRandom) { float a = (float) StrictMath.atan2(argRandom, MathUtils.randomFloat(-10000, 10000)); aStore += a; }
public void runFastMaxTest(float argRandom) { float a = MathUtils.max(argRandom, MathUtils.randomFloat(-100, 100)); aStore += a; }
public void runFastAtan2Test(float argRandom) { float a = MathUtils.fastAtan2(argRandom, MathUtils.randomFloat(-10000, 10000)); aStore += a; }
public float op(Vec2 argVec) { argVec.set(MathUtils.randomFloat(-100, 100), MathUtils.randomFloat(-100, 100)); argVec.mulLocal(3.2f); float s = argVec.length(); argVec.normalize(); return s; }
public float op(Vec2 argVec) { argVec.set(MathUtils.randomFloat(-100, 100), MathUtils.randomFloat(-100, 100)); argVec.mulLocal(3.2f); float s = argVec.length(); argVec.normalize(); return s; }
void generate() { Vec2 lowerBound = new Vec2(-8f, -8f); Vec2 upperBound = new Vec2(8f, 8f); for (int i = 0; i < e_count; i++) { float x = MathUtils.randomFloat(-8, 8); float y = MathUtils.randomFloat(-8, 8); Vec2 v = new Vec2(x, y); MathUtils.clampToOut(v, lowerBound, upperBound, v); m_points[i] = v; } m_count = e_count; }
public void GetRandomAABB(AABB aabb) { Vec2 w = new Vec2(); w.set(2.0f * m_proxyExtent, 2.0f * m_proxyExtent); // aabb.lowerBound.x = -m_proxyExtent; // aabb.lowerBound.y = -m_proxyExtent + worldExtent; aabb.lowerBound.x = MathUtils.randomFloat(rand, -worldExtent, worldExtent); aabb.lowerBound.y = MathUtils.randomFloat(rand, 0.0f, 2.0f * worldExtent); aabb.upperBound.set(aabb.lowerBound).addLocal(w); }
void Create(int index) { if (m_bodies[m_bodyIndex] != null) { getWorld().destroyBody(m_bodies[m_bodyIndex]); m_bodies[m_bodyIndex] = null; } BodyDef bd = new BodyDef(); float x = MathUtils.randomFloat(-10.0f, 10.0f); float y = MathUtils.randomFloat(10.0f, 20.0f); bd.position.set(x, y); bd.angle = MathUtils.randomFloat(-MathUtils.PI, MathUtils.PI); bd.type = BodyType.DYNAMIC; if (index == 4) { bd.angularDamping = 0.02f; } m_bodies[m_bodyIndex] = getWorld().createBody(bd); if (index < 4) { FixtureDef fd = new FixtureDef(); fd.shape = m_polygons[index]; fd.friction = 0.3f; fd.density = 20.0f; m_bodies[m_bodyIndex].createFixture(fd); } else { FixtureDef fd = new FixtureDef(); fd.shape = m_circle; fd.friction = 0.3f; fd.density = 20.0f; m_bodies[m_bodyIndex].createFixture(fd); } m_bodyIndex = (m_bodyIndex + 1) % e_maxBodies; }
void Create(int index) { BodyDef bd = new BodyDef(); bd.type = BodyType.DYNAMIC; float x = MathUtils.randomFloat(-2.0f, 2.0f); bd.position.set(x, 10.0f); bd.angle = MathUtils.randomFloat(-MathUtils.PI, MathUtils.PI); if (index == 4) { bd.angularDamping = 0.02f; } m_bodies[m_bodyIndex] = getWorld().createBody(bd); if (index < 4) { FixtureDef fd = new FixtureDef(); fd.shape = m_polygons[index]; fd.density = 1.0f; fd.friction = 0.3f; m_bodies[m_bodyIndex].createFixture(fd); } else { FixtureDef fd = new FixtureDef(); fd.shape = m_circle; fd.density = 1.0f; fd.friction = 0.3f; m_bodies[m_bodyIndex].createFixture(fd); } m_bodyIndex = (m_bodyIndex + 1) % k_maxBodies; }
public void MoveAABB(AABB aabb) { Vec2 d = new Vec2(); d.x = MathUtils.randomFloat(rand, -0.5f, 0.5f); d.y = MathUtils.randomFloat(rand, -0.5f, 0.5f); // d.x = 2.0f; // d.y = 0.0f; aabb.lowerBound.addLocal(d); aabb.upperBound.addLocal(d); Vec2 c0 = aabb.lowerBound.add(aabb.upperBound).mulLocal(.5f); Vec2 min = new Vec2(); min.set(-worldExtent, 0.0f); Vec2 max = new Vec2(); max.set(worldExtent, 2.0f * worldExtent); Vec2 c = MathUtils.clamp(c0, min, max); aabb.lowerBound.addLocal(c.sub(c0)); aabb.upperBound.addLocal(c.sub(c0)); }
triangleBodyDef.position.set(MathUtils.randomFloat(xLo, xHi), MathUtils.randomFloat(yLo, yHi)); polygon.set(vertices, 3); triangleBodyDef.position.set(MathUtils.randomFloat(xLo, xHi), MathUtils.randomFloat(yLo, yHi)); boxBodyDef.position.set(MathUtils.randomFloat(xLo, xHi), MathUtils.randomFloat(yLo, yHi)); boxBodyDef.position.set(MathUtils.randomFloat(xLo, xHi), MathUtils.randomFloat(yLo, yHi)); circleBodyDef.position.set(MathUtils.randomFloat(xLo, xHi), MathUtils.randomFloat(yLo, yHi)); circleBodyDef.position.set(MathUtils.randomFloat(xLo, xHi), MathUtils.randomFloat(yLo, yHi));
public void launch() { m_body.setTransform(new Vec2(0.0f, 4.0f), 0.0f); m_body.setLinearVelocity(new Vec2()); m_body.setAngularVelocity(0.0f); m_x = MathUtils.randomFloat(-1.0f, 1.0f); m_bullet.setTransform(new Vec2(m_x, 10.0f), 0.0f); m_bullet.setLinearVelocity(new Vec2(0.0f, -50.0f)); m_bullet.setAngularVelocity(0.0f); Distance.GJK_CALLS = 0; Distance.GJK_ITERS = 0; Distance.GJK_MAX_ITERS = 0; TimeOfImpact.toiCalls = 0; TimeOfImpact.toiIters = 0; TimeOfImpact.toiMaxIters = 0; TimeOfImpact.toiRootIters = 0; TimeOfImpact.toiMaxRootIters = 0; }
@Override public void step(int argNum) { float random = MathUtils.randomFloat(-Float.MAX_VALUE / 3, Float.MAX_VALUE / 3); switch (argNum) { case 0:
public void runFastPowTest(float argRandom){ float a = 0; for(int i=0; i<INNER_ITERS; i++){ a = MathUtils.fastPow(argRandom, MathUtils.randomFloat(-100, 100)); } aStore += a; }
public void runFastAtan2Test(float argRandom){ float a = 0; for(int i=0; i<INNER_ITERS; i++){ a = MathUtils.fastAtan2(argRandom, MathUtils.randomFloat(-10000, 10000)); } aStore += a; }
float x = MathUtils.randomFloat(-0.1f, 0.1f); BodyDef bd = new BodyDef(); bd.type = BodyType.DYNAMIC; bd.position.set(x + 5.0f, 1.05f + 2.5f * i); bd.angle = MathUtils.randomFloat(-MathUtils.PI, MathUtils.PI); Body body = getWorld().createBody(bd); body.createFixture(circle1, 2.0f); float x = MathUtils.randomFloat(-0.1f, 0.1f); BodyDef bd = new BodyDef(); bd.type = BodyType.DYNAMIC; bd.position.set(x - 5.0f, 1.05f + 2.5f * i); bd.angle = MathUtils.randomFloat(-MathUtils.PI, MathUtils.PI); Body body = getWorld().createBody(bd); body.createFixture(polygon1, 2.0f); float x = MathUtils.randomFloat(-0.1f, 0.1f); BodyDef bd = new BodyDef(); bd.type = BodyType.DYNAMIC;
BodyDef bod = new BodyDef(); bod.type = BodyType.DYNAMIC; circ.m_radius = 1.0f + (i % 2 == 0 ? 1.0f : -1.0f) * .5f * MathUtils.randomFloat(.5f, 1f); FixtureDef fd2 = new FixtureDef(); fd2.shape = circ;