Partager via


Fonction XMVectorBaryCentric (directxmath.h)

Retourne un point en coordonnées barycentriques, à l’aide des vecteurs de position spécifiés.

Syntaxe

XMVECTOR XM_CALLCONV XMVectorBaryCentric(
  [in] FXMVECTOR Position0,
  [in] FXMVECTOR Position1,
  [in] FXMVECTOR Position2,
  [in] float     f,
  [in] float     g
) noexcept;

Paramètres

[in] Position0

Première position.

[in] Position1

Deuxième position.

[in] Position2

Troisième position.

[in] f

Facteur de pondération. Consultez les remarques.

[in] g

Facteur de pondération. Consultez les remarques.

Valeur retournée

Retourne les coordonnées barycentriques.

Remarques

Cette fonction permet de comprendre les points dans et autour d’un triangle, indépendamment de l’emplacement du triangle. Cette fonction retourne le point résultant à l’aide de l’équation suivante : Position0> + f>(Position1-Position0>) + g>(Position2-Position0>).

N’importe quel point du plan Position0>Position1>Position2> peut être représenté par la coordonnée barycentrique (f,g>>), où f> contrôle la pondération de Position1> dans le résultat, et g> contrôle la quantité de Position2> pondérée dans le résultat. Enfin, 1-f-g>> contrôle la quantité de Position0> pondérée dans le résultat.

Notez les relations suivantes.

  • Si (f>=0 && g>=0 && 1-f-g>=0), le point se trouve à l’intérieur du triangle Position0>Position1>Position2>.
  • Si (f==0 && g>=0 && 1-f-g>=0), le point se trouve sur la ligne Position0>Position2>.
  • Si (f>=0 && g==0 && 1-f-g>=0), le point se trouve sur la ligne Position0>Position1>.
  • Si (f>=0 && g>=0 && 1-f-g==0), le point se trouve sur la ligne Position1>Position2>.
Les coordonnées barycentriques sont une forme de coordonnées générales. Dans ce contexte, l’utilisation de coordonnées barycentriques représente un changement dans les systèmes de coordonnées. Ce qui est vrai pour les coordonnées cartésiennes est vrai pour les coordonnées barycentriques.

Configuration requise pour la plateforme

Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le SDK Windows pour Windows 8. Pris en charge pour les applications de bureau Win32, les applications du Windows Store et les applications Windows Phone 8.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête directxmath.h (inclure DirectXMath.h)

Voir aussi

Fonctions vectorielles géométriques

XMVectorBaryCentricV