Guillaume André

Apprentissage, étude et approfondissement des nouvelles technologies

14 Apr, 2009

Silverlight 3 : Cube 3D - Nuage de point

Posted by: Guillaume Andre In: Silverlight

Silverlight 3 incorpore la gestion de plan 3D  (PlaneProjection) au sein de son plugin et ce nativement. Voici un petit exemple “coding4fun” d’implémentation de plan 3D. Le but de l’exercice est de créer un simili Cube 3D avec un nuage de point puis d’animer le cube en question.

Cube Silverlight en 3D :


View on Vimeo.

Côté code :

private int[] tabX = new int[] { 40, 120, 120, 40, 40, 120, 120, 40 };
private int[] tabY = new int[] { 40, 40, 120, 120, 40, 40, 120, 120 };
private int[] tabZ = new int[] { -40, -40, -40, -40, 40, 40, 40, 40 };

for(var i = 0 ; i < 8 ; i++)
{
PlaneProjection pj = new PlaneProjection();
pj.LocalOffsetX = tabX[i];
pj.LocalOffsetY = tabY[i];
pj.LocalOffsetZ = tabZ[i];
pj.CenterOfRotationX = 0;
pj.CenterOfRotationY = 0;
pj.CenterOfRotationZ = 0;
el.Projection = pj;

Ellipse el = new Ellipse();
el.Width = 10;
el.Height = 10;
el.Fill = new SolidColorBrush(Colors.Cyan);
cube.Children.Add(el);
}

L’idée est donc d’avoir une Matrice de point et de créer chaque point du cube 3D à la volée. Pour animer le cube il faudra animer chaque point. Cela est bien entendu du à la gestion de la “3D” dans Silverlight et des projections de plans.

No Responses to "Silverlight 3 : Cube 3D - Nuage de point"

Comment Form