Ceci est une ancienne révision du document !
Table des matières
Fonctionnalités
Cette page a pour but de décrire les fonctionnalités de chaque version de QElectroTech ainsi que les améliorations à venir dans les versions futures.
Voici les fonctionnalités prévues pour les versions à venir de QElectroTech :
Todo
- Possibilité de tourner un groupe d'éléments intelligemment.
- ajouter QNetworkAccessManager pour gérer une collection distante
- Amélioration de la gestion des conducteurs. L'algorithme de pose / de modification des conducteurs pourrait utiliser la notion de pathfinding. Il serait possible de poser des conducteurs à la volée.
- Ajout d'appareils : un appareil est symbolisé par un rectangle posé autour de plusieurs éléments. Sur le rectangle sont disposées des bornes.
- Raccourcis claviers sélection texte ou élément sur diagram.
- Éditeur d’éléments: mode miroir
- Conducteurs intelligents: notion de bus (2, 3 conducteurs tracés en même temps), capables de choisir leurs chemins seul en évitant les éléments obstacles sur la scène (Runsys).
- pile d'annulation ajouter l'historique des mouvements de folios, ajout,suppression.
- Insertion d'un nouveau folio en dessus/dessous dans le panel gauche sur le diagram_view_position.
- Embouts de fin sur conducteurs.
- Identificateurs de structure : norme IEC 81346
- Stockage dans le fichier projet des items propriété des éléments.
Textes sur conducteurs multifilaire.(En effet, il a été décrété que le type de conducteur unifilaire ne devait pas être accompagné d'un texte. Mais tu peux toujours contourner en ajoutant un champ de texte indépendant.)- Étudier une solution pour permettre après export d'un projet en PDF, la navigation par des liens sur les renvois de folios, des XREF maîtres/esclaves, pages sommaires.
- Surligné le folio courant, dans l'arbre des folios du dock “projet”.
- Créer des fragments de schéma réutilisable https://qelectrotech.org/forum/viewtopic.php?pid=8040#p8040
- Outils de traduction des projets (les traductions seront stocké dans un fichier séparé du projet, à la manière des traductions de Qt)
- Générateur automatique de bornier https://qelectrotech.org/forum/viewtopic.php?pid=8886#p8886
- Gestion des câbles
- Trouver une solution pour pouvoir switcher de manière facile entre différente configuration de QET https://qelectrotech.org/forum/viewtopic.php?pid=8830#p8830
- Pile d'annulation ajouter l'historique sur la numérotation automatique.
- Fonction couper -coller sur éléments liés
- Numérotation: incrémentation auto en numérotation octal exemple : e0.0 jusqu'a e0.7 puis e1.0 a e1.7, etc.
- Numérotation: incrémentation auto alphabétique https://stackoverflow.com/questions/8487255/how-do-i-increment-letters-in-c
- Numérotation des conducteurs : ajouter la gestion des couleurs.
- revoir les fichiers Nsis utilisé pour construire les installateurs Windows, et les adapter pour qu'ils soient compatible avec la dernière version (0.3).
- Support des écrans multiples.
- Indiquer les coordonnées de la souris dans l'éditeur d'élément. https://qelectrotech.org/forum/viewtopic.php?pid=10403#p10403
- Numérotation : add Cancel bouton pour annuler le choix du potentiel https://qelectrotech.org/forum/viewtopic.php?pid=10604#p10604
- Vérifications des scripts PHP en prévision d'un upgrade.
- Éditeur d'éléments : pouvoir ajouter un 'cadre d'arrière plan' réglable, afin de symboliser la surface d'un folio dans le but de mieux proportionné le dessin d'un élément.
- Ajouter un compteur de temps d'utilisation de Qet.
- externaliser les QActions de qet diagram editor et diagram view afin que les QActions de l'éditeur soit tous dans une même classe (pool ?)
- Fonctionnalité aide mise en armoire : les éléments doivent avoir leurs info fabricant et référence de renseigné, puis des éléments de type vignettes seront ajouter dans un dossier spécial de la collection embarqué, il ne reste plus qu'a glissé déposer. Il faudra créer un nouveau type d'élément : thumbnails.
- Exchange with FreeCAD
- Resize text by dragging there bounding rect : https://qelectrotech.org/forum/viewtopic.php?id=2168&login=1
- Ajouter de nouveau type de Xref esclave entre autre 'lampe' : un bouton lumineux est composé du bouton contact (maître) et de la lampe (esclave) la Xref sur le maître doit affiché une petite lampe au lieu d'un contact. https://qelectrotech.org/forum/viewtopic.php?pid=15989#p15989
- Garder en mémoire les dernières couleur, taille (police de texte, épaisseur de trait etc…), etc… afin de les utiliser lors d'un nouvel ajout. Par exemple lorsque l'on trace une ligne et que l'on modifie la couleur de celle-ci en bleu, les prochaines ligne tracé seront elle aussi en bleu. Le but est de gagner du temps car il est fréquent que l'on modifie des propriété d'objet pour au final mettre les même propriété pour tous, autant que ce soit fait par défaut.
- Essayer de rajouter le support dans QET pour les souris 3 D Space pilot 3D connexion
0.80
0.70
https://qelectrotech.org/forum/viewtopic.php?id=1092
https://svnweb.tuxfamily.org/filedetails.php?repname=qet%2Fqet&path=%2Ftrunk%2FChangeLog
0.60
Corrigé le problème de cadrage de folio [[https://qelectrotech.org/forum/viewtopic.php?pid=6639#p6639|https://qelectrotech.org/forum/viewtopic.php?pid=6639#p6639]]
Amélioré le système de zoom au delà du folio [[https://qelectrotech.org/forum/viewtopic.php?pid=6641#p6641|https://qelectrotech.org/forum/viewtopic.php?pid=6641#p6641]]
MacOS : intégration des PATH pour lancer le convertisseur DXF dans l’éditeur d’élément, et le plugin python générateur de borniers.
MacOS : ajout des traductions Qt dans le bundle.
La documentation en ligne et les liens pour télécharger les dernières paquets de la version en cours de développement pour Windows et MacOS sont accessibles directement depuis le logiciel
Les références croisée des éléments maître sont cliquable, afin de se rendre sur le folio correspondant au contact représenté.
Correction du bug sur les conducteurs et ou shapes fantômes qui provoque un segfault lors de la sauvegarde ou changement de scène.
Nouvelle manière de modifier les primitives rectangle, ellipse et arc
Bouton pour désactiver la grille dans l'éditeur de schéma
Gestion affichage des labels folio ou des id dans l'arbre projet et dans le sommaire.
Réfection de la mise en page des pages sommaire.
Ajout du multithreading pour accélérer le chargement des éléments au lancement de QET.
Ajout du multithreading pour accélérer le chargement des projets.
Numérotation consécutive des éléments par folio ou pour le projet.
Nouveau Dock pour passer d'une règle de numérotation à l'autre, ajout de règle vide
Réduction de la consommation de RAM utilisée.
Nouveau panneau :Collection d’éléments
Possibilité de réutiliser un morceau de schéma en tant que « snippet » (ou copie de folio entier) à partir d'un autre projet.
Possibilité de numérotation non consécutive des folios
Panel de gauche: découper la vue en plusieurs docks: un dock cartouche, folio , un dock éléments, éléments importé, etc. QDockWidget, Toolbox Widgets.
Épaisseur de trait des conducteurs
Les couleurs et tailles de conducteur sont dorénavant conservées au travers des renvois et sur leur équipotentialité.
Épaisseur de trait des basic shapes
Couleurs de trait des basic shapes
Remplissage couleurs, texture des basic shapes
High-DPI support (Qt 5.6.0)
0.5
Port Qt5
Cartouches verticaux
Garder l’élément sous le curseur souris pour de multiples poses et connexion automatique
Choix du cartouche par défaut (common,custom,embendded)
Segfaut sur Mac os x avec la basic shape ellipse.
Dock informations et autosave
Nomenclature: ajout du champ position de l’élément dans la scène
Nomenclature: ajout des champs : bloc auxiliaire 1 & 2
Éditeur: ajout de couleurs et de textures: lignes, hachures.
Bouton action pour passer d'un fond blanc à un fond gris rapidement.
UUID sur les elements
Basic shapes poignées de redimensionnement
Poignées de redimensionnement visibles quelque soit le zoom en cours
Éditeur d’éléments: ajout des poignées de redimensionnement sur primitives conjointement avec le décorateur
unification des méthodes => QPropertyUndoCommand remplace ChangePartCommand, QetShapeGeometryCommand, ChangeShapeStyleCommand, ItemResizerCommand, MoveElementsTextsCommand, ChangeSeveralConductorsPropertiesCommand, ChangeConductorsPropertiesCommand
Renvois : nouveaux tags pour les conducteurs
QSettings : format natif
$HOME/.config/QElectroTech/QElectroTech.conf # Gnu/linux $HOME/Library/Preferences/QElectroTech/QElectroTech.plist # Mac OS HKEY_CURRENT_USER\Software\QElectroTech\ # MS Windows
Éléments cache sqlite base de donnée :remplacement de la fonction "mtime" (date de dernière modification d'un élément) par la lecture de leur UUID.
Installateur Windows:
Éléments de la collection en lecture seule.
Liens dans le menu démarrer vers la documentation online, update.
Choix des composants à installer.
Ajout de la fonction : Auto-désinstallation de la version en cours avant l'installation d'une nouvelle version!
Fix : chemin des icones application sur Windows 64 bits avec paquet 32 bits.
Installateurs 32 et 64 bits
Checkbox pour lancer QET des la fin de l'installation.
Thème graphique de l'installateur.
Fix : associations pour les fichiers cartouches (icônes, base de registre, lancement éditeur de cartouche).
Version 0.4
Possibilité de générer une fonction création page sommaire "indice" (sous forme de tableau) contenant la liste des titres des folios ,leur n° de folio ,l'auteur du projet en cours (Abhishek).
La possibilité de dessiner librement des zones (pupitre/armoire)(Abhishek).
Possibilité d'ajouter des lignes pointillées entre des contacts, relais thermiques et / ou bobines pour indiquer une liaison entre eux.
Possibilité d'éditer des références croisées .
références croisées: Possibilité de choisir le mode liste ou le mode tableau
Possibilité d'éditer des reports de folio
Export DXF (Abhishek)
Taille des numéros de fils
Changer la langue de l'interface par menu
Appliquer les nouvelles propriétés à l’ensemble des conducteurs au même potentiel
widget propriété de l’élément sélectionné ajout de la miniature de l’élément
Verrouillage des images sur le schéma.
Mode gray windows (Abhishek)
Épaisseurs des lignes des symboles?
Possibilité d'ajouter un style QSS
Numérotation auto sur projet
Paquets MAC OS X
Non incrémentation sur bornes
Pile undo/redo animée
Label automatique pour les éléments esclaves
fix bug iso date http://qelectrotech.org/bugtracker/view.php?id=48
Windows: appliquer style windowsvista, windowsxp, windows suivant la version de l'OS détecté
Nomenclature: ajout des éléments informations
texte des conducteurs: un seul texte pour tous les conducteurs ayant la même liaison équipotentielle
Déplacement de l'ordre des folios dans le panel gauche.
Connections automatique des conducteurs + bouton activation rapide
Bug fix: position des textes des conducteurs
Revoir la fonction ConductorSegment::middle()
Editeur: Croix d'aide au positionnement des primitives
diagram: Croix d'aide au positionnement des basic shapes
diagram: Croix d'aide au positionnement des éléments
Windows
installateur:installation multi_user + icone Qet sur tous les bureaux
Ajouter tag svn sur versions nightly
Version 0.3rc
editor element: color selection, change radio button by combobox
corriger le problème du déplacement de la primitive "trait" (Horizontal/Vertical) dans l’éditeur d'élément (workaround == )
don't increase autonum if conductor isn't a "Multi"
Add Shortcut Qt::Key_F5 on reload button in elementpanelwidget
Hotspot automatique
element editor bugfix: after reload element, add a primitive crash qet
element editor: define automatically the size of element
Import d'image.
polissage
Intégrer automatiquement les éléments dans les projets (recommandé)--> mieux expliquer la fonction
Version 0.3b
- Résolution des bugs éventuels.
- Déplacement des fonctions (éditer l'élément et retrouver dans panel) dans le menu contextuel clique droit(plus ergonomique).
- Rafraichir la liste des catégories lors d'un déplacement d'élément. (CyrilF)
- Ajout d'un bouton DateNow dans le dialog “propriétés du schéma” (CyrilF)
- Possibilité de disposer du texte verticalement
- Possibilité de déplacer les textes
- Amélioration du chargement des symboles (cache sqlite )
- Amélioration de la création, édition d'un cartouche.
- Possibilité d'import/export d'un modèle de cartouche .
- Possibilité de mettre en pointillé un conducteur .
- Possibilité de remplacer rapidement la couleur d'un conducteur .
- Affichage des numéros de folios dans le panel d'éléments .
- Amélioration conséquente du nombre d’éléments fournis .
- Amélioration du filtre de recherche de symbole .
- Possibilité d'utiliser du texte enrichi sur les champs texte dans les schémas et non sur les éléments posés sur le schéma, cela à un coût conséquent sur un projet mineur (passage de 130Kio à 1.2Mio).
- Ajout d'un widget pour l’édition de texte enrichi (CyrilF + laurent)
- Changement d'outil (Mode sélection ↔ Mode visualisation) avec le clique de la molette.
- Outil Zoom sur la molette, plus ergonomique.(CyrilF)
- Editeur de symbole :focus sur la nouvelle valeur langue,trie des langues par ordre alphabétique (joshua)
- Ajout d'un wigdet reflétant le chargement d'un projet conséquent (CyrilF)
- Annotation automatique des conducteurs.(joshua)
- Ajout d'un dialogue pour pivoter automatiquement le texte si son conducteur est vertical ou horizontal (joshua)
- Ajout de couleurs basique sur l'outil ligne et le remplissage des primitives dans l’éditeur d’éléments
- Ajout de plusieurs protections pour empêcher d'enregistrer un élément si une de ses primitives dépasse de son hotspot.
Version 0.2
À partir de la version 0.2, QElectroTech est disponible en français, anglais, mais aussi :
- en espagnol, grâce aux traductions de Youssef ;
- en russe, grâce aux traductions de Yuriy ;
- en portugais, grâce aux traductions de José.
L'application utilise désormais le thème d'icônes Oxygen, réalisé par Nuno Pinheiro pour le projet KDE.
Notion de fichier projet
Un fichier .qet peut désormais contenir zéro, un ou plusieurs schémas électriques. Les éléments composant ces schémas sont embarqués dans le fichier projet au moment où ils sont posés sur un schéma. Le panel d'éléments affiche donc désormais :
- les projets ouverts, avec, sous chaque projet :
- les schémas de ce projet,
- la collection embarquée du projet (catégories et éléments utilisés dans les schémas)
- la collection commune fournie par QET,
- et la collection personnelle de l'utilisateur.
Éditeur de schémas
- Il est désormais possible de déplacer et copier les catégories et éléments par simple glisser-déposer (drag'n drop) dans le panel d'éléments.
- La collection embarquée est manipulable au même titre que la collection utilisateur. Les éléments inutilisés dans le projet apparaissent sur fond rouge et un dialogue permet de les purger rapidement.
- Chaque projet embarque également (au niveau de ses propriétés) les paramétrages par défaut pour les nouveaux schémas, cartouches et conducteurs.
- Il est possible de changer l'ordre des schémas dans le projet en déplaçant les onglets qui les représentent. Dans le champ “Folio” des cartouches, on peut se référer à la position du schéma courant ou au nombre total de schémas dans le projet en écrivant respectivement %id et %total.
- Lors du chargement d'un fichier .qet, si des éléments ne sont pas trouvés, ils sont remplacés par un élément “fantôme”, ce qui évite de perdre certaines informations lors de l'enregistrement du fichier (Voir le screenshot correspondant).
- Le rendu avec un zoom réduit a été amélioré (Voir le screenshot correspondant).
- Enfin, le logiciel gère l'ouverture en lecture seule d'un fichier projet.
Impression et export
À partir de la version 0.2, QElectroTech :
- propose d'utiliser une imprimante réelle ou bien de générer un document PDF ou PostScript, et ce sous Windows comme sous X11 (voir le screenshot correspondant)
- génère un aperçu avant l'impression d'un projet. Cet aperçu permet de choisir les options d'impression mais également les schémas à imprimer ou non (voir le screenshot correspondant).
À noter toutefois une limitation pour les impressions PDF/PS sous Windows : le dialogue de mise en page, permettant de spécifier le format du papier ainsi que ses marges, n'est pas disponible.
Le dialogue “Exporter” (pour générer un fichier image d'un schéma) a également été refait dans l'optique d'un export simultané de tous les schémas du projet (voir le screenshot correspondant).
Éditeur d'éléments
- Lorsque l'on dessine une ligne dans l'éditeur d'éléments, il est possible de choisir un embout différent pour chaque extrémité, comme par exemple une flèche, un cercle, un carré ou, tout simplement, un bout de ligne normal. Voir le screenshot correspondant.
- La forme “Rectangle” a été ajoutée Voir le screenshot correspondant..
- On peut enregistrer un élément en désignant un fichier (= comportement en 0.11) ou bien en choisissant un élément cible dans une liste reprenant l'arborescence du panel d'éléments.
- Si l'on maintient la touche Shift lorsque l'on ajoute une partie (droite, cercle, texte, …), l'outil en cours est conservé après le dessin. Sinon l'éditeur repasse sur l'outil de sélection.
- La grille a été améliorée : sa densité varie en fonction du zoom ; les points correspondant à ceux de la grille de l'éditeur de schémas sont mis en valeur.
- L'accrochage à la grille (aka “snap to grid”, également connu sous le nom de grille magnétique ou encore grille aimantée) a été ajouté. Le dessin s'y accroche désormais avec une précision de 1px. On peut travailler en coordonnées libres en maintenant la touche Ctrl enfoncée durant le dessin.
- Le copier-coller a été implémenté : il est possible de coller :
- avec le bouton du milieu de la souris
- en choisissant une “zone de collage” sur l'élément (Ctrl+Shift+V) : cf screenshot à gauche
- directement (Ctrl+V) : les parties collées sont placées à côté des parties copiées ; si on recolle les parties, elles sont collées encore un cran à côté, et ce de manière incrémentale. Ainsi le screenshot à droite montre ce que l'on obtient en collant une sélection 8 fois d'affilée.
- Des contrôles sont désormais effectués à l'enregistrement : présence de bornes, respect du cadre, etc.
Version 0.11
- Correction de bugs
- Fonctionnalités :
- L'application se lance désormais une seule fois par utilisateur ; il est alors possible de gérer tous les éditeurs de schémas et d'éléments via une icône unique dans le systray.
- L'application peut également ouvrir des fichiers éléments directement (comprendre : par passage de paramètres)
- L'association des types de fichiers *.qet et *.elmt sera facilitée ; des fichiers *.desktop sont installés sous X11 tandis qu'un programme d'enregistrement est fourni sous Windows.
- Ajout d'un menu donnant accès aux fichiers récemment ouverts.
- Manuel UNIX (`man qelectrotech').
Version 0.1
Bases
QET permet de poser des éléments sur un schéma et de les relier par des conducteurs. Chaque schéma comporte un cartouche dont les informations sont éditables. Les éléments sont déplaçables et pivotables. Les conducteurs reliant les éléments électriques se posent à la souris. Leur trajectoire est modifiable. Les conducteurs sont paramétrables : ils peuvent être simples, unifilaires ou multifilaires. Les points de jonction entre conducteurs sont gérés automatiquement. Il est également possible d'ajouter des champs de texte indépendants sur les schémas.
Collections d'éléments
Les éléments proviennent des collections d'éléments. On distingue la collection commune, supposée être commune à plusieurs utilisateurs et non modifiable sans droits d'administration, et la collection utilisateur, supposée être propre à l'utilisateur. Les schémas ne gardent que des références vers ces éléments ; il n'est donc pas possible d'ouvrir complètement un schéma utilisant un élément inconnu (c'est-à-dire présent ni dans la collection commune ni dans la collection utilisateur). C'est à l'utilisateur de veiller à fournir les éventuels éléments manquants lorsqu'il transmet son schéma.
Gestion des éléments
QET permet d'ajouter, de modifier et de supprimer les éléments présents dans les collections. Un assistant guide l'utilisateur dans la création d'un nouvel élément et un éditeur dédié permet de dessiner ses propres composants.
Export des schémas sous forme d'image
Les schémas sont exportables dans les formats suivants : bitmap, JPEG, PNG et SVG. Des options permettent d'exporter ou non la grille, le cartouche, la bordure, les colonnes, etc.
Impression
Un support basique de l'impression est fourni. Par défaut, un schéma trop grand est découpé et imprimé sur plusieurs pages. Les schémas peuvent être adaptés à la taille de la page sur demande. Sous X11, l'impression requiert le paquet cupsys-bsd. Il est possible d'imprimer vers un document PDF directement sous X11. Pour Windows, il est possible d'utiliser PDFCreator.
Intégration au systray
QElectroTech ajoute une icône dans le systray (petite zone typiquement placée près de l'horloge) qui vous permettra de gérer vos fenêtres : éditeurs de schémas et éditeurs d'élément.
La roadmap
La roadmap de QElectroTech a été difficile à établir, essentiellement parce que QET est un logiciel jeune, disposant de peu de développeurs, mais qui s'attaque à un domaine requérant de nombreuses fonctionnalités, elles-même pas toujours triviales.
Pour chaque version de QET, nous allons essayer d'ajouter :
- une fonctionnalité majeure, c'est-à-dire quelque chose qui sert réellement par rapport au métier de l'électrotechnique, et qui soit assez urgent et/ou complexe à développer ;
- une fonctionnalité mineure ; il s'agit d'une fonctionnalité utile mais non indispensable ou de moindre importance ;
- 0 à 2 amélioration(s) notables de l'interface graphique, de l'ergonomie et/ou du comportement du logiciel.
Revoir la roadmap ci-dessous en prenant prioritairement en compte les 3 problématiques suivantes :
- Gestion des textes : pourrait mériter une release dédiée
- Fonctionalités métiers : rectangles délimiteurs, liaisons mécaniques, boîtes noires (automates et variateurs de vitesse ?), cartouches avancés
- export/import vers d'autres formats, notamment le DXF
Des idées moins urgentes peuvent être trouvées dans la boîte à idées.