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 :

Discrétisation d'un polygone


Sujet :

Algorithmes et structures de données

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    ingénieur en automatique
    Inscrit en
    Avril 2013
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur en automatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2013
    Messages : 59
    Par défaut Discrétisation d'un polygone
    Bonjour,

    Je travaille sur un projet d'automatique (automatisation d'un process, c'est de l'info indus avec automate programmable derrière).
    Pour faire simple, j'ai une forme quelconque et le but du système est de la remplir.

    J'ai déjà réfléchi à la stratégie concernant le système physique (modèle pour les trajectoires, commande des actionneurs pour distribuer du produit, etc.)

    Pour pouvoir mener à bien le projet, il faut que mon polygone soit "compréhensible" par mon système (pour pouvoir justement générer les trajectoire de mon outil de remplissage, ce dernier
    ne pouvant faire que des longueurs, de la gauche vers la droite, avec décalage vers le haut ou le bas à chaque bord).

    Pour en venir à mon problème, mon polygone est défini par un ensemble de segments (chaque segment étant défini par 2 points, dans un plan donc uniquement du 2D).
    A partir de cela, je voudrai réaliser une discrétisation de l'ensemble de l'espace occupé (on parle de maillage si j'ai bien compris, mais sur google cela renvoi sur des pages et des pages de math).
    Pour cela je me suis dit que je peux prendre des cases de 1mm * 1mm (ce qui peut donner un tableau 2D de booléens au final), c'est suffisant pour mon problème.
    Mon problème est que je ne sais absolument pas comment je peux faire pour passer d'une liste de segments à un modèle 2D, et cela de manière la plus simple possible (je parle en logique de process, concernant la performance du système on a un i5 derrière donc pas de problème en puissance de calcul même si c'est un automate et pas un PC).

    J'ai mis en pièce jointe un exemple (tordu mais possible) de polygone pouvant être traité.
    Mon idée était de partir du bord en haut à gauche ou démarre le polygone puis de suivre le contour vers le bas mais après je suis rapidement bloqué.
    On peut également voir sur la droite 3 ouvertures qui ne doivent pas être couvertes, pour l'instant elles ne m'intéressent pas, je souhaite couvrir tout le polygone, puis utilisé la même méthode en local pour soustraire localement ces ouvertures...

    Si quelqu'un à une idée je suis preneur parce que là mes méninges ne donnent rien.

    Merci beaucoup
    Images attachées Images attachées  

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

Discussions similaires

  1. Transformer une ligne en polygone
    Par bl4d3 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 02/09/2003, 09h35
  2. Comment detecter un polygon sous le curseur
    Par FreshVic dans le forum OpenGL
    Réponses: 2
    Dernier message: 04/07/2003, 10h48
  3. Triangulation de Polygones
    Par seb_lisha dans le forum DirectX
    Réponses: 1
    Dernier message: 01/07/2003, 12h40
  4. [Algo] Point à l'intérieur d'un polygone ?
    Par kebby dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/05/2003, 13h22
  5. une ligne et un polygone convexe
    Par rekam dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 20/12/2002, 10h39

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