Ejemplo n.º 1
0
void Mesh::SetRotation(Vector r)
{
	Triangle *tri = tris, *ot = originalTris;
	Vector c = ComputeCentroid();
	Vector o;
	for(int i = 0; i < numTris; i++, tri++, ot++)
	{
		*tri = *ot;
		tri->RotateAboutPoint(rotation + r, o);
		tri->Translate(c);
		tri->RecalcNormal();
	}
}
Ejemplo n.º 2
0
void Mesh::MoveTo(float x, float y, float z)
{
	Triangle *tri = tris, *ot = originalTris;
	Vector c;
	for(int i = 0; i < numTris; i++, tri++, ot++)
	{
		*tri = *ot;
		tri->RotateAboutPoint(rotation, c);
		tri->Translate(x, y, z);
		tri->RecalcNormal();
	}
	centroidChanged = true;
}