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
Partager