From 2f9b97ce3abcef61c266396a2c8b2fd51d36edd2 Mon Sep 17 00:00:00 2001
From: Roy-043 <70520633+Roy-043@users.noreply.github.com>
Date: Thu, 9 May 2024 11:12:19 +0200
Subject: [PATCH] Draft: Add "legacy importer only" to DXF option (#13638)
* Draft: Clarify "legacy only" DXF options in the preferences
Fixes #13598.
---
src/Mod/Draft/Resources/ui/preferences-dxf.ui | 368 ++++++++++++------
1 file changed, 240 insertions(+), 128 deletions(-)
diff --git a/src/Mod/Draft/Resources/ui/preferences-dxf.ui b/src/Mod/Draft/Resources/ui/preferences-dxf.ui
index 433b01f99b..dee8bb7ddf 100644
--- a/src/Mod/Draft/Resources/ui/preferences-dxf.ui
+++ b/src/Mod/Draft/Resources/ui/preferences-dxf.ui
@@ -30,13 +30,16 @@
9
-
-
+
This preferences dialog will be shown when importing/ exporting DXF files
Show this dialog when importing and exporting
+
+ true
+
dxfShowDialog
@@ -46,7 +49,7 @@
-
-
+
Python importer is used, otherwise the newer C++ is used.
Note: C++ importer is faster, but is not as featureful yet
@@ -66,7 +69,7 @@ Note: C++ importer is faster, but is not as featureful yet
-
-
+
Python exporter is used, otherwise the newer C++ is used.
Note: C++ exporter is faster, but is not as featureful yet
@@ -83,15 +86,15 @@ Note: C++ exporter is faster, but is not as featureful yet
-
-
+
- Automatic update (legacy importer only)
+ Automatic update (legacy importer/exporter only)
-
+
-
-
+
-
-
+
Allow FreeCAD to download the Python converter for DXF import and export.
You can also do this manually by installing the "dxf_library" workbench
@@ -114,7 +117,7 @@ from the Addon Manager.
-
-
+
Import options
@@ -135,23 +138,28 @@ from the Addon Manager.
9
-
-
+
+
+
+ true
+
+
- Note: Not all the options below are used by the new importer yet
+ Some options are not yet available for the new importer
-
-
+
-
-
+
Import
-
-
+
If unchecked, texts and mtexts won't be imported
@@ -167,7 +175,7 @@ from the Addon Manager.
-
-
+
If unchecked, points won't be imported
@@ -183,7 +191,7 @@ from the Addon Manager.
-
-
+
If checked, paper space objects will be imported too
@@ -199,7 +207,7 @@ from the Addon Manager.
-
-
+
If you want the non-named blocks (beginning with a *) to be imported too
@@ -217,16 +225,22 @@ from the Addon Manager.
-
-
+
-
-
+
+
+ false
+
Create
-
-
+
+
+ false
+
Only standard Part objects will be created (fastest)
@@ -245,7 +259,10 @@ from the Addon Manager.
-
-
+
+
+ false
+
Parametric Draft objects will be created whenever possible
@@ -261,7 +278,10 @@ from the Addon Manager.
-
-
+
+
+ false
+
Sketches will be created whenever possible
@@ -279,9 +299,9 @@ from the Addon Manager.
-
-
+
-
-
+
@@ -291,7 +311,7 @@ from the Addon Manager.
-
-
+
Qt::Horizontal
@@ -304,7 +324,7 @@ from the Addon Manager.
-
-
+
Scale factor to apply to DXF files on import.
The factor is the conversion between the unit of your DXF file and millimeters.
@@ -331,9 +351,9 @@ Example: for files in millimeters: 1, in centimeters: 10,
-
-
+
-
-
+
Colors will set as specified in the DXF file whenever possible.
Otherwise default colors will be applied.
@@ -352,9 +372,12 @@ Otherwise default colors will be applied.
-
-
+
-
-
+
+
+ false
+
FreeCAD will try to join coincident objects into wires.
Note that this can take a while!
@@ -373,9 +396,9 @@ Note that this can take a while!
-
-
+
-
-
+
Objects from the same layers will be joined into Draft Blocks,
turning the display faster, but making them less easily editable.
@@ -394,9 +417,12 @@ turning the display faster, but making them less easily editable.
-
-
+
-
-
+
+
+ false
+
Imported texts will get the standard Draft Text size,
instead of the size they have in the DXF document
@@ -415,14 +441,14 @@ instead of the size they have in the DXF document
-
-
+
-
-
+
If this is checked, DXF layers will be imported as Draft Layers
- Use Layers
+ Use layers
true
@@ -438,14 +464,17 @@ instead of the size they have in the DXF document
-
-
+
-
-
+
+
+ false
+
Hatches will be converted into simple wires
- Import hatch boundaries as wires (legacy importer only)
+ Import hatch boundaries as wires
importDxfHatches
@@ -458,15 +487,18 @@ instead of the size they have in the DXF document
-
-
+
-
-
+
+
+ false
+
If polylines have a width defined, they will be rendered
as closed wires with correct width
- Render polylines with width (legacy importer only)
+ Render polylines with width
renderPolylineWidth
@@ -482,92 +514,107 @@ as closed wires with correct width
-
-
+
Export options
-
-
-
-
-
-
-
-
- Ellipse export is poorly supported. Use this to export them as polylines instead.
-
-
- Treat ellipses and splines as polylines
-
-
- true
-
-
- DiscretizeEllipses
-
-
- Mod/Draft
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
- Max Spline Segment:
-
-
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
-
- -
-
-
- Maximum length of each of the polyline segments.
-If it is set to '0' the whole spline is treated as a straight segment.
-
-
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
- mm
-
-
- 9999.989999999999782
-
-
- 5.000000000000000
-
-
- maxsegmentlength
-
-
- Mod/Draft
-
-
-
-
-
- -
-
+
+
-
+
+
+
+ true
+
+
+
+ Some options are not yet available for the new exporter
+
+
+
+ -
+
-
-
+
+
+ Ellipse export is poorly supported. Use this to export them as polylines instead.
+
+
+ Treat ellipses and splines as polylines
+
+
+ true
+
+
+ DiscretizeEllipses
+
+
+ Mod/Draft
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Max Spline Segment:
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+
+ -
+
+
+ Maximum length of each of the polyline segments.
+If it is set to '0' the whole spline is treated as a straight segment.
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ mm
+
+
+ 9999.989999999999782
+
+
+ 5.000000000000000
+
+
+ maxsegmentlength
+
+
+ Mod/Draft
+
+
+
+
+
+ -
+
+
-
+
+
+ false
+
All objects containing faces will be exported as 3D polyfaces
- Export 3D objects as polyface meshes (legacy exporter only)
+ Export 3D objects as polyface meshes
dxfmesh
@@ -580,9 +627,9 @@ If it is set to '0' the whole spline is treated as a straight segment.
-
-
+
-
-
+
TechDraw Views will be exported as blocks.
This might fail for post DXF R12 templates.
@@ -604,14 +651,17 @@ This might fail for post DXF R12 templates.
-
-
+
-
-
+
+
+ false
+
Exported objects will be projected to reflect the current view direction
- Project exported objects along current view direction (legacy exporter only)
+ Project exported objects along current view direction
dxfproject
@@ -627,7 +677,7 @@ This might fail for post DXF R12 templates.
-
-
+
Qt::Vertical
@@ -661,5 +711,67 @@ This might fail for post DXF R12 templates.
-
+
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ label_Create
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ radioButton_dxfCreatePart
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ radioButton_dxfCreateDraft
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ radioButton_dxfCreateSketch
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ checkBox_joingeometry
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ checkBox_dxfStdSize
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ checkBox_importDxfHatches
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyImporter
+ toggled(bool)
+ checkBox_renderPolylineWidth
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyExporter
+ toggled(bool)
+ checkBox_dxfmesh
+ setEnabled(bool)
+
+
+ checkBox_dxfUseLegacyExporter
+ toggled(bool)
+ checkBox_dxfproject
+ setEnabled(bool)
+
+