IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Problème Function paramètre


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut Problème Function paramètre
    Bonjour,

    J'ai fait une petite fonction pour éviter de répéter le code à chaque fois en faisant appelle à cette dernière quand j'en ai besoin,mais à l'exécution j'ai une erreur qui s'affiche :
    Undefined variable "Marker" or class "Marker.Marker05.value". 
    Pourtant j'importe les structure au préalable qui comporte toutes les données des marker's.

    Je vous montre mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    function [D] = Distance_mouvement ()
     
    Distance_M5_M7=[];
    X5=Marker.Marker05.value(:,1);
    Y5=Marker.Marker05.value(:,2);
    Z5=Marker.Marker05.value(:,3);
    X7=Marker.Marker07.value(:,1);
    Y7=Marker.Marker07.value(:,2);
    Z7=Marker.Marker07.value(:,3);
    X9=Marker.Marker09.value(:,1);
    Y9=Marker.Marker09.value(:,2);
    Z9=Marker.Marker09.value(:,3);
     
    l=1;
    for i=1:1:length(Marker.Marker07.value)
     
        Distance_M5_M7(l)=sqrt((X7(i)-X5(i))^2+(Y7(i)-Y5(i))^2+(Z7(i)-Z5(i))^2);
        l=l+1;
     
    end
     
    l=1;
    for i=1:1:length(Marker.Marker07.value)
        Distance_M7_M9(l)=sqrt((X9(i)-X7(i))^2+(Y9(i)-Y7(i))^2+(Z9(i)-Z7(i))^2);
        l=l+1;
    end
     
    l=1;
    for i=1:1:length(Marker.Marker07.value)
        Distance_M5_M9(l)=sqrt((X9(i)-X5(i))^2+(Y9(i)-Y5(i))^2+(Z9(i)-Z5(i))^2);
        l=l+1;
    end
     
     
    D.Distance_M5_M7 = Distance_M5_M7;
    D.Distance_M7_M9 = Distance_M5_M7;
    D.Distance_M5_M9 = Distance_M5_M7;

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 165
    Points
    53 165
    Par défaut
    Il faut passer la structure en paramètre de la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function D = Distance_mouvement(Marker)
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    Merci ! En plus de ça il fallait chargé aussi le jeu donné qui contient les Marker's avec un petit load comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function [D] = Distance_mouvement (Marker)
    load('test distance_002_2017_7_3.mat');
     
    ....
    mais j'ai plusieurs jeu de donnée et je veux les importer d'une manière interactive, j'ai crée un petit GUI avec un bouton "import" en mettant juste la commande uiimport('-file'), après sur mon scripte principale j'appelle mon GUI, la fenêtre s'affiche mais le programme continu de s'exécuter avant d'importer mes données, donc ça plante ... je pense à faire une boucle while mais après je ne sais pas comment utiliser, j'avoue ne pas être très habituer avec Matlab, encore é_è

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/12/2008, 10h20
  2. Problème de paramètres dans mon code javascript
    Par cocacollection dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 15/03/2006, 10h53
  3. [POO] Problème de paramètre passé par référence
    Par dug dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/08/2005, 20h29
  4. [JSP] Problème passage paramètre
    Par besco dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 13/09/2004, 10h15
  5. [SWT] Problème de paramètre GridData
    Par yolepro dans le forum SWT/JFace
    Réponses: 4
    Dernier message: 06/12/2002, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo