diff --git a/src/Mod/TechDraw/App/Preferences.cpp b/src/Mod/TechDraw/App/Preferences.cpp
index 171ec7de95..b88bca9771 100644
--- a/src/Mod/TechDraw/App/Preferences.cpp
+++ b/src/Mod/TechDraw/App/Preferences.cpp
@@ -309,7 +309,6 @@ bool Preferences::lightOnDark()
void Preferences::lightOnDark(bool state)
{
- Base::Console().Message("Pref::useLightText - set to %d\n", state);
getPreferenceGroup("Colors")->SetBool("LightOnDark", state);
}
@@ -376,3 +375,8 @@ bool Preferences::autoCorrectDimRefs()
{
return getPreferenceGroup("Dimensions")->GetBool("AutoCorrectRefs", true);
}
+
+int Preferences::scrubCount()
+{
+ return getPreferenceGroup("General")->GetInt("ScrubCount", 0);
+}
diff --git a/src/Mod/TechDraw/App/Preferences.h b/src/Mod/TechDraw/App/Preferences.h
index 392cd73898..c976a17849 100644
--- a/src/Mod/TechDraw/App/Preferences.h
+++ b/src/Mod/TechDraw/App/Preferences.h
@@ -99,6 +99,7 @@ public:
static App::Color getAccessibleColor(App::Color orig);
static bool autoCorrectDimRefs();
+ static int scrubCount();
};
}//end namespace TechDraw
diff --git a/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvanced.ui b/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvanced.ui
index f5039f7ac6..6a05e963c1 100644
--- a/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvanced.ui
+++ b/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvanced.ui
@@ -7,7 +7,7 @@
0
0
444
- 380
+ 384
@@ -40,8 +40,8 @@
-
-
-
-
+
-
+
0
@@ -49,38 +49,63 @@
- Include 2D Objects in projection
+ Limit of 64x64 pixel SVG tiles used to hatch a single face.
+For large scalings you might get an error about to many SVG tiles.
+Then you need to increase the tile limit.
-
- Show Loose 2D Geom
+
+ Qt::AlignRight
-
- false
+
+ 1
+
+
+ 1000000
+
+
+ 100
+
+
+ 10000
- ShowLoose2d
+ MaxSVGTile
- Mod/TechDraw/General
+ Mod/TechDraw/Decorations
- -
-
-
- Max SVG Hatch Tiles
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 20
+
-
-
- -
-
true
+
+ Perform a fuse operation on input shape(s) before Section view processing
+
- Line End Cap Shape
+ Fuse Before Section
+
+
+ SectionFuseFirst
+
+
+ Mod/TechDraw/General
@@ -106,14 +131,106 @@
- -
-
-
- Max PAT Hatch Segments
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 174
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+ Selection area around center marks
+Each unit is approx. 0.1 mm wide
+
+
+
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ 5.000000000000000
+
+
+ MarkFuzz
+
+
+ Mod/TechDraw/General
- -
+
-
+
+
+
+ 0
+ 20
+
+
+
+ Maximum hatch line segments to use
+when hatching a face with a PAT pattern
+
+
+ Qt::AlignRight
+
+
+ 1
+
+
+ 1000000
+
+
+ 100
+
+
+ 10000
+
+
+ MaxSeg
+
+
+ Mod/TechDraw/PAT
+
+
+
+ -
+
+
+ Max SVG Hatch Tiles
+
+
+
+ -
+
+
+ Issue progress messages while building View geometry
+
+
+ Report Progress
+
+
+ ReportProgress
+
+
+ /Mod/TechDraw/General
+
+
+
+ -
@@ -154,7 +271,120 @@ Each unit is approx. 0.1 mm wide
- -
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 20
+
+
+
+ Dump intermediate results during Detail view processing
+
+
+ Debug Detail
+
+
+ debugDetail
+
+
+ Mod/TechDraw/debug
+
+
+
+ -
+
+
+
+ true
+
+
+
+ Line End Cap Shape
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Mark Fuzz
+
+
+
+ -
+
+
+ Max PAT Hatch Segments
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Include edges with unexpected geometry (zero length etc.) in results
+
+
+ Allow Crazy Edges
+
+
+ allowCrazyEdge
+
+
+ Mod/TechDraw/debug
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 20
+
+
+
+ Highlights border of section cut in section views
+
+
+ Show Section Edges
+
+
+ true
+
+
+ ShowSectionEdges
+
+
+ /Mod/TechDraw/General
+
+
+
+ -
@@ -200,72 +430,8 @@ Only change unless you know what you are doing!
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
- 20
-
-
-
-
- true
-
-
-
- Perform a fuse operation on input shape(s) before Section view processing
-
-
- Fuse Before Section
-
-
- SectionFuseFirst
-
-
- Mod/TechDraw/General
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
- 20
-
-
-
- Highlights border of section cut in section views
-
-
- Show Section Edges
-
-
- true
-
-
- ShowSectionEdges
-
-
- /Mod/TechDraw/General
-
-
-
- -
-
+
-
+
0
@@ -273,60 +439,19 @@ Only change unless you know what you are doing!
- Include edges with unexpected geometry (zero length etc.) in results
+ Dump intermediate results during Section view processing
- Allow Crazy Edges
+ Debug Section
- allowCrazyEdge
+ debugSection
Mod/TechDraw/debug
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
- 20
-
-
-
- Dump intermediate results during Detail view processing
-
-
- Debug Detail
-
-
- debugDetail
-
-
- Mod/TechDraw/debug
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Mark Fuzz
-
-
-
-
@@ -355,7 +480,32 @@ can be a performance penalty in complex models.
- -
+
-
+
+
+
+ 0
+ 20
+
+
+
+ Include 2D Objects in projection
+
+
+ Show Loose 2D Geom
+
+
+ false
+
+
+ ShowLoose2d
+
+
+ Mod/TechDraw/General
+
+
+
+ -
@@ -374,169 +524,6 @@ can be a performance penalty in complex models.
- -
-
-
-
- 0
- 0
-
-
-
-
- 174
- 0
-
-
-
-
- 0
- 0
-
-
-
- Selection area around center marks
-Each unit is approx. 0.1 mm wide
-
-
-
-
-
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
- 5.000000000000000
-
-
- MarkFuzz
-
-
- Mod/TechDraw/General
-
-
-
- -
-
-
- Issue progress messages while building View geometry
-
-
- Report Progress
-
-
- ReportProgress
-
-
- /Mod/TechDraw/General
-
-
-
- -
-
-
-
- 0
- 20
-
-
-
- Limit of 64x64 pixel SVG tiles used to hatch a single face.
-For large scalings you might get an error about to many SVG tiles.
-Then you need to increase the tile limit.
-
-
- Qt::AlignRight
-
-
- 1
-
-
- 1000000
-
-
- 100
-
-
- 10000
-
-
- MaxSVGTile
-
-
- Mod/TechDraw/Decorations
-
-
-
- -
-
-
-
- 0
- 20
-
-
-
- Maximum hatch line segments to use
-when hatching a face with a PAT pattern
-
-
- Qt::AlignRight
-
-
- 1
-
-
- 1000000
-
-
- 100
-
-
- 10000
-
-
- MaxSeg
-
-
- Mod/TechDraw/PAT
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Dump intermediate results during Section view processing
-
-
- Debug Section
-
-
- debugSection
-
-
- Mod/TechDraw/debug
-
-
-
-
@@ -556,6 +543,48 @@ when hatching a face with a PAT pattern
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Overlap Edges Scrub Passes
+
+
+
+ -
+
+
+ <html><head/><body><p>The number of times FreeCAD should try to remove overlapping edges returned by the Hidden Line Removal algorithm. A value of 0 indicates no scrubbing, 1 indicates a single pass and 2 indicates a second pass should be performed. Values above 2 are generally not productive. Each pass adds to the time required to produce the drawing.</p></body></html>
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+
+
+
+
+
+
+ ScrubCount
+
+
+ Mod/TechDraw/General
+
+
+
diff --git a/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvancedImp.cpp b/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvancedImp.cpp
index ca9e430ea4..65a3080187 100644
--- a/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvancedImp.cpp
+++ b/src/Mod/TechDraw/Gui/DlgPrefsTechDrawAdvancedImp.cpp
@@ -59,6 +59,7 @@ void DlgPrefsTechDrawAdvancedImp::saveSettings()
ui->cbReportProgress->onSave();
ui->cbAutoCorrectRefs->onSave();
ui->cbNewFaceFinder->onSave();
+ ui->sbScrubCount->onSave();
}
void DlgPrefsTechDrawAdvancedImp::loadSettings()
@@ -78,6 +79,7 @@ void DlgPrefsTechDrawAdvancedImp::loadSettings()
ui->cbReportProgress->onRestore();
ui->cbAutoCorrectRefs->onRestore();
ui->cbNewFaceFinder->onRestore();
+ ui->sbScrubCount->onRestore();
}
/**