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

Algorithmes et structures de données Discussion :

Propagation lumière par rayon tableau 2D


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 197
    Par défaut Propagation lumière par rayon tableau 2D
    Bonjour,
    je suis coincé sur un problème,
    J’essai de propager de la lumière sur un damier 2D, le damier est constitué d’une source lumineuse et de mur.
    Les rayons lumineux se propagent de la source lumineuse en ligne droite et ne peuvent pas traverser les murs.

    Je n’ai pas d’idée pour déterminer les positions du tableau qui sont dans la ligne de mire de la source lumineuse.

    Une image comme exemple avec une propagation maximal de 4. Les points jaune représente les positions ou la lumière est visible.


    Merci

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut
    Salut!
    Au vu de ton image, il est évident que ton problème est mal formulé: par exemple, si tu fais 1 pas à gauche et 3 en bas, tu trouves un point jaune, alors que si tu fais 1 pas à droite,et 3 en haut, tu n'en trouves pas. Pourquoi?
    Jean-Marc Blanc

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 197
    Par défaut
    bonjour FR119492,
    justement il n'y en a pas car le rayon et bloqué par le mur situé 1 pas en haut par rapport à la position de la lumière.
    Je rajoute l'image avec le tracé des rayons:


    Evidement je cherche un algo qui ne soit pas un tracé de rayon mais un parcourt de tableau afin d'optimiser mon code.

  4. #4
    Membre chevronné

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Par défaut
    Salut,
    Tu pourrais peut-être utiliser l'Algorithme de Bresenham pour avoir la liste des cases entre ta source et la case d'arrivée: si au moins l'une d'elle est un mur alors la lumière n'y parvient pas...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 197
    Par défaut
    Merci pour ta proposition
    J'avais vu cette algorithme en parcourent le web.
    Malheureusement cet une optimisation d'un lancer de rayon sur un tableau.
    Le problème c'est que plus le diamètre de la lumière est grand plus je doit tracer de rayon pour balayer toute une zone ce qui implique de revenir inutilement un très grand nombre de fois sur des cases déjà testé par les rayons précédent(ceux situé au plus près de la source lumineuse).

  6. #6
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Citation Envoyé par carton99 Voir le message
    Le problème c'est que plus le diamètre de la lumière est grand
    Est ce que cela veut dire que la source fait plus d'une case ?
    Bresenham est EXTREMEMENT rapide.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tableaux] Liste renseignée par un tableau
    Par teen6517 dans le forum Langage
    Réponses: 7
    Dernier message: 19/03/2007, 11h25
  2. Réponses: 20
    Dernier message: 05/07/2006, 20h03
  3. Réponses: 7
    Dernier message: 26/04/2006, 16h16
  4. [Tableaux] Remplacer les Frame par un tableau?
    Par Malau dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2006, 16h43
  5. Menu déroulant par dessus tableau
    Par M1000 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/12/2005, 15h14

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