/** * Determine if two generic shapes overlap. * * @param shapeA * @param shapeB * @param xfA * @param xfB * @return */ public final boolean testOverlap(Shape shapeA, int indexA, Shape shapeB, int indexB, Transform xfA, Transform xfB) { input.proxyA.set(shapeA, indexA); input.proxyB.set(shapeB, indexB); input.transformA.set(xfA); input.transformB.set(xfB); input.useRadii = true; cache.count = 0; pool.getDistance().distance(output, cache, input); // djm note: anything significant about 10.0f? return output.distance < 10.0f * Settings.EPSILON; }
public DefaultWorldPool(int argSize, int argContainerSize) { vecs = new OrderedStack<Vec2>(argSize, argContainerSize) { protected Vec2 newInstance() { return new Vec2(); } }; vec3s = new OrderedStack<Vec3>(argSize, argContainerSize) { protected Vec3 newInstance() { return new Vec3(); } }; mats = new OrderedStack<Mat22>(argSize, argContainerSize) { protected Mat22 newInstance() { return new Mat22(); } }; aabbs = new OrderedStack<AABB>(argSize, argContainerSize) { protected AABB newInstance() { return new AABB(); } }; rots = new OrderedStack<Rot>(argSize, argContainerSize) { protected Rot newInstance() { return new Rot(); } }; mat33s = new OrderedStack<Mat33>(argSize, argContainerSize) { protected Mat33 newInstance() { return new Mat33(); } }; dist = new Distance(); collision = new Collision(this); toi = new TimeOfImpact(this); }
pool.getDistance().distance(distanceOutput, cache, distanceInput);
public DefaultWorldPool(int argSize, int argContainerSize) { vecs = new OrderedStack<Vec2>(argSize, argContainerSize) { protected Vec2 newInstance() { return new Vec2(); } }; vec3s = new OrderedStack<Vec3>(argSize, argContainerSize) { protected Vec3 newInstance() { return new Vec3(); } }; mats = new OrderedStack<Mat22>(argSize, argContainerSize) { protected Mat22 newInstance() { return new Mat22(); } }; aabbs = new OrderedStack<AABB>(argSize, argContainerSize) { protected AABB newInstance() { return new AABB(); } }; rots = new OrderedStack<Rot>(argSize, argContainerSize) { protected Rot newInstance() { return new Rot(); } }; mat33s = new OrderedStack<Mat33>(argSize, argContainerSize) { protected Mat33 newInstance() { return new Mat33(); } }; dist = new Distance(); collision = new Collision(this); toi = new TimeOfImpact(this); }
/** * Determine if two generic shapes overlap. * * @param shapeA * @param shapeB * @param xfA * @param xfB * @return */ public final boolean testOverlap(Shape shapeA, int indexA, Shape shapeB, int indexB, Transform xfA, Transform xfB) { input.proxyA.set(shapeA, indexA); input.proxyB.set(shapeB, indexB); input.transformA.set(xfA); input.transformB.set(xfB); input.useRadii = true; cache.count = 0; pool.getDistance().distance(output, cache, input); // djm note: anything significant about 10.0f? return output.distance < 10.0f * Settings.EPSILON; }
public DefaultWorldPool(int argSize, int argContainerSize) { vecs = new OrderedStack<Vec2>(argSize, argContainerSize) { protected Vec2 newInstance() { return new Vec2(); } }; vec3s = new OrderedStack<Vec3>(argSize, argContainerSize) { protected Vec3 newInstance() { return new Vec3(); } }; mats = new OrderedStack<Mat22>(argSize, argContainerSize) { protected Mat22 newInstance() { return new Mat22(); } }; aabbs = new OrderedStack<AABB>(argSize, argContainerSize) { protected AABB newInstance() { return new AABB(); } }; rots = new OrderedStack<Rot>(argSize, argContainerSize) { protected Rot newInstance() { return new Rot(); } }; mat33s = new OrderedStack<Mat33>(argSize, argContainerSize) { protected Mat33 newInstance() { return new Mat33(); } }; dist = new Distance(); collision = new Collision(this); toi = new TimeOfImpact(this); }
input.useRadii = true; cache.count = 0; getWorld().getPool().getDistance().distance(output, cache, input);
public DefaultWorldPool(int argSize, int argContainerSize) { vecs = new OrderedStack<Vec2>(argSize, argContainerSize) { protected Vec2 newInstance() { return new Vec2(); } }; vec3s = new OrderedStack<Vec3>(argSize, argContainerSize) { protected Vec3 newInstance() { return new Vec3(); } }; mats = new OrderedStack<Mat22>(argSize, argContainerSize) { protected Mat22 newInstance() { return new Mat22(); } }; aabbs = new OrderedStack<AABB>(argSize, argContainerSize) { protected AABB newInstance() { return new AABB(); } }; rots = new OrderedStack<Rot>(argSize, argContainerSize) { protected Rot newInstance() { return new Rot(); } }; mat33s = new OrderedStack<Mat33>(argSize, argContainerSize) { protected Mat33 newInstance() { return new Mat33(); } }; dist = new Distance(); collision = new Collision(this); toi = new TimeOfImpact(this); }
pool.getDistance().distance(distanceOutput, cache, distanceInput);
dist = new Distance(); collision = new Collision(this); toi = new TimeOfImpact(this);
/** * Determine if two generic shapes overlap. * * @param shapeA * @param shapeB * @param xfA * @param xfB * @return */ public final boolean testOverlap(Shape shapeA, int indexA, Shape shapeB, int indexB, Transform xfA, Transform xfB) { input.proxyA.set(shapeA, indexA); input.proxyB.set(shapeB, indexB); input.transformA.set(xfA); input.transformB.set(xfB); input.useRadii = true; cache.count = 0; pool.getDistance().distance(output, cache, input); // djm note: anything significant about 10.0f? return output.distance < 10.0f * Settings.EPSILON; }
/** * Determine if two generic shapes overlap. * * @param shapeA * @param shapeB * @param xfA * @param xfB * @return */ public final boolean testOverlap(Shape shapeA, int indexA, Shape shapeB, int indexB, Transform xfA, Transform xfB) { input.proxyA.set(shapeA, indexA); input.proxyB.set(shapeB, indexB); input.transformA.set(xfA); input.transformB.set(xfB); input.useRadii = true; cache.count = 0; pool.getDistance().distance(output, cache, input); // djm note: anything significant about 10.0f? return output.distance < 10.0f * Settings.EPSILON; }
/** * Determine if two generic shapes overlap. * * @param shapeA * @param shapeB * @param xfA * @param xfB * @return */ public final boolean testOverlap(Shape shapeA, int indexA, Shape shapeB, int indexB, Transform xfA, Transform xfB) { input.proxyA.set(shapeA, indexA); input.proxyB.set(shapeB, indexB); input.transformA.set(xfA); input.transformB.set(xfB); input.useRadii = true; cache.count = 0; pool.getDistance().distance(output, cache, input); // djm note: anything significant about 10.0f? return output.distance < 10.0f * JBoxSettings.EPSILON; }
input.useRadii = true; cache.count = 0; getWorld().getPool().getDistance().distance(output, cache, input);
pool.getDistance().distance(distanceOutput, cache, distanceInput);
pool.getDistance().distance(distanceOutput, cache, distanceInput);
pool.getDistance().distance(distanceOutput, cache, distanceInput);