Merge branch 'master' into bugfix/dangling-signal-registration
This commit is contained in:
+1
-1
@@ -53,7 +53,7 @@ namespace SMESH{
|
||||
class SMESHCONTROLS_EXPORT Functor
|
||||
{
|
||||
public:
|
||||
~Functor(){}
|
||||
virtual ~Functor(){}
|
||||
virtual void SetMesh( const SMDS_Mesh* theMesh ) = 0;
|
||||
virtual SMDSAbs_ElementType GetType() const = 0;
|
||||
};
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef APP_APPLICATION_H
|
||||
#define APP_APPLICATION_H
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
|
||||
@@ -70,7 +70,7 @@ recompute path. Also, it enables more complicated dependencies beyond trees.
|
||||
|
||||
#include <boost/algorithm/string.hpp>
|
||||
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
#include <boost/graph/subgraph.hpp>
|
||||
#include <boost/graph/graphviz.hpp>
|
||||
#include <boost/graph/strong_components.hpp>
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@
|
||||
#include <stack>
|
||||
#include <functional>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace Base {
|
||||
class Writer;
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
#include <unordered_map>
|
||||
#include <bitset>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace App
|
||||
{
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#define APP_DOCUMENTOBSERVER_H
|
||||
|
||||
#include <Base/BaseClass.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <set>
|
||||
#include <memory>
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include <CXX/Objects.hxx>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
#include <string>
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef APP_GROUPEXTENSION_H
|
||||
#define APP_GROUPEXTENSION_H
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include "FeaturePython.h"
|
||||
#include "DocumentObject.h"
|
||||
#include "PropertyLinks.h"
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@
|
||||
#define APP_LINK_H
|
||||
|
||||
#include <unordered_set>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/preprocessor/facilities/expand.hpp>
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/seq/for_each.hpp>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef APP_MERGEDOCUMENTS_H
|
||||
#define APP_MERGEDOCUMENTS_H
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <Base/Persistence.h>
|
||||
|
||||
namespace zipios {
|
||||
|
||||
@@ -80,13 +80,13 @@
|
||||
#include <iterator>
|
||||
|
||||
// Boost
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
#include <boost/regex.hpp>
|
||||
|
||||
#include <boost/tuple/tuple.hpp>
|
||||
#include <boost/utility.hpp>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
|
||||
#include <boost/program_options.hpp>
|
||||
//namespace po = boost::program_options;
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
#include <CXX/Objects.hxx>
|
||||
#include <boost/bind/bind.hpp>
|
||||
#include <boost/graph/graph_traits.hpp>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
|
||||
|
||||
using namespace App;
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
|
||||
#include <boost/unordered/unordered_map.hpp>
|
||||
#include <boost/function.hpp>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
#include <boost/graph/topological_sort.hpp>
|
||||
#include <App/PropertyLinks.h>
|
||||
#include <App/Expression.h>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#define APP_PROPERTYLINKS_H
|
||||
|
||||
// Std. configurations
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
#include <string>
|
||||
#include <fstream>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include "DocumentObject.h"
|
||||
#include "TextDocument.h"
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
|
||||
#include <string>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include "DocumentObject.h"
|
||||
#include "PropertyStandard.h"
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <QString>
|
||||
#include <QObject>
|
||||
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@
|
||||
#include "PreCompiled.h"
|
||||
|
||||
#ifndef _PreComp_
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <QAbstractItemView>
|
||||
# include <QActionEvent>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
#ifndef _PreComp_
|
||||
# include "InventorAll.h"
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <sstream>
|
||||
# include <stdexcept>
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace App {
|
||||
class Document;
|
||||
|
||||
@@ -1145,7 +1145,7 @@ StdCmdSetAppearance::StdCmdSetAppearance()
|
||||
sToolTipText = QT_TR_NOOP("Sets the display properties of the selected object");
|
||||
sWhatsThis = "Std_SetAppearance";
|
||||
sStatusTip = QT_TR_NOOP("Sets the display properties of the selected object");
|
||||
sPixmap = "Std_Tool1";
|
||||
sPixmap = "Std_SetAppearance";
|
||||
sAccel = "Ctrl+D";
|
||||
eType = Alter3DView;
|
||||
}
|
||||
@@ -2289,7 +2289,7 @@ StdCmdViewIvStereoOff::StdCmdViewIvStereoOff()
|
||||
sToolTipText = QT_TR_NOOP("Switch stereo viewing off");
|
||||
sWhatsThis = "Std_ViewIvStereoOff";
|
||||
sStatusTip = QT_TR_NOOP("Switch stereo viewing off");
|
||||
sPixmap = "Std_Tool6";
|
||||
sPixmap = "Std_ViewIvStereoOff";
|
||||
eType = Alter3DView;
|
||||
}
|
||||
|
||||
@@ -2318,7 +2318,7 @@ StdCmdViewIvStereoRedGreen::StdCmdViewIvStereoRedGreen()
|
||||
sToolTipText = QT_TR_NOOP("Switch stereo viewing to red/cyan");
|
||||
sWhatsThis = "Std_ViewIvStereoRedGreen";
|
||||
sStatusTip = QT_TR_NOOP("Switch stereo viewing to red/cyan");
|
||||
sPixmap = "Std_Tool7";
|
||||
sPixmap = "Std_ViewIvStereoRedGreen";
|
||||
eType = Alter3DView;
|
||||
}
|
||||
|
||||
@@ -2346,7 +2346,7 @@ StdCmdViewIvStereoQuadBuff::StdCmdViewIvStereoQuadBuff()
|
||||
sToolTipText = QT_TR_NOOP("Switch stereo viewing to quad buffer");
|
||||
sWhatsThis = "Std_ViewIvStereoQuadBuff";
|
||||
sStatusTip = QT_TR_NOOP("Switch stereo viewing to quad buffer");
|
||||
sPixmap = "Std_Tool7";
|
||||
sPixmap = "Std_ViewIvStereoQuadBuff";
|
||||
eType = Alter3DView;
|
||||
}
|
||||
|
||||
@@ -2374,7 +2374,7 @@ StdCmdViewIvStereoInterleavedRows::StdCmdViewIvStereoInterleavedRows()
|
||||
sToolTipText = QT_TR_NOOP("Switch stereo viewing to Interleaved Rows");
|
||||
sWhatsThis = "Std_ViewIvStereoInterleavedRows";
|
||||
sStatusTip = QT_TR_NOOP("Switch stereo viewing to Interleaved Rows");
|
||||
sPixmap = "Std_Tool7";
|
||||
sPixmap = "Std_ViewIvStereoInterleavedRows";
|
||||
eType = Alter3DView;
|
||||
}
|
||||
|
||||
@@ -2402,7 +2402,7 @@ StdCmdViewIvStereoInterleavedColumns::StdCmdViewIvStereoInterleavedColumns()
|
||||
sToolTipText = QT_TR_NOOP("Switch stereo viewing to Interleaved Columns");
|
||||
sWhatsThis = "Std_ViewIvStereoInterleavedColumns";
|
||||
sStatusTip = QT_TR_NOOP("Switch stereo viewing to Interleaved Columns");
|
||||
sPixmap = "Std_Tool7";
|
||||
sPixmap = "Std_ViewIvStereoInterleavedColumns";
|
||||
eType = Alter3DView;
|
||||
}
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef _PreComp_
|
||||
#include <boost_bind_bind.hpp>
|
||||
#include <boost/graph/topological_sort.hpp>
|
||||
#include <boost/graph/reverse_graph.hpp>
|
||||
#include <boost_graph_reverse_graph.hpp>
|
||||
|
||||
#include <QApplication>
|
||||
#include <QString>
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <QGraphicsScene>
|
||||
#include <QBrush>
|
||||
|
||||
@@ -26,16 +26,16 @@
|
||||
#include <memory>
|
||||
#include <bitset>
|
||||
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
#include <boost/graph/iteration_macros.hpp>
|
||||
#include <boost/graph/reverse_graph.hpp>
|
||||
#include <boost_graph_reverse_graph.hpp>
|
||||
#include <boost/graph/topological_sort.hpp>
|
||||
#include <boost/graph/graphviz.hpp>
|
||||
#include <boost/graph/breadth_first_search.hpp>
|
||||
#include <boost/multi_index_container.hpp>
|
||||
#include <boost/multi_index/member.hpp>
|
||||
#include <boost/multi_index/ordered_index.hpp>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include "DAGRectItem.h"
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#ifndef _PreComp_
|
||||
# include <algorithm>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <QDockWidget>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
# include <QTextStream>
|
||||
# include <qmessagebox.h>
|
||||
# include <qstatusbar.h>
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <Inventor/actions/SoSearchAction.h>
|
||||
# include <Inventor/nodes/SoSeparator.h>
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#ifndef _PreComp_
|
||||
# include <QApplication>
|
||||
# include <algorithm>
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#define GUI_DOCUMENTOBSERVER_H
|
||||
|
||||
#include <Base/BaseClass.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace App { class Property; }
|
||||
namespace Gui
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include <CXX/Objects.hxx>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
|
||||
namespace Gui
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <App/ObjectIdentifier.h>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <QLabel>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace App {
|
||||
class Expression;
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include "MDIView.h"
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
|
||||
class QGraphicsScene;
|
||||
|
||||
@@ -0,0 +1,233 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg3188"
|
||||
version="1.1">
|
||||
<title
|
||||
id="title866">Std_SetAppearance</title>
|
||||
<defs
|
||||
id="defs3190">
|
||||
<linearGradient
|
||||
id="linearGradient3895">
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3897" />
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1;"
|
||||
offset="1"
|
||||
id="stop3899" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3354">
|
||||
<stop
|
||||
style="stop-color:#2157c7;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3356" />
|
||||
<stop
|
||||
style="stop-color:#6daaff;stop-opacity:1;"
|
||||
offset="1"
|
||||
id="stop3358" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient3354"
|
||||
id="linearGradient3599"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1.0083598,0,0,0.712664,-29.601181,398.25477)"
|
||||
x1="2392.2313"
|
||||
y1="1162.2943"
|
||||
x2="2638.95"
|
||||
y2="1162.2943" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient3354-6"
|
||||
id="linearGradient2996-3"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.15768287,0,0,0.15089213,-357.22613,-145.08225)"
|
||||
x1="2392.2312"
|
||||
y1="1162.2943"
|
||||
x2="2638.95"
|
||||
y2="1162.2943" />
|
||||
<linearGradient
|
||||
id="linearGradient3354-6">
|
||||
<stop
|
||||
style="stop-color:#2157c7;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3356-0" />
|
||||
<stop
|
||||
style="stop-color:#6daaff;stop-opacity:1;"
|
||||
offset="1"
|
||||
id="stop3358-6" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g
|
||||
id="layer1">
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:#eeeeec;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.08138;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect2364"
|
||||
width="28"
|
||||
height="58"
|
||||
x="3"
|
||||
y="3" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:none;stroke:#172a04;stroke-width:2;stroke-linejoin:round;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341"
|
||||
width="20"
|
||||
height="8.0000019"
|
||||
x="7"
|
||||
y="49" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:#73d216;stroke:#8ae234;stroke-width:2;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-3"
|
||||
width="16"
|
||||
height="3.9999986"
|
||||
x="9"
|
||||
y="51" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:none;stroke:#0b1521;stroke-width:2;stroke-linejoin:round;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-9"
|
||||
width="20"
|
||||
height="8.0000019"
|
||||
x="7"
|
||||
y="35" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:#3465a4;stroke:#729fcf;stroke-width:2;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-3-1"
|
||||
width="16"
|
||||
height="3.9999986"
|
||||
x="9"
|
||||
y="37" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:none;stroke:#302b00;stroke-width:2;stroke-linejoin:round;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-2"
|
||||
width="20"
|
||||
height="8.0000019"
|
||||
x="7"
|
||||
y="21" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:#edd400;stroke:#fce94f;stroke-width:2;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-3-7"
|
||||
width="16"
|
||||
height="3.9999986"
|
||||
x="9"
|
||||
y="23" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:none;stroke:#280000;stroke-width:2;stroke-linejoin:round;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-0"
|
||||
width="20"
|
||||
height="8.0000019"
|
||||
x="7"
|
||||
y="7" />
|
||||
<rect
|
||||
style="display:inline;overflow:visible;visibility:visible;fill:#cc0000;stroke:#ef2929;stroke-width:2;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
id="rect3341-3-9"
|
||||
width="16"
|
||||
height="3.9999986"
|
||||
x="9"
|
||||
y="9" />
|
||||
<g
|
||||
style="stroke-width:3.5;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="g3060"
|
||||
transform="matrix(0.55090896,0,0,0.45218287,-39.418502,3.7972689)">
|
||||
<path
|
||||
id="path3150-7"
|
||||
d="M 181.76846,74.564006 V 110.8957 l -17.89251,14.53268 v -36.3317 z"
|
||||
style="fill:#204a87;stroke:none" />
|
||||
<path
|
||||
id="path3930"
|
||||
d="m 163.87595,121.79521 17.89251,-14.53268"
|
||||
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3932"
|
||||
d="M 178.78637,114.52887 V 78.197173"
|
||||
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3934"
|
||||
d="m 181.76846,78.197173 -17.89251,14.53268"
|
||||
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3936"
|
||||
d="M 166.85803,85.463513 V 121.79521"
|
||||
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3152-1"
|
||||
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.532677 z"
|
||||
style="fill:#3465a4;stroke:none" />
|
||||
<path
|
||||
id="path3938"
|
||||
d="M 160.89386,89.096683 V 121.79521"
|
||||
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3940"
|
||||
d="m 140.01927,107.26253 23.85668,14.53268"
|
||||
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3942"
|
||||
d="M 143.00136,110.8957 V 78.197173"
|
||||
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3150"
|
||||
d="M 181.76846,74.564003 V 110.8957 l -17.89251,14.53268 V 89.096683 Z"
|
||||
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3944"
|
||||
d="M 163.87595,92.729853 140.01927,78.197173"
|
||||
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3152"
|
||||
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.53268 z"
|
||||
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3156"
|
||||
d="m 181.76846,74.564003 -17.89251,14.53268 -23.85668,-14.53268 17.89251,-14.53268 23.85668,14.53268"
|
||||
style="fill:#729fcf;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
<metadata
|
||||
id="metadata3231">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title>Std_SetAppearance</dc:title>
|
||||
<cc:license
|
||||
rdf:resource="" />
|
||||
<dc:date>2020/12/20</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[bitacovir]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier></dc:identifier>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title></dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
<dc:subject>
|
||||
<rdf:Bag />
|
||||
</dc:subject>
|
||||
<dc:description></dc:description>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.6 KiB |
@@ -0,0 +1,254 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg2980"
|
||||
version="1.1">
|
||||
<title
|
||||
id="title1117">Std_ViewIvStereoInterleavedColumns</title>
|
||||
<defs
|
||||
id="defs2982">
|
||||
<linearGradient
|
||||
id="linearGradient952">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop948" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop950" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient944">
|
||||
<stop
|
||||
style="stop-color:#a40000;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop940" />
|
||||
<stop
|
||||
style="stop-color:#ef2929;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop942" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient1078">
|
||||
<stop
|
||||
id="stop1074"
|
||||
offset="0"
|
||||
style="stop-color:#2e3436;stop-opacity:1" />
|
||||
<stop
|
||||
id="stop1076"
|
||||
offset="1"
|
||||
style="stop-color:#babdb6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3794">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3796" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3798" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3864">
|
||||
<stop
|
||||
id="stop3866"
|
||||
offset="0"
|
||||
style="stop-color:#71b2f8;stop-opacity:1;" />
|
||||
<stop
|
||||
id="stop3868"
|
||||
offset="1"
|
||||
style="stop-color:#002795;stop-opacity:1;" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3767"
|
||||
id="linearGradient3773"
|
||||
x1="22.116516"
|
||||
y1="55.717518"
|
||||
x2="17.328547"
|
||||
y2="21.31134"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3767">
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3769" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3771" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3777"
|
||||
id="linearGradient3783"
|
||||
x1="53.896763"
|
||||
y1="51.179787"
|
||||
x2="47.502235"
|
||||
y2="21.83742"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3777">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3779" />
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3781" />
|
||||
</linearGradient>
|
||||
<radialGradient
|
||||
xlink:href="#linearGradient3794"
|
||||
id="radialGradient3800"
|
||||
cx="1"
|
||||
cy="45"
|
||||
fx="1"
|
||||
fy="45"
|
||||
r="41"
|
||||
gradientTransform="matrix(0.93348213,-2.2905276e-8,0,0.28687573,0.06651751,32.090592)"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
y2="24"
|
||||
x2="7"
|
||||
y1="43"
|
||||
x1="56"
|
||||
id="linearGradient1080"
|
||||
xlink:href="#linearGradient1078"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient944"
|
||||
id="linearGradient946"
|
||||
x1="24.323317"
|
||||
y1="38.115891"
|
||||
x2="9.806756"
|
||||
y2="27.753984"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient952"
|
||||
id="linearGradient954"
|
||||
x1="51.042877"
|
||||
y1="39.422012"
|
||||
x2="35.269917"
|
||||
y2="27.405685"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
</defs>
|
||||
<metadata
|
||||
id="metadata2985">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[bitacovir]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:title>Std_ViewIvStereoInterleavedColumns</dc:title>
|
||||
<dc:date>2020/12/20</dc:date>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier></dc:identifier>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<cc:license>https://www.gnu.org/copyleft/lesser.html</cc:license>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title></dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<path
|
||||
id="path1020"
|
||||
d="M 3,16 H 61 V 46 H 42 C 35.259065,30.714814 27.983716,31.963913 22,46 H 3 Z"
|
||||
style="fill:url(#linearGradient1080);fill-opacity:1;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:url(#linearGradient946);fill-opacity:1;stroke:#280000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 31.401313,21.859905 H 8.1273987 V 38.360987 H 23.397057 l 6.834934,-7.827763 z"
|
||||
id="path921" />
|
||||
<path
|
||||
id="path921-8"
|
||||
d="M 32.632737,21.859905 H 55.906651 V 38.360987 H 40.636993 l -6.834934,-6.652253 z"
|
||||
style="fill:url(#linearGradient954);fill-opacity:1;stroke:#0b1521;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 32.017025,33.189006 V 17.857777"
|
||||
id="path919" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:1.808;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.051724,17.655172 H 59 V 44 L 43.235996,43.938429 C 36.666589,28.519738 26.039445,30.454028 20.661358,44.030786 L 5.051724,44 Z"
|
||||
id="path1020-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#0b1521;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.004082,21.643537 0.06531,10.144218 c 3.212544,1.029984 5.005244,3.076287 7.22721,6.160544"
|
||||
id="path956" />
|
||||
<path
|
||||
id="path956-0"
|
||||
d="M 29.15557,21.542552 29.09026,31.68677 c -3.36274,1.130115 -5.441474,3.316313 -7.466666,6.269387"
|
||||
style="fill:none;stroke:#280000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect1068"
|
||||
width="4.1252704"
|
||||
height="3.8789856"
|
||||
x="10.528675"
|
||||
y="24.322754"
|
||||
ry="0.43099841" />
|
||||
<rect
|
||||
ry="0.43099841"
|
||||
y="24.476677"
|
||||
x="37.527649"
|
||||
height="3.8789856"
|
||||
width="4.1252704"
|
||||
id="rect1068-5"
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
id="path1119-9"
|
||||
d="M 30.840343,58.827548 V 5.0143181"
|
||||
style="fill:none;stroke:#000000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 30.840343,58.827548 V 5.0143181"
|
||||
id="path1119-5-5" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 58.970335,58.78566 V 4.9724299"
|
||||
id="path1119-9-3" />
|
||||
<path
|
||||
id="path1119-5-5-4"
|
||||
d="M 58.970335,58.78566 V 4.9724299"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.0138194,58.799875 V 4.9866457"
|
||||
id="path1119-9-8" />
|
||||
<path
|
||||
id="path1119-5-5-9"
|
||||
d="M 5.0138194,58.799875 V 4.9866457"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.9 KiB |
@@ -0,0 +1,254 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg2980"
|
||||
version="1.1">
|
||||
<title
|
||||
id="title1117">Std_ViewIvStereoInterleavedRows</title>
|
||||
<defs
|
||||
id="defs2982">
|
||||
<linearGradient
|
||||
id="linearGradient952">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop948" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop950" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient944">
|
||||
<stop
|
||||
style="stop-color:#a40000;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop940" />
|
||||
<stop
|
||||
style="stop-color:#ef2929;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop942" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient1078">
|
||||
<stop
|
||||
id="stop1074"
|
||||
offset="0"
|
||||
style="stop-color:#2e3436;stop-opacity:1" />
|
||||
<stop
|
||||
id="stop1076"
|
||||
offset="1"
|
||||
style="stop-color:#babdb6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3794">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3796" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3798" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3864">
|
||||
<stop
|
||||
id="stop3866"
|
||||
offset="0"
|
||||
style="stop-color:#71b2f8;stop-opacity:1;" />
|
||||
<stop
|
||||
id="stop3868"
|
||||
offset="1"
|
||||
style="stop-color:#002795;stop-opacity:1;" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3767"
|
||||
id="linearGradient3773"
|
||||
x1="22.116516"
|
||||
y1="55.717518"
|
||||
x2="17.328547"
|
||||
y2="21.31134"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3767">
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3769" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3771" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3777"
|
||||
id="linearGradient3783"
|
||||
x1="53.896763"
|
||||
y1="51.179787"
|
||||
x2="47.502235"
|
||||
y2="21.83742"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3777">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3779" />
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3781" />
|
||||
</linearGradient>
|
||||
<radialGradient
|
||||
xlink:href="#linearGradient3794"
|
||||
id="radialGradient3800"
|
||||
cx="1"
|
||||
cy="45"
|
||||
fx="1"
|
||||
fy="45"
|
||||
r="41"
|
||||
gradientTransform="matrix(0.93348213,-2.2905276e-8,0,0.28687573,0.06651751,32.090592)"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
y2="24"
|
||||
x2="7"
|
||||
y1="43"
|
||||
x1="56"
|
||||
id="linearGradient1080"
|
||||
xlink:href="#linearGradient1078"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient944"
|
||||
id="linearGradient946"
|
||||
x1="24.323317"
|
||||
y1="38.115891"
|
||||
x2="9.806756"
|
||||
y2="27.753984"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient952"
|
||||
id="linearGradient954"
|
||||
x1="51.042877"
|
||||
y1="39.422012"
|
||||
x2="35.269917"
|
||||
y2="27.405685"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
</defs>
|
||||
<metadata
|
||||
id="metadata2985">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[bitacovir]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:title>Std_ViewIvStereoInterleavedRows</dc:title>
|
||||
<dc:date>2020/12/20</dc:date>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier></dc:identifier>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<cc:license>https://www.gnu.org/copyleft/lesser.html</cc:license>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title></dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<path
|
||||
id="path1020"
|
||||
d="M 3,16 H 61 V 46 H 42 C 35.259065,30.714814 27.983716,31.963913 22,46 H 3 Z"
|
||||
style="fill:url(#linearGradient1080);fill-opacity:1;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:url(#linearGradient946);fill-opacity:1;stroke:#280000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 31.401313,21.859905 H 8.1273987 V 38.360987 H 23.397057 l 6.834934,-7.827763 z"
|
||||
id="path921" />
|
||||
<path
|
||||
id="path921-8"
|
||||
d="M 32.632737,21.859905 H 55.906651 V 38.360987 H 40.636993 l -6.834934,-6.652253 z"
|
||||
style="fill:url(#linearGradient954);fill-opacity:1;stroke:#0b1521;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 32.017025,33.189006 V 17.857777"
|
||||
id="path919" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:1.808;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.051724,17.655172 H 59 V 44 L 43.235996,43.938429 C 36.666589,28.519738 26.039445,30.454028 20.661358,44.030786 L 5.051724,44 Z"
|
||||
id="path1020-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#0b1521;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.004082,21.643537 0.06531,10.144218 c 3.212544,1.029984 5.005244,3.076287 7.22721,6.160544"
|
||||
id="path956" />
|
||||
<path
|
||||
id="path956-0"
|
||||
d="M 29.15557,21.542552 29.09026,31.68677 c -3.36274,1.130115 -5.441474,3.316313 -7.466666,6.269387"
|
||||
style="fill:none;stroke:#280000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect1068"
|
||||
width="4.1252704"
|
||||
height="3.8789856"
|
||||
x="10.528675"
|
||||
y="24.322754"
|
||||
ry="0.43099841" />
|
||||
<rect
|
||||
ry="0.43099841"
|
||||
y="24.476677"
|
||||
x="37.527649"
|
||||
height="3.8789856"
|
||||
width="4.1252704"
|
||||
id="rect1068-5"
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.0488386,6.1571202 H 58.862069"
|
||||
id="path1119" />
|
||||
<path
|
||||
id="path1119-5"
|
||||
d="m 5.048839,6.1571202 h 53.81323"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
id="path1119-9"
|
||||
d="M 4.9804392,56.703342 H 58.793669"
|
||||
style="fill:none;stroke:#000000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 4.9804392,56.703342 H 58.793669"
|
||||
id="path1119-5-5" />
|
||||
<path
|
||||
id="path1119-6"
|
||||
d="M 5.0026606,30.400781 H 58.81589"
|
||||
style="fill:none;stroke:#000000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.002661,30.400781 H 58.81589"
|
||||
id="path1119-5-1" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.9 KiB |
@@ -0,0 +1,218 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg2980"
|
||||
version="1.1">
|
||||
<title
|
||||
id="title1117">Std_ViewIvStereoOff</title>
|
||||
<defs
|
||||
id="defs2982">
|
||||
<linearGradient
|
||||
id="linearGradient944">
|
||||
<stop
|
||||
style="stop-color:#a40000;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop940" />
|
||||
<stop
|
||||
style="stop-color:#ef2929;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop942" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient1078">
|
||||
<stop
|
||||
id="stop1074"
|
||||
offset="0"
|
||||
style="stop-color:#2e3436;stop-opacity:1" />
|
||||
<stop
|
||||
id="stop1076"
|
||||
offset="1"
|
||||
style="stop-color:#babdb6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3794">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3796" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3798" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3864">
|
||||
<stop
|
||||
id="stop3866"
|
||||
offset="0"
|
||||
style="stop-color:#71b2f8;stop-opacity:1;" />
|
||||
<stop
|
||||
id="stop3868"
|
||||
offset="1"
|
||||
style="stop-color:#002795;stop-opacity:1;" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3767"
|
||||
id="linearGradient3773"
|
||||
x1="22.116516"
|
||||
y1="55.717518"
|
||||
x2="17.328547"
|
||||
y2="21.31134"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3767">
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3769" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3771" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3777"
|
||||
id="linearGradient3783"
|
||||
x1="53.896763"
|
||||
y1="51.179787"
|
||||
x2="47.502235"
|
||||
y2="21.83742"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3777">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3779" />
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3781" />
|
||||
</linearGradient>
|
||||
<radialGradient
|
||||
xlink:href="#linearGradient3794"
|
||||
id="radialGradient3800"
|
||||
cx="1"
|
||||
cy="45"
|
||||
fx="1"
|
||||
fy="45"
|
||||
r="41"
|
||||
gradientTransform="matrix(0.93348213,-2.2905276e-8,0,0.28687573,0.06651751,32.090592)"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
y2="24"
|
||||
x2="7"
|
||||
y1="43"
|
||||
x1="56"
|
||||
id="linearGradient1080"
|
||||
xlink:href="#linearGradient1078"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
y2="17"
|
||||
x2="15"
|
||||
y1="47"
|
||||
x1="29"
|
||||
id="linearGradient3799"
|
||||
xlink:href="#linearGradient944"
|
||||
gradientTransform="translate(-6.0020978,-11.974588)" />
|
||||
</defs>
|
||||
<metadata
|
||||
id="metadata2985">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[bitacovir]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:title>Std_ViewIvStereoOff</dc:title>
|
||||
<dc:date>2020/12/20</dc:date>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier></dc:identifier>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<cc:license>https://www.gnu.org/copyleft/lesser.html</cc:license>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title></dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<path
|
||||
id="path1020"
|
||||
d="M 3,16 H 61 V 46 H 42 C 35.259065,30.714814 27.983716,31.963913 22,46 H 3 Z"
|
||||
style="fill:url(#linearGradient1080);fill-opacity:1;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:#2e3436;fill-opacity:1;stroke:#2e3436;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 31.401313,21.859905 H 8.1273987 V 38.360987 H 23.397057 l 6.834934,-7.827763 z"
|
||||
id="path921" />
|
||||
<path
|
||||
id="path921-8"
|
||||
d="M 32.632737,21.859905 H 55.906651 V 38.360987 H 40.636993 l -6.834934,-6.652253 z"
|
||||
style="fill:#2e3436;fill-opacity:1;stroke:#2e3436;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 32.017025,33.189006 V 17.857777"
|
||||
id="path919" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:1.808;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.051724,17.655172 H 59 V 44 L 43.235996,43.938429 C 36.666589,28.519738 26.039445,30.454028 20.661358,44.030786 L 5.051724,44 Z"
|
||||
id="path1020-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#2e3436;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.004082,21.643537 0.06531,10.144218 c 3.212544,1.029984 5.005244,3.076287 7.22721,6.160544"
|
||||
id="path956" />
|
||||
<path
|
||||
id="path956-0"
|
||||
d="M 29.15557,21.542552 29.09026,31.68677 c -3.36274,1.130115 -5.441474,3.316313 -7.466666,6.269387"
|
||||
style="fill:none;stroke:#2e3436;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect1068"
|
||||
width="4.1252704"
|
||||
height="3.8789856"
|
||||
x="10.528675"
|
||||
y="24.322754"
|
||||
ry="0.43099841" />
|
||||
<rect
|
||||
ry="0.43099841"
|
||||
y="24.476677"
|
||||
x="37.527649"
|
||||
height="3.8789856"
|
||||
width="4.1252704"
|
||||
id="rect1068-5"
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
id="rect3761"
|
||||
d="m 8.9979027,3.0254115 -6.0000001,6 10.0000004,10.0000005 -10.0000004,10 6.0000001,6 10.0000003,-10 10,10 6,-6 -10,-10 10,-10.0000005 -6,-6 -10,10.0000005 z"
|
||||
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:url(#linearGradient3799);fill-opacity:1;fill-rule:evenodd;stroke:#280000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" />
|
||||
<path
|
||||
id="rect3761-3"
|
||||
d="m 8.9979027,6.0254115 -3,3 10.0000003,10.0000005 -10.0000003,10 3,3 10.0000003,-10 10,10 3,-3 -10,-10 10,-10.0000005 -3,-3 -10,10.0000005 z"
|
||||
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#ef2929;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.9 KiB |
@@ -0,0 +1,262 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg2980"
|
||||
version="1.1">
|
||||
<title
|
||||
id="title1117">Std_ViewIvStereoQuadBuff</title>
|
||||
<defs
|
||||
id="defs2982">
|
||||
<linearGradient
|
||||
id="linearGradient952">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop948" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop950" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient944">
|
||||
<stop
|
||||
style="stop-color:#a40000;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop940" />
|
||||
<stop
|
||||
style="stop-color:#ef2929;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop942" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient1078">
|
||||
<stop
|
||||
id="stop1074"
|
||||
offset="0"
|
||||
style="stop-color:#2e3436;stop-opacity:1" />
|
||||
<stop
|
||||
id="stop1076"
|
||||
offset="1"
|
||||
style="stop-color:#babdb6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3794">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3796" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3798" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3864">
|
||||
<stop
|
||||
id="stop3866"
|
||||
offset="0"
|
||||
style="stop-color:#71b2f8;stop-opacity:1;" />
|
||||
<stop
|
||||
id="stop3868"
|
||||
offset="1"
|
||||
style="stop-color:#002795;stop-opacity:1;" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3767"
|
||||
id="linearGradient3773"
|
||||
x1="22.116516"
|
||||
y1="55.717518"
|
||||
x2="17.328547"
|
||||
y2="21.31134"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3767">
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3769" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3771" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3777"
|
||||
id="linearGradient3783"
|
||||
x1="53.896763"
|
||||
y1="51.179787"
|
||||
x2="47.502235"
|
||||
y2="21.83742"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3777">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3779" />
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3781" />
|
||||
</linearGradient>
|
||||
<radialGradient
|
||||
xlink:href="#linearGradient3794"
|
||||
id="radialGradient3800"
|
||||
cx="1"
|
||||
cy="45"
|
||||
fx="1"
|
||||
fy="45"
|
||||
r="41"
|
||||
gradientTransform="matrix(0.93348213,-2.2905276e-8,0,0.28687573,0.06651751,32.090592)"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
y2="24"
|
||||
x2="7"
|
||||
y1="43"
|
||||
x1="56"
|
||||
id="linearGradient1080"
|
||||
xlink:href="#linearGradient1078"
|
||||
gradientTransform="translate(0,4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient944"
|
||||
id="linearGradient946"
|
||||
x1="24.323317"
|
||||
y1="38.115891"
|
||||
x2="9.806756"
|
||||
y2="27.753984"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient952"
|
||||
id="linearGradient954"
|
||||
x1="51.042877"
|
||||
y1="39.422012"
|
||||
x2="35.269917"
|
||||
y2="27.405685"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,4)" />
|
||||
</defs>
|
||||
<metadata
|
||||
id="metadata2985">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[bitacovir]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:title>Std_ViewIvStereoQuadBuff</dc:title>
|
||||
<dc:date>2020/12/20</dc:date>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier></dc:identifier>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<cc:license>https://www.gnu.org/copyleft/lesser.html</cc:license>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title></dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<path
|
||||
id="path1024"
|
||||
d="M 5,25 19,10 c 3,-3 6.886274,-0.7693802 6,4"
|
||||
style="fill:none;stroke:#555753;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;stroke:#555753;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 59,25 45,10 C 42,7 38.113726,9.2306198 39,14"
|
||||
id="path1024-4" />
|
||||
<path
|
||||
id="path1020"
|
||||
d="M 3,24 H 61 V 54 H 42 C 35.259065,38.714814 27.983716,39.963913 22,54 H 3 Z"
|
||||
style="fill:url(#linearGradient1080);fill-opacity:1;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:url(#linearGradient946);fill-opacity:1;stroke:#280000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 31.401313,29.859905 H 8.1273987 V 46.360987 H 23.397057 l 6.834934,-7.827763 z"
|
||||
id="path921" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5,25 19,10 c 3,-3 6.886274,-0.7693802 6,4"
|
||||
id="path1024-6" />
|
||||
<path
|
||||
id="path1024-6-3"
|
||||
d="M 59,25 45,10 C 42,7 38.113726,9.2306198 39,14"
|
||||
style="fill:none;stroke:#babdb6;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:#babdb6"
|
||||
d="M 18.656075,11.573258 6.095549,24.99578 l 7.6964,0.123143 z"
|
||||
id="path897" />
|
||||
<path
|
||||
style="fill:none;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 19.504761,12.185034 15.15102,24.201361"
|
||||
id="path899" />
|
||||
<path
|
||||
id="path897-0"
|
||||
d="m 45.102561,11.388544 12.560526,13.422522 -7.6964,0.123143 z"
|
||||
style="fill:#babdb6" />
|
||||
<path
|
||||
id="path899-2"
|
||||
d="m 44.253875,12.00032 4.353741,12.016327"
|
||||
style="fill:none;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
id="path921-8"
|
||||
d="M 32.632737,29.859905 H 55.906651 V 46.360987 H 40.636993 l -6.834934,-6.652253 z"
|
||||
style="fill:url(#linearGradient954);fill-opacity:1;stroke:#0b1521;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 32.017025,41.189006 V 25.857777"
|
||||
id="path919" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:1.808;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.051724,25.655172 H 59 V 52 L 43.235996,51.938429 C 36.666589,36.519738 26.039445,38.454028 20.661358,52.030786 L 5.051724,52 Z"
|
||||
id="path1020-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#0b1521;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.004082,29.643537 0.06531,10.144218 c 3.212544,1.029984 5.005244,3.076287 7.22721,6.160544"
|
||||
id="path956" />
|
||||
<path
|
||||
id="path956-0"
|
||||
d="M 29.15557,29.542552 29.09026,39.68677 c -3.36274,1.130115 -5.441474,3.316313 -7.466666,6.269387"
|
||||
style="fill:none;stroke:#280000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect1068"
|
||||
width="4.1252704"
|
||||
height="3.8789856"
|
||||
x="10.528675"
|
||||
y="32.322754"
|
||||
ry="0.43099841" />
|
||||
<rect
|
||||
ry="0.43099841"
|
||||
y="32.476677"
|
||||
x="37.527649"
|
||||
height="3.8789856"
|
||||
width="4.1252704"
|
||||
id="rect1068-5"
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 9.2 KiB |
@@ -0,0 +1,230 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg2980"
|
||||
version="1.1">
|
||||
<title
|
||||
id="title1117">Std_ViewIvStereoRedGreen</title>
|
||||
<defs
|
||||
id="defs2982">
|
||||
<linearGradient
|
||||
id="linearGradient952">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop948" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop950" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient944">
|
||||
<stop
|
||||
style="stop-color:#a40000;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop940" />
|
||||
<stop
|
||||
style="stop-color:#ef2929;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop942" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient1078">
|
||||
<stop
|
||||
id="stop1074"
|
||||
offset="0"
|
||||
style="stop-color:#2e3436;stop-opacity:1" />
|
||||
<stop
|
||||
id="stop1076"
|
||||
offset="1"
|
||||
style="stop-color:#babdb6;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3794">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3796" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3798" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3864">
|
||||
<stop
|
||||
id="stop3866"
|
||||
offset="0"
|
||||
style="stop-color:#71b2f8;stop-opacity:1;" />
|
||||
<stop
|
||||
id="stop3868"
|
||||
offset="1"
|
||||
style="stop-color:#002795;stop-opacity:1;" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3767"
|
||||
id="linearGradient3773"
|
||||
x1="22.116516"
|
||||
y1="55.717518"
|
||||
x2="17.328547"
|
||||
y2="21.31134"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3767">
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3769" />
|
||||
<stop
|
||||
style="stop-color:#729fcf;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3771" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
gradientTransform="translate(0,-4)"
|
||||
xlink:href="#linearGradient3777"
|
||||
id="linearGradient3783"
|
||||
x1="53.896763"
|
||||
y1="51.179787"
|
||||
x2="47.502235"
|
||||
y2="21.83742"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3777">
|
||||
<stop
|
||||
style="stop-color:#204a87;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3779" />
|
||||
<stop
|
||||
style="stop-color:#3465a4;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3781" />
|
||||
</linearGradient>
|
||||
<radialGradient
|
||||
xlink:href="#linearGradient3794"
|
||||
id="radialGradient3800"
|
||||
cx="1"
|
||||
cy="45"
|
||||
fx="1"
|
||||
fy="45"
|
||||
r="41"
|
||||
gradientTransform="matrix(0.93348213,-2.2905276e-8,0,0.28687573,0.06651751,32.090592)"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
y2="24"
|
||||
x2="7"
|
||||
y1="43"
|
||||
x1="56"
|
||||
id="linearGradient1080"
|
||||
xlink:href="#linearGradient1078"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient944"
|
||||
id="linearGradient946"
|
||||
x1="24.323317"
|
||||
y1="38.115891"
|
||||
x2="9.806756"
|
||||
y2="27.753984"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient952"
|
||||
id="linearGradient954"
|
||||
x1="51.042877"
|
||||
y1="39.422012"
|
||||
x2="35.269917"
|
||||
y2="27.405685"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,-4)" />
|
||||
</defs>
|
||||
<metadata
|
||||
id="metadata2985">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[bitacovir]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:title>Std_ViewIvStereoRedGreen</dc:title>
|
||||
<dc:date>2020/12/20</dc:date>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier></dc:identifier>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<cc:license>https://www.gnu.org/copyleft/lesser.html</cc:license>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title></dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<path
|
||||
id="path1020"
|
||||
d="M 3,16 H 61 V 46 H 42 C 35.259065,30.714814 27.983716,31.963913 22,46 H 3 Z"
|
||||
style="fill:url(#linearGradient1080);fill-opacity:1;stroke:#555753;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:url(#linearGradient946);fill-opacity:1;stroke:#280000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 31.401313,21.859905 H 8.1273987 V 38.360987 H 23.397057 l 6.834934,-7.827763 z"
|
||||
id="path921" />
|
||||
<path
|
||||
id="path921-8"
|
||||
d="M 32.632737,21.859905 H 55.906651 V 38.360987 H 40.636993 l -6.834934,-6.652253 z"
|
||||
style="fill:url(#linearGradient954);fill-opacity:1;stroke:#0b1521;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 32.017025,33.189006 V 17.857777"
|
||||
id="path919" />
|
||||
<path
|
||||
style="fill:none;stroke:#babdb6;stroke-width:1.808;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 5.051724,17.655172 H 59 V 44 L 43.235996,43.938429 C 36.666589,28.519738 26.039445,30.454028 20.661358,44.030786 L 5.051724,44 Z"
|
||||
id="path1020-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#0b1521;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.004082,21.643537 0.06531,10.144218 c 3.212544,1.029984 5.005244,3.076287 7.22721,6.160544"
|
||||
id="path956" />
|
||||
<path
|
||||
id="path956-0"
|
||||
d="M 29.15557,21.542552 29.09026,31.68677 c -3.36274,1.130115 -5.441474,3.316313 -7.466666,6.269387"
|
||||
style="fill:none;stroke:#280000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect1068"
|
||||
width="4.1252704"
|
||||
height="3.8789856"
|
||||
x="10.528675"
|
||||
y="24.322754"
|
||||
ry="0.43099841" />
|
||||
<rect
|
||||
ry="0.43099841"
|
||||
y="24.476677"
|
||||
x="37.527649"
|
||||
height="3.8789856"
|
||||
width="4.1252704"
|
||||
id="rect1068-5"
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.5 KiB |
@@ -162,6 +162,7 @@
|
||||
<file>Std_Revert.svg</file>
|
||||
<file>Std_SaveAll.svg</file>
|
||||
<file>Std_SaveCopy.svg</file>
|
||||
<file>Std_SetAppearance.svg</file>
|
||||
<file>Std_Tool1.svg</file>
|
||||
<file>Std_Tool2.svg</file>
|
||||
<file>Std_Tool3.svg</file>
|
||||
@@ -174,7 +175,12 @@
|
||||
<file>Std_Tool10.svg</file>
|
||||
<file>Std_Tool11.svg</file>
|
||||
<file>Std_Tool12.svg</file>
|
||||
<file>Std_WindowCascade.svg</file>
|
||||
<file>Std_ViewIvStereoInterleavedColumns.svg</file>
|
||||
<file>Std_ViewIvStereoInterleavedRows.svg</file>
|
||||
<file>Std_ViewIvStereoInterleavedRows.svg</file>
|
||||
<file>Std_ViewIvStereoOff.svg</file>
|
||||
<file>Std_ViewIvStereoQuadBuff.svg</file>
|
||||
<file>Std_ViewIvStereoRedGreen.svg</file>
|
||||
<file>Std_WindowNext.svg</file>
|
||||
<file>Std_WindowPrev.svg</file>
|
||||
<file>Std_WindowTileVer.svg</file>
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@
|
||||
#include "PreCompiled.h"
|
||||
|
||||
#ifndef _PreComp_
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <qapplication.h>
|
||||
# include <qregexp.h>
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <Gui/Application.h>
|
||||
#include <Gui/Document.h>
|
||||
#include <Gui/ViewProviderDocumentObject.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class SbVec3f;
|
||||
class SoPickedPoint;
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef GUI_MERGEDOCUMENTS_H
|
||||
#define GUI_MERGEDOCUMENTS_H
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <Base/Persistence.h>
|
||||
|
||||
namespace zipios {
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <Base/Placement.h>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class QSignalMapper;
|
||||
|
||||
|
||||
@@ -79,12 +79,12 @@
|
||||
#include <unordered_map>
|
||||
|
||||
// Boost
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
#include <boost/program_options.hpp>
|
||||
#include <boost/tuple/tuple.hpp>
|
||||
#include <boost/utility.hpp>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <boost/filesystem/operations.hpp>
|
||||
#include <boost/filesystem/exception.hpp>
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
#include "DockWindow.h"
|
||||
#include "Selection.h"
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class QPixmap;
|
||||
class QTabWidget;
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@
|
||||
#include <list>
|
||||
#include <map>
|
||||
#include <deque>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <CXX/Objects.hxx>
|
||||
|
||||
#include <Base/Observer.h>
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include "TaskView.h"
|
||||
#include <Gui/Selection.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
|
||||
namespace App {
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <map>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <QScrollArea>
|
||||
|
||||
#if !defined (QSINT_ACTIONPANEL)
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
# include <QTextBlock>
|
||||
# include <iostream>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#define GUI_TEXTDOCUMENTEDITORVIEW_H
|
||||
|
||||
#include <string>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <QPlainTextEdit>
|
||||
|
||||
#include <App/TextDocument.h>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <string>
|
||||
#include <bitset>
|
||||
#include <QIcon>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/intrusive_ptr.hpp>
|
||||
|
||||
#include <App/TransactionalObject.h>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
#include <gp_Ax2.hxx>
|
||||
#include <vector>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <Mod/Drawing/App/FeatureViewPart.h>
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <Mod/Fem/App/FemPostFunction.h>
|
||||
#include <Inventor/SbMatrix.h>
|
||||
#include <QWidget>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class SoScale;
|
||||
class SoSurroundScale;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
#include <QObject>
|
||||
#include <Mod/Mesh/Gui/ViewProvider.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class SoCoordinate3;
|
||||
class SoFaceSet;
|
||||
|
||||
@@ -76,12 +76,12 @@
|
||||
#include <QtGlobal>
|
||||
|
||||
// Boost
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
|
||||
#include <boost/tuple/tuple.hpp>
|
||||
#include <boost/utility.hpp>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
|
||||
#include <boost/program_options.hpp>
|
||||
//namespace po = boost::program_options;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
#include <Gui/TaskView/TaskDialog.h>
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class QTreeWidgetItem;
|
||||
|
||||
|
||||
@@ -177,7 +177,7 @@
|
||||
#include <Python.h>
|
||||
|
||||
// Boost
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/bind/bind.hpp>
|
||||
|
||||
// Qt Toolkit
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#include "PreCompiled.h"
|
||||
|
||||
#ifndef _PreComp_
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
# include <BRep_Tool.hxx>
|
||||
# include <BRepGProp.hxx>
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <App/PropertyStandard.h>
|
||||
#include <Mod/Part/App/BodyBase.h>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace App {
|
||||
class Origin;
|
||||
|
||||
@@ -73,12 +73,10 @@ const std::list<gp_Trsf> LinearPattern::getTransformations(const std::vector<App
|
||||
if (distance < Precision::Confusion())
|
||||
throw Base::ValueError("Pattern length too small");
|
||||
int occurrences = Occurrences.getValue();
|
||||
if (occurrences < 2)
|
||||
throw Base::ValueError("At least two occurrences required");
|
||||
if (occurrences < 1)
|
||||
throw Base::ValueError("At least one occurrence required");
|
||||
bool reversed = Reversed.getValue();
|
||||
|
||||
double offset = distance / (occurrences - 1);
|
||||
|
||||
App::DocumentObject* refObject = Direction.getValue();
|
||||
if (refObject == NULL)
|
||||
throw Base::ValueError("No direction reference specified");
|
||||
@@ -178,9 +176,12 @@ const std::list<gp_Trsf> LinearPattern::getTransformations(const std::vector<App
|
||||
gp_Trsf trans;
|
||||
transformations.push_back(trans); // identity transformation
|
||||
|
||||
for (int i = 1; i < occurrences; i++) {
|
||||
trans.SetTranslation(direction * i * offset);
|
||||
transformations.push_back(trans);
|
||||
if (occurrences > 1) {
|
||||
double offset = distance / (occurrences - 1);
|
||||
for (int i = 1; i < occurrences; i++) {
|
||||
trans.SetTranslation(direction * i * offset);
|
||||
transformations.push_back(trans);
|
||||
}
|
||||
}
|
||||
|
||||
return transformations;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#define PARTDESIGN_DATUMSHAPE_H
|
||||
|
||||
#include <QString>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <App/PropertyLinks.h>
|
||||
#include <Mod/Part/App/DatumFeature.h>
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#define GUI_TASKVIEW_TaskTransformedMessages_H
|
||||
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class Ui_TaskTransformedMessages;
|
||||
typedef boost::signals2::connection Connection;
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#ifndef WORKFLOWMANAGER_H_PB7A5GCM
|
||||
#define WORKFLOWMANAGER_H_PB7A5GCM
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <map>
|
||||
|
||||
namespace App {
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
//#include <boost/progress.hpp>
|
||||
//#include <boost/timer.hpp>
|
||||
#include <boost/foreach.hpp>
|
||||
#include <boost/python.hpp>
|
||||
#include <boost_python.hpp>
|
||||
#include <boost/python/module.hpp>
|
||||
#include <boost/python/class.hpp>
|
||||
#include <boost/python/wrapper.hpp>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <App/Property.h>
|
||||
#include <Mod/Part/App/Geometry.h>
|
||||
#include "Constraint.h"
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/unordered/unordered_map.hpp>
|
||||
|
||||
namespace Base {
|
||||
|
||||
+254
-147
@@ -130,6 +130,85 @@ void Sketch::clear(void)
|
||||
malformedConstraints = false;
|
||||
}
|
||||
|
||||
bool Sketch::analyseBlockedGeometry( const std::vector<Part::Geometry *> &internalGeoList,
|
||||
const std::vector<Constraint *> &constraintList,
|
||||
std::vector<bool> &onlyblockedGeometry,
|
||||
std::vector<int> &blockedGeoIds) const
|
||||
{
|
||||
bool isSomethingBlocked = false;
|
||||
bool doesBlockAffectOtherConstraints = false;
|
||||
|
||||
int geoindex = 0;
|
||||
for(auto g : internalGeoList) {
|
||||
if(GeometryFacade::getBlocked(g)) {
|
||||
// is it only affected by one constraint, the block constraint (and this is driving), or by any other driving constraint ?
|
||||
bool blockOnly = true;
|
||||
bool blockisDriving = false;
|
||||
|
||||
for(auto c : constraintList) {
|
||||
// is block driving
|
||||
if( c->Type == Sketcher::Block && c->isDriving && c->First == geoindex)
|
||||
blockisDriving = true;
|
||||
|
||||
if( c->Type != Sketcher::Block && c->isDriving &&
|
||||
(c->First == geoindex || c->Second == geoindex || c->Third == geoindex) )
|
||||
blockOnly = false;
|
||||
}
|
||||
|
||||
if(blockisDriving) {
|
||||
if(blockOnly) {
|
||||
onlyblockedGeometry[geoindex] = true; // we pre-fix this geometry
|
||||
isSomethingBlocked = true;
|
||||
}
|
||||
else {
|
||||
// we will have to pos-analyse the first diagnose result for these geometries
|
||||
// in order to avoid redundant constraints
|
||||
isSomethingBlocked = true;
|
||||
doesBlockAffectOtherConstraints = true;
|
||||
blockedGeoIds.push_back(geoindex);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
geoindex++;
|
||||
}
|
||||
|
||||
if(isSomethingBlocked) {
|
||||
|
||||
// look for internal geometry linked IAs
|
||||
for(auto c : constraintList) {
|
||||
if(c->Type == InternalAlignment) {
|
||||
|
||||
auto geoit = std::find(blockedGeoIds.begin(),blockedGeoIds.end(),c->Second);
|
||||
|
||||
if(geoit != blockedGeoIds.end() || onlyblockedGeometry[c->Second]) { // internal alignment geometry found, add to list
|
||||
// check if pre-fix or post-analyses
|
||||
bool blockAffectedOnly = true;
|
||||
|
||||
for(auto ic : constraintList) {
|
||||
// there is another driving constraint
|
||||
if( ic->Type != Sketcher::Block && ic->isDriving &&
|
||||
(ic->First == c->First || ic->Second == c->First || ic->Third == c->First))
|
||||
blockAffectedOnly = false;
|
||||
}
|
||||
|
||||
if(blockAffectedOnly) {
|
||||
onlyblockedGeometry[c->Second] = true; // we pre-fix this geometry
|
||||
}
|
||||
else {
|
||||
// we will have to post-analyse the first diagnose result for these geometries
|
||||
// in order to avoid redundant constraints
|
||||
doesBlockAffectOtherConstraints = true;
|
||||
blockedGeoIds.push_back(*geoit);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return doesBlockAffectOtherConstraints;
|
||||
}
|
||||
|
||||
int Sketch::setUpSketch(const std::vector<Part::Geometry *> &GeoList,
|
||||
const std::vector<Constraint *> &ConstraintList,
|
||||
int extGeoCount)
|
||||
@@ -144,13 +223,43 @@ int Sketch::setUpSketch(const std::vector<Part::Geometry *> &GeoList,
|
||||
for (int i=int(GeoList.size())-extGeoCount; i < int(GeoList.size()); i++)
|
||||
extGeoList.push_back(GeoList[i]);
|
||||
|
||||
std::vector<bool> blockedGeometry(intGeoList.size(),false); // these geometries are blocked, frozen and sent as fixed parameters to the solver
|
||||
std::vector<bool> onlyBlockedGeometry(intGeoList.size(),false); // these geometries are blocked, frozen and sent as fixed parameters to the solver
|
||||
std::vector<bool> unenforceableConstraints(ConstraintList.size(),false); // these constraints are unenforceable due to a Blocked constraint
|
||||
|
||||
/* This implements the old block constraint. I have decided not to remove it at this time while the new is tested, just in case the change
|
||||
* needs to be reverted */
|
||||
/*if(!intGeoList.empty())
|
||||
getBlockedGeometry(blockedGeometry, unenforceableConstraints, ConstraintList);*/
|
||||
|
||||
addGeometry(intGeoList,blockedGeometry);
|
||||
// Pre-analysis of blocked geometry (new block constraint) to fix geometry only affected by a block constraint (see comment in Sketch.h)
|
||||
std::vector<int> blockedGeoIds;
|
||||
bool doesBlockAffectOtherConstraints = analyseBlockedGeometry( intGeoList,
|
||||
ConstraintList,
|
||||
onlyBlockedGeometry,
|
||||
blockedGeoIds);
|
||||
|
||||
#ifdef DEBUG_BLOCK_CONSTRAINT
|
||||
if(doesBlockAffectOtherConstraints)
|
||||
Base::Console().Log("\n Block interferes with other constraints: Post-analysis required");
|
||||
|
||||
Base::Console().Log("\nOnlyBlocked GeoIds:");
|
||||
size_t i = 0;
|
||||
for(; i < onlyBlockedGeometry.size(); i++) {
|
||||
if(onlyBlockedGeometry[i])
|
||||
Base::Console().Log("\n GeoId=%d", i);
|
||||
}
|
||||
if( i == 0)
|
||||
Base::Console().Log("\n None");
|
||||
|
||||
Base::Console().Log("\nNotOnlyBlocked GeoIds:");
|
||||
i = 0;
|
||||
for(; i < blockedGeoIds.size(); i++)
|
||||
Base::Console().Log("\n GeoId=%d", blockedGeoIds[i]);
|
||||
if( i == 0)
|
||||
Base::Console().Log("\n None");
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
|
||||
addGeometry(intGeoList,onlyBlockedGeometry);
|
||||
int extStart=Geoms.size();
|
||||
addGeometry(extGeoList, true);
|
||||
int extEnd=Geoms.size()-1;
|
||||
@@ -165,158 +274,43 @@ int Sketch::setUpSketch(const std::vector<Part::Geometry *> &GeoList,
|
||||
GCSsys.declareUnknowns(Parameters);
|
||||
GCSsys.declareDrivenParams(DrivenParameters);
|
||||
GCSsys.initSolution(defaultSolverRedundant);
|
||||
GCSsys.getConflicting(Conflicting);
|
||||
GCSsys.getRedundant(Redundant);
|
||||
GCSsys.getDependentParams(pDependentParametersList);
|
||||
|
||||
calculateDependentParametersElements();
|
||||
// Post-analysis
|
||||
// Now that we have all the parameters information, we deal properly with the block constraints if necessary
|
||||
if(doesBlockAffectOtherConstraints) {
|
||||
|
||||
// Now that we have all the parameters information, we deal properly with the block constraint
|
||||
|
||||
bool isSomethingBlocked = false;
|
||||
std::vector<int> blockedGeoIds;
|
||||
|
||||
int geoindex = 0;
|
||||
for(auto & g : Geoms) {
|
||||
if(!g.external && GeometryFacade::getBlocked(g.geo)) {
|
||||
isSomethingBlocked = true;
|
||||
blockedGeoIds.push_back(geoindex);
|
||||
}
|
||||
geoindex++;
|
||||
}
|
||||
|
||||
if(isSomethingBlocked) {
|
||||
|
||||
// 0. look for internal geometry linked IAs
|
||||
for(auto c : ConstraintList) {
|
||||
if(c->Type == InternalAlignment) {
|
||||
|
||||
auto geoit = std::find(blockedGeoIds.begin(),blockedGeoIds.end(),c->Second);
|
||||
|
||||
if(geoit != blockedGeoIds.end()) { // internal alignment geometry found, add to list
|
||||
blockedGeoIds.push_back(*geoit);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 1. Look what needs blocking
|
||||
std::vector<double *> params_to_block;
|
||||
std::vector < std::set < double*>> groups;
|
||||
GCSsys.getDependentParamsGroups(groups);
|
||||
|
||||
if(GCSsys.isEmptyDiagnoseMatrix()) { // special case in which no other driving constraint is in the system
|
||||
for(auto geoid : blockedGeoIds) {
|
||||
switch(Geoms[geoid].type) {
|
||||
case Point:
|
||||
params_to_block.push_back(Points[Geoms[geoid].index].x);
|
||||
params_to_block.push_back(Points[Geoms[geoid].index].y);
|
||||
break;
|
||||
case Line:
|
||||
Lines[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case Arc:
|
||||
Arcs[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case Circle:
|
||||
Circles[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case Ellipse:
|
||||
Ellipses[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case ArcOfEllipse:
|
||||
ArcsOfEllipse[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case ArcOfHyperbola:
|
||||
ArcsOfHyperbola[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case ArcOfParabola:
|
||||
ArcsOfParabola[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case BSpline:
|
||||
BSplines[Geoms[geoid].index].PushOwnParams(params_to_block);
|
||||
break;
|
||||
case None:
|
||||
break;
|
||||
}
|
||||
bool unsatisfied_groups = analyseBlockedConstraintDependentParameters(blockedGeoIds, params_to_block);
|
||||
|
||||
// I am unsure if more than one QR iterations are needed with the current implementation.
|
||||
//
|
||||
// With previous implementations mostly one QR iteration was enough, but if block constraint is abused, more
|
||||
// iterations were needed.
|
||||
int index = 0;
|
||||
while(unsatisfied_groups) {
|
||||
// We tried hard not to arrive to an unsatisfied group, so we try harder
|
||||
// This loop has the advantage that the user will notice increased effort to solve,
|
||||
// so may understand he is abusing the block constraint, while guaranteing that wrong
|
||||
// behaviour of the block constraint is not undetected.
|
||||
|
||||
// Another QR iteration
|
||||
fixParametersAndDiagnose(params_to_block);
|
||||
|
||||
unsatisfied_groups = analyseBlockedConstraintDependentParameters(blockedGeoIds,params_to_block);
|
||||
|
||||
if (debugMode==GCS::IterationLevel) {
|
||||
Base::Console().Log("Sketcher::setUpSketch()-BlockConstraint-PostAnalysis:%d\n",index);
|
||||
}
|
||||
|
||||
index++;
|
||||
}
|
||||
else {
|
||||
#ifdef DEBUG_BLOCK_CONSTRAINT
|
||||
for(size_t i = 0; i < groups.size(); i++) {
|
||||
Base::Console().Log("\nDepParams: Group %d:",i);
|
||||
for(size_t j = 0; j < groups[i].size(); j++)
|
||||
Base::Console().Log("\n Param=%x ,GeoId=%d, GeoPos=%d",
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->first,
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->second.first,
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->second.second);
|
||||
}
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
|
||||
for(size_t i = 0; i < groups.size(); i++) {
|
||||
for(size_t j = 0; j < groups[i].size(); j++) {
|
||||
|
||||
double * thisparam = *std::next(groups[i].begin(), j);
|
||||
|
||||
auto element = param2geoelement.find(thisparam);
|
||||
|
||||
if (element != param2geoelement.end()) {
|
||||
|
||||
auto blocked = std::find(blockedGeoIds.begin(),blockedGeoIds.end(),element->second.first);
|
||||
|
||||
if( blocked != blockedGeoIds.end()) {
|
||||
// This dependent parameter group contains a parameter that should be blocked.
|
||||
//
|
||||
// One parameter per group is enough to fix the group, but it must be a different one for each group or
|
||||
// it will create a different dependency group
|
||||
auto already_in = std::find(params_to_block.begin(),params_to_block.end(), thisparam);
|
||||
|
||||
if( already_in == params_to_block.end()) {
|
||||
params_to_block.push_back(thisparam);
|
||||
|
||||
#ifdef DEBUG_BLOCK_CONSTRAINT
|
||||
Base::Console().Log("\nBlocking: Param=%x ,GeoId=%d, GeoPos=%d",
|
||||
element->first,
|
||||
element->second.first,
|
||||
element->second.second);
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} // if(!GCSsys.isEmptyDiagnoseMatrix())
|
||||
|
||||
// 2. If something needs blocking, block-it
|
||||
if(params_to_block.size() > 0) {
|
||||
|
||||
for( auto p : params_to_block ) {
|
||||
auto findparam = std::find(Parameters.begin(),Parameters.end(), p);
|
||||
|
||||
if(findparam != Parameters.end()) {
|
||||
FixParameters.push_back(*findparam);
|
||||
Parameters.erase(findparam);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
pDependencyGroups.clear();
|
||||
clearTemporaryConstraints();
|
||||
GCSsys.invalidatedDiagnosis();
|
||||
GCSsys.declareUnknowns(Parameters);
|
||||
GCSsys.declareDrivenParams(DrivenParameters);
|
||||
GCSsys.initSolution(defaultSolverRedundant);
|
||||
GCSsys.getConflicting(Conflicting);
|
||||
GCSsys.getRedundant(Redundant);
|
||||
GCSsys.getDependentParams(pDependentParametersList);
|
||||
|
||||
calculateDependentParametersElements();
|
||||
fixParametersAndDiagnose(params_to_block);
|
||||
|
||||
#ifdef DEBUG_BLOCK_CONSTRAINT
|
||||
std::vector < std::set < double*>> groups;
|
||||
if(params_to_block.size() > 0) {
|
||||
std::vector < std::vector < double*>> groups;
|
||||
GCSsys.getDependentParamsGroups(groups);
|
||||
|
||||
// Debug code block
|
||||
@@ -328,10 +322,17 @@ int Sketch::setUpSketch(const std::vector<Part::Geometry *> &GeoList,
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->second.first,
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->second.second);
|
||||
}
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
}
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
}
|
||||
|
||||
// Now we set the Sketch status with the latest solver information
|
||||
GCSsys.getConflicting(Conflicting);
|
||||
GCSsys.getRedundant(Redundant);
|
||||
GCSsys.getDependentParams(pDependentParametersList);
|
||||
|
||||
calculateDependentParametersElements();
|
||||
|
||||
if (debugMode==GCS::Minimal || debugMode==GCS::IterationLevel) {
|
||||
Base::TimeInfo end_time;
|
||||
|
||||
@@ -341,6 +342,112 @@ int Sketch::setUpSketch(const std::vector<Part::Geometry *> &GeoList,
|
||||
return GCSsys.dofsNumber();
|
||||
}
|
||||
|
||||
void Sketch::fixParametersAndDiagnose(std::vector<double *> ¶ms_to_block)
|
||||
{
|
||||
if(params_to_block.size() > 0) { // only there are parameters to fix
|
||||
for( auto p : params_to_block ) {
|
||||
auto findparam = std::find(Parameters.begin(),Parameters.end(), p);
|
||||
|
||||
if(findparam != Parameters.end()) {
|
||||
FixParameters.push_back(*findparam);
|
||||
Parameters.erase(findparam);
|
||||
}
|
||||
}
|
||||
|
||||
pDependencyGroups.clear();
|
||||
clearTemporaryConstraints();
|
||||
GCSsys.invalidatedDiagnosis();
|
||||
GCSsys.declareUnknowns(Parameters);
|
||||
GCSsys.declareDrivenParams(DrivenParameters);
|
||||
GCSsys.initSolution(defaultSolverRedundant);
|
||||
/*GCSsys.getConflicting(Conflicting);
|
||||
GCSsys.getRedundant(Redundant);
|
||||
GCSsys.getDependentParams(pDependentParametersList);
|
||||
|
||||
calculateDependentParametersElements();*/
|
||||
}
|
||||
}
|
||||
|
||||
bool Sketch::analyseBlockedConstraintDependentParameters(std::vector<int> &blockedGeoIds, std::vector<double *> ¶ms_to_block) const
|
||||
{
|
||||
// 1. Retrieve solver information
|
||||
std::vector < std::vector < double*>> groups;
|
||||
GCSsys.getDependentParamsGroups(groups);
|
||||
|
||||
// 2. Determine blockable parameters for each group (see documentation in header file).
|
||||
struct group {
|
||||
std::vector<double *> blockable_params_in_group;
|
||||
double * blocking_param_in_group = nullptr;
|
||||
};
|
||||
|
||||
std::vector<group> prop_groups(groups.size());
|
||||
|
||||
#ifdef DEBUG_BLOCK_CONSTRAINT
|
||||
for(size_t i = 0; i < groups.size(); i++) {
|
||||
Base::Console().Log("\nDepParams: Group %d:",i);
|
||||
for(size_t j = 0; j < groups[i].size(); j++)
|
||||
Base::Console().Log("\n Param=%x ,GeoId=%d, GeoPos=%d",
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->first,
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->second.first,
|
||||
param2geoelement.find(*std::next(groups[i].begin(), j))->second.second);
|
||||
}
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
|
||||
for(size_t i = 0; i < groups.size(); i++) {
|
||||
for(size_t j = 0; j < groups[i].size(); j++) {
|
||||
|
||||
double * thisparam = *std::next(groups[i].begin(), j);
|
||||
|
||||
auto element = param2geoelement.find(thisparam);
|
||||
|
||||
if (element != param2geoelement.end()) {
|
||||
|
||||
auto blockable = std::find(blockedGeoIds.begin(),blockedGeoIds.end(),element->second.first);
|
||||
|
||||
if( blockable != blockedGeoIds.end()) {
|
||||
// This dependent parameter group contains at least one parameter that should be blocked, so added to the blockable list.
|
||||
prop_groups[i].blockable_params_in_group.push_back(thisparam);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 3. Apply heuristic - pick the last blockable param available to block the group, starting from the last group
|
||||
for(size_t i = prop_groups.size(); i--> 0;) {
|
||||
for(size_t j = prop_groups[i].blockable_params_in_group.size(); j-->0; ) {
|
||||
// check if parameter is already satisfying one group
|
||||
double * thisparam = prop_groups[i].blockable_params_in_group[j];
|
||||
auto pos = std::find(params_to_block.begin(), params_to_block.end(), thisparam);
|
||||
|
||||
if( pos == params_to_block.end()) { // not found, so add
|
||||
params_to_block.push_back(thisparam);
|
||||
prop_groups[i].blocking_param_in_group = thisparam;
|
||||
#ifdef DEBUG_BLOCK_CONSTRAINT
|
||||
Base::Console().Log("\nTentatively blocking group %d, with param=%x", i, thisparam);
|
||||
#endif //DEBUG_BLOCK_CONSTRAINT
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 4. Check if groups are satisfied or are licitly unsatisfiable and thus deemed as satisfied
|
||||
bool unsatisfied_groups = false;
|
||||
for(size_t i = 0; i < prop_groups.size(); i++) {
|
||||
// 4.1. unsatisfiable group
|
||||
if(prop_groups[i].blockable_params_in_group.size() == 0) {
|
||||
// this group does not contain any blockable parameter, so it is by definition satisfied (or impossible to satisfy by block constraints)
|
||||
continue;
|
||||
}
|
||||
// 4.2. satisfiable and not satisfied
|
||||
if(prop_groups[i].blocking_param_in_group == nullptr) {
|
||||
unsatisfied_groups = true;
|
||||
}
|
||||
}
|
||||
|
||||
return unsatisfied_groups;
|
||||
}
|
||||
|
||||
|
||||
void Sketch::clearTemporaryConstraints(void)
|
||||
{
|
||||
GCSsys.clearByTag(GCS::DefaultTemporaryConstraint);
|
||||
@@ -390,7 +497,7 @@ void Sketch::calculateDependentParametersElements(void)
|
||||
}
|
||||
}
|
||||
|
||||
std::vector < std::set < double*>> groups;
|
||||
std::vector < std::vector < double*>> groups;
|
||||
GCSsys.getDependentParamsGroups(groups);
|
||||
|
||||
pDependencyGroups.resize(groups.size());
|
||||
@@ -399,7 +506,7 @@ void Sketch::calculateDependentParametersElements(void)
|
||||
for(size_t i = 0; i < groups.size(); i++) {
|
||||
for(size_t j = 0; j < groups[i].size(); j++) {
|
||||
|
||||
auto element = param2geoelement.find(*std::next(groups[i].begin(), j));
|
||||
auto element = param2geoelement.find(groups[i][j]);
|
||||
|
||||
if (element != param2geoelement.end()) {
|
||||
pDependencyGroups[i].insert(element->second);
|
||||
|
||||
@@ -499,6 +499,71 @@ private:
|
||||
int checkGeoId(int geoId) const;
|
||||
GCS::Curve* getGCSCurveByGeoId(int geoId);
|
||||
const GCS::Curve* getGCSCurveByGeoId(int geoId) const;
|
||||
|
||||
// Block constraints
|
||||
|
||||
/** This function performs a pre-analysis of blocked geometries, separating them into:
|
||||
*
|
||||
* 1) onlyblockedGeometry : Geometries affected exclusively by a block constraint.
|
||||
*
|
||||
* 2) blockedGeoIds : Geometries affected notonly by a block constraint.
|
||||
*
|
||||
* This is important because 1) can be pre-fixed when creating geometry and constraints
|
||||
* before GCS::diagnose() via initSolution(). This is important because if no other constraint
|
||||
* affect the geometry, the geometry parameters won't even appear in the Jacobian, and they won't
|
||||
* be reported as dependent parameters.
|
||||
*
|
||||
* On the contrary 2) cannot be pre-fixed because it would lead to redundant constraints and requires
|
||||
* a post-analysis, see analyseBlockedConstraintDependentParameters, to fix just the parameters that
|
||||
* fulfil the dependacy groups.
|
||||
*/
|
||||
bool analyseBlockedGeometry( const std::vector<Part::Geometry *> &internalGeoList,
|
||||
const std::vector<Constraint *> &constraintList,
|
||||
std::vector<bool> &onlyblockedGeometry,
|
||||
std::vector<int> &blockedGeoIds) const;
|
||||
|
||||
/* This function performs a post-analysis of blocked geometries (see analyseBlockedGeometry for more detail
|
||||
* on the pre-analysis).
|
||||
*
|
||||
* Basically identifies which parameters shall be fixed to make geometries having blocking constraints fixed,
|
||||
* while not leading to redundant/conflicting constraints. These parameters must belong to blocked geometry. This
|
||||
* is, groups may comprise parameters belonging to blocked geometry and parameters belonging to unconstrained geometry.
|
||||
* It is licit that the latter remain as dependent parameters. The former are referred to as "blockable parameters".
|
||||
*
|
||||
* Extending this concept, there may be unsatisfiable groups (because they do not comprise any bloackable parameter),
|
||||
* and it is the desired outcome NOT to satisfy such groups.
|
||||
*
|
||||
* There is not a single combination of fixed parameters from the blockable parameters that satisfy all the dependency
|
||||
* groups. However:
|
||||
*
|
||||
* 1) some combinations do not satisfy all the dependency groups that must be satisfied (e.g. fixing one
|
||||
* group containing two blockable parameters with a given one may result in another group, fixable only by the former, not
|
||||
* to be satisfied). This leads, in a subsequent diagnosis, to satisfiable unsatisfied groups.
|
||||
*
|
||||
* 2) some combinations lead to partially redundant constraints, that the solver will silently drop in a subsequent diagnosis,
|
||||
* thereby reducing the rank of the system fixing less than it should.
|
||||
*
|
||||
* Implementation rationale (at this time):
|
||||
*
|
||||
* The implementation is on the order of the groups provided by the QR decomposition used to reveal the parameters
|
||||
* (see System::identifyDependentParameters in GCS). Zeros are made over the pilot of the full R matrix of the QR decomposition,
|
||||
* which is a top triangular matrix.This, together with the permutation matrix, allow to know groups of dependent parameters
|
||||
* (cols between rank and full size). Each group refers to a new parameter not affected by the rank in combination with other free
|
||||
* parameters intervening in the rank (because of the triangular shape of the R matrix). This results in that each the first column
|
||||
* between the rank and the full size, may only depend on a number of parameters, while the last full size colum may dependent on
|
||||
* any amount of previously introduced parameters.
|
||||
*
|
||||
* Thus the rationale is start from the last group (having **potentially** the larger amount of parameters) and selecting as blocking
|
||||
* for that group the latest blockable parameter. Because previous groups do not have access to the last parameter, this can never
|
||||
* interfere with previous groups. However, because the last parameter may not be a blockable one, there is a risk of selecting a parameter
|
||||
* common with other group, albeit the probability is reduced and probably (I have not demonstrated it though and I am not sure), it leads
|
||||
* to the right solution in one iteration.
|
||||
*
|
||||
*/
|
||||
bool analyseBlockedConstraintDependentParameters(std::vector<int> &blockedGeoIds, std::vector<double *> ¶ms_to_block) const;
|
||||
|
||||
/// utility function refactoring fixing the provided parameters and running a new diagnose
|
||||
void fixParametersAndDiagnose(std::vector<double *> ¶ms_to_block);
|
||||
};
|
||||
|
||||
} //namespace Part
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
#include <FCConfig.h>
|
||||
#include <Base/Console.h>
|
||||
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
#include <boost/graph/connected_components.hpp>
|
||||
|
||||
typedef Eigen::FullPivHouseholderQR<Eigen::MatrixXd>::IntDiagSizeVectorType MatrixIndexType;
|
||||
@@ -226,6 +226,7 @@ public:
|
||||
void LogQRSystemInformation(const System &system, int paramsNum = 0, int constrNum = 0, int rank = 0);
|
||||
|
||||
void LogGroupOfConstraints(const std::string & str, std::vector< std::vector<Constraint *> > constraintgroups);
|
||||
void LogGroupOfParameters(const std::string & str, std::vector< std::vector<double *> > parametergroups);
|
||||
|
||||
void LogMatrix(const std::string str, Eigen::MatrixXd matrix);
|
||||
void LogMatrix(const std::string str, MatrixIndexType matrix);
|
||||
@@ -367,6 +368,23 @@ void SolverReportingManager::LogGroupOfConstraints(const std::string & str, std:
|
||||
LogString(tempstream.str());
|
||||
}
|
||||
|
||||
void SolverReportingManager::LogGroupOfParameters(const std::string & str, std::vector< std::vector<double *> > parametergroups)
|
||||
{
|
||||
std::stringstream tempstream;
|
||||
|
||||
tempstream << str << ":" << '\n';
|
||||
|
||||
for(size_t i = 0; i < parametergroups.size(); i++) {
|
||||
tempstream << "[";
|
||||
|
||||
for(auto p : parametergroups[i])
|
||||
tempstream << std::hex << p << " ";
|
||||
|
||||
tempstream << "]" << '\n';
|
||||
}
|
||||
|
||||
LogString(tempstream.str());
|
||||
}
|
||||
|
||||
#ifdef _GCS_DEBUG
|
||||
void SolverReportingManager::LogMatrix(const std::string str, Eigen::MatrixXd matrix)
|
||||
@@ -4017,9 +4035,9 @@ SolverReportingManager::Manager().LogToFile("GCS::System::diagnose()\n");
|
||||
//
|
||||
// Debug:
|
||||
// auto fut = std::async(std::launch::deferred,&System::identifyDependentParametersSparseQR,this,J,jacobianconstraintmap, pdiagnoselist, false);
|
||||
auto fut = std::async(&System::identifyDependentParametersSparseQR,this,J,jacobianconstraintmap, pdiagnoselist, false);
|
||||
auto fut = std::async(&System::identifyDependentParametersSparseQR,this,J,jacobianconstraintmap, pdiagnoselist, /*silent=*/true);
|
||||
|
||||
makeSparseQRDecomposition( J, jacobianconstraintmap, SqrJT, rank, R);
|
||||
makeSparseQRDecomposition( J, jacobianconstraintmap, SqrJT, rank, R, /*transposed=*/true, /*silent=*/false);
|
||||
|
||||
int paramsNum = SqrJT.rows();
|
||||
int constrNum = SqrJT.cols();
|
||||
@@ -4260,21 +4278,31 @@ void System::identifyDependentParameters( T & qrJ,
|
||||
if(!silent)
|
||||
SolverReportingManager::Manager().LogMatrix("Rparams_nonzeros_over_pilot", Rparams);
|
||||
#endif
|
||||
|
||||
pDependentParametersGroups.resize(qrJ.cols()-rank);
|
||||
for (int j=rank; j < qrJ.cols(); j++) {
|
||||
for (int row=0; row < rank; row++) {
|
||||
if (fabs(Rparams(row,j)) > 1e-10) {
|
||||
int origCol = qrJ.colsPermutation().indices()[row];
|
||||
|
||||
pDependentParametersGroups[j-rank].insert(pdiagnoselist[origCol]);
|
||||
pDependentParametersGroups[j-rank].push_back(pdiagnoselist[origCol]);
|
||||
pDependentParameters.push_back(pdiagnoselist[origCol]);
|
||||
}
|
||||
}
|
||||
int origCol = qrJ.colsPermutation().indices()[j];
|
||||
|
||||
pDependentParametersGroups[j-rank].insert(pdiagnoselist[origCol]);
|
||||
pDependentParametersGroups[j-rank].push_back(pdiagnoselist[origCol]);
|
||||
pDependentParameters.push_back(pdiagnoselist[origCol]);
|
||||
}
|
||||
|
||||
#ifdef _GCS_DEBUG
|
||||
if(!silent) {
|
||||
SolverReportingManager::Manager().LogMatrix("PermMatrix", (Eigen::MatrixXd)qrJ.colsPermutation());
|
||||
|
||||
SolverReportingManager::Manager().LogGroupOfParameters("ParameterGroups",pDependentParametersGroups);
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
void System::identifyDependentGeometryParametersInTransposedJacobianDenseQRDecomposition(
|
||||
|
||||
@@ -106,7 +106,7 @@ namespace GCS
|
||||
|
||||
// This is a map of primary and secondary identifiers that are found dependent by the solver
|
||||
// GCS ignores from a type point
|
||||
std::vector< std::set<double *> > pDependentParametersGroups;
|
||||
std::vector< std::vector<double *> > pDependentParametersGroups;
|
||||
|
||||
std::vector<Constraint *> clist;
|
||||
std::map<Constraint *,VEC_pD > c2p; // constraint to parameter adjacency list
|
||||
@@ -363,7 +363,7 @@ namespace GCS
|
||||
{ redundantOut = hasDiagnosis ? redundantTags : VEC_I(0); }
|
||||
void getDependentParams(VEC_pD &pdependentparameterlist) const
|
||||
{ pdependentparameterlist = pDependentParameters;}
|
||||
void getDependentParamsGroups(std::vector<std::set<double *>> &pdependentparametergroups) const
|
||||
void getDependentParamsGroups(std::vector<std::vector<double *>> &pdependentparametergroups) const
|
||||
{ pdependentparametergroups = pDependentParametersGroups;}
|
||||
bool isEmptyDiagnoseMatrix() const {return emptyDiagnoseMatrix;}
|
||||
void invalidatedDiagnosis();
|
||||
|
||||
@@ -145,13 +145,13 @@ bool SketcherGui::checkBothExternal(int GeoId1, int GeoId2)
|
||||
return (GeoId1 < 0 && GeoId2 < 0);
|
||||
}
|
||||
|
||||
bool SketcherGui::checkBothExternalOrConstructionPoints(const Sketcher::SketchObject* Obj,int GeoId1, int GeoId2)
|
||||
bool SketcherGui::checkBothExternalOrBSplinePoints(const Sketcher::SketchObject* Obj,int GeoId1, int GeoId2)
|
||||
{
|
||||
if (GeoId1 == Constraint::GeoUndef || GeoId2 == Constraint::GeoUndef)
|
||||
return false;
|
||||
else
|
||||
return (GeoId1 < 0 && GeoId2 < 0) || (isConstructionPoint(Obj,GeoId1) && isConstructionPoint(Obj,GeoId2)) ||
|
||||
(GeoId1 < 0 && isConstructionPoint(Obj,GeoId2)) || (GeoId2 < 0 && isConstructionPoint(Obj,GeoId1));
|
||||
return (GeoId1 < 0 && GeoId2 < 0) || (isBsplineKnot(Obj,GeoId1) && isBsplineKnot(Obj,GeoId2)) ||
|
||||
(GeoId1 < 0 && isBsplineKnot(Obj,GeoId2)) || (GeoId2 < 0 && isBsplineKnot(Obj,GeoId1));
|
||||
}
|
||||
|
||||
bool SketcherGui::isPointOrSegmentFixed(const Sketcher::SketchObject* Obj, int GeoId)
|
||||
@@ -161,7 +161,7 @@ bool SketcherGui::isPointOrSegmentFixed(const Sketcher::SketchObject* Obj, int G
|
||||
if (GeoId == Constraint::GeoUndef)
|
||||
return false;
|
||||
else
|
||||
return checkConstraint(vals, Sketcher::Block, GeoId, Sketcher::none) || GeoId <= Sketcher::GeoEnum::RtPnt || isConstructionPoint(Obj,GeoId);
|
||||
return checkConstraint(vals, Sketcher::Block, GeoId, Sketcher::none) || GeoId <= Sketcher::GeoEnum::RtPnt || isBsplineKnot(Obj,GeoId);
|
||||
}
|
||||
|
||||
bool SketcherGui::areBothPointsOrSegmentsFixed(const Sketcher::SketchObject* Obj, int GeoId1, int GeoId2)
|
||||
@@ -171,8 +171,8 @@ bool SketcherGui::areBothPointsOrSegmentsFixed(const Sketcher::SketchObject* Obj
|
||||
if (GeoId1 == Constraint::GeoUndef || GeoId2 == Constraint::GeoUndef)
|
||||
return false;
|
||||
else
|
||||
return ((checkConstraint(vals, Sketcher::Block, GeoId1, Sketcher::none) || GeoId1 <= Sketcher::GeoEnum::RtPnt || isConstructionPoint(Obj,GeoId1)) &&
|
||||
(checkConstraint(vals, Sketcher::Block, GeoId2, Sketcher::none) || GeoId2 <= Sketcher::GeoEnum::RtPnt || isConstructionPoint(Obj,GeoId2)));
|
||||
return ((checkConstraint(vals, Sketcher::Block, GeoId1, Sketcher::none) || GeoId1 <= Sketcher::GeoEnum::RtPnt || isBsplineKnot(Obj,GeoId1)) &&
|
||||
(checkConstraint(vals, Sketcher::Block, GeoId2, Sketcher::none) || GeoId2 <= Sketcher::GeoEnum::RtPnt || isBsplineKnot(Obj,GeoId2)));
|
||||
}
|
||||
|
||||
bool SketcherGui::areAllPointsOrSegmentsFixed(const Sketcher::SketchObject* Obj, int GeoId1, int GeoId2, int GeoId3)
|
||||
@@ -182,9 +182,9 @@ bool SketcherGui::areAllPointsOrSegmentsFixed(const Sketcher::SketchObject* Obj,
|
||||
if (GeoId1 == Constraint::GeoUndef || GeoId2 == Constraint::GeoUndef || GeoId3 == Constraint::GeoUndef)
|
||||
return false;
|
||||
else
|
||||
return ((checkConstraint(vals, Sketcher::Block, GeoId1, Sketcher::none) || GeoId1 <= Sketcher::GeoEnum::RtPnt || isConstructionPoint(Obj,GeoId1)) &&
|
||||
(checkConstraint(vals, Sketcher::Block, GeoId2, Sketcher::none) || GeoId2 <= Sketcher::GeoEnum::RtPnt || isConstructionPoint(Obj,GeoId2)) &&
|
||||
(checkConstraint(vals, Sketcher::Block, GeoId3, Sketcher::none) || GeoId3 <= Sketcher::GeoEnum::RtPnt || isConstructionPoint(Obj,GeoId3)));
|
||||
return ((checkConstraint(vals, Sketcher::Block, GeoId1, Sketcher::none) || GeoId1 <= Sketcher::GeoEnum::RtPnt || isBsplineKnot(Obj,GeoId1)) &&
|
||||
(checkConstraint(vals, Sketcher::Block, GeoId2, Sketcher::none) || GeoId2 <= Sketcher::GeoEnum::RtPnt || isBsplineKnot(Obj,GeoId2)) &&
|
||||
(checkConstraint(vals, Sketcher::Block, GeoId3, Sketcher::none) || GeoId3 <= Sketcher::GeoEnum::RtPnt || isBsplineKnot(Obj,GeoId3)));
|
||||
}
|
||||
|
||||
void SketcherGui::getIdsFromName(const std::string &name, const Sketcher::SketchObject* Obj,
|
||||
@@ -235,10 +235,10 @@ bool SketcherGui::isSimpleVertex(const Sketcher::SketchObject* Obj, int GeoId, P
|
||||
return false;
|
||||
}
|
||||
|
||||
bool SketcherGui::isConstructionPoint(const Sketcher::SketchObject* Obj, int GeoId)
|
||||
bool SketcherGui::isBsplineKnot(const Sketcher::SketchObject* Obj, int GeoId)
|
||||
{
|
||||
const Part::Geometry * geo = Obj->getGeometry(GeoId);
|
||||
return (geo && geo->getTypeId() == Part::GeomPoint::getClassTypeId() && GeometryFacade::getConstruction(geo));
|
||||
auto gf = Obj->getGeometryFacade(GeoId);
|
||||
return (gf && gf->getInternalType() == Sketcher::InternalType::BSplineKnotPoint);
|
||||
}
|
||||
|
||||
bool SketcherGui::IsPointAlreadyOnCurve(int GeoIdCurve, int GeoIdPoint, Sketcher::PointPos PosIdPoint, Sketcher::SketchObject* Obj)
|
||||
@@ -1194,81 +1194,81 @@ void CmdSketcherConstrainHorizontal::applyConstraint(std::vector<SelIdPair> &sel
|
||||
Sketcher::SketchObject* Obj = sketchgui->getSketchObject();
|
||||
|
||||
switch (seqIndex) {
|
||||
case 0: // {Edge}
|
||||
{
|
||||
// create the constraint
|
||||
const std::vector< Sketcher::Constraint * > &vals = Obj->Constraints.getValues();
|
||||
case 0: // {Edge}
|
||||
{
|
||||
// create the constraint
|
||||
const std::vector< Sketcher::Constraint * > &vals = Obj->Constraints.getValues();
|
||||
|
||||
int CrvId = selSeq.front().GeoId;
|
||||
if (CrvId != -1) {
|
||||
const Part::Geometry *geo = Obj->getGeometry(CrvId);
|
||||
if (geo->getTypeId() != Part::GeomLineSegment::getClassTypeId()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Impossible constraint"),
|
||||
QObject::tr("The selected edge is not a line segment"));
|
||||
int CrvId = selSeq.front().GeoId;
|
||||
if (CrvId != -1) {
|
||||
const Part::Geometry *geo = Obj->getGeometry(CrvId);
|
||||
if (geo->getTypeId() != Part::GeomLineSegment::getClassTypeId()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Impossible constraint"),
|
||||
QObject::tr("The selected edge is not a line segment"));
|
||||
return;
|
||||
}
|
||||
|
||||
// check if the edge already has a Horizontal/Vertical/Block constraint
|
||||
for (std::vector< Sketcher::Constraint * >::const_iterator it= vals.begin();
|
||||
it != vals.end(); ++it) {
|
||||
if ((*it)->Type == Sketcher::Horizontal && (*it)->First == CrvId && (*it)->FirstPos == Sketcher::none){
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Double constraint"),
|
||||
QObject::tr("The selected edge already has a horizontal constraint!"));
|
||||
return;
|
||||
}
|
||||
if ((*it)->Type == Sketcher::Vertical && (*it)->First == CrvId && (*it)->FirstPos == Sketcher::none) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Impossible constraint"),
|
||||
QObject::tr("The selected edge already has a vertical constraint!"));
|
||||
return;
|
||||
}
|
||||
// check if the edge already has a Block constraint
|
||||
if ((*it)->Type == Sketcher::Block && (*it)->First == CrvId && (*it)->FirstPos == Sketcher::none) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Impossible constraint"),
|
||||
QObject::tr("The selected edge already has a Block constraint!"));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// undo command open
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add horizontal constraint"));
|
||||
// issue the actual commands to create the constraint
|
||||
Gui::cmdAppObjectArgs(sketchgui->getObject(), "addConstraint(Sketcher.Constraint('Horizontal',%d)) ",CrvId);
|
||||
// finish the transaction and update
|
||||
Gui::Command::commitCommand();
|
||||
|
||||
tryAutoRecompute(Obj);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case 1 : // {SelVertex, SelVertexOrRoot}
|
||||
case 2 : // {SelRoot, SelVertex}
|
||||
{
|
||||
int GeoId1, GeoId2;
|
||||
Sketcher::PointPos PosId1, PosId2;
|
||||
GeoId1 = selSeq.at(0).GeoId; GeoId2 = selSeq.at(1).GeoId;
|
||||
PosId1 = selSeq.at(0).PosId; PosId2 = selSeq.at(1).PosId;
|
||||
|
||||
if ( areBothPointsOrSegmentsFixed(Obj, GeoId1, GeoId2) ) {
|
||||
showNoConstraintBetweenFixedGeometry();
|
||||
return;
|
||||
}
|
||||
|
||||
// check if the edge already has a Horizontal/Vertical/Block constraint
|
||||
for (std::vector< Sketcher::Constraint * >::const_iterator it= vals.begin();
|
||||
it != vals.end(); ++it) {
|
||||
if ((*it)->Type == Sketcher::Horizontal && (*it)->First == CrvId && (*it)->FirstPos == Sketcher::none){
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Double constraint"),
|
||||
QObject::tr("The selected edge already has a horizontal constraint!"));
|
||||
return;
|
||||
}
|
||||
if ((*it)->Type == Sketcher::Vertical && (*it)->First == CrvId && (*it)->FirstPos == Sketcher::none) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Impossible constraint"),
|
||||
QObject::tr("The selected edge already has a vertical constraint!"));
|
||||
return;
|
||||
}
|
||||
// check if the edge already has a Block constraint
|
||||
if ((*it)->Type == Sketcher::Block && (*it)->First == CrvId && (*it)->FirstPos == Sketcher::none) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Impossible constraint"),
|
||||
QObject::tr("The selected edge already has a Block constraint!"));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// undo command open
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add horizontal constraint"));
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add horizontal alignment"));
|
||||
// issue the actual commands to create the constraint
|
||||
Gui::cmdAppObjectArgs(sketchgui->getObject(), "addConstraint(Sketcher.Constraint('Horizontal',%d)) ",CrvId);
|
||||
Gui::cmdAppObjectArgs(sketchgui->getObject()
|
||||
,"addConstraint(Sketcher.Constraint('Horizontal',%d,%d,%d,%d)) "
|
||||
,GeoId1,PosId1,GeoId2,PosId2);
|
||||
// finish the transaction and update
|
||||
Gui::Command::commitCommand();
|
||||
|
||||
tryAutoRecompute(Obj);
|
||||
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case 1 : // {SelVertex, SelVertexOrRoot}
|
||||
case 2 : // {SelRoot, SelVertex}
|
||||
{
|
||||
int GeoId1, GeoId2;
|
||||
Sketcher::PointPos PosId1, PosId2;
|
||||
GeoId1 = selSeq.at(0).GeoId; GeoId2 = selSeq.at(1).GeoId;
|
||||
PosId1 = selSeq.at(0).PosId; PosId2 = selSeq.at(1).PosId;
|
||||
|
||||
if ( areBothPointsOrSegmentsFixed(Obj, GeoId1, GeoId2) ) {
|
||||
showNoConstraintBetweenFixedGeometry();
|
||||
return;
|
||||
}
|
||||
|
||||
// undo command open
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add horizontal alignment"));
|
||||
// issue the actual commands to create the constraint
|
||||
Gui::cmdAppObjectArgs(sketchgui->getObject()
|
||||
,"addConstraint(Sketcher.Constraint('Horizontal',%d,%d,%d,%d)) "
|
||||
,GeoId1,PosId1,GeoId2,PosId2);
|
||||
// finish the transaction and update
|
||||
Gui::Command::commitCommand();
|
||||
|
||||
tryAutoRecompute(Obj);
|
||||
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1614,12 +1614,12 @@ void CmdSketcherConstrainLock::activated(int iMsg)
|
||||
lastconstraintindex+=2;
|
||||
|
||||
if (edgeisblocked || GeoId[0] <= Sketcher::GeoEnum::RefExt
|
||||
|| isConstructionPoint(Obj,GeoId[0])
|
||||
|| isBsplineKnot(Obj,GeoId[0])
|
||||
|| constraintCreationMode==Reference) {
|
||||
// it is a constraint on a external line, make it non-driving
|
||||
|
||||
Gui::cmdAppObjectArgs(selection[0].getObject(), "setDriving(%i,%s)",
|
||||
lastconstraintindex-2,"False");
|
||||
lastconstraintindex-1,"False");
|
||||
|
||||
Gui::cmdAppObjectArgs(selection[0].getObject(), "setDriving(%i,%s)",
|
||||
lastconstraintindex,"False");
|
||||
@@ -2409,7 +2409,7 @@ void CmdSketcherConstrainDistance::activated(int iMsg)
|
||||
|
||||
// it is a constraint on a external line, make it non-driving
|
||||
if (arebothpointsorsegmentsfixed || GeoId1 <= Sketcher::GeoEnum::RefExt ||
|
||||
isConstructionPoint(Obj,GeoId1) || constraintCreationMode==Reference) {
|
||||
isBsplineKnot(Obj,GeoId1) || constraintCreationMode==Reference) {
|
||||
const std::vector<Sketcher::Constraint *> &ConStr = Obj->Constraints.getValues();
|
||||
|
||||
Gui::cmdAppObjectArgs(selection[0].getObject(), "setDriving(%i,%s)",
|
||||
@@ -2502,7 +2502,7 @@ void CmdSketcherConstrainDistance::applyConstraint(std::vector<SelIdPair> &selSe
|
||||
|
||||
if (arebothpointsorsegmentsfixed
|
||||
|| GeoId1 <= Sketcher::GeoEnum::RefExt
|
||||
|| isConstructionPoint(Obj,GeoId1)
|
||||
|| isBsplineKnot(Obj,GeoId1)
|
||||
|| constraintCreationMode==Reference) {
|
||||
// it is a constraint on a external line, make it non-driving
|
||||
const std::vector<Sketcher::Constraint *> &ConStr = Obj->Constraints.getValues();
|
||||
@@ -3189,7 +3189,7 @@ void CmdSketcherConstrainDistanceY::activated(int iMsg)
|
||||
GeoId1,PosId1,ActY);
|
||||
|
||||
if (GeoId1 <= Sketcher::GeoEnum::RefExt
|
||||
|| isConstructionPoint(Obj,GeoId1)
|
||||
|| isBsplineKnot(Obj,GeoId1)
|
||||
|| constraintCreationMode==Reference) {
|
||||
// it is a constraint on a external line, make it non-driving
|
||||
const std::vector<Sketcher::Constraint *> &ConStr = Obj->Constraints.getValues();
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace SketcherGui {
|
||||
|
||||
bool checkBothExternal(int GeoId1, int GeoId2);
|
||||
|
||||
bool checkBothExternalOrConstructionPoints(const Sketcher::SketchObject* Obj,int GeoId1, int GeoId2);
|
||||
bool checkBothExternalOrBSplinePoints(const Sketcher::SketchObject* Obj,int GeoId1, int GeoId2);
|
||||
|
||||
bool isPointOrSegmentFixed(const Sketcher::SketchObject* Obj, int GeoId);
|
||||
|
||||
@@ -47,7 +47,7 @@ bool inline isEdge(int GeoId, Sketcher::PointPos PosId);
|
||||
|
||||
bool isSimpleVertex(const Sketcher::SketchObject* Obj, int GeoId, Sketcher::PointPos PosId);
|
||||
|
||||
bool isConstructionPoint(const Sketcher::SketchObject* Obj, int GeoId);
|
||||
bool isBsplineKnot(const Sketcher::SketchObject* Obj, int GeoId);
|
||||
|
||||
bool IsPointAlreadyOnCurve(int GeoIdCurve, int GeoIdPoint, Sketcher::PointPos PosIdPoint, Sketcher::SketchObject* Obj);
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include "TaskSketcherGeneral.h"
|
||||
#include "TaskSketcherMessages.h"
|
||||
#include "TaskSketcherSolverAdvanced.h"
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
typedef boost::signals2::connection Connection;
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <Gui/Selection.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <QListWidget>
|
||||
|
||||
namespace App {
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <Gui/Selection.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <QListWidget>
|
||||
#include <QIcon>
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <Gui/Selection.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class Ui_TaskSketcherGeneral;
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include <Gui/TaskView/TaskView.h>
|
||||
#include <Gui/Selection.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
class Ui_TaskSketcherMessages;
|
||||
typedef boost::signals2::connection Connection;
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
#include <Gui/Selection.h>
|
||||
#include <Gui/GLPainter.h>
|
||||
#include <App/Part.h>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <QCoreApplication>
|
||||
#include <Gui/Document.h>
|
||||
#include "ShortcutListener.h"
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef _DrawPage_h_
|
||||
#define _DrawPage_h_
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <App/DocumentObject.h>
|
||||
#include <App/DocumentObjectGroup.h>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#ifndef _DrawView_h_
|
||||
#define _DrawView_h_
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <QCoreApplication>
|
||||
#include <QRectF>
|
||||
|
||||
@@ -485,7 +485,7 @@ App::DocumentObjectExecReturn *DrawViewDimension::execute(void)
|
||||
}
|
||||
m_arcPoints = pts;
|
||||
m_hasGeometry = true;
|
||||
} else if(Type.isValue("Angle")){
|
||||
} else if (Type.isValue("Angle")){
|
||||
if (getRefType() != twoEdge) {
|
||||
Base::Console().Log("Error: DVD - %s - 2D references are corrupt\n",getNameInDocument());
|
||||
return App::DocumentObject::StdReturn;
|
||||
@@ -529,7 +529,7 @@ App::DocumentObjectExecReturn *DrawViewDimension::execute(void)
|
||||
pts.vertex = apex;
|
||||
m_anglePoints = pts;
|
||||
m_hasGeometry = true;
|
||||
} else if(Type.isValue("Angle3Pt")){
|
||||
} else if (Type.isValue("Angle3Pt")){
|
||||
if (getRefType() != threeVertex) {
|
||||
Base::Console().Log("Error: DVD - %s - 2D references are corrupt\n",getNameInDocument());
|
||||
return App::DocumentObject::StdReturn;
|
||||
@@ -629,8 +629,6 @@ std::string DrawViewDimension::formatValue(qreal value, QString qFormatSpec, int
|
||||
QString qUserString = asQuantity.getUserString(); // this handles mm to inch/km/parsec etc
|
||||
// and decimal positions but won't give more than
|
||||
// Global_Decimals precision
|
||||
// really should be able to ask units for value
|
||||
// in appropriate UoM!!
|
||||
|
||||
//units api: get schema to figure out if this is multi-value schema(Imperial1, ImperialBuilding, etc)
|
||||
//if it is multi-unit schema, don't even try to use Alt Decimals
|
||||
@@ -664,7 +662,7 @@ std::string DrawViewDimension::formatValue(qreal value, QString qFormatSpec, int
|
||||
formattedValue = qMultiValueStr;
|
||||
} else {
|
||||
if (formatSpecifier.isEmpty()) {
|
||||
Base::Console().Warning("Warning - no numeric format in formatSpec %s - %s\n",
|
||||
Base::Console().Warning("Warning - no numeric format in Format Spec %s - %s\n",
|
||||
qPrintable(qFormatSpec), getNameInDocument());
|
||||
return Base::Tools::toStdString(qFormatSpec);
|
||||
}
|
||||
@@ -693,7 +691,16 @@ std::string DrawViewDimension::formatValue(qreal value, QString qFormatSpec, int
|
||||
// get the conversion factor for the unit
|
||||
double convertValue = Base::Quantity::parse(QString::fromLatin1("1") + QString::fromStdString(BaseLengthUnit)).getValue();
|
||||
// the result is now just val / convertValue because val is always in the base unit
|
||||
double userVal = asQuantity.getValue() / convertValue;
|
||||
// don't do this for angular values since they are not in the BaseLengthUnit
|
||||
double userVal;
|
||||
if (!angularMeasure) {
|
||||
userVal = asQuantity.getValue() / convertValue;
|
||||
// since we converted to the BaseLengthUnit we must assure it is also used for qUserStringUnits
|
||||
qUserStringUnits = QChar::fromLatin1(' ') + QString::fromStdString(BaseLengthUnit);
|
||||
}
|
||||
else {
|
||||
userVal = asQuantity.getValue();
|
||||
}
|
||||
|
||||
// we reformat the value
|
||||
// the user can overwrite the decimal settings, so we must in every case use the formatSpecifier
|
||||
@@ -751,7 +758,7 @@ std::string DrawViewDimension::formatValue(qreal value, QString qFormatSpec, int
|
||||
Base::Tools::toStdString(formatSuffix);
|
||||
}
|
||||
else if (partial == 2) { // just the unit
|
||||
if ((Type.isValue("Angle")) || (Type.isValue("Angle3Pt"))) {
|
||||
if (angularMeasure) {
|
||||
// remove space between dimension and unit if unit is not "deg"
|
||||
if ( !qUserStringUnits.contains(QString::fromLatin1("deg")) ) {
|
||||
QRegExp space(QString::fromUtf8("\\s"));
|
||||
@@ -779,8 +786,16 @@ std::pair<std::string, std::string> DrawViewDimension::getFormattedToleranceValu
|
||||
underTolerance = underFormatSpec;
|
||||
overTolerance = overFormatSpec;
|
||||
} else {
|
||||
underTolerance = QString::fromUtf8(formatValue(UnderTolerance.getValue(), underFormatSpec, partial).c_str());
|
||||
overTolerance = QString::fromUtf8(formatValue(OverTolerance.getValue(), overFormatSpec, partial).c_str());
|
||||
if (DrawUtil::fpCompare(UnderTolerance.getValue(), 0.0)) {
|
||||
underTolerance = QString::fromUtf8(formatValue(UnderTolerance.getValue(), QString::fromUtf8("%.0f"), partial).c_str());
|
||||
} else {
|
||||
underTolerance = QString::fromUtf8(formatValue(UnderTolerance.getValue(), underFormatSpec, partial).c_str());
|
||||
}
|
||||
if (DrawUtil::fpCompare(OverTolerance.getValue(), 0.0)) {
|
||||
overTolerance = QString::fromUtf8(formatValue(OverTolerance.getValue(), QString::fromUtf8("%.0f"), partial).c_str());
|
||||
} else {
|
||||
overTolerance = QString::fromUtf8(formatValue(OverTolerance.getValue(), overFormatSpec, partial).c_str());
|
||||
}
|
||||
}
|
||||
|
||||
tolerances.first = underTolerance.toStdString();
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#define TECHDRAW_EDGEWALKER_H
|
||||
|
||||
#include <vector>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost_graph_adjacency_list.hpp>
|
||||
#include <boost/graph/properties.hpp>
|
||||
#include <boost/graph/graph_traits.hpp>
|
||||
#include <boost/property_map/property_map.hpp>
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>460</width>
|
||||
<height>318</height>
|
||||
<width>440</width>
|
||||
<height>333</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@@ -40,7 +40,95 @@
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout" columnstretch="1,0,1">
|
||||
<item row="5" column="2">
|
||||
<item row="3" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbShowLoose">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Include 2D Objects in projection</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Loose 2D Geom</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ShowLoose2d</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbCrazyEdges">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Include edges with unexpected geometry (zero length etc.) in results</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Allow Crazy Edges</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>allowCrazyEdge</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/debug</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Edge Fuzz</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<widget class="Gui::PrefLineEdit" name="leFormatSpec">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Override automatic dimension format</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>formatSpec</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/Dimensions</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="cbEndCap">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
@@ -86,7 +174,136 @@ Only change unless you know what you are doing!</string>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<item row="2" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="cbFuseBeforeSection">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Perform a fuse operation on input shape(s) before Section view processing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Fuse Before Section</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SectionFuseFirst</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dimension Format</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Line End Cap Shape</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="cbDebugDetail">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Dump intermediate results during Detail view processing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Debug Detail</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>debugDetail</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/debugDetail</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="cbShowSectionEdges">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Highlights border of section cut in section views</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Section Edges</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ShowSectionEdges</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="2">
|
||||
<widget class="Gui::PrefSpinBox" name="sbMaxTiles">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
@@ -122,146 +339,21 @@ Then you need to increase the tile limit.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="cbDebugDetail">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Dump intermediate results during Detail view processing</string>
|
||||
</property>
|
||||
<item row="8" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Debug Detail</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>debugDetail</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/debugDetail</cstring>
|
||||
<string>Max SVG Hatch Tiles</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbShowLoose">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Include 2D Objects in projection</string>
|
||||
</property>
|
||||
<item row="9" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Show Loose 2D Geom</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ShowLoose2d</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
<string>Max PAT Hatch Segments</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbDebugSection">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Dump intermediate results during Section view processing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Debug Section</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>debugSection</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/debug</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="cbFuseBeforeSection">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Perform a fuse operation on input shape(s) before Section view processing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Fuse Before Section</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SectionFuseFirst</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="cbShowSectionEdges">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Highlights border of section cut in section views</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Section Edges</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ShowSectionEdges</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="2">
|
||||
<item row="9" column="2">
|
||||
<widget class="Gui::PrefSpinBox" name="sbMaxPat">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
@@ -296,15 +388,25 @@ when hatching a face with a PAT pattern</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
<item row="1" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbDebugSection">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Dump intermediate results during Section view processing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Line End Cap Shape</string>
|
||||
<string>Debug Section</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>debugSection</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/debug</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -336,86 +438,98 @@ can be a performance penalty in complex models.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
<property name="text">
|
||||
<string>Mark Fuzz</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbCrazyEdges">
|
||||
<item row="4" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbEdgeFuzz">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Include edges with unexpected geometry (zero length etc.) in results</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Allow Crazy Edges</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>allowCrazyEdge</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/debug</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Max SVG Hatch Tiles</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Max PAT Hatch Segments</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Dimension Format</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="Gui::PrefLineEdit" name="leFormatSpec">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>174</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Override automatic dimension format</string>
|
||||
<string>Size of selection area around edges
|
||||
Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>formatSpec</cstring>
|
||||
<cstring>EdgeFuzz</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/Dimensions</cstring>
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbMarkFuzz">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>174</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Selection area around center marks
|
||||
Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>5.000000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>MarkFuzz</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -450,8 +564,8 @@ can be a performance penalty in complex models.</string>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
<width>17</width>
|
||||
<height>1</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
@@ -479,6 +593,11 @@ can be a performance penalty in complex models.</string>
|
||||
<extends>QLineEdit</extends>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>Gui::PrefDoubleSpinBox</class>
|
||||
<extends>QDoubleSpinBox</extends>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="Resources/TechDraw.qrc"/>
|
||||
|
||||
@@ -45,32 +45,36 @@ DlgPrefsTechDrawAdvancedImp::~DlgPrefsTechDrawAdvancedImp()
|
||||
|
||||
void DlgPrefsTechDrawAdvancedImp::saveSettings()
|
||||
{
|
||||
ui->cbEndCap->onSave();
|
||||
ui->cbCrazyEdges->onSave();
|
||||
ui->cbDebugSection->onSave();
|
||||
ui->cbDetectFaces->onSave();
|
||||
ui->cbDebugDetail->onSave();
|
||||
ui->cbDetectFaces->onSave();
|
||||
ui->cbShowSectionEdges->onSave();
|
||||
ui->cbDebugSection->onSave();
|
||||
ui->cbDebugDetail->onSave();
|
||||
ui->cbCrazyEdges->onSave();
|
||||
ui->cbFuseBeforeSection->onSave();
|
||||
ui->cbShowLoose->onSave();
|
||||
ui->pdsbEdgeFuzz->onSave();
|
||||
ui->pdsbMarkFuzz->onSave();
|
||||
ui->leFormatSpec->onSave();
|
||||
ui->cbEndCap->onSave();
|
||||
ui->sbMaxTiles->onSave();
|
||||
ui->sbMaxPat->onSave();
|
||||
ui->cbShowLoose->onSave();
|
||||
ui->leFormatSpec->onSave();
|
||||
}
|
||||
|
||||
void DlgPrefsTechDrawAdvancedImp::loadSettings()
|
||||
{
|
||||
ui->cbEndCap->onRestore();
|
||||
ui->cbCrazyEdges->onRestore();
|
||||
ui->cbDebugSection->onRestore();
|
||||
ui->cbDetectFaces->onRestore();
|
||||
ui->cbDebugDetail->onRestore();
|
||||
ui->cbShowSectionEdges->onRestore();
|
||||
ui->cbDebugSection->onRestore();
|
||||
ui->cbDebugDetail->onRestore();
|
||||
ui->cbCrazyEdges->onRestore();
|
||||
ui->cbFuseBeforeSection->onRestore();
|
||||
ui->cbShowLoose->onRestore();
|
||||
ui->pdsbEdgeFuzz->onRestore();
|
||||
ui->pdsbMarkFuzz->onRestore();
|
||||
ui->leFormatSpec->onRestore();
|
||||
ui->cbEndCap->onRestore();
|
||||
ui->sbMaxTiles->onRestore();
|
||||
ui->sbMaxPat->onRestore();
|
||||
ui->cbShowLoose->onRestore();
|
||||
ui->leFormatSpec->onRestore();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>415</width>
|
||||
<width>440</width>
|
||||
<height>447</height>
|
||||
</rect>
|
||||
</property>
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>460</width>
|
||||
<height>343</height>
|
||||
<width>440</width>
|
||||
<height>342</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>460</width>
|
||||
<height>403</height>
|
||||
<width>440</width>
|
||||
<height>336</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
@@ -46,19 +46,6 @@
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Standard and Style</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="pcbStandardAndStyle">
|
||||
<property name="sizePolicy">
|
||||
@@ -104,30 +91,101 @@
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbGlobalDecimals">
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Arrow Style</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Standard and Style</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="pcbArrow">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>22</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Arrowhead style</string>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>-1</number>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ArrowStyle</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/Dimensions</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="label_12">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Arrow Size</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<widget class="Gui::PrefLineEdit" name="leDiameter">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>22</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>12</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Use system setting for number of decimals</string>
|
||||
<string>Character used to indicate diameter dimensions</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Use Global Decimals</string>
|
||||
<string>⌀</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>UseGlobalDecimals</cstring>
|
||||
<cstring>DiameterSymbol</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/Dimensions</cstring>
|
||||
@@ -162,10 +220,40 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_11">
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="text">
|
||||
<string>Alternate Decimals</string>
|
||||
<string>Diameter Symbol</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="cbGlobalDecimals">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Use system setting for number of decimals</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Use Global Decimals</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>UseGlobalDecimals</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/Dimensions</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -203,18 +291,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Font Size</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
@@ -259,102 +335,7 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="text">
|
||||
<string>Diameter Symbol</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="Gui::PrefLineEdit" name="leDiameter">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>22</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>12</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Character used to indicate diameter dimensions</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>⌀</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>DiameterSymbol</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>/Mod/TechDraw/Dimensions</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Arrow Style</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="pcbArrow">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>22</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Arrowhead style</string>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>-1</number>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ArrowStyle</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/Dimensions</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="label_12">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Arrow Size</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<item row="7" column="2">
|
||||
<widget class="Gui::PrefUnitSpinBox" name="plsb_ArrowSize">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
@@ -385,151 +366,91 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>85</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Conventions</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_6" columnstretch="1,0,1">
|
||||
<item row="0" column="1">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_11">
|
||||
<property name="text">
|
||||
<string>Projection Group Angle</string>
|
||||
<string>Alternate Decimals</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="cbProjAngle">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>184</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Use first- or third-angle multiview projection convention</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ProjectionAngle</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>First</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Third</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Page</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_14">
|
||||
<property name="text">
|
||||
<string>Hidden Line Style</string>
|
||||
<string>Font Size</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="cbHiddenLineStyle">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="lbl_LabelFont">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>false</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Tolerance Text Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbToleranceScale">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>174</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Style for hidden lines</string>
|
||||
<string>Tolerance text scale
|
||||
Multiplier of 'Font Size'</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>0.800000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>HiddenLine</cstring>
|
||||
<cstring>TolSizeAdjust</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
<cstring>Mod/TechDraw/Dimensions</cstring>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Continuous</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="Resources/TechDraw.qrc">
|
||||
<normaloff>:/icons/continuous-line.svg</normaloff>:/icons/continuous-line.svg</iconset>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Dashed</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="Resources/TechDraw.qrc">
|
||||
<normaloff>:/icons/dash-line.svg</normaloff>:/icons/dash-line.svg</iconset>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
@@ -594,6 +515,11 @@
|
||||
<extends>QLineEdit</extends>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>Gui::PrefDoubleSpinBox</class>
|
||||
<extends>QDoubleSpinBox</extends>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>Gui::PrefUnitSpinBox</class>
|
||||
<extends>Gui::QuantitySpinBox</extends>
|
||||
|
||||
@@ -58,16 +58,15 @@ DlgPrefsTechDrawDimensionsImp::~DlgPrefsTechDrawDimensionsImp()
|
||||
|
||||
void DlgPrefsTechDrawDimensionsImp::saveSettings()
|
||||
{
|
||||
ui->pcbStandardAndStyle->onSave();
|
||||
ui->cbGlobalDecimals->onSave();
|
||||
ui->cbHiddenLineStyle->onSave();
|
||||
ui->cbProjAngle->onSave();
|
||||
ui->cbShowUnits->onSave();
|
||||
ui->sbAltDecimals->onSave();
|
||||
ui->plsb_FontSize->onSave();
|
||||
ui->pdsbToleranceScale->onSave();
|
||||
ui->leDiameter->onSave();
|
||||
ui->pcbArrow->onSave();
|
||||
ui->pcbStandardAndStyle->onSave();
|
||||
ui->plsb_ArrowSize->onSave();
|
||||
ui->plsb_FontSize->onSave();
|
||||
ui->sbAltDecimals->onSave();
|
||||
}
|
||||
|
||||
void DlgPrefsTechDrawDimensionsImp::loadSettings()
|
||||
@@ -81,16 +80,15 @@ void DlgPrefsTechDrawDimensionsImp::loadSettings()
|
||||
// plsb_ArrowSize->setValue(arrowDefault);
|
||||
ui->plsb_ArrowSize->setValue(fontDefault);
|
||||
|
||||
ui->pcbStandardAndStyle->onRestore();
|
||||
ui->cbGlobalDecimals->onRestore();
|
||||
ui->cbHiddenLineStyle->onRestore();
|
||||
ui->cbProjAngle->onRestore();
|
||||
ui->cbShowUnits->onRestore();
|
||||
ui->sbAltDecimals->onRestore();
|
||||
ui->plsb_FontSize->onRestore();
|
||||
ui->pdsbToleranceScale->onRestore();
|
||||
ui->leDiameter->onRestore();
|
||||
ui->pcbArrow->onRestore();
|
||||
ui->pcbStandardAndStyle->onRestore();
|
||||
ui->plsb_ArrowSize->onRestore();
|
||||
ui->plsb_FontSize->onRestore();
|
||||
ui->sbAltDecimals->onRestore();
|
||||
|
||||
DrawGuiUtil::loadArrowBox(ui->pcbArrow);
|
||||
ui->pcbArrow->setCurrentIndex(prefArrowStyle());
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>496</width>
|
||||
<height>495</height>
|
||||
<width>440</width>
|
||||
<height>581</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
@@ -229,8 +229,12 @@ for ProjectionGroups</string>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>* this font is also used for dimensions
|
||||
Changes have no effect on existing dimensions.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Label Font</string>
|
||||
<string>Label Font*</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -326,6 +330,153 @@ for ProjectionGroups</string>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>85</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Conventions</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_6" columnstretch="1,0,1">
|
||||
<item row="0" column="1">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string>Projection Group Angle</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="cbProjAngle">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>184</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Use first- or third-angle multiview projection convention</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>ProjectionAngle</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>First</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Third</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Page</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_14">
|
||||
<property name="text">
|
||||
<string>Hidden Line Style</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="Gui::PrefComboBox" name="cbHiddenLineStyle">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Style for hidden lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>HiddenLine</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Continuous</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="Resources/TechDraw.qrc">
|
||||
<normaloff>:/icons/continuous-line.svg</normaloff>:/icons/continuous-line.svg</iconset>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Dashed</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="Resources/TechDraw.qrc">
|
||||
<normaloff>:/icons/dash-line.svg</normaloff>:/icons/dash-line.svg</iconset>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_Templates">
|
||||
<property name="sizePolicy">
|
||||
@@ -689,6 +840,11 @@ for ProjectionGroups</string>
|
||||
<extends>QCheckBox</extends>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>Gui::PrefComboBox</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>Gui::PrefLineEdit</class>
|
||||
<extends>QLineEdit</extends>
|
||||
@@ -705,6 +861,8 @@ for ProjectionGroups</string>
|
||||
<header>Gui/PrefWidgets.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<resources>
|
||||
<include location="Resources/TechDraw.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
||||
@@ -53,54 +53,59 @@ DlgPrefsTechDrawGeneralImp::~DlgPrefsTechDrawGeneralImp()
|
||||
|
||||
void DlgPrefsTechDrawGeneralImp::saveSettings()
|
||||
{
|
||||
ui->pfc_DefTemp->onSave();
|
||||
ui->pfc_DefDir->onSave();
|
||||
ui->pfc_HatchFile->onSave();
|
||||
ui->pfc_FilePattern->onSave();
|
||||
ui->pfc_LineGroup->onSave();
|
||||
ui->pfc_Welding->onSave();
|
||||
ui->le_NamePattern->onSave();
|
||||
|
||||
ui->pfb_LabelFont->onSave();
|
||||
ui->plsb_LabelSize->onSave();
|
||||
|
||||
ui->cb_Global->onSave();
|
||||
ui->cb_Override->onSave();
|
||||
ui->cb_PageUpdate->onSave();
|
||||
ui->cb_AutoDist->onSave();
|
||||
|
||||
ui->pfb_LabelFont->onSave();
|
||||
ui->plsb_LabelSize->onSave();
|
||||
|
||||
ui->cbProjAngle->onSave();
|
||||
ui->cbHiddenLineStyle->onSave();
|
||||
|
||||
ui->pfc_DefTemp->onSave();
|
||||
ui->pfc_DefDir->onSave();
|
||||
ui->pfc_HatchFile->onSave();
|
||||
ui->pfc_LineGroup->onSave();
|
||||
ui->pfc_Welding->onSave();
|
||||
ui->pfc_FilePattern->onSave();
|
||||
ui->le_NamePattern->onSave();
|
||||
}
|
||||
|
||||
void DlgPrefsTechDrawGeneralImp::loadSettings()
|
||||
{
|
||||
// double labelDefault = 8.0;
|
||||
double labelDefault = Preferences::labelFontSizeMM();
|
||||
ui->plsb_LabelSize->setValue(labelDefault);
|
||||
QFont prefFont(Preferences::labelFontQString());
|
||||
ui->pfb_LabelFont->setCurrentFont(prefFont);
|
||||
// ui->pfb_LabelFont->setCurrentText(Preferences::labelFontQString()); //only works in Qt5
|
||||
|
||||
ui->pfc_DefTemp->setFileName(Preferences::defaultTemplate());
|
||||
ui->pfc_DefDir->setFileName(Preferences::defaultTemplateDir());
|
||||
ui->pfc_HatchFile->setFileName(QString::fromStdString(DrawHatch::prefSvgHatch()));
|
||||
ui->pfc_FilePattern->setFileName(QString::fromStdString(DrawGeomHatch::prefGeomHatchFile()));
|
||||
ui->pfc_Welding->setFileName(PreferencesGui::weldingDirectory());
|
||||
ui->pfc_LineGroup->setFileName(QString::fromUtf8(Preferences::lineGroupFile().c_str()));
|
||||
|
||||
ui->pfc_DefTemp->onRestore();
|
||||
ui->pfc_DefDir->onRestore();
|
||||
ui->pfc_HatchFile->onRestore();
|
||||
ui->pfc_FilePattern->onRestore();
|
||||
ui->pfc_LineGroup->onRestore();
|
||||
ui->pfc_Welding->onRestore();
|
||||
ui->le_NamePattern->onRestore();
|
||||
|
||||
ui->pfb_LabelFont->onRestore();
|
||||
ui->plsb_LabelSize->onRestore();
|
||||
|
||||
ui->cb_Global->onRestore();
|
||||
ui->cb_Override->onRestore();
|
||||
ui->cb_PageUpdate->onRestore();
|
||||
ui->cb_AutoDist->onRestore();
|
||||
|
||||
double labelDefault = Preferences::labelFontSizeMM();
|
||||
ui->plsb_LabelSize->setValue(labelDefault);
|
||||
QFont prefFont(Preferences::labelFontQString());
|
||||
ui->pfb_LabelFont->setCurrentFont(prefFont);
|
||||
// ui->pfb_LabelFont->setCurrentText(Preferences::labelFontQString()); //only works in Qt5
|
||||
|
||||
ui->pfb_LabelFont->onRestore();
|
||||
ui->plsb_LabelSize->onRestore();
|
||||
|
||||
ui->cbProjAngle->onRestore();
|
||||
ui->cbHiddenLineStyle->onRestore();
|
||||
|
||||
ui->pfc_DefTemp->setFileName(Preferences::defaultTemplate());
|
||||
ui->pfc_DefDir->setFileName(Preferences::defaultTemplateDir());
|
||||
ui->pfc_HatchFile->setFileName(QString::fromStdString(DrawHatch::prefSvgHatch()));
|
||||
ui->pfc_LineGroup->setFileName(QString::fromUtf8(Preferences::lineGroupFile().c_str()));
|
||||
ui->pfc_Welding->setFileName(PreferencesGui::weldingDirectory());
|
||||
ui->pfc_FilePattern->setFileName(QString::fromStdString(DrawGeomHatch::prefGeomHatchFile()));
|
||||
|
||||
ui->pfc_DefTemp->onRestore();
|
||||
ui->pfc_DefDir->onRestore();
|
||||
ui->pfc_HatchFile->onRestore();
|
||||
ui->pfc_LineGroup->onRestore();
|
||||
ui->pfc_Welding->onRestore();
|
||||
ui->pfc_FilePattern->onRestore();
|
||||
ui->le_NamePattern->onRestore();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>441</width>
|
||||
<width>440</width>
|
||||
<height>307</height>
|
||||
</rect>
|
||||
</property>
|
||||
@@ -49,6 +49,41 @@
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_6">
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_17">
|
||||
<property name="text">
|
||||
<string>Visible</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="2">
|
||||
<widget class="Gui::PrefSpinBox" name="psbIsoCount">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>140</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Number of ISO lines per face edge</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight</set>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>IsoCount</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbSeamViz">
|
||||
<property name="sizePolicy">
|
||||
@@ -109,6 +144,88 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbPolygon">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Use an approximation to find hidden lines.
|
||||
Fast, but result is a collection of short straight lines.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Use Polygon Approximation</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>UsePolygon</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbSmoothHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden smooth edges</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Smooth Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SmoothHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbHardHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden hard and outline edges</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Hard Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>HardHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbHardViz">
|
||||
<property name="enabled">
|
||||
@@ -148,8 +265,8 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbPolygon">
|
||||
<item row="4" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbSeamHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
@@ -162,20 +279,71 @@
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Use an approximation to find hidden lines.
|
||||
Fast, but result is a collection of short straight lines.</string>
|
||||
<string>Show hidden seam lines</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Use Polygon Approximation</string>
|
||||
<string>Show Seam Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>UsePolygon</cstring>
|
||||
<cstring>SeamHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbIsoHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden equal parameterization lines</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show UV ISO Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>IsoHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QLabel" name="label_18">
|
||||
<property name="text">
|
||||
<string>Hidden</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="label_19">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>ISO Count</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbIsoViz">
|
||||
<property name="sizePolicy">
|
||||
@@ -203,173 +371,31 @@ Fast, but result is a collection of short straight lines.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbSmoothHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
<item row="1" column="3">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden smooth edges</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Smooth Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SmoothHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbSeamHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden seam lines</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Seam Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SeamHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbIsoHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden equal parameterization lines</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show UV ISO Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>IsoHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_17">
|
||||
<property name="text">
|
||||
<string>Visible</string>
|
||||
</property>
|
||||
</widget>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_18">
|
||||
<property name="text">
|
||||
<string>Hidden</string>
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="Gui::PrefCheckBox" name="pcbHardHid">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Show hidden hard and outline edges</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show Hard Lines</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>HardHid</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="label_19">
|
||||
<property name="minimumSize">
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>ISO Count</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="1">
|
||||
<widget class="Gui::PrefSpinBox" name="psbIsoCount">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>140</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Number of ISO lines per face edge</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight</set>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>IsoCount</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/HLR</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>440</width>
|
||||
<height>447</height>
|
||||
<height>342</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
@@ -220,164 +220,6 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_Selection">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Selection</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<item row="0" column="1">
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbMarkFuzz">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>174</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Selection area around center marks
|
||||
Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>5.000000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>MarkFuzz</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbEdgeFuzz">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>174</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Size of selection area around edges
|
||||
Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>EdgeFuzz</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/General</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Mark Fuzz</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Edge Fuzz</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_SizeAdj">
|
||||
<property name="sizePolicy">
|
||||
@@ -398,47 +240,14 @@ Each unit is approx. 0.1 mm wide</string>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<item row="2" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbToleranceScale">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>174</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Tolerance font size adjustment. Multiplier of dimension font size.</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>0.500000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>TolSizeAdjust</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/Dimensions</cstring>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Vertex Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="2">
|
||||
<item row="2" column="2">
|
||||
<widget class="Gui::PrefUnitSpinBox" name="pdsbTemplateMark">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
@@ -469,26 +278,18 @@ Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Vertex Scale</string>
|
||||
<string>Center Mark Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbCenterScale">
|
||||
<property name="sizePolicy">
|
||||
@@ -512,6 +313,9 @@ Each unit is approx. 0.1 mm wide</string>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>0.500000000000000</double>
|
||||
</property>
|
||||
@@ -523,6 +327,42 @@ Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string>Template Edit Mark</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbSymbolScale">
|
||||
<property name="toolTip">
|
||||
<string>Multiplier for size of welding symbols</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>1.250000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SymbolFactor</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/Decorations</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Welding Symbol Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbVertexScale">
|
||||
<property name="sizePolicy">
|
||||
@@ -557,74 +397,18 @@ Each unit is approx. 0.1 mm wide</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
<item row="1" column="1">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Center Mark Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="lbl_LabelFont">
|
||||
<property name="minimumSize">
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<italic>true</italic>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Tolerance Text Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string>Template Edit Mark</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Welding Symbol Scale</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="2">
|
||||
<widget class="Gui::PrefDoubleSpinBox" name="pdsbSymbolScale">
|
||||
<property name="toolTip">
|
||||
<string>Multiplier for size of welding symbols</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>1.250000000000000</double>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>SymbolFactor</cstring>
|
||||
</property>
|
||||
<property name="prefPath" stdset="0">
|
||||
<cstring>Mod/TechDraw/Decorations</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
|
||||
@@ -61,32 +61,24 @@ void DlgPrefsTechDrawScaleImp::onScaleTypeChanged(int index)
|
||||
|
||||
void DlgPrefsTechDrawScaleImp::saveSettings()
|
||||
{
|
||||
ui->pdsbToleranceScale->onSave();
|
||||
ui->pdsbTemplateMark->onSave();
|
||||
ui->pdsbVertexScale->onSave();
|
||||
ui->pdsbCenterScale->onSave();
|
||||
ui->pdsbPageScale->onSave();
|
||||
ui->cbViewScaleType->onSave();
|
||||
ui->pdsbViewScale->onSave();
|
||||
ui->pdsbEdgeFuzz->onSave();
|
||||
ui->pdsbMarkFuzz->onSave();
|
||||
ui->pdsbVertexScale->onSave();
|
||||
ui->pdsbCenterScale->onSave();
|
||||
ui->pdsbTemplateMark->onSave();
|
||||
ui->pdsbSymbolScale->onSave();
|
||||
}
|
||||
|
||||
void DlgPrefsTechDrawScaleImp::loadSettings()
|
||||
{
|
||||
double markDefault = 3.0;
|
||||
ui->pdsbTemplateMark->setValue(markDefault);
|
||||
ui->pdsbToleranceScale->onRestore();
|
||||
ui->pdsbTemplateMark->onRestore();
|
||||
ui->pdsbVertexScale->onRestore();
|
||||
ui->pdsbCenterScale->onRestore();
|
||||
ui->pdsbPageScale->onRestore();
|
||||
ui->cbViewScaleType->onRestore();
|
||||
ui->pdsbViewScale->onRestore();
|
||||
ui->pdsbEdgeFuzz->onRestore();
|
||||
ui->pdsbMarkFuzz->onRestore();
|
||||
ui->pdsbVertexScale->onRestore();
|
||||
ui->pdsbCenterScale->onRestore();
|
||||
double markDefault = 3.0;
|
||||
ui->pdsbTemplateMark->setValue(markDefault);
|
||||
ui->pdsbTemplateMark->onRestore();
|
||||
ui->pdsbSymbolScale->onRestore();
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
#include <QPrinter>
|
||||
#include <QPrintDialog>
|
||||
#include <QPrintPreviewDialog>
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost_bind_bind.hpp>
|
||||
|
||||
#endif // #ifndef _PreComp_
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#include "PreCompiled.h"
|
||||
|
||||
#ifndef _PreComp_
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
#include <boost/signals2/connection.hpp>
|
||||
#include <boost_bind_bind.hpp>
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#ifndef TECHDRAWGUI_VIEWPROVIDERVIEW_H
|
||||
#define TECHDRAWGUI_VIEWPROVIDERVIEW_H
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
#include <Gui/ViewProviderFeature.h>
|
||||
#include <Gui/ViewProviderDocumentObjectGroup.h>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
# include <QTimer>
|
||||
# include <QList>
|
||||
# include <QPointer>
|
||||
# include <boost/signals2.hpp>
|
||||
# include <boost_signals2.hpp>
|
||||
# include <boost/signals2/connection.hpp>
|
||||
# include <boost_bind_bind.hpp>
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <QPointer>
|
||||
#include <Gui/ViewProviderDocumentObject.h>
|
||||
|
||||
#include <boost/signals2.hpp>
|
||||
#include <boost_signals2.hpp>
|
||||
|
||||
namespace TechDraw{
|
||||
class DrawPage;
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
#ifndef FREECAD_ADJACENCY_LIST_HPP_WORKAROUND
|
||||
#define FREECAD_ADJACENCY_LIST_HPP_WORKAROUND
|
||||
|
||||
// Workaround for boost >= 1.75
|
||||
#define BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#undef BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
|
||||
#endif // #ifndef FREECAD_ADJACENCY_LIST_HPP_WORKAROUND
|
||||
@@ -0,0 +1,9 @@
|
||||
#ifndef FREECAD_REVERSE_GRAPH_HPP_WORKAROUND
|
||||
#define FREECAD_REVERSE_GRAPH_HPP_WORKAROUND
|
||||
|
||||
// Workaround for boost >= 1.75
|
||||
#define BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
#include <boost/graph/reverse_graph.hpp>
|
||||
#undef BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
|
||||
#endif // #ifndef FREECAD_REVERSE_GRAPH_HPP_WORKAROUND
|
||||
@@ -0,0 +1,9 @@
|
||||
#ifndef FREECAD_BOOST_PYTHON_HPP_WORKAROUND
|
||||
#define FREECAD_BOOST_PYTHON_HPP_WORKAROUND
|
||||
|
||||
// Workaround for boost >= 1.74
|
||||
#define BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
#include <boost/python.hpp>
|
||||
#undef BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
|
||||
#endif // #ifndef FREECAD_BOOST_PYTHON_HPP_WORKAROUND
|
||||
@@ -0,0 +1,9 @@
|
||||
#ifndef FREECAD_SIGNALS2_HPP_WORKAROUND
|
||||
#define FREECAD_SIGNALS2_HPP_WORKAROUND
|
||||
|
||||
// Workaround for boost >= 1.74
|
||||
#define BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
#include <boost/signals2.hpp>
|
||||
#undef BOOST_ALLOW_DEPRECATED_HEADERS
|
||||
|
||||
#endif // #ifndef FREECAD_SIGNALS2_HPP_WORKAROUND
|
||||
Reference in New Issue
Block a user