QElectrotech 0.5 pour vos schémas électriques

42
28
nov.
2015
Science

Un peu moins d'un an après la dernière version stable de QElectroTech (QET), la version 0.5 est maintenant disponible en téléchargement.

Pour rappel, QElectrotech est un logiciel libre multi‐plate‐forme, permettant de réaliser des schémas de circuits électriques. QET est disponible sous licence GNU GPL. Le développement du logiciel se fait en C++ avec maintenant la bibliothèque Qt 5.

Sommaire

Général

En bref, au menu de cette version, nous pouvons trouver :

  • la migration de l'application vers Qt 5 ;
  • l'utilisation du format natif dans QSettings ;
  • le nettoyage de code et la résolution de bugs ;
  • l'ajout de nouvelles fonctionnalités ;
  • une collection commune contenant à ce jour 2625 éléments dans 418 catégories (soit 3043 fichiers) ;
  • la traduction russe a repris grâce au travail d'un nouveau traducteur : Evgeny.

Configuration

Du fait de l'utilisation du format natif pour QSettings, les fichiers de configuration se trouvent dorénavant ici :

Pour les distributions GNU/Linux :
$HOME/.config/QElectroTech/QElectroTech.conf

Pour Mac OS X :
$HOME/Library/Preferences/QElectroTech/QElectroTech.plist

Pour Windows il est maintenant stocké dans le registre :
HKEY_CURRENT_USER\Software\QElectroTech\

Regedit

Évolutions

  • Pour éviter le "drag and drop" fastidieux d'un même élément sur le schéma, il est conservé en mémoire, on peut ainsi en poser plusieurs à la file. La touche "espace" permet de tourner l’élément et la rotation est conservée. Le symbole est automatiquement relié, et le conducteur incrémenté si une règle de numérotation est active pendant la pose de l’élément. Un bouton permet de dé-valider la création de conducteurs a la volée.

Conducteurs automatique (GIF)

  • Dans l’éditeur de folio, la grille n'est plus affichée par défaut en dehors du cadre, le dézoom minimum est bloqué.
    Un bouton permet de dé-valider ce fonctionnement.

  • Il est maintenant possible de mettre le cartouche sur la droite en mode vertical.

  • On peut définir le cartouche par défaut pour les prochains folios du projet : une liste permet de choisir le cartouche à mettre par défaut dans les cartouches fournis, cartouches personnels, ou ceux importés : dans le cas d'ouverture d'un projet inconnu.
    Des icônes différencient les différents types de cartouches.

Cartouche par défaut

  • Le sommaire prend maintenant la police paramétrée dans le QElectroTech.conf ou dans la base de registre pour Windows, sans paramètre ajouté c'est la police par défaut qui est appliquée ("sans Serif" en taille 9 ).
    Sur cette version, il conserve le cartouche choisi par défaut.

  • Amélioration du code sur le switch du fond blanc en gris et vice versa des folios, les bordures et cartouches passent en gris comme le reste du schéma.

  • Le dock flottant est à présent opérationnel, les variables, actions sont prises en compte à la volée.

Transformation

Éditeur de primitives

Un outil de transformation permet de transformer plus rapidement et finement chaque primitive par des poignées.
Il est ainsi plus aisé de transformer une ligne, un rectangle, un cercle, un polygone, etc.

Ces poignées sont visibles et accessibles quel que soit le zoom de la vue.
Le comportement du zoom sur l’édition de ces primitives a été corrigé, il reste désormais sur le pointeur souris, et ne part plus vers un coin du folio.

Éditeur d’éléments

L'outil de transformation cohabite avec le décorateur qui lui permet toujours d'agrandir et réduire une forme ou un ensemble de formes.
De nouvelles couleurs et textures (lignes, hachures) ont été ajoutées dans l’éditeur d’élément.

