bA.m_sweep.advance(alpha0); } else if (bB.m_sweep.alpha0 < bA.m_sweep.alpha0) { alpha0 = bA.m_sweep.alpha0; bB.m_sweep.advance(alpha0); input.proxyA.set(fA.getShape(), indexA); input.proxyB.set(fB.getShape(), indexB); input.sweepA.set(bA.m_sweep); input.sweepB.set(bB.m_sweep); input.tMax = 1.0f; backup1.set(bA.m_sweep); backup2.set(bB.m_sweep); bA.m_sweep.set(backup1); bB.m_sweep.set(backup2); bA.synchronizeTransform(); bB.synchronizeTransform(); backup1.set(other.m_sweep); if ((other.m_flags & Body.e_islandFlag) == 0) { other.advance(minAlpha); other.m_sweep.set(backup1); other.synchronizeTransform(); continue; other.m_sweep.set(backup1); other.synchronizeTransform();
final DistanceProxy proxyB = input.proxyB; sweepA.set(input.sweepA); sweepB.set(input.sweepB); sweepA.normalize(); sweepB.normalize(); sweepA.getTransform(xfA, t1); sweepB.getTransform(xfB, t1);
public float evaluate(int indexA, int indexB, float t) { m_sweepA.getTransform(xfa, t); m_sweepB.getTransform(xfb, t);
protected final void advance(float t) { // Advance to the new safe time. This doesn't sync the broad-phase. m_sweep.advance(t); m_sweep.c.set(m_sweep.c0); m_sweep.a = m_sweep.a0; m_xf.q.set(m_sweep.a); // m_xf.position = m_sweep.c - Mul(m_xf.R, m_sweep.localCenter); Rot.mulToOutUnsafe(m_xf.q, m_sweep.localCenter, m_xf.p); m_xf.p.mulLocal(-1).addLocal(m_sweep.c); } }
public float findMinSeparation(int[] indexes, float t) { m_sweepA.getTransform(xfa, t); m_sweepB.getTransform(xfb, t);
protected final void advance(float t) { // Advance to the new safe time. This doesn't sync the broad-phase. m_sweep.advance(t); m_sweep.c.set(m_sweep.c0); m_sweep.a = m_sweep.a0; m_xf.q.set(m_sweep.a); // m_xf.position = m_sweep.c - Mul(m_xf.R, m_sweep.localCenter); Rot.mulToOutUnsafe(m_xf.q, m_sweep.localCenter, m_xf.p); m_xf.p.mulLocal(-1).addLocal(m_sweep.c); } }
final DistanceProxy proxyB = input.proxyB; sweepA.set(input.sweepA); sweepB.set(input.sweepB); sweepA.normalize(); sweepB.normalize(); sweepA.getTransform(xfA, t1); sweepB.getTransform(xfB, t1);
bA.m_sweep.advance(alpha0); } else if (bB.m_sweep.alpha0 < bA.m_sweep.alpha0) { alpha0 = bA.m_sweep.alpha0; bB.m_sweep.advance(alpha0); input.proxyA.set(fA.getShape(), indexA); input.proxyB.set(fB.getShape(), indexB); input.sweepA.set(bA.m_sweep); input.sweepB.set(bB.m_sweep); input.tMax = 1.0f; backup1.set(bA.m_sweep); backup2.set(bB.m_sweep); bA.m_sweep.set(backup1); bB.m_sweep.set(backup2); bA.synchronizeTransform(); bB.synchronizeTransform(); backup1.set(other.m_sweep); if ((other.m_flags & Body.e_islandFlag) == 0) { other.advance(minAlpha); other.m_sweep.set(backup1); other.synchronizeTransform(); continue; other.m_sweep.set(backup1); other.synchronizeTransform();
m_sweepB = sweepB; m_sweepA.getTransform(xfa, t1); m_sweepB.getTransform(xfb, t1);
protected final void advance(float t) { // Advance to the new safe time. This doesn't sync the broad-phase. m_sweep.advance(t); m_sweep.c.set(m_sweep.c0); m_sweep.a = m_sweep.a0; m_xf.q.set(m_sweep.a); // m_xf.position = m_sweep.c - Mul(m_xf.R, m_sweep.localCenter); Rotation.mulToOutUnsafe(m_xf.q, m_sweep.localCenter, m_xf.p); m_xf.p.mulLocal(-1).addLocal(m_sweep.c); } }
final DistanceProxy proxyB = input.proxyB; sweepA.set(input.sweepA); sweepB.set(input.sweepB); sweepA.normalize(); sweepB.normalize(); sweepA.getTransform(xfA, t1); sweepB.getTransform(xfB, t1);
bA.m_sweep.advance(alpha0); } else if (bB.m_sweep.alpha0 < bA.m_sweep.alpha0) { alpha0 = bA.m_sweep.alpha0; bB.m_sweep.advance(alpha0); input.proxyA.set(fA.getShape(), indexA); input.proxyB.set(fB.getShape(), indexB); input.sweepA.set(bA.m_sweep); input.sweepB.set(bB.m_sweep); input.tMax = 1.0f; backup1.set(bA.m_sweep); backup2.set(bB.m_sweep); bA.m_sweep.set(backup1); bB.m_sweep.set(backup2); bA.synchronizeTransform(); bB.synchronizeTransform(); backup1.set(other.m_sweep); if ((other.m_flags & Body.e_islandFlag) == 0) { other.advance(minAlpha); other.m_sweep.set(backup1); other.synchronizeTransform(); continue; other.m_sweep.set(backup1); other.synchronizeTransform();
public float evaluate(int indexA, int indexB, float t) { m_sweepA.getTransform(xfa, t); m_sweepB.getTransform(xfb, t);
protected final void advance(float t) { // Advance to the new safe time. This doesn't sync the broad-phase. m_sweep.advance(t); m_sweep.c.set(m_sweep.c0); m_sweep.a = m_sweep.a0; m_xf.q.set(m_sweep.a); // m_xf.position = m_sweep.c - Mul(m_xf.R, m_sweep.localCenter); Rot.mulToOutUnsafe(m_xf.q, m_sweep.localCenter, m_xf.p); m_xf.p.mulLocal(-1).addLocal(m_sweep.c); } }
final DistanceProxy proxyB = input.proxyB; sweepA.set(input.sweepA); sweepB.set(input.sweepB); sweepA.normalize(); sweepB.normalize(); sweepA.getTransform(xfA, t1); sweepB.getTransform(xfB, t1);
bA.m_sweep.advance(alpha0); } else if (bB.m_sweep.alpha0 < bA.m_sweep.alpha0) { alpha0 = bA.m_sweep.alpha0; bB.m_sweep.advance(alpha0); input.proxyA.set(fA.getShape(), indexA); input.proxyB.set(fB.getShape(), indexB); input.sweepA.set(bA.m_sweep); input.sweepB.set(bB.m_sweep); input.tMax = 1.0f; backup1.set(bA.m_sweep); backup2.set(bB.m_sweep); bA.m_sweep.set(backup1); bB.m_sweep.set(backup2); bA.synchronizeTransform(); bB.synchronizeTransform(); backup1.set(other.m_sweep); if ((other.m_flags & Body.e_islandFlag) == 0) { other.advance(minAlpha); other.m_sweep.set(backup1); other.synchronizeTransform(); continue; other.m_sweep.set(backup1); other.synchronizeTransform();
public float findMinSeparation(int[] indexes, float t) { m_sweepA.getTransform(xfa, t); m_sweepB.getTransform(xfb, t);
protected final void advance(float t) { // Advance to the new safe time. This doesn't sync the broad-phase. m_sweep.advance(t); m_sweep.c.set(m_sweep.c0); m_sweep.a = m_sweep.a0; m_xf.q.set(m_sweep.a); // m_xf.position = m_sweep.c - Mul(m_xf.R, m_sweep.localCenter); Rot.mulToOutUnsafe(m_xf.q, m_sweep.localCenter, m_xf.p); m_xf.p.mulLocal(-1).addLocal(m_sweep.c); } }
final DistanceProxy proxyB = input.proxyB; sweepA.set(input.sweepA); sweepB.set(input.sweepB); sweepA.normalize(); sweepB.normalize(); sweepA.getTransform(xfA, t1); sweepB.getTransform(xfB, t1);
bA.m_sweep.advance(alpha0); } else if (bB.m_sweep.alpha0 < bA.m_sweep.alpha0) { alpha0 = bA.m_sweep.alpha0; bB.m_sweep.advance(alpha0); input.proxyA.set(fA.getShape(), indexA); input.proxyB.set(fB.getShape(), indexB); input.sweepA.set(bA.m_sweep); input.sweepB.set(bB.m_sweep); input.tMax = 1.0f; backup1.set(bA.m_sweep); backup2.set(bB.m_sweep); bA.m_sweep.set(backup1); bB.m_sweep.set(backup2); bA.synchronizeTransform(); bB.synchronizeTransform(); backup1.set(other.m_sweep); if ((other.m_flags & Body.e_islandFlag) == 0) { other.advance(minAlpha); other.m_sweep.set(backup1); other.synchronizeTransform(); continue; other.m_sweep.set(backup1); other.synchronizeTransform();