labvanced logoLabVanced
  • Research
    • Publications
    • Researcher Interviews
    • Use Cases
      • Behavioral Psychology
      • Personality & Social Psychology
      • Cognitive & Neuro Psychology
      • Developmental & Educational Psychology
      • Clinical & Health Psychology
      • Sports & Movement Psychology
      • Marketing & Consumer Psychology
    • Labvanced Blog
  • Technology
    • Feature Overview
    • Desktop App
    • Phone App
    • Precise Timing
    • Experimental Control
    • Eye Tracking
    • Multi User Studies
    • More ...
      • Questionnaires
      • Artificial Intelligence (AI) Integration
      • Mouse Tracking
      • Data Privacy & Security
  • Learn
    • Guide
    • Videos
    • Walkthroughs
    • FAQ
    • Release Notes
    • Documents
    • Classroom
  • Experiments
    • Public Experiment Library
    • Labvanced Sample Studies
  • Pricing
    • Pricing Overview
    • License Configurator
    • Single License
    • Research Group
    • Departments & Consortia
  • About
    • About Us
    • Contact
    • Downloads
    • Careers
    • Impressum
    • Disclaimer
    • Privacy & Security
    • Terms & Conditions
  • Appgo to app icon
  • Logingo to app icon
Learn
Guide
Vidéos
Tutoriels
FAQ
Notes de version
Salle de classe
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
Guide
Vidéos
Tutoriels
FAQ
Notes de version
Salle de classe
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • Guide
    • DÉMARREZ

      • Objets
      • Événements
      • Variables
      • Assistant de tâche
      • Système d'essai
      • Conception de l'étude
        • Tâches
        • Blocs
        • Sessions
        • Groupes
    • SUJETS EN VEDETTE

      • Randomisation & Équilibre
      • Suivi oculaire
      • Application de bureau
      • Études d'exemple
      • Recrutement de participants
      • Accès API
        • API REST
        • API Webhook
        • API WebSocket
      • Autres sujets

        • Temps de stimuli précis
        • Études multi-utilisateurs
        • Suivi de la Tête dans Labvanced | Guide
    • ONGLETS PRINCIPAUX DE L'APPLICATION

      • Vue d'ensemble : Onglets principaux
      • Tableau de bord
      • Mes études
      • Études partagées
      • Mes fichiers
      • Bibliothèque d'expériences
      • Mon compte
      • Ma licence
    • ONGLETS D'ÉTUDE

      • Vue d'ensemble : Onglets spécifiques à l'étude
      • Conception de l'étude
        • Tâches
        • Blocs
        • Sessions
        • Groupes
      • Éditeur de tâche
        • Fonctions Principales et Paramètres
        • Le Système d'Essais
        • Cadres de canevas et de page
        • Objets
        • Tables de Propriétés des Objets
        • Variables
        • Tables des variables système
        • Le Système d'Événements
        • Randomisation des Essais
        • Fonctions de l'Éditeur de Texte
        • Suivi oculaire dans une tâche
        • Suivi de la tête dans une tâche
        • Études Multi-Utilisateurs
      • Paramètres de l'étude
        • Démarrage et Paramètres Principaux
        • Paramètres des navigateurs et des appareils
        • Paramètres des fonctionnalités d'expérience
      • Description
        • Plus de détails sur les informations de description
        • Images, Liens et Références dans les Descriptions
      • Variables
      • Médias
      • Traduire
      • Exécuter
      • Publier et enregistrer
        • Exigences pour laPublication d'une Étude dans Labvanced
        • Recrutement de Participants et Crowdsourcing
        • Sélection et Confirmation de la Licence
        • Après la publication de votre étude Labvanced
      • Partage
      • Participants
      • Vue de données et exportation
        • Vue des données et sélection des variables & des tâches (ancienne version)
        • Accéder aux Enregistrements (Version ANCIENNE)
  • Vidéos
    • Vue d'ensemble des vidéos
    • Démarrer avec Labvanced
    • Création de tâches
    • Vidéos d'éléments
    • Événements & Variables
    • Sujets avancés
  • Guides pratiques
    • Introduction
    • Tâche de Stroop
    • Tâche de décision lexicale
    • Tâche de cueing visuel de Posner
    • Paradigme de clignotement de cécité au changement
    • Étude d'exemple de suivi oculaire
    • Étude de suivi oculaire des nourrissons
    • Étude de capture d'attention avec suivi de souris
    • Présentation visuelle sérielle rapide
    • Étude ChatGPT
    • Démonstration de suivi oculaire : SVG comme AOIs
    • Démonstration multi-utilisateur : Afficher les curseurs des sujets
    • Configuration de base du contrôleur de jeu/joystick
    • Étude d'application de bureau avec intégration EEG
  • FAQ
    • Fonctionnalités
    • Sécurité & Confidentialité des données
    • Licences
    • Précision de Labvanced
    • Utilisation programmatique & API
    • Utilisation de Labvanced hors ligne
    • Dépannage
    • Questions sur la création d'études
  • Notes de version
  • Salle de classe