Ces transformations ont aussi été ajoutées à la pile d'annulation et sont, de plus, animées graphiquement.
Du côté des basic shapes, l'outil de transformation travaille directement sur les vecteurs, il remplace avantageusement l'outil de réduction / agrandissement qui vient d’être supprimé car inutile.
Les basic shapes (formes de base) et les images, une fois leur position verrouillée, ne sont plus déplaçables même avec le clavier.

Attributs

Depuis quelques temps, au fil des versions de Qt, il est apparu que l'enregistrement des attributs de définitions d'éléments dans le XML n’était plus lu et enregistré dans le même ordre à chaque lancement de QET.
Une classe compare les attributs pour identifier si l’élément qui vient d’être posé sur le schéma existe déjà dans le projet, et s'il l'est, compare l'ensemble des attributs.
Pour des questions de rapidité, cette méthode compare l'ensemble de la chaîne : si un attribut change de place, l’élément est vu comme différent.

De toutes les solutions, celle qui nous est apparue la plus facile à réaliser a été de générer un identifiant unique (UUID) sur chaque élément de la collection, et de s'en servir pour comparer non plus l'ensemble de la chaîne mais seulement l'attribut UUID contenu dans chaque fichier XML.
L'éditeur d’élément ajoute automatiquement ce champ pendant la sauvegarde de l’élément.

La base de donnée permet d’accélérer le chargement d'un nombre important de symboles en gérant dans des tables les changements des miniatures des collections, elle ne compare plus la date de modification de ces fichiers mais leurs attributs UUID pour mettre à jour le cache.

La collection officielle a été patchée pour rajouter ce nouvel attribut.

Il existe un script bash sans prétention, pour ceux sous GNU/Linux qui veulent tagguer leur collection personnelle.

Tous les éléments de la collection officielle contiennent maintenant un champ texte avec le tag "label". Des scripts nous ont permis d'automatiser le remplacement de certains champs texte en tag label rapidement, mais sur environ 1500 éléments restants ce champ et son tag ont dû être ajoutés manuellement. Cette activité a représenté un long travail pas vraiment intéressant, mais indispensable pour la suite des évolutions de QET.

Jusqu’à présent chaque classe d'objet avait sa propre méthode et son propre code pour travailler avec la pile d'annulation. Elles ont été remplacées par une classe commune : QPropertyUndoCommand. Ceci a permis de supprimer du code redondant et de mener à moins de bugs et une maintenance plus aisée.

Du côté du widget propriété du conducteur, deux nouveaux champs textes ont été ajoutés : Fonction et Tension/protocole. Ils permettent, en plus du numéro de conducteur, d'ajouter des renseignements sur la nature et la fonction de ce conducteur, visibles au travers de toute son équipotentialité, renvois de folio en folio, etc.

La possibilité d'avoir deux repères de conducteurs différents sur la même équipotentialité a été supprimée.

Les paquets Windows

Les compilations des binaires se font depuis quelque temps en compilation croisée sur Debian et non plus directement sous Windows. Cette manière de procéder implique une réduction importante des temps de compilation, et rend le scriptage et les automatisations plus faciles. En outre, de nouveaux paquets pour Windows 64 bits sont désormais disponibles.
Les bibliothèques MinGw, Qt 5 ne sont plus fournies sous formes de DLL dans le répertoire /bin (mode shared), mais directement intégrées dans le binaire en mode statique. Ceci aboutit à une réduction importante de la taille des paquets.

Installateur Windows

L’installateur pour Windows a été entièrement revu (NSIS) et propose désormais :

  • un nouveau thème graphique ;
  • la désinstallation automatique de l’ancienne version avant l’installation d’une nouvelle version ;
  • le choix des composants à installer, éléments de la collection officielle en lecture seule, installateurs pour Windows 32 et 64 bits ;
  • une case à cocher pour lancer QET dès la fin de l'installation ;
  • l’ajout de liens dans le menu démarrer vers la page téléchargement des dernières versions de développement (nigthly), vers la documentation en ligne (anglais, russe), la page de dons, etc.

Captures

Nomenclature

La position de l’élément dans la scène est désormais ajoutée pour l’exportation vers un tableur.

Divers

Nuri et Galexis se sont attelés à combler des fonctionnalités encore manquantes par l’intermédiaire de l’exportation de la nomenclature en CSV et de macros LibreOffice : insertion d’éléments nomenclature, blocs de bornier dans le projet en cours.

Macro LO Nomenclature
Macro LO Borniers
Macro LO Borniers + Xmlstarlet
Download Macro LO

Convertisseur DXF

Le convertisseur DXF a été entièrement réécrit par Ronny pour le portage Qt 5.

DXFtoelmt

Exemple d’élément converti en symbole QET : ci‐dessous, un automate PLC M221 récupéré en DWG sur le site Schneider.
Une fois converti en DXF (le logiciel propriétaire Drafsight sous GNU/Linux est le seul à sortir une conversion de qualité exploitable par le convertisseur), tout sélectionner, éclater les blocs et enregistrer en DXF format ASCII.

M221.dxf

Exemple d’élément converti

Importation de la nomenclature comme élément.

Feuille de route

Version 0.5.1

Réduire la consommation mémoire utilisée par les nombreux éléments des collections embarquées.

Version 0.6

Gestion des borniers et des câbles.

Avis de recherche

Comme beaucoup de projets du monde libre, QElectroTech recherche des gens motivés (et surtout disponibles) pour rejoindre et renouveler l’équipe existante.

Le projet est plus particulièrement à la recherche de contributeurs pour les activités suivantes :

  • des traducteurs pour continuer la traduction du logiciel ;
  • des empaqueteurs pour répandre QET facilement sur les autres distributions GNU/Linux, et pour nous faire des retours sur l’intégration ;
  • des contributeurs pour la collection d’éléments ;
  • des testeurs ayant une réelle procédure de test ;
  • des développeurs C++/Qt pour l’application elle‐même, bien entendu.

QET est un projet libre, nous sommes bénévoles et les besoins en matériel performant se font sentir . Si vous appréciez ce logiciel, n’hésitez pas à nous soutenir par vos dons. Vous pouvez aussi soutenir notre sympathique hébergeur TuxFamily.org, sans qui ce projet n’aurait pas vu le jour.

Aller plus loin

  • # Merci

    Posté par  (site web personnel) . Évalué à 5. Dernière modification le 29 novembre 2015 à 22:22.

    Merci pour ce super logiciel, j'ai utilisé ça pour faire le schéma unifilaire pour chez mes parents et pour chez moi.

    A chaque fois les contrôleurs étaient surpris d'avoir un particulier qui leur sort un truc avec un rendu pro (c'est bien souvent un dessin sur papier)

    J'avais quelques éléments non présent ou que j'ai dut modifier (avec inkscape), j'ai vu +/- comment modifier les éléments dans QElectroTech, je vais regarder pour contribuer modestement après mes contributions pour sweethome3D (détourné pour le schéma de position)

    • [^] # Re: Merci

      Posté par  (site web personnel) . Évalué à 2.

      Bonjour.
      L'un des objectifs as toujours été d'être aussi bien simple d'accès pour être utilisable par les particuliers que de plus en plus complet pour répondre aux exigences des professionnels.

      La prochaine version 0.5.1 devrais se concentrer sur des problèmes de consommations mémoire «à vide» et sur les petits projets, qui peu poser problème pour les utilisateurs ponctuels, dont les particuliers.

    • [^] # Re: Merci

      Posté par  . Évalué à 1.

      Pareil : merci !

      Je cherchais dernièrement un logiciel de ce type pour refaire l'électricité chez moi.
      J'étais tombé sur QElectroTech justement comme alternative, car c'est fou comment les grandes marques de l'électrique font tout pour que leur outil ne soit pas disponible facilement.

      Si je pouvais, j'aurais contribué. Mais manque de temps (évidemment :-) ) et deux autres projets en cours (open source of course !).

      Dj_ merci aussi pour ta futur implication.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.