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 :

Dessiner une bande dans une matrice


Sujet :

MATLAB

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Points : 39
    Points
    39
    Par défaut Dessiner une bande dans une matrice
    Bonjour

    Je connais un algo qui permet de donner les coordonnées des points qui relient deux points dans une matrice.

    par exemple, si je rentre A=[1;1], B=[6;2], l'algo va me rendre les coordonnées des points suivants :

    1 0 0 0 0 0
    1 0 0 0 0 0
    1 0 0 0 0 0
    0 1 0 0 0 0
    0 1 0 0 0 0
    0 1 0 0 0 0

    je voudrais faire un peu mieux : je voudrais donner une épaisseur à ce segment pour obtenir quelque chose du genre

    1 1 0 0 0 0
    1 1 0 0 0 0
    1 1 0 0 0 0
    0 1 1 0 0 0
    0 1 1 0 0 0
    0 1 1 0 0 0

    en ne rentrant que les coordonnées des points de départ et d'arrivée, la largeur étant un parametre que l'on met en entrée.

    S'il existe une version rapide de cet algo, je suis preneur, car j'aurai besoin de le faire tourner des milliers de fois sur des matrices 64 x 64... Les coordonnées des points des points ne m'interessent pas trop, la matrice me suffit...

    Merci beaucoup de votre aide

  2. #2
    Expert confirmé
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Points : 4 039
    Points
    4 039
    Par défaut
    j'aimerais bien t'aider mais je en comprends pas la logique de ton algo qui te retourne :

    1 0 0 0 0 0
    1 0 0 0 0 0
    1 0 0 0 0 0
    0 1 0 0 0 0
    0 1 0 0 0 0
    0 1 0 0 0 0
    MATLAB 8.2 (R2013b)

    le blog des MATLAB geeks

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Points : 39
    Points
    39
    Par défaut
    l'algo donne les coordonnées des points reliant [1;1] et [6;2] : [2;1], [3;1], [4;2], [5;2]. Par la suite, il est possible de remplir une matrice de zeros en mettant des 1 à ces coordonnées.

  4. #4
    Expert confirmé
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Points : 4 039
    Points
    4 039
    Par défaut
    il faudrait commencer par récupérer les indices de la matrice valant 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    A=[1 0 0 0 0 0;
    1 0 0 0 0 0;
    1 0 0 0 0 0;
    0 1 0 0 0 0;
    0 1 0 0 0 0;
    0 1 0 0 0 0];
    find(A==1)
    ensuite affecter la valeur de 1 aux indices qui t'interessent
    MATLAB 8.2 (R2013b)

    le blog des MATLAB geeks

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Points : 39
    Points
    39
    Par défaut
    par exemple, mais je ne sais pas si c'est la facon la plus rapide

Discussions similaires

  1. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  2. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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