Afficher les curseurs des sujets : Démonstration Multi-Utilisateurs

Aperçu

Dans une expérience multi-utilisateurs où plusieurs participants participent en temps réel, vous pouvez souhaiter rendre leurs curseurs visibles les uns aux autres. Dans cette démonstration, nous allons vous montrer comment le configurer.

Aperçu de la fonctionnalité de suivi de souris multi-utilisateurs dans Labvanced

Remarque sur l'implémentation

Veuillez noter qu'il existe plusieurs approches pour mettre en œuvre le partage des emplacements de curseurs de plusieurs participants dans Labvanced, car la plate-forme est flexible et il est donc important de considérer la conception de votre expérience avant de vous engager dans une approche.

Pour clarifier ce point, nous présenterons deux approches pour accomplir cela :

  • Approche 1 : une démo qui utilise des tableaux pour distribuer la position du curseur
  • Approche 2 : dans une section plus bas, nous discuterons d'une démo où des valeurs uniques pour les coordonnées x et y peuvent également être utilisées.

Approche 1 : Affichage du curseur utilisant le suivi de souris et des tableaux

Cette démo comprend deux objets (une souris par utilisateur) et sont listés dans le panneau latéral dans le Panneau d'Objet. Cette approche peut être utilisée pour des études multi-utilisateurs où il y a 2+ participants.

Objets

Voici le panneau Propriétés de l'objet où tous les styles visuels peuvent être gérés. Actuellement, les deux curseurs ont une Visibilité de 1 (cela signifie opacité = 100 %) comme montré ci-dessous :

Les objets de curseur étant ajoutés à l'éditeur Labvanced pour configurer une étude multi-utilisateurs dans Labvanced

Pour cette démo, nous allons changer la Visibilité à 0, comme montré ci-dessous. Plus tard, lorsque l'expérience commencera, nous rendrons l'un des curseurs visibles. c'est-à-dire, si vous êtes le Participant 1, alors vous verrez l'objet curseur ici du Participant 2 et vice versa. Cela est décrit sous la section Événement : Init ci-dessous.

Cacher les curseurs dans Labvanced pour que lorsque l'expérience d'étude multi-participants commence l'une des visibilités du curseur soit affichée lorsque l'expérience commence

Si vous ne souhaitez pas avoir deux objets pour les curseurs, consultez cette section pour voir une méthode alternative avec un seul objet curseur.

Variables personnalisées

Ici, nous énumérons toutes les variables personnalisées qui ont été créées aux fins de cette démo. Vous pouvez les créer à l'avance ou dans l'éditeur tout en construisant votre expérience.

Les variables créées dans l'étude multi-utilisateurs pour le partage de curseur

Vue d'ensemble des événements

Pour ajouter un événement cliquez sur le [+] Événement du Cadre (sur ce cadre seulement).

Nous avons les événements suivants dans cette démo :

  1. Événement : Init : Rendre la souris de l'autre participant visible
  2. Événement : sendMove : Envoyer les coordonnées de la souris
  3. Événement : receiveMove : Recevoir les coordonnées de la souris

Ci-dessous, la structure de chacun des événements est décrite.

ÉVÉNEMENT : init

Cet événement spécifie ce qui se passera lorsque le cadre s'initie. Dans ce cas, notre objectif est que le Participant 1 voit la souris du Participant 2 et vice versa.

Déclencheur

Le déclencheur pour l'événement est À l'initialisation du cadre car nous voulons attribuer la visibilité de l'objet curseur dès que le cadre s'initialise.

L'initialisation du cadre dans Labvanced

Action

Après avoir spécifié cela et cliqué sur le bouton ‘Suivant’, vous pouvez sélectionner les actions qui se produiront lors de l'initialisation du cadre.

Ci-dessous, nous montrons que l'action que nous utilisons est une Action de Contrôle → ‘Si… Alors’, donc :

  • Si Role_Id est égal à 1 (Remarque : Role_Id est une variable qui est unique aux études multi-utilisateurs et attribue l'ID au participant).
  • Alors, Définir la Propriété de l'Objet de la visibilité de l'objet mouse_user_2 à 1.
  • Remarque : La combinaison de ces deux actions signifie essentiellement : “Si vous êtes le Participant 1 (Role_Id==1), alors vous verrez l'objet mouse_user_2.”
  • Remarque : Comment le Role_Id == 1 est-il spécifié dans l'éditeur ? Consultez la section étape par étape ci-dessous où cela est expliqué plus en détail.

spécifiant que si l'ID de rôle du premier participant est 1, alors enregistrer les données de suivi de la souris

Sous la section Sinon Si, nous faisons la même chose mais pour le participant 2 (Role_Id==2). L'objet cible est mouse_user_1 qui devrait avoir la valeur de visibilité de 1.

spécifiant que si l'ID de rôle du deuxième participant est 2, alors enregistrer les données de suivi de la souris

ÉVÉNEMENT : sendMove

Ensuite, nous devons établir un ‘pont’ entre les deux participants où si vous déplacez votre souris, ces valeurs sont suivies/storées et envoyées à l'autre participant.

Déclencheur

Ainsi, le Déclencheur de la souris est utilisé pour cet événement où tout ‘Déplacement’ qui se produit déclenchera l’événement.

Indiquant que le déclencheur de l'événement est un déclencheur de souris.

Actions

Encore une fois, une commande Action de Contrôle → Si…Alors est nécessaire :

indiquant que l'ID de rôle est égal à un

Enregistrer le tableau de suivi de la souris et partager avec d'autres sujets de l'étude multiparticipant

Où si votre Role_Id==1, alors les suivantes Actions de Variable ont lieu :

  • Définir / Enregistrer une Variable: Pointer / définir la variable moveMouse1 et la définir pour être égale à la valeur spécifique au déclencheur de Souris [X,Y] Tableau.
  • Distribuer la Variable: Partager cette variable avec le Participant 2.

Sinon, si votre Role_Id==2 …

spécifiant que l'ID de rôle est égal à deux

Alors :

  • Le moveMouse2 enregistrera le tableau de souris [X,Y] (tout comme dans l'exemple précédent ci-dessus) mais nous l'utiliserons pour stocker les valeurs de suivi de la souris du Participant 2 et le définir pour être égal à leur tableau de souris [X,Y].
  • Ensuite, distribuez cette variable au participant 1.

Définir le suivi de la souris pour mesurer le tableau et les valeurs des coordonnées

Résumé - Jusqu'à présent, nous avons :

  • Créé des variables pour stocker le tableau de suivi de la souris [X,Y] de chaque participant (moveMouse1 pour le curseur du Participant 1 et moveMouse2 pour le curseur du Participant 2)
  • Et établi un pont où la valeur de suivi de la souris est envoyée à l'autre participant en utilisant l'action Distribuer la Variable.

ÉVÉNEMENT : receiveMove

Ensuite, nous devons spécifier ce qui se passera avec ces valeurs de suivi de souris. Dans ce cas, lors de la réception des déplacements de souris sous forme de tableau, nous voulons changer l'objet curseur de sorte qu'il reflète les mouvements ! En d'autres termes, en utilisant le tableau [X,Y], nous allons lier ces valeurs au curseur de la souris pour qu'il se déplace essentiellement, montrant ce que l'autre participant fait à l'écran ! Ainsi, pour accomplir cela, le déclencheur et les actions décrites ci-dessous seront utilisés.

Déclencheur

Puisque les valeurs de suivi de la souris sont stockées dans des variables, chaque fois que ces variables changent, cela signifie que la souris est en mouvement. Ainsi, nous pouvons utiliser le Déclencheur de Valeur de Variable Changée pour mettre à jour l'emplacement du curseur à l'écran en sélectionnant les deux variables spécifiques qui contiennent les valeurs de suivi de la souris comme montré ci-dessous :

Configurer le déclencheur si les valeurs de suivi de la souris changent

Action

Ensuite, nous voulons utiliser l’Action Sélectionner dans le Tableau (Lire) afin d’extraire les valeurs des coordonnées x et y des tableaux de variables du curseur, car nous prévoyons de les utiliser pour définir les coordonnées de l'objet.

Ainsi, nous sélectionnons la variable moveMouse1 qui contient le tableau des [X,Y] du participant 1 et appelons la première valeur qui était un Index Fixe de 1 et stockons cette valeur dans une variable numérique appelée x_mouse1 car les valeurs x sont listées en premier dans le tableau.

Définir le tableau de suivi de la souris et enregistrer les valeurs individuelles et les stocker en tant que variables avec les valeurs x et y

Nous ajoutons une autre action Sélectionner dans le Tableau (Lire) et pour l’Index Fixe écrivez 2 car nous voulons appeler la deuxième valeur du tableau qui sont les coordonnées y et stockez-la dans la variable y_mouse1.

Pour faire bouger l'image du curseur, nous devons mettre à jour ses coordonnées d'image en temps réel en lui attribuant les valeurs x et y qui sont équivalentes aux coordonnées x et y de suivi de la souris (que nous avons extraites et stockées dans les variables x_mouse1 et y_mouse1 dans les actions ci-dessus).

Pour y parvenir, nous devons choisir l'action Définir la Propriété de l'Objet de sorte que la Cible de mouse_user_1 (dans l'image ci-dessous, elle est juste référencée comme ‘souris’ car la boîte de dialogue raccourcit le titre) et sa propriété X ait une valeur (=) de x_mouse1+5 qui est une opération arithmétique. Référez-vous à cette explication étape par étape de la façon dont cela est configuré.

Définir la propriété de l'objet de l'emplacement de la souris du participant pour prendre les valeurs de suivi de la souris

À ce stade, vous vous demandez peut-être pourquoi le +5 apparaît dans le champ de saisie… C'est parce que nous devons créer un décalage puisque cet objet est en fait un objet texte qui comprend une image intégrée (comme décrit au début de cette démonstration). Ainsi, si vous devez construire votre étude et que les utilisateurs voient leurs propres curseurs personnalisés comme nous le faisons ici mais qu'ils cliquent également sur d'autres objets dans l'étude, cela ne sera pas possible à moins que vous ne créiez ce décalage (à moins que vous choisissiez d'omettre l'image du curseur et de conserver simplement l'étiquette de texte).

Pour continuer, nous choisissons +Ajouter Propriété et lui indiquons que l'objet image sélectionné Y sera égal à la variable y_mouse1.

Nous répétons le même processus mais sélectionnons simplement les autres variables que nous avons dédiées pour le participant 2 :

Prendre les tableaux de suivi de souris du participant 2 et les stocker en tant que variables individuelles pour les valeurs x et y de chaque variable

Ici, nous pointons vers l'objet mouse_user_2 et assignons les variables respectives :

Utiliser les valeurs de suivi de la souris x et y pour mettre à jour l'objet curseur de la souris afin de partager la localisation du curseur dans l'étude multiparticipant

Ensemble, toutes ces actions permettent aux deux objets curseurs de se déplacer pour les deux participants en lisant des valeurs à partir de la variable tableau et en utilisant ensuite ces valeurs numériques pour définir les valeurs x et y de l'objet.

ÉVÉNEMENT : end

Ensuite, nous créons un événement pour officiellement mettre fin au processus d'enregistrement des données et stocker les données en insérant un bouton ‘fin’ qui, lorsqu'il est utilisé comme déclencheur, entraînera une Action de Contrôle où l’action Accepter/Terminer la Session se produira.

Déclencheur

Pour mettre fin à la session, le déclencheur de bouton est où le clic sur le Bouton de Fin déclenchera la fin de session.

Indiquant le bouton comme déclencheur

Action

L'action est d'Accepter/Terminer la Session.

Terminer la session

Encore une fois, veuillez noter que cette démo est à des fins d’apprentissage et n’est qu’une méthode parmi tant d’autres pour partager l'emplacement de la souris et du curseur dans un cadre d'étude multi-utilisateurs. Un autre exemple de la façon dont cet effet peut être accompli est décrit dans les sections suivantes.

Approche 2 : Approche de Variable Unique pour le Partage de Curseurs dans les Études Multi-Utilisateurs

Dans cette autre démo, au lieu des tableaux, nous montrons comment vous avez la possibilité d'utiliser des valeurs uniques (c'est-à-dire d'appeler directement les coordonnées X et Y).

Aperçu d'une étude multi-utilisateurs où un emplacement du curseur de la souris est partagé

Voici un aperçu complet de cette démo, y compris un aperçu des données enregistrées à la fin :

Objet Unique pour le Curseur

Cette démo diffère également de la précédente en ce sens que, au lieu de deux objets pour le curseur, il n'y en a qu'un seul. Cette approche est idéale pour les études multi-utilisateurs qui souhaitent simplement montrer où se trouve le curseur de l'‘opposant’ ou du ‘coéquipier’.

Ajout de l'objet curseur de souris à l'éditeur Labvanced pour l'objectif d'une étude multi-participants

Variables personnalisées

Cette autre démo comprend les variables personnalisées suivantes et leur spécification. Bien que cette démo ait moins de variables, elle nécessite plus d'événements/actions que l'exemple précédent utilisant des tableaux.

Variables personnalisées créées pour un multi-participant

ÉVÉNEMENT : sendMove

Le déclencheur est le mouvement de la souris :

Le déclencheur de souris étant sélectionné

L'action consiste à enregistrer les valeurs spécifiques au déclencheur des coordonnées X et Y de la souris dans deux variables séparées qui sont spécifiquement nommées pour indiquer le participant 1.

Enregistrement des valeurs x et y comme valeurs séparées en fonction du suivi de la souris du Participant un

Les actions suivantes sous cette condition si/alors servent à distribuer ces deux valeurs au participant 2.

Distribution de la variable de suivi de la souris au participant 2 dans une étude multi-utilisateurs

Ensuite, nous ajoutons une condition ‘Sinon Si’ pour enregistrer les valeurs spécifiques au déclencheur des coordonnées X et Y de la souris dans deux variables séparées qui sont spécifiquement nommées pour indiquer le participant 2.

Enregistrement des valeurs x et y comme valeurs séparées en fonction du suivi de la souris du Participant deux

Les actions suivantes sont utilisées pour distribuer ces deux valeurs au participant 1.

Distribution de la variable de suivi de la souris au participant un dans une étude multi-utilisateurs

ÉVÉNEMENT : receiveMove1

Maintenant, nous avons besoin d'un événement pour transmettre les coordonnées de la souris. Ainsi, si ces valeurs de variable spécifiques associées au Participant 1 changent, elles seront utilisées comme déclencheur :

Définir que lorsque les variables de suivi de la souris changent, alors le déclencheur

Ensuite, nous mettons à jour la propriété de l'objet de localisation du curseur pour prendre ces valeurs en utilisant une action. En essence, si vous êtes le Participant 2, alors l'objet Opposant prend les coordonnées des variables du Participant 1 :

Définir la propriété du curseur égale aux valeurs de suivi de la souris

ÉVÉNEMENT : receiveMove2

Nous faisons la même chose ici. Si vous êtes le Participant 1, alors l'objet Opposant prend les coordonnées des variables du Participant 2 :

Les valeurs des variables changent de suivi de souris utilisées comme déclencheur d'événement

Définir les valeurs du curseur de la souris pour être égales aux valeurs du participant 2 dans une étude multi-utilisateurs

Conclusion

Cette démonstration montre deux des nombreuses manières dont les coordonnées de la souris peuvent être utilisées pour mettre à jour les propriétés d'objet afin de transmettre la localisation du curseur dans une configuration d'étude multi-utilisateurs. Vous pouvez utiliser des tableaux.

Détails de la Démonstration : Saisie des Valeurs Étape par Étape

Si vous trouvez toujours votre chemin autour de Labvanced ou si vous avez simplement besoin d'une clarification supplémentaire, les sections ci-dessous vous montrent, étape par étape, comment mettre en œuvre certaines commandes et les étapes que vous devez suivre en utilisant les menus pour les mettre en œuvre :

  • Spécifier Role_ID==1 dans une Action de Condition
  • Sélectionner le Tableau de Souris [X,Y] à Enregistrer dans une Variable pour le Suivi de la Souris
  • Utiliser des Opérations Arithmétiques pour Définir une Propriété d'Objet

Spécifier Role_ID==1 dans une Action de Condition

Dans la démo ci-dessus, cette ligne apparaît fréquemment, alors comment pouvez-vous l'obtenir ainsi ?

Spécifier que l'ID de rôle est un

Tout d'abord, +Ajouter Action et sélectionnez Actions de Contrôle → Actions de Condition (Si…Alors) car c'est le contexte dans lequel cela apparaît fréquemment dans cette démo.

Sélectionner l'action de contrôle et spécifier l'action Si...Alors

Ensuite, + Condition pour que vous puissiez spécifier la Condition Si en plus de détails.

Pour le premier icône de crayon (appelé Menu de Sélection de Valeur), choisissez Variable → Sélectionner Variable afin de pointer vers la variable Role_Id.

Sélectionner une variable

Cela ouvrira le menu des Variables où toutes les variables locales / globales sont stockées. Dans le panneau supérieur, sous Variables Globales, vous trouverez la variable Role_Id. Sélectionnez-la.

Sélectionner l'ID de rôle

Ensuite, sur l'autre icône de crayon, vous devez spécifier la valeur de l'ID de rôle du participant. Donc, allez à Valeur Constante → Numérique.

Sélectionner la valeur constante

Et tapez simplement le nombre 1. Voilà!

L'ID de rôle est défini sur 1

Utiliser des Opérations Arithmétiques pour Définir une Propriété d'Objet

Définir l'emplacement du curseur se fait en utilisant l'action Définir la Propriété de l'Objet, en spécifiant l'objet cible, sa propriété, puis en spécifiant la valeur de variable qui doit être utilisée comme nouvelle valeur pour la propriété de l'objet.

Utiliser la propriété de l'objet pour appeler les valeurs afin de l'attribuer à un curseur de souris

Sélectionnez l'Action d'Objet :

Définir propriété d'objet, sélectionnant l'action

Pour la Cible, cliquez sur le premier aucun et sélectionnez le premier objet curseur mouse_user_1 dans la liste. Pour la seconde liste des propriétés d'objet, sélectionnez l'option X :

Sélectionner l'objet utilisateur de souris

Puis, cliquez sur l'icône de crayon. Choisissez Opérations dans le menu et sélectionnez l'option Arithmétique :

Sélectionner les opérations arithmétiques

Cliquez sur la première icône de crayon et choisissez Variable → Sélectionner Variable et une boîte de dialogue des variables apparaîtra de laquelle vous pourrez sélectionner la variable x_mouse1 :

Action Sélectionner Variable

Ensuite, cliquez sur la deuxième icône de crayon et choisissez Valeur Constante → Numérique et tapez le nombre 5 dans le champ qui apparaît.

Choisir l'option de valeur constante

Parce que cela concerne la démonstration où l'objet est une combinaison d'une image et de texte, nous devons décaler la valeur de 5 points afin que l'objet en dessous soit cliquable :

Définir la propriété d'objet pour être égale aux valeurs de suivi de la souris

Cliquez sur +Ajouter Propriété en dessous et indiquez que la variable y_mouse1 sera attribuée à la propriété Y de l'objet mouse_user_1.

Les valeurs de propriété d'objet définies dans une étude multi-utilisateurs utilisant les valeurs de suivi de la souris

Prev
Démonstration de suivi oculaire : SVG comme AOIs
Next
Configuration de base du contrôleur de jeu/joystick