Applications pratiques avec Python et RFEM 6 | Générateur de treillis 2D
Article technique
Les services web récemment introduits offrent aux utilisateurs la possibilité de communiquer avec RFEM 6 à l'aide du langage de programmation de leur choix. Cette fonctionnalité est améliorée par notre bibliothèque de fonctions de haut niveau (HLF). Les bibliothèques sont disponibles pour Python, JavaScript et C#. Dans cet article, nous vous présentons un cas d'utilisation pratique de programmation d'un générateur de treillis 2D avec Python. « Apprendre en pratiquant » comme dit le proverbe.
Aperçu
Utiliser la puissance de RFEM 6 au-delà de l'interface graphique utilisateur (GUI) et du contrôle/de l'automatisation du processus de modélisation et de vérification constituent un avantage vraiment considérable. Cependant, la puissance de la programmation avec RFEM 6 va au-delà du simple contrôle automatique. Les utilisateurs peuvent combiner la bibliothèque HLF de RFEM 6 avec d'autres bibliothèques HLF pour développer des applications personnalisées.
Dans cet article, nous vous présentons un générateur de treillis 2D. Le générateur de treillis 2D a été écrit en Python et utilise de puissantes bibliothèques Python telles que PyQt et Numpy en combinaison avec la HLF de RFEM. Le résultat final est une interface graphique, qui permet une génération flexible de treillis.
Apprendre les bases
Cet article ne met en évidence que des parties de code propres à son application dans le développement du générateur de treillis 2D. Les bases de la programmation avec RFEM 6 et Python sont disponibles dans notre courte série de vidéos en 6 parties sous le lien suivant :
Utilisation
Le code de cet exemple est disponible dans la bibliothèque HLF mentionnée ci-dessus (RFEM_Python_Client/Examples/TrussGenerator_2D). Le code est open-source et inspirera, espérons-le, les utilisateurs pour leurs propres projets. Les détails sur l'utilisation de RFEM HLF (par exemple, le clonage du référentiel) sont expliqués dans la série de vidéos ci-dessus.
Parties spécifiques du code
Try et except
Comme mentionné précédemment, cet exemple utilise de nombreuses bibliothèques différentes avec la HLF de RFEM (par exemple, Numpy et PyQt5). Si les utilisateurs n'ont pas installé de bibliothèque spécifique, une commande « import » générera une erreur. Pour résoudre ce problème potentiel, les blocs « try » and « except » sont utilisés. L'« importation » relève du bloc « try » et en cas d'échec, le code est placé dans le bloc « except » qui invitera l'utilisateur à installer les bibliothèques requises à l'aide de pip.
Construire l'interface graphique avec PyQt5
PQt5 est une bibliothèque dédiée à la création d'interfaces graphiques. Une grande partie du code est composée des définitions et des instructions requises par PyQt5 pour créer l'interface graphique du générateur de fermes 2D.
La documentation pour l'utilisation de PyQt5 peut être trouvée via ce lien :
De nombreux tutoriels sont également disponibles sur YouTube.
Définition du treillis
Les HLF de RFEM permettent de définir rapidement un treillis. Pour obtenir de l'aide sur la programmation d'un treillis, consultez la sixième vidéo de la série de vidéos susmentionnée.
Les variables initialisées dans les définitions PyQt5 sont également intégrées ici comme arguments pour les définitions de treillis RFEM. Cela crée une interopérabilité entre les deux bibliothèques.
Une série d'instructions try, except et if est déployée pour valider les informations fournies dans l'interface graphique.
Remarques finales
L'article ci-dessus a pour but de donner un bref aperçu de la création d'une interface utilisateur graphique pour un générateur de treillis 2D paramétrique. Si des informations supplémentaires sont nécessaires, veuillez utiliser la section commentaires de cet article et nous nous ferons un plaisir de vous répondre.
Auteur

Björn Steinhagen, B.Sc.
Ingénierie de produit
M. Steinhagen soutient le développement et l'assurance qualité des programmes Dlubal.
Mots-clés
Python Service web Interface graphique Programmation
Liens
- Guide de référence de PyQt5
- Programmation avec RFEM 6 et Python | 006 Exemple | Treillis plan
- Vidéos E-learning | Programmation avec RFEM 6 et Python
Laissez un commentaire...
Laissez un commentaire...
- Vues 3273x
- Mis à jour 19 juillet 2023
Contactez-nous
Vous avez d'autres questions ou besoin de conseils ? Contactez-nous par téléphone, e-mail, chat ou via le forum, ou consultez notre FAQ, disponible 24h/24 et 7j/7.

Nouveau
Vérification des poutres à âme pleine selon l'AISC 360-16 dans RFEM 6
La poutre à âme pleine est un choix économique pour la construction avec de longues travées. Les poutre à âme pleine en acier avec section en I ont généralement une âme profonde pour tirer le meilleur parti de leur résistance au cisaillement et de l'espacement entre les semelles, mais l'âme est mince pour réduire le poids propre. En raison de son important rapport hauteur/épaisseur (h/tw), des raidisseurs transversaux peuvent être nécessaires pour rigidifier l'âme élancée.

Nouveau
- Est-il possible de calculer des barres avec une section de classe 4 selon la CSA S16 dans le module complémentaire Vérification de l'acier ?
- Comment connecter des surfaces à d'autres surfaces ou barres de manière articulée/semi-rigide dans RFEM 6 ? Qu'est-ce que des articulations linéiques et des libérations linéiques ?
- Comment importer ma section RSECTION dans RFEM 6/RSTAB 9 ?
Produits utilisés