Partager via


HandMeshObserver Classe

Définition

Fournit des mises à jour de maillage pour chaque cadre qui suit la forme détectée d’une main.

public ref class HandMeshObserver sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 524288)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class HandMeshObserver final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 524288)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class HandMeshObserver
Public NotInheritable Class HandMeshObserver
Héritage
Object Platform::Object IInspectable HandMeshObserver
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10, version 1903 (introduit dans 10.0.18362.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v8.0)

Remarques

La création d’un HandMeshObserver vous abonne aux mises à jour de maillage de main pour un SpatialInteractionSource donné qui suit la forme détectée de cette main.

Lorsque les utilisateurs interagissent directement avec des objets virtuels avec leurs mains, vous pouvez afficher une visualisation des mains pour augmenter la confiance de l’utilisateur dans leurs interactions. En créant un HandMeshObserver, vous pouvez obtenir une mémoire tampon d’index fixe pour la main en appelant GetTriangleIndices, puis une mémoire tampon de vertex mise à jour chaque trame en appelant GetVertexStateForPose. Avec ces mémoires tampons, vous pouvez afficher une visualisation en direct de la main de l’utilisateur.

La mémoire tampon d’index du maillage de main ne change pas pendant la durée de vie de HandMeshObserver. Le contenu de la mémoire tampon de vertex du maillage de main sera mis à jour à chaque image, contrairement au nombre de vertex. Vous pouvez donc remplir la même mémoire tampon de vertex à chaque image.

Vous créez un HandMeshObserver pour une source d’interaction donnée en appelant SpatialInteractionSource.TryCreateHandMeshObserverAsync ou SpatialInteractionSource.TryCreateHandMeshObserver. L’initialisation de l’abonnement de l’application aux mises à jour de maillage manuelle peut prendre plus d’un frame. Vous devez appeler uniquement la version synchrone de la méthode à partir d’un thread d’arrière-plan. Si vous appelez à partir d’un thread d’interface utilisateur, d’un thread de rendu ou d’un thread de mise à jour, vous devez appeler la version asynchrone à la place.

Propriétés

ModelId

Obtient un ID de modèle de maillage de main pour identifier la même mémoire tampon d’index sur plusieurs événements de détection et de perte de source.

NeutralPose

Obtient le HandPose neutre actuel pour cette main.

NeutralPoseVersion

Obtient la version de NeutralPose pour cette main.

Source

SpatialInteractionSource dont le maillage de main est suivi par ce HandMeshObserver.

TriangleIndexCount

Obtient le nombre d’éléments dans la mémoire tampon d’index pour ce modèle de maillage de main.

VertexCount

Obtient le nombre de sommets pour cette main.

Méthodes

GetTriangleIndices(UInt16[])

Remplit une mémoire tampon d’index pour ce modèle de maillage de main.

GetVertexStateForPose(HandPose)

Obtient la mémoire tampon de vertex et tout autre état nécessaire pour restituer le maillage de la main pour la pose de la main d’un cadre donné ou pour la pose neutre du maillage manuel.

S’applique à