galexis wrote:

Je viens de passer 1/4 d'heure à essayer de mettre le code entre des balises mais à chaque fois cela m'efface le message complet ...)

Mystère.. le clone du forum sur un autre serveur réagit pareil maintenant avec ces balises code .., message vidé, édition impossible sans perdre les données du post..nomicons/angry

J'ai testé sur ce clone plusieurs éditeurs WYSIWYG BBCode et avec les balises "code" le résultat n'est vraiment pas acceptable..!

Passe en mode view source, ajoutes tes balises code manuellement exemple code=bah, code=diff, code=xml, etc et envoie. N'oublie pas les [] et de fermer tes balises.
Un GeSHi Highlight est actif depuis longtemps sur le forum, je ne me rappelle même plus depuis quand je l'ai mis en place, c'est pour dire.. (Generic Syntax Highlighter permet de colorer syntaxiquement de nombreux langages informatiques).

Pour les balises le mieux est de le faire direct dans l’éditeur en mode view source.

ton script bash

#!/bin/bash
 
#nécessite les paquets: zenity; xmlstarlet
 
 
 
{
 
projet=`zenity --title "Sélectionner le fichier projet QET" --file-selection --filename="./Bureau"`
 
 
 
if  [ $? != 0 ]; then # si fermeture
 
    exit 1
 
fi
 
[ $? -ne 0 ] && exit 2 # si annulation
 
}
 
 
 
 
 
{
 
dossier=`zenity --title "Sélectionner le dossier de destination" --file-selection --directory`
 
 
 
if  [ $? != 0 ]; then # si fermeture
 
    exit 1
 
fi
 
[ $? -ne 0 ] && exit 2 # si annulation
 
}
 
 
 
 
 
xmlstarlet sel -T -t -m /project/diagram/elements/element -s A:T:- "elementInformations" -v \
 
"concat(elementInformations/*[@name='label'], ';' ,@type, ';', terminals/terminal/@id, ';' , terminals/terminal/@orientation, ';' , terminals/terminal/@id, ';' , '2')" -n "$projet" > "$dossier/bornes.csv"
 
#problème pour récupérer le 2ème ID du symbole borne et son orientation(2)= répétition ID borne 1 et orientation forcé à 2
 
 
 
xmlstarlet sel -T -t -m /project/diagram/conductors/conductor -s A:N:- "@num" -v \
 
"concat(@num,';',@terminal1,';',@terminal2)" -n "$projet" > "$dossier/conducteurs.csv"
 
 
 
 
 
zenity --info --title="Fichier CSV créés" --height=100 --width=300 --text="Terminé !"
 
exit

Autant pour moi, j’étais focalisé sur la fonction première des shapes : représenter des pupitres, armoires extérieures dans les schémas.
Mais bon, ça n'a pas vocation à remplacer un bon soft de CAO ...

nuri wrote:

...euh non, sur tous les types de traits, exactement comme dans l'éditeur d'éléments !
Pourquoi être aussi limitatif si (et seulement si) ces fonctionalités peuvent être implémentées aisément ?

Je ne suis pas convaincu de l’intérêt de la chose..!
pen.setWidthF(5);
pen.setColor(Qt::blue);
800x491
https://download.qelectrotech.org/qet/forum_img/shapes_px1.png

galexis wrote:

Si ça intéresse, j'ai mis à jour le fichier Libreoffice des borniers : si dans "Désignation" de la borne il y a du texte, genre : "terre", alors le numéro de borne est remplacé par le symbole de terre.

https://download.qelectrotech.org/qet/m … al_V02.ods

nuri wrote:

(je sais, pour pas faire des schémas avec des basic shapes)

Non, heu si un peu...., mais sinon les tirets, pointillés c'est bien moins classe, en trait épais. nomicons/sick

Apres je sent venir les demandes du style : remplissage des basic shapes avec des couleurs.... ne revez pas, c'est pas la peine, c'est niet d’emblée! nomicons/wassat

Envoie moi le, j’écraserai l'autre version sur le serveur de download.

nuri wrote:

Moi je fais surtout du noir et blanc donc le type et l'épaisseur des traits sont plus importants que les couleurs.

Je suppose que c'est juste sur les traits pleins que tu veux le choix d’épaisseur, 2px , 3px etc?

Je vais le rajouter dans la todolist, car beaucoup aussi demandent cette fonctionnalité.
Apres c'est clair, on peut pas empêcher de mal utiliser un soft surtout à des personnes qui ne prennent pas le temps de lire la documentation.

T’inquiètes, tu n'est pas le seul à le demander, mais nous freinons des deux pieds là dessus, ayant trop vu par le passé des schémas frôlant le burlesque...
Mets un débutant devant le logiciel, a coup sur il va dessiner sur le schéma les éléments avec des shapes, voir même cabler les conducteurs avec.., si si on l'a déjà vu!

http://qelectrotech.org/forum/viewtopic … d=425#p425

D'un autre coté si j'avais toujours écouté Benoit, Qet n'aurai surement pas le succès qu'il a aujourd’hui.
Donc pourquoi pas, mais notre priorité en ce moment, c'est surtout l'ajout de fonctionnalités métier, améliorer l’éditeur d’éléments avec les poignées sur les primitives, réfléchir sur les bornes, entrées/sorties API, borniers etc.

6,037

(130 replies, posted in Bar Fourre-tout)

Bonjour et bienvenue Denis,
et merci pour tes remerciements qui nous encouragent pour la suite.  nomicons/wink
46 ans aussi en fin d'année. nomicons/wink

Bonjour et merci pour les remerciements, nomicons/smile

nous n'osons pas trop nous lancer dans cette voie.
Certains y verrons une certaine facilité et ne vont plus s'encombrer à dessiner leurs éléments avec l’éditeur mais avec les shapes....
Ce qui risque d'arriver, c'est de voir passer de plus en plus de schémas fait sous ce nom et venir ternir l'image de QElectroTech avec des schémas de qualité hautement exécrable. Ce qui nuirait à notre vision de ce logiciel: sortir des schémas imprimés de qualité professionnel.
Peux-être nous rajouterons les textures: "hachures droite/gauche" sur les polygones fermés, mais ça s'arrêtera là.

6,039

(13 replies, posted in News)

Revision: 4050
Author:   blacksun
Date:     2015-07-15 18:54:30 +0200 (Wed, 15 Jul 2015)
Log Message:
-----------
QetShapeItem -> handler : handler is draw at the same size at screen, no matter the curent zoom

exemple avec ce script:


#!/bin/bash
set -x
file="$1"
if [ ! -f "$file" ]; then
    echo "Usage: $0 <file> <lang> <name>"
    exit 150
fi
lang=${2:-es}
name=${3:-}
 
tmp_file=$(mktemp)
basename=$(basename "${file}")
if [ "${basename}" == "qet_directory" ]; then
    root_elmt='qet-directory'
else
    root_elmt='definition'
fi
 
# Does the file already have a name for the provided language?
name_xpath=$(printf '/%s/names/name[@lang="%s"]' "${root_elmt}" "${lang}")
already_exists=$(xmlstarlet select -t --value-of "count(${name_xpath})" "${file}")
if [ "${already_exists}" -eq 0 ]; then
    # we need to insert the element
    names_xpath=$(printf '/%s/names' "${root_elmt}")
    name_xpath=$(printf '/%s/names/name[not(@lang)]' "${root_elmt}")
    xmlstarlet edit --subnode "${names_xpath}" --type elem -n "name" --value "${name}" "${file}" | \
    xmlstarlet edit --insert  "${name_xpath}"  --type attr -n "lang" --value "${lang}" > "${tmp_file}"
else
    # we need to update the element
    xmlstarlet edit --update "${name_xpath}" --value "${name}" "${file}" > "${tmp_file}"
fi
xmlstarlet format --indent-spaces 4 --omit-decl "${tmp_file}" > "${file}"
sed -i 's,<informations/>,<informations></informations>,' "${file}"

nuri wrote:

Ce qu'il faudrait apprendre à maîtriser, ce sont les filtres XLST pour convertir le XML d'un projet QET en XML compréhensible par LibreOffice. Là, couplé avec des macros, ca commencerait à devenir intéressant.
Mais on en avait déjà parlé et finalement, personne ne s'y est mis sérieusement.


Ou en ligne de commande sous gnu/linux avec XmlStarlet

EXAMPLE:

# Rename elements (remplace rec par record)
xml ed -r "/xml/table/rec" -v record xml/tab-obj.xml

Edit: il existe un package Windows.

nuri wrote:

Tiens, en parlant de séparateur, est-ce qu'il serait possible que nos amis francais de France utilisent le séparateur prévu par la norme internationale, c'est-à-dire ":" et non "." ?
Si j'ai un bornier -X01 avec 3 bornes (1, 2 et 3), cela nous donne :
-X01:1
-X01:2
-X01:3
Et si j'ai un bornier -X21.2 avec 2 bornes (L1 et L2), cela nous donne :
-X21.2:L1
-X21.2:L2
Le vieux Eplan 5.70 utilisait aussi cette méthode : [nom du bornier] + [séparateur :] + [numéro de la borne].
Maintenant, avec le nouveau Eplan P8, ils ont séparé [nom du bornier] et [numéro de la borne] en 2 champs de donnée bien distincts, ce qui est, à mon avis, la solution à préférer car cela limite un peu les erreurs dues aux fautes de frappe.


Une fois tout ça en place dans le code, ça devrait être transparent pour l'utilisateur. Donc on peux dans le code mettre le caractère ": " comme séparateur de champ et donc imposer la norme internationale sans gêner le dessinateur.
Dans le formulaire: (dock)
Sur le premier champ on choisit le nom du bloc dans la liste ou on entre le nouveau nom: X1, XS, etc. (parent)
Dans le second on entre le nom de la borne. (enfant)
Qet avec ces classes peut déjà connaitre les conducteurs branchés sur la borne et leurs numéros de fils.
En principe ce doit être les mêmes, la borne fournie dans la collection de type "terminal" étant un court-circuit.


D’après la documentation winrelais, il y a la méthode française et suisse....nomicons/getlost


http://www.typonrelais.com/aide_1_3/wr/ … bornes.htm

Tu ne le pourras pas, les bornes ne sont pas exportées dans le fichier csv, voir ma réponse plus haut.
Donc tu ne pourras extraire les numéros de fils facilement, je pense qu'il faudra aussi un attribut pour ça: récupérer la valeur de l’équipotentialité aux bornes de ces éléments.
J'attend de voir avec Joshua, surement qu'on rajouteras d'autres attributs sur les bornes *parent= nom du bloc bornier, *enfant= nom de la borne, et n° de conducteur (équipotentialité) pour envoyer mon petit patch ou pas.
Ou comme toi:

Le label doit être composé du numéro de bornier suivie du numéro de borne (exemple : X1.1).


http://qelectrotech.org/forum/viewtopic … 3752#p3752

Joli^^ , merci pour ton travail. nomicons/smile
Voila pour le lien:
QElectroTech_Terminal_V01.ods
 et le fichier de test en download.

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

Ça donne quoi en rendu, tu peux poster une capture d’écran?

Bonsoir,
Envoie moi le par mail, je le rajouterai sur le serveur de download.

6,047

(13 replies, posted in News)

Revision: 4039
Author:   blacksun
Date:     2015-07-09 20:33:14 +0200 (Thu, 09 Jul 2015)
Log Message:
-----------
QetShapeItem : add handler for modified the geometry of shapes in the diagram

Des poignées permettent de modifier chaque segment d'une basic shape, et non ce n'est pas fait pour dessiner des symboles directement sur les schémas, ni des sapins de noël avant l'heure, après on peux pas vous l'interdire. nomicons/grin

400x303

nuri wrote:

Merci du tuyau !
Je regarderai quand j'aurai de nouveau un peu de temps et les nerfs solides... --> commander une palette d'aspirine 

Pas besoin de palette d'aspirine. nomicons/smile
Jette un œil à mon message plus haut, tu n'en tireras rien d'exploitable pour l'instant.

Index: sources/nomenclature.cpp
===================================================================
--- sources/nomenclature.cpp    (révision 4034)
+++ sources/nomenclature.cpp    (copie de travail)
@@ -101,7 +101,7 @@
         //Get only simple, master and unlinked slave element.
         ElementProvider ep(d);
         QList <Element *> list_elements;
-        list_elements << ep.find(Element::Simple | Element::Master);
+        list_elements << ep.find(Element::Simple | Element::Master | Element::Terminale);
         list_elements << ep.freeElement(Element::Slave);
 
         foreach (Element *elmt, list_elements) {

Hello,

like this?
https://download.qelectrotech.org/qet/forum_img/cable_symbol.png

Finalement, sous forme csv, qu'est-ce qui différencie une borne d'un moteur ou d'un relais ?!?

En principe c'est toujours un élément dont l'attribut est de type terminal (borne de continuité), on s'en sert déjà pour garder la même liaison équipotentielle donc la même numérotation de conducteurs à ses bornes. 

On pourrait aussi filtrer sur la colonne "Label". Chez nous en Allemagne, les borniers sont toujours identifiés avec la lettre "X". Mais ce n'est pas toujours le cas et ce n'est pas partout pareil...

Une borne pour bornier est toujours définie et représentée dans un schéma par le nom du bloc, et ensuite son numéro. ex: XS_104/10
Ces éléments doivent avoir en plus de leur attribut : terminal, un attribut parent de type: XS, XA, etc, et un autre de type enfant (numéro/texte de borne).



On filtrent ces éléments  "bornes" à l'exportation volontairement, car pour l'instant il manque encore les attributs parents et enfants dessus.


https://download.qelectrotech.org/qet/forum_img/cvs-terminal.png

+ list_elements << ep.find(Element::Simple | Element::Master | Element::Terminale);