Bonjour,

4) je n'ai pas non plus trouvé de grille de position pour que sur chaque folio on puisse placer les objets à la même hauteur pour que visuellement ça soit moins brouillon. Une grille non imprimable mais configurable.

Pour cela on utilise les outils trait couleur du trait blanc, ensuite il y a une icone pour changer la couleur de fond en gris et tes repères en blanc apparaîtront pour mieux positionner tes éléments, et seront invisible avec la couleur de fond blanc.

77

(223 replies, posted in News)

BTW, I updated my MXE cross compiler toolchain to Qt 5.15.15 for windows cross build package .exe.
https://github.com/mxe/mxe/commits/master/

Updated my KVM/Qemu macOS VM to last DigiKam scripts to build QET Intel X86_64 with last Qt version aka 5.15.15 and last Kf5 version.

Hey Cristo_87,

thanks for your review, maybe also see
https://github.com/qelectrotech/qelectr … .cpp#L1582
https://github.com/qelectrotech/qelectr … .cpp#L1492
https://github.com/qelectrotech/qelectr … .cpp#L1782

79

(16 replies, posted in Videos howto)

80

(16 replies, posted in Videos howto)

81

(129 replies, posted in Import DXF)

Hello Vadoola!
Hallo plc-user!

Thanks Vadoola for fixing stdout we can use now your dxf2elmt binary on QET element, but FYI build make some warnings:


[13:22:48] laurent@debian:~$ git clone https://github.com/Vadoola/dxf2elmt.git  dxf2elmt_vadoola
Clonage dans 'dxf2elmt_vadoola'...
remote: Enumerating objects: 410, done.
remote: Counting objects: 100% (181/181), done.
remote: Compressing objects: 100% (103/103), done.
remote: Total 410 (delta 122), reused 136 (delta 78), pack-reused 229 (from 1)
Réception d'objets: 100% (410/410), 95.90 Kio | 1.88 Mio/s, fait.
Résolution des deltas: 100% (256/256), fait.
[13:23:01] laurent@debian:~$  cd /home/laurent/dxf2elmt_vadoola
[13:23:04] laurent@debian:~/dxf2elmt_vadoola$ cargo build --release
   Compiling autocfg v1.3.0
   Compiling crossbeam-utils v0.8.20
   Compiling cfg-if v1.0.0
   Compiling proc-macro2 v1.0.86
   Compiling unicode-ident v1.0.12
   Compiling rayon-core v1.12.1
   Compiling serde v1.0.207
   Compiling libc v0.2.155
   Compiling either v1.13.0
   Compiling adler32 v1.2.0
   Compiling bitflags v1.3.2
   Compiling syn v1.0.109
   Compiling adler v1.0.2
   Compiling utf8parse v0.2.2
   Compiling weezl v0.1.8
   Compiling byteorder v1.5.0
   Compiling anstyle-query v1.1.1
   Compiling anstyle v1.0.8
   Compiling colorchoice v1.0.2
   Compiling is_terminal_polyfill v1.70.1
   Compiling rustix v0.38.34
   Compiling color_quant v1.1.0
   Compiling bitflags v2.6.0
   Compiling heck v0.5.0
   Compiling hashbrown v0.12.3
   Compiling iana-time-zone v0.1.60
   Compiling bytemuck v1.16.3
   Compiling linux-raw-sys v0.4.14
   Compiling scoped_threadpool v0.1.9
   Compiling anyhow v1.0.86
   Compiling strsim v0.11.1
   Compiling clap_lex v0.7.2
   Compiling fastrand v2.1.0
   Compiling once_cell v1.19.0
   Compiling wild v2.2.1
   Compiling hex_color v3.0.0
   Compiling xml-rs v0.7.0
   Compiling crc32fast v1.4.2
   Compiling encoding_rs v0.8.34
   Compiling anstyle-parse v0.2.5
   Compiling miniz_oxide v0.3.7
   Compiling itertools v0.10.5
   Compiling gif v0.11.4
   Compiling num-traits v0.2.19
   Compiling num-bigint v0.3.3
   Compiling num-rational v0.3.2
   Compiling miniz_oxide v0.4.4
   Compiling indexmap v1.9.3
   Compiling deflate v0.8.6
   Compiling anstream v0.6.15
   Compiling clap_builder v4.5.15
   Compiling xmltree v0.8.0
   Compiling png v0.16.8
   Compiling quote v1.0.36
   Compiling dxf v0.5.0
   Compiling crossbeam-epoch v0.9.18
   Compiling getrandom v0.2.15
   Compiling syn v2.0.74
   Compiling crossbeam-deque v0.8.5
   Compiling simple-xml-builder v1.1.0
   Compiling num-integer v0.1.46
   Compiling num-complex v0.3.1
   Compiling num-traits v0.1.43
   Compiling enum_primitive v0.1.1
   Compiling num-iter v0.1.45
   Compiling rayon v1.10.0
   Compiling tempfile v3.12.0
   Compiling trait-set v0.2.0
   Compiling chrono v0.4.38
   Compiling uuid v0.8.2
   Compiling uuid v1.10.0
   Compiling bspline v1.1.0
   Compiling num v0.3.1
   Compiling clap_derive v4.5.13
   Compiling jpeg-decoder v0.1.22
   Compiling tiff v0.6.1
   Compiling image v0.23.14
   Compiling clap v4.5.15
   Compiling dxf2elmt v0.3.4 (/home/laurent/dxf2elmt_vadoola)
warning: unused import: `dxf::Drawing`
 --> src/qelmt/mod.rs:8:5
  |
8 | use dxf::Drawing;
  |     ^^^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: unused variable: `spline`
  --> src/qelmt/mod.rs:59:36
   |
59 |             EntityType::Spline(ref spline) => todo!(),
   |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spline`
   |
   = note: `#[warn(unused_variables)]` on by default

warning: unused variable: `ellipse`
  --> src/qelmt/mod.rs:61:37
   |
61 |             EntityType::Ellipse(ref ellipse) => todo!(),
   |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ellipse`

warning: unused variable: `lwpolyline`
  --> src/qelmt/mod.rs:63:40
   |
63 |             EntityType::LwPolyline(ref lwpolyline) => todo!(),
   |                                        ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lwpolyline`

warning: unused variable: `solid`
  --> src/qelmt/mod.rs:64:35
   |
64 |             EntityType::Solid(ref solid) => todo!(),
   |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_solid`

warning: struct `Definition` is never constructed
  --> src/qelmt/mod.rs:25:12
   |
25 | pub struct Definition {
   |            ^^^^^^^^^^
   |
   = note: `#[warn(dead_code)]` on by default

warning: field `0` is never read
  --> src/qelmt/mod.rs:42:9
   |
42 |     Arc(Arc),
   |     --- ^^^
   |     |
   |     field in this variant
   |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
   |
42 |     Arc(()),
   |         ~~

warning: field `0` is never read
  --> src/qelmt/mod.rs:43:13
   |
43 |     Ellipse(Ellipse),
   |     ------- ^^^^^^^
   |     |
   |     field in this variant
   |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
   |
43 |     Ellipse(()),
   |             ~~

warning: field `0` is never read
  --> src/qelmt/mod.rs:44:13
   |
44 |     Polygon(Polygon),
   |     ------- ^^^^^^^
   |     |
   |     field in this variant
   |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
   |
44 |     Polygon(()),
   |             ~~

warning: field `0` is never read
  --> src/qelmt/mod.rs:46:10
   |
46 |     Text(Text),
   |     ---- ^^^^
   |     |
   |     field in this variant
   |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
   |
46 |     Text(()),
   |          ~~

warning: field `0` is never read
  --> src/qelmt/mod.rs:47:10
   |
47 |     Line(Line),
   |     ---- ^^^^
   |     |
   |     field in this variant
   |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
   |
47 |     Line(()),
   |          ~~

warning: variants `DynamicText` and `Terminal` are never constructed
  --> src/qelmt/mod.rs:45:5
   |
41 | enum Objects {
   |      ------- variants in this enum
...
45 |     DynamicText(DynamicText),
   |     ^^^^^^^^^^^
...
48 |     Terminal(Terminal),
   |     ^^^^^^^^

warning: struct `Description` is never constructed
  --> src/qelmt/mod.rs:74:12
   |
74 | pub struct Description {
   |            ^^^^^^^^^^^

warning: multiple fields are never read
  --> src/qelmt/mod.rs:79:5
   |
78 | pub struct DynamicText {
   |            ----------- fields in this struct
79 |     text: String,
   |     ^^^^
80 |     info_name: Option<String>,
   |     ^^^^^^^^^
81 |     x: f64,
   |     ^
82 |     y: f64,
   |     ^
83 |     z: i32,
   |     ^
84 |     rotation: f64,
   |     ^^^^^^^^
85 |     uuid: Uuid,
   |     ^^^^
86 |     h_alignment: HAlignment,
   |     ^^^^^^^^^^^
87 |     font: String,
   |     ^^^^
88 |     text_from: String,
   |     ^^^^^^^^^
89 |     v_alignment: VAlignment,
   |     ^^^^^^^^^^^
90 |     frame: bool,
   |     ^^^^^
91 |     text_width: i32,
   |     ^^^^^^^^^^
92 |     keep_visual_rotation: bool,
   |     ^^^^^^^^^^^^^^^^^^^^

warning: fields `x`, `y`, `uuid`, `name`, and `orientation` are never read
   --> src/qelmt/mod.rs:97:5
    |
96  | pub struct Terminal {
    |            -------- fields in this struct
97  |     x: f64,
    |     ^
98  |     y: f64,
    |     ^
99  |     uuid: Uuid,
    |     ^^^^
100 |     name: String,
    |     ^^^^
101 |     orientation: TermOrient,
    |     ^^^^^^^^^^^

warning: struct `Names` is never constructed
   --> src/qelmt/mod.rs:109:12
    |
109 | pub struct Names {
    |            ^^^^^

warning: struct `Name` is never constructed
   --> src/qelmt/mod.rs:113:12
    |
113 | pub struct Name {
    |            ^^^^

warning: struct `ElmtUuid` is never constructed
   --> src/qelmt/mod.rs:118:12
    |
118 | pub struct ElmtUuid {
    |            ^^^^^^^^

warning: enum `ItemType` is never used
   --> src/qelmt/mod.rs:123:6
    |
123 | enum ItemType {
    |      ^^^^^^^^

warning: variants `Left`, `Center`, and `Right` are never constructed
   --> src/qelmt/mod.rs:138:5
    |
137 | enum HAlignment {
    |      ---------- variants in this enum
138 |     Left,
    |     ^^^^
139 |     Center,
    |     ^^^^^^
140 |     Right,
    |     ^^^^^

warning: variants `Top`, `Center`, and `Bottom` are never constructed
   --> src/qelmt/mod.rs:144:5
    |
143 | enum VAlignment {
    |      ---------- variants in this enum
144 |     Top,
    |     ^^^
145 |     Center,
    |     ^^^^^^
146 |     Bottom,
    |     ^^^^^^

warning: variants `SimpleArrow`, `TriangleArrow`, `Circle`, and `Diamond` are never constructed
   --> src/qelmt/mod.rs:151:5
    |
149 | enum LineEnd {
    |      ------- variants in this enum
150 |     None,
151 |     SimpleArrow,
    |     ^^^^^^^^^^^
152 |     TriangleArrow,
    |     ^^^^^^^^^^^^^
153 |     Circle,
    |     ^^^^^^
154 |     Diamond,
    |     ^^^^^^^

warning: variants `North`, `East`, `South`, and `West` are never constructed
   --> src/qelmt/mod.rs:158:5
    |
157 | enum TermOrient {
    |      ---------- variants in this enum
158 |     North,
    |     ^^^^^
159 |     East,
    |     ^^^^
160 |     South,
    |     ^^^^^
161 |     West,
    |     ^^^^

warning: enum `LinkType` is never used
   --> src/qelmt/mod.rs:165:6
    |
165 | enum LinkType {
    |      ^^^^^^^^

warning: struct `ElemInfos` is never constructed
   --> src/qelmt/mod.rs:175:12
    |
175 | pub struct ElemInfos {
    |            ^^^^^^^^^

warning: struct `ElemInfo` is never constructed
   --> src/qelmt/mod.rs:179:12
    |
179 | pub struct ElemInfo {
    |            ^^^^^^^^

warning: multiple fields are never read
  --> src/qelmt/arc.rs:4:5
   |
3  | pub struct Arc {
   |            --- fields in this struct
4  |     x: f64,
   |     ^
5  |     y: f64,
   |     ^
6  |     width: f64,
   |     ^^^^^
7  |     height: f64,
   |     ^^^^^^
8  |     start: f64,
   |     ^^^^^
9  |     angle: f64,
   |     ^^^^^
10 |     style: String,
   |     ^^^^^
11 |     antialias: bool,
   |     ^^^^^^^^^

warning: multiple fields are never read
  --> src/qelmt/line.rs:5:5
   |
4  | pub struct Line {
   |            ---- fields in this struct
5  |     length2: f64,
   |     ^^^^^^^
6  |     end2: LineEnd,
   |     ^^^^
7  |     length1: f64,
   |     ^^^^^^^
8  |     x1: f64,
   |     ^^
9  |     y1: f64,
   |     ^^
10 |     x2: f64,
   |     ^^
11 |     y2: f64,
   |     ^^
12 |     style: String,
   |     ^^^^^
13 |     end1: LineEnd,
   |     ^^^^
14 |     antialias: bool,
   |     ^^^^^^^^^

warning: fields `rotation`, `value`, `x`, `y`, `font`, and `color` are never read
  --> src/qelmt/text.rs:5:5
   |
4  | pub struct Text {
   |            ---- fields in this struct
5  |     rotation: f64,
   |     ^^^^^^^^
6  |     value: String,
   |     ^^^^^
7  |     x: f64,
   |     ^
8  |     y: f64,
   |     ^
9  |     font: String,
   |     ^^^^
10 |     color: HexColor,
   |     ^^^^^

warning: fields `x` and `y` are never read
 --> src/qelmt/polygon.rs:4:5
  |
3 | struct Coordinate {
  |        ---------- fields in this struct
4 |     x: f64,
  |     ^
5 |     y: f64,
  |     ^

warning: fields `style`, `antialias`, `coordinates`, and `closed` are never read
  --> src/qelmt/polygon.rs:9:5
   |
8  | pub struct Polygon {
   |            ------- fields in this struct
9  |     style: String,
   |     ^^^^^
10 |     antialias: bool,
   |     ^^^^^^^^^
11 |     coordinates: Vec<Coordinate>,
   |     ^^^^^^^^^^^
12 |     closed: bool,
   |     ^^^^^^

warning: fields `height`, `width`, `style`, `x`, `y`, and `antialias` are never read
 --> src/qelmt/ellipse.rs:4:5
  |
3 | pub struct Ellipse {
  |            ------- fields in this struct
4 |     height: f64,
  |     ^^^^^^
5 |     width: f64,
  |     ^^^^^
6 |     style: String,
  |     ^^^^^
7 |     x: f64,
  |     ^
8 |     y: f64,
  |     ^
9 |     antialias: bool,
  |     ^^^^^^^^^

warning: `dxf2elmt` (bin "dxf2elmt") generated 32 warnings (run `cargo fix --bin "dxf2elmt"` to apply 1 suggestion)
    Finished `release` profile [optimized] target(s) in 23.49s

Perhaps your Linux file system is full and the OS has switched to read-only mode?

I saw any not problem with your file, I opened before your file with Kate editor nothing seems strange, and VirusTotal no warning.. so I opened with lastest 0.0100-dev and I saw you created this projet with QET version 0.8.
To prove it to you, I've exported it as a PDF file.

If you edit your posta new menu appear add attached file.

Have you others backups of this project?

Ohoo the size of your file is 0 KB    so the file is empty!

Hallo,

can you share your files?

Edit: please read this topic: https://qelectrotech.org/forum/viewtopic.php?id=2135

88

(129 replies, posted in Import DXF)

Macos arm64 dxf2elmt for test.

FYI it's only work in an terminal...

vadoola wrote:

I see the problem:

if info {
    //prints info
} else if verbose_output {
    //print to stdout
}

if the info flag is passed (which defaults to true), it never checks if the verbose flag is used.

Looks like this change was made as part of commit 67557ff on 2022-10-15

I think isn't fixed. We can't launch new dxf2elmt directly on QET element editor.

89

(129 replies, posted in Import DXF)

Nice. nomicons/wink

Hello Ernesto and welcome,

maybe see these:

https://qelectrotech.org/forum/viewtopi … 6411#p6411

https://qelectrotech.org/gallery/photos/nuri_schaltschrankaufbau_-_innenansicht.png

https://qelectrotech.org/forum/viewtopic.php?id=1592

also im trying to read some post on the forum about that but i dont understand how to use the qet scaler, or where i can codify the codes that the pple post on the news.

Plc-user QET_elementScaler quick-guide, or see my videos :
https://qelectrotech.org/forum/viewtopi … 252#p20252




Search cabinet on forum search, for more informations.

https://qelectrotech.org/forum/viewtopic.php?id=2150
https://qelectrotech.org/forum/viewtopic.php?id=1924


Regards,
Laurent

91

(129 replies, posted in Import DXF)

@vadoola:Do you think it's possible to solve this problem?
https://github.com/antonioaja/dxf2elmt/issues/2

Do we still have to do ‘select all and make explode all’ and save again in a DXF program before using df2elmt?

92

(129 replies, posted in Import DXF)

antonioaja wrote:
Joshua wrote:

Is it possible to add an argument to your program for instead of write in a .elmt file, return the xml (string) in the stdout ?
If yes, I can use your program trought qelectrotech to import a dxf directly inside the element editor ? You will make a lot of happy user nomicons/smile

Hello,

Version 0.3.0 is available on my github. You can use the argument "-v" to return the xml string instead of creating a .elmt file.

Commit
Verbose output now works with "-v" argument
https://github.com/qelectrotech/dxf2elm … 5b065685a1

Strangely, I don't see this argument now in the last code any more like you

I looks like the last release and binary are dated 2022-07-21, but there was a commit on 2022-07-22 where Antonioaja switched from manually parsing command line arguments to using the clap argument parsing crate. I imagine that's where this discrepancy is coming from. I'll see what I can do to correct this. Probably no reason to update how QElectrotech is calling dxf2elmt if I can resolve the difference.

Maybe ?
    // Create output file for .elmt
-  let mut out_file = file_writer::create_file(verbose_output, file_name);
+ let mut out_file = file_writer::create_file(verbose_output, info, file_name);


-    if !verbose_output {
+   if info {


-    } else {
+   } else if verbose_output{
https://github.com/qelectrotech/dxf2elm … b31a9abd77

93

(129 replies, posted in Import DXF)

For use dxf2elmt vadoola fork in QET element editor GUI this need this add an little change in QET source code to launch new dxf2elmt:
patch:

--- sources/dxf/dxftoelmt.cpp
+++ sources/dxf/dxftoelmt.cpp
@@ -40,7 +40,7 @@ QByteArray dxfToElmt(const QString &file_path)
 
     QProcess process_;
     const QString program{dxf2ElmtBinaryPath()};
-    const QStringList arguments{file_path, QStringLiteral("-v")};
+    const QStringList arguments{file_path, QStringLiteral("-i"), QStringLiteral("-v")};
 
     process_.start(program, arguments);

@vadoola: For use new dxf2elmt in GUI you just to add -i arguments by default in your code, it's can break CLi I think.
Users can try out the original or your fork without modifying the code in the QET program.

./dxf2elmt -i  572211_CMMS-ST-C8-7-G2_right.dxf
572211_CMMS-ST-C8-7-G2_right.elmt was created...
Now converting 572211_CMMS-ST-C8-7-G2_right.dxf...

https://download.qelectrotech.org/qet/forum_img_2/dxf2elmt_new.png

At first glance, there's no difference - both do a remarkable job.

https://download.qelectrotech.org/qet/forum_img_2/dxf2elmt_new2.png


Then you'd have to test DXFs that didn't work with the old converter to see if they work better with the new one?

94

(129 replies, posted in Import DXF)

Hallo plc-user hello vadoola,

thanks for --release arguments I don't remember it.



Source code for launch dxf2elmt:
https://github.com/search?q=repo%3Aqele … ;type=code

@vadoola: FYI a little video howto use previous dxf2elmt in GUI QET element editor.

Regards,
Laurent

95

(129 replies, posted in Import DXF)

git clone https://github.com/Vadoola/dxf2elmt.git  dxf2elmt_vadoola
cd dxf2elmt_vadoola
rustup update
cargo build

Program work well in a terminal with CLI, not when I put the binary dxf2elmt in ~.qet/binary/   and I use QET element editor
menu Import DXF, not  stdout?

ps: size of the binary is very big after cargo build... ~57,6 Mio (60414840) (debug?)

Joshua wrote:

Is it possible to add an argument to your program for instead of write in a .elmt file, return the xml (string) in the stdout ?
If yes, I can use your program trought qelectrotech to import a dxf directly inside the element editor ? You will make a lot of happy user nomicons/smile

96

(129 replies, posted in Import DXF)

Hello vadoola and welcome.

No activity of Antionio since November 8, 2023 : https://github.com/antonioaja

I hope he's all right ....

Or see online element viewer https://download.qelectrotech.org/qet/e … index.html

Ca fonctionne pour les numéros de fils avec reset par folio.
Malheureusement, quand tu quittes le folio et que tu reviens dessus pour ajouter un fil supplémentaire, QET ne retient pas où il était arrivé et recommence à numéroter à partir de 1.

Oui, c'est le bug remonté sur l'autre post... en principe il est rare de rajouter des conducteurs dans un folio qui a déja été dessiné ...
Par contre ça fonctionne bien pour les éléments.

Si quelqu'un peut se pencher sur les fichiers de code que j'ai mis en lien?Tout comme moi ou Joshua nous n'avons plus le temps depuis plusieurs mois.

Bonjour,

voir ce sujet pour la numérotation et ses problemes:
https://qelectrotech.org/forum/viewtopic.php?id=2799

La fonction câbles n'a pas encore été codé, mais quelques astuces:
https://qelectrotech.org/forum/viewtopi … 157#p17157

Cordialement,
Laurent

nomicons/wink