Example #1
0
void Body::Dump()
{
	s32 bodyIndex = m_islandIndex;

	printf("{\n");
	printf("  BodyDef bd;\n");
	printf("  bd.type = BodyType(%d);\n", m_type);
	printf("  bd.position.Set(%.15lef, %.15lef);\n", m_xf.p.x, m_xf.p.y);
	printf("  bd.angle = %.15lef;\n", m_sweep.a);
	printf("  bd.linearVelocity.Set(%.15lef, %.15lef);\n", m_linearVelocity.x, m_linearVelocity.y);
	printf("  bd.angularVelocity = %.15lef;\n", m_angularVelocity);
	printf("  bd.linearDamping = %.15lef;\n", m_linearDamping);
	printf("  bd.angularDamping = %.15lef;\n", m_angularDamping);
	printf("  bd.allowSleep = bool(%d);\n", m_flags & autoSleepFlag);
	printf("  bd.awake = bool(%d);\n", m_flags & awakeFlag);
	printf("  bd.fixedRotation = bool(%d);\n", m_flags & fixedRotationFlag);
	printf("  bd.bullet = bool(%d);\n", m_flags & bulletFlag);
	printf("  bd.active = bool(%d);\n", m_flags & activeFlag);
	printf("  bd.gravityScale = %.15lef;\n", m_gravityScale);
	printf("  bodies[%d] = m_world->CreateBody(&bd);\n", m_islandIndex);
	printf("\n");
	for (Fixture* f = m_fixtureList; f; f = f->m_next)
	{
		printf("  {\n");
		f->Dump(bodyIndex);
		printf("  }\n");
	}
	printf("}\n");
}