Pages: << < 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 > >>

QElectroTech version 0.5 released EN
by scorpio810 on 29/11/2015 at 14:03:09
Examples of wiring diagrams made with QET
Demonstration videos on youtube
QElectroTech manual [Online]
DXF to elmt converter (sources and binaries)

Just under a year after releasing the latest stable version of QElectroTech (QET), the version 0.5 is now available for download.

As a reminder, QElectroTech is a free multi OS software to create electrical  wiring diagrams. QET is available under GNU GPL license. The software development is made with C++, now with the Qt 5 library.

Briefly, for this version, we find the following developments:

  • The porting of the application to Qt5 ;
  • The use of the native format in QSetttings ;
  • Code cleanup and bug fixes ;
  • Adding of new functionalities ;
  • To date, a common collection containing: 2625 elements in 418 categories (in total 3043 files) ;
  • The russian translation is kept on thanks a new translator: Evgeny.


Because of the use of the native format for QSettings, the configuration files are now stored in :

For GNU/Linux distributions:

For Mac OS X:

For Windows, in the registry:



  • To avoid a tedious "drag and drop" of one element on the diagram, it is hold in memory so that several copies of it can be paste on the fly. The "space" key rotates the element and the rotation change is stored on pasting. Conductors are automaticaly drawn and their numbers are incremented if a numbering schedule is enabled while the symbol is dragged/dropped on the diagram.
  • A button can disable the automatic creation of conductors.


In the folio editor, the grid is no longer drawn by default beyond the title block frame. The minimal zoom out is locked. A check box allows unlocking of zoom out.

It is now possible to set the title block vertically on the right side of the folio.

A default title block can be set for the next folios added in the project: in a list, the default title block can be selected from the QET or user collection, or from the embedded ones (in case of an unknwon project). Different icons are used to differentiate the source of the title blocks.


The list of folios (table of content) now applies the font configured in QElectroTech.conf or in the registry base on Windows. If the font is not configured, the default font is applied (_"sans Serif" size 9_ ). In this version of QET, the list of folios uses the title block set by default.

Code improvement in the white/grey background switch function. The borders and the title block also switch to grey, like the diagram.

The new floating dock widget is completely functional. Variables and actions are updated on the fly.


Primitives editor

A transformation tool allows a faster and more accurate manipulation of graphic primitives by means of handles.
In this way, it is user-friendlier to change lines, rectangles, circles, polygons, etc.

The handles are visible and reachable independently of the view zoom factor.
The wrong zoom behaviour during primitive editing is fixed. It now follows the mouse cursor and doesn't go to the folio corner anymore.

Elements editor

The tranformation tool runs side by side with the scene decorator, which provides the scaling of a shape or several shapes at any time.
New colours and filling patterns are added in the elements editor.

The transformation actions are also added to the undo/redo stack and are graphically animated.
For basic shapes, the transformation tool works directly on vectors and is a better substitute for the now useless scaling widget, which no longer exists.
Basic shapes and images with locked position can no longer be moved with the arrow keys of the keyboard.


For some time and over the succeeding versions of Qt, it became obvious that the attributes in the XML definition of the elements were not always be read and saved in the same order on each QET startup.
A Qt class compares attributes to know if a newly dragged/dropped element on the diagram already exists in the project. In this case, the class compares all the attributes.
For some speed reasons, this method compares the whole attributes string: if the position of an attribute is changed, the element is considered as different (new).

Among all possible solutions, the one which seems to us to be the easiest one is the generation of an universal unique identifier (UUID) for each element of the collection. In this way, only the UUID attributes of the files must be compared and not the whole XML attributes strings.
The elements editor generates automaticaly an UUID during the saving of the element file.

The database speeds up the loading of numberous elements by managing changes of element thumbnails in tables. To update the thumbnails cache, the database does no longer compare the modification date of these files, only the UUID attributes.

The official collection was patched to add the new UUID attribute.

Script bash unpretentious, for those on GNU/Linux who want to patch their own collection.

Every element of the official collection now contains a text field tagged as "label". Some scripts allowed us to automatically replace some normal text fields by "label" text fields. But for about 1500 remaining elements, this work had to be made manually. This was a long work, not really interesting, but necessary for the next developments of QET to come.

Until now, every object class had its own function and code interfacing with the undo/redo stack. They have been replaced by a common class: QPropertyUndoCommand. It allowed the removal of redundant code, leads to less bugs and makes code maintenance easier.

Concerning the conductor properties widget, two new text fields were added: function and voltage/protocol. Besides conductor number, they add new informations about the nature and function of the conductor along its equipotentiality and from a folio to the next one.

The possibility to have two different numbers on a conductor along its equipotentiality is removed.

Windows installer packages

For some time now, the compiling of the binary files are made on Debian with cross compiling, no longer on Windows. It reduces significantly the compiling time, facilitates scripting and automatisation of tasks. Consequently, new Windows 64 bits packages are now available.
The Qt 5 MinGw librairies are no longer provided as DLL in the path /bin (shared mode). They are directly integrated in the binary file in static mode. This produces an important decrease of the packages size.

Windows installer

The Windows installer was completely revamp (NSIS) and offers:

  • A new graphic theme ;
  • The uninstallation of the old QET version before the new one is installed ;
  • The selection of the software components to be installed, elements of the official collection in read only mode, installers for Windows 32 and 64 bits ;
  • A checkbox to launch QET directly after the installation process
  • In the start menu, adding new links to the download page of the last development versions (nigthly), to the online help documentation (english, russian), to the donation page, etc.


Nomenclature (parts list)

The coordinates of the elements in the diagrams are added to the CSV file exported from QET.


Nuri and Galexis tackled the lack of missing functionalities by processing exported CSV data with LibreOffice macros: creation of nomenclature elements, terminal strips diagrams.

Macro LO Nomenclature
Macro LO Borniers
Macro LO Borniers + Xmlstarlet

DXF converter

The DXF converter was totaly rewrote by Ronny for the porting to Qt5.


Example of a DXF file converted to a QET element: below, a programmable logic controler PLC M221 downloaded as DWG file from the Schneider website.
Then converted to DXF (for GNU/Linux, Draftsight is propably the only software which can produce a reasonable export quality for the converter - select all, explode groups and save as DXF with ASCII format).



Importing nomenclature (parts list) as element.

Road map

Version 0.5.1
Decrease of the RAM consumption produced by the many elements of the embedded collections.

Version 0.6
Management of terminal strips and cables.

Wanted notice

As many projects from the free/libre world, QElectroTech is looking for motivated people (and especially available) to join and renew the existing team.

Especially, the project is looking for contributors for the following activities:

  • Translators to carry on the many translations of the software ;
  • Packagers to easily spread QET on other GNU/Linux distributions and to make feedbacks about integration ;
  • Contributors to extend the element collections ;
  • Testers with effective test procedures ;
  • C++/Qt software developers for the application itself, of course.

QET is a free/libre project. We are volunteers and the needs of powerful resources are increasing. If you appreciate this software, do not hesitate to support us with donations. You can also support our nice host, without whom this project could not have happened.
QElectroTech version 0.5 released
by scorpio810 on 27/11/2015 at 19:28:42
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.


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

Pour les distributions GNU/Linux :

Pour Mac OS X :

Pour Windows il est maintenant stocké dans le registre :


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


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.


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.


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


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.



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


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.


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



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, sans qui ce projet n'aurait pas vu le jour.
QElectroTech version 0.5 Release Candidate 1 released
by scorpio810 on 31/10/2015 at 00:25:36

La version 0.5 rc1 est maintenant disponible en téléchargement, elle corrige de nombreux bugs affectant la version beta, ajouts de traductions, etc.
Merci de vos retours, continuez à nous signaler les éventuels bugs que vous trouverez.

Pour l'instant les dernières versions Windows en téléchargement, ne sont plus compatibles avec Windows XP.
Mais, on ne vous oublie pas, même si Xp est lâché de tous les cotés, vous aurez des builds 0.5 pour cet OS, on s'y engage.

Pour la future 0.6, faudra peut-être faire évoluer vos PC vers des OS plus récents, ou mieux vers Gnu/Linux! :angel:

Enjoy! : )
QElectroTech v0.5 beta released
by scorpio810 on 04/10/2015 at 09:47:42
Un petit peu plus de 8 mois après la sortie de la version 0.4, voila que la 0.5 commence à pointer son nez avec une version beta.

Derniers travaux :
  • La base de donnée qui gère le cache des miniatures des éléments, ne compare plus les dates de modifications des l’éléments mais leurs UUID.
  • Des corrections de bugs (nomenclature, nouveaux tags des renvois, etc).
  • Ajout de nouveaux éléments, merci Nuri.
  • La collection officielle contient à ce jour environ 2600 éléments.
  • Vili rejoint l’équipe et devrait s’occuper de traduire Qet en Hongrois.

Les paquets devraient arriver sur le dépôt et sur la page téléchargement, certains dans le courant de la semaine.

Pour vous faire patienter, des nouveautés sont déjà en préparation ....   pour la future 0.6-dev : 
Exemple : la gestion des câbles.


Enjoy! : )
Report folios : add two new tags for easily name your "wiring head"
by scorpio810 on 10/09/2015 at 23:11:20

Une petite news, juste pour signaler une petite nouveauté sur les renvois de folios, qui devrait en intéresser plus d'un, voir la vidéo.

A la demande de Laurent D, des champs additifs ont été ajoutés dans le dock pour satisfaire l'export de la nomenclature, utile pour les disjoncteurs contacteurs, relais, etc.


Enjoy! : )

Pages: << < 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 > >>