void Various_Processing_Component::Translation (PolyhedronPtr pMesh, double xTranslation, double yTranslation, double zTranslation)
{
	Vector translationVector(xTranslation,yTranslation, zTranslation);
	Affine_transformation translation(CGAL::TRANSLATION, translationVector);
	std::transform(pMesh->points_begin(), pMesh->points_end(), pMesh->points_begin(), translation);

	pMesh->compute_normals();
}
Example #2
0
	void Transform::Translate(Vector a_Translation, Space a_RelativeTo)
	{
		switch (a_RelativeTo)
		{
		case Space::World:
			m_Position += a_Translation;
			break;
		case Space::Local:
			XMVECTOR translationVector(a_Translation.AsXMVECTOR());
			XMVECTOR rotationVector(m_Rotation.AsXMVECTOR());
			m_Position += Vector(XMVector3Rotate(translationVector, rotationVector));
			break;
		}
	}