All pastes #254915 Raw Edit

Someone

public text v1 · immutable
#254915 ·published 2006-11-22 13:56 UTC
rendered paste body
btTriangleShape trishapeA(btVector3(p1[0], p1[1], p1[2]), btVector3(p2[0], p2[1], p2[2]), btVector3(p3[0], p3[1], p3[2]));

btTriangleShape trishapeB(btVector3(q1[0], q1[1], q1[2]), btVector3(q2[0], q2[1], q2[2]), btVector3(q3[0], q3[1], q3[2]));
	
	btVoronoiSimplexSolver sGjkSimplexSolver;	
	
	btGjkPairDetector	convexConvex(&trishapeA ,&trishapeB,&sGjkSimplexSolver,0);
	btPointCollector gjkOutput;
	btGjkPairDetector::ClosestPointInput input;
	
	btTransform tr;
	tr.setIdentity();
	
	input.m_transformA = tr;
	input.m_transformB = tr;
	
	convexConvex.getClosestPoints(input, gjkOutput, 0);
	
	if (gjkOutput.m_hasResult)
	{
		
		VECCOPY(pa, gjkOutput.m_pointInWorld);
		VECCOPY(pb, gjkOutput.m_pointInWorld);
		VECADDFAC(pb, pb, gjkOutput.m_normalOnBInWorld, gjkOutput.m_distance);
		
		if(!real)
		{
			if(gjkOutput.m_distance < 0.0f)
				gjkOutput.m_distance *= -1.0f;
		}
		
		
		return gjkOutput.m_distance;
	}