Bonjour,
Je rencontre des problèmes avec toutes les fonctions sfTransform.
Elles rendent des valeurs fausses.
Code :
/* Creation du Array de vertex et du PrimitiveType */
sfVertexArray *a = sfVertexArray_create();
sfVertexArray_setPrimitiveType(a, sfLines);
/* Appends de 2 Points */
sfVertexArray_append(a, (sfVertex){(sfVector2f){100, 100}, sfRed, (sfVector2f){0, 0}}); // P1
sfVertexArray_append(a, (sfVertex){(sfVector2f){150, 100}, sfRed, (sfVector2f){0, 0}}); // P2
/* Creation de la Transformation */
sfTransform t;
sfTransform_translate(&t, -100, -100);
/* Transformation sur mes 2 Points */
sfVertexArray_getVertex(a, 0)->position = sfTransform_transformPoint(&t, sfVertexArray_getVertex(a, 0)->position);
sfVertexArray_getVertex(a, 1)->position = sfTransform_transformPoint(&t, sfVertexArray_getVertex(a, 1)->position);
Après transformation, le resultat est (0.00, -nan).
Changer la translation par une rotation avec center en (0, 0) donne :
P
1:(0.00, 91650810461577940041728.00)
P
2:(1184307934834922094592.00, 114563522084171679793152.00)