Topic: QElectroTech version 0.5 released

Téléchargement
Exemples de schémas réalisés avec QET
Vidéos de démonstration sur youtube
Manuel [Online] de QElectrotech
Convertisseur DXF vers elmt (sources et binaires)


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.

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 a 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\


https://download.qelectrotech.org/qet/forum_img/regedit1.png

É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.

https://download.qelectrotech.org/qet/forum_img/autoconductor.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.


https://download.qelectrotech.org/qet/forum_img/titleblock__default_variables1.png

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), 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 définitions Elé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 a 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 contenus 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 a jour le cache.

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

Script bash sans prétention, pour ceux sous GNU/Linux qui veulent tagguer leur collection personnelle.


Les éléments de la collection officielle contiennent maintenant tous 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 restant 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. De plus 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 résulte en une réduction importante de la taille des paquets.

Installeur Windows

L'installeur 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, installeurs 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 (English, Russian), la page dons, etc.

https://download.qelectrotech.org/qet/forum_img/nsis-qet3.png

Nomenclature

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

Divers

Nuri et Galexis se sont attelés à combler des fonctionnalités encore manquantes par l’intermédiaire de l'export 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





Convertisseur DXF

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

https://download.qelectrotech.org/qet/forum_img/dxf.jpg

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 (Drafsight sous GNU/Linux est le seul a sortir une conversion de qualité exploitable par le convertisseur, tout sélectionner, éclater les blocs et enregistrer en DXF format ASCII).


M221.dxf

https://download.qelectrotech.org/qet/forum_img/schermafdruk66.png




Import de la nomenclature comme élément.


Feuille de route

Version 0.5.1
Réduire la consommation RAM 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 performants 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.

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

Re: QElectroTech version 0.5 released

Hello,

The buildscript for QElectroTech is available for Slackware here: http://slackbuilds.org/
I have built the Slackware package of QElectroTech 0.5. It is working fine on Slackware Current.

Anand

Re: QElectroTech version 0.5 released

Hello Anand,

thanks. nomicons/smile

Laurent

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."