Merge branch 'master' into feature/expose-enumerations-to-python

This commit is contained in:
mlampert
2021-01-05 15:48:56 -08:00
committed by GitHub
79 changed files with 4575 additions and 219 deletions

View File

@@ -27,7 +27,7 @@ macro(PrintFinalReport)
message(STATUS "pybind11: not enabled")
endif(DEFINED pybind11_FOUND)
message(STATUS "Boost: ${Boost_VERSION}")
message(STATUS "Boost: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION} (${Boost_VERSION})")
message(STATUS "XercesC: [${XercesC_LIBRARIES}] [${XercesC_INCLUDE_DIRS}]")

View File

@@ -75,6 +75,7 @@ StdCmdRandomColor::StdCmdRandomColor()
sToolTipText = QT_TR_NOOP("Random color");
sWhatsThis = "Std_RandomColor";
sStatusTip = QT_TR_NOOP("Random color");
sPixmap = "Std_RandomColor";
}
void StdCmdRandomColor::activated(int iMsg)

View File

@@ -514,6 +514,33 @@ void StdCmdOnlineHelpWebsite::activated(int iMsg)
OpenURLInBrowser(url.c_str());
}
//===========================================================================
// Std_FreeCADDonation
//===========================================================================
DEF_STD_CMD(StdCmdFreeCADDonation)
StdCmdFreeCADDonation::StdCmdFreeCADDonation()
:Command("Std_FreeCADDonation")
{
sGroup = QT_TR_NOOP("Help");
sMenuText = QT_TR_NOOP("Donate");
sToolTipText = QT_TR_NOOP("Donate to FreeCAD development");
sWhatsThis = "Std_FreeCADDonation";
sStatusTip = sToolTipText;
sPixmap = "internet-web-browser";
eType = 0;
}
void StdCmdFreeCADDonation::activated(int iMsg)
{
Q_UNUSED(iMsg);
ParameterGrp::handle hURLGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Websites");
std::string url = hURLGrp->GetASCII("DonatePage", "https://wiki.freecadweb.org/Donate");
hURLGrp->SetASCII("DonatePage", url.c_str());
OpenURLInBrowser(url.c_str());
}
//===========================================================================
// Std_FreeCADWebsite
//===========================================================================
@@ -814,6 +841,7 @@ void CreateStdCommands(void)
rcCmdMgr.addCommand(new StdCmdOnlineHelp());
rcCmdMgr.addCommand(new StdCmdOnlineHelpWebsite());
rcCmdMgr.addCommand(new StdCmdFreeCADWebsite());
rcCmdMgr.addCommand(new StdCmdFreeCADDonation());
rcCmdMgr.addCommand(new StdCmdFreeCADUserHub());
rcCmdMgr.addCommand(new StdCmdFreeCADPowerUserHub());
rcCmdMgr.addCommand(new StdCmdFreeCADForum());

View File

@@ -563,6 +563,7 @@ StdCmdToggleClipPlane::StdCmdToggleClipPlane()
sToolTipText = QT_TR_NOOP("Toggles clipping plane for active view");
sWhatsThis = "Std_ToggleClipPlane";
sStatusTip = QT_TR_NOOP("Toggles clipping plane for active view");
sPixmap = "Std_ToggleClipPlane";
eType = Alter3DView;
}
@@ -862,6 +863,7 @@ StdCmdToggleVisibility::StdCmdToggleVisibility()
sToolTipText = QT_TR_NOOP("Toggles visibility");
sStatusTip = QT_TR_NOOP("Toggles visibility");
sWhatsThis = "Std_ToggleVisibility";
sPixmap = "Std_ToggleVisibility";
sAccel = "Space";
eType = Alter3DView;
}
@@ -938,6 +940,7 @@ StdCmdShowSelection::StdCmdShowSelection()
sToolTipText = QT_TR_NOOP("Show all selected objects");
sStatusTip = QT_TR_NOOP("Show all selected objects");
sWhatsThis = "Std_ShowSelection";
sPixmap = "Std_ShowSelection";
eType = Alter3DView;
}
@@ -965,6 +968,7 @@ StdCmdHideSelection::StdCmdHideSelection()
sToolTipText = QT_TR_NOOP("Hide all selected objects");
sStatusTip = QT_TR_NOOP("Hide all selected objects");
sWhatsThis = "Std_HideSelection";
sPixmap = "Std_HideSelection";
eType = Alter3DView;
}
@@ -992,6 +996,7 @@ StdCmdSelectVisibleObjects::StdCmdSelectVisibleObjects()
sToolTipText = QT_TR_NOOP("Select visible objects in the active document");
sStatusTip = QT_TR_NOOP("Select visible objects in the active document");
sWhatsThis = "Std_SelectVisibleObjects";
sPixmap = "Std_SelectVisibleObjects";
eType = Alter3DView;
}
@@ -1033,6 +1038,7 @@ StdCmdToggleObjects::StdCmdToggleObjects()
sToolTipText = QT_TR_NOOP("Toggles visibility of all objects in the active document");
sStatusTip = QT_TR_NOOP("Toggles visibility of all objects in the active document");
sWhatsThis = "Std_ToggleObjects";
sPixmap = "Std_ToggleObjects";
eType = Alter3DView;
}
@@ -1073,6 +1079,7 @@ StdCmdShowObjects::StdCmdShowObjects()
sToolTipText = QT_TR_NOOP("Show all objects in the document");
sStatusTip = QT_TR_NOOP("Show all objects in the document");
sWhatsThis = "Std_ShowObjects";
sPixmap = "Std_ShowObjects";
eType = Alter3DView;
}
@@ -1109,6 +1116,7 @@ StdCmdHideObjects::StdCmdHideObjects()
sToolTipText = QT_TR_NOOP("Hide all objects in the document");
sStatusTip = QT_TR_NOOP("Hide all objects in the document");
sWhatsThis = "Std_HideObjects";
sPixmap = "Std_HideObjects";
eType = Alter3DView;
}
@@ -1188,7 +1196,7 @@ StdCmdViewHome::StdCmdViewHome()
sToolTipText = QT_TR_NOOP("Set to default home view");
sWhatsThis = "Std_ViewHome";
sStatusTip = QT_TR_NOOP("Set to default home view");
//sPixmap = "view-home";
sPixmap = "Std_ViewHome";
sAccel = "Home";
eType = Alter3DView;
}
@@ -1384,6 +1392,7 @@ StdCmdViewDimetric::StdCmdViewDimetric()
sToolTipText= QT_TR_NOOP("Set to dimetric view");
sWhatsThis = "Std_ViewDimetric";
sStatusTip = QT_TR_NOOP("Set to dimetric view");
sPixmap = "Std_ViewDimetric";
eType = Alter3DView;
}
@@ -1406,6 +1415,7 @@ StdCmdViewTrimetric::StdCmdViewTrimetric()
sToolTipText= QT_TR_NOOP("Set to trimetric view");
sWhatsThis = "Std_ViewTrimetric";
sStatusTip = QT_TR_NOOP("Set to trimetric view");
sPixmap = "Std_ViewTrimetric";
eType = Alter3DView;
}
@@ -2025,6 +2035,7 @@ StdCmdToggleNavigation::StdCmdToggleNavigation()
sWhatsThis = "Std_ToggleNavigation";
//iAccel = Qt::SHIFT+Qt::Key_Space;
sAccel = "Esc";
sPixmap = "Std_ToggleNavigation";
eType = Alter3DView;
}
@@ -2072,6 +2083,7 @@ public:
sToolTipText = QT_TR_NOOP("Toggle axis cross");
sStatusTip = QT_TR_NOOP("Toggle axis cross");
sWhatsThis = "Std_AxisCross";
sPixmap = "Std_AxisCross";
}
~StdCmdAxisCross()
{
@@ -2431,7 +2443,7 @@ StdCmdViewIvIssueCamPos::StdCmdViewIvIssueCamPos()
sToolTipText = QT_TR_NOOP("Issue the camera position to the console and to a macro, to easily recall this position");
sWhatsThis = "Std_ViewIvIssueCamPos";
sStatusTip = QT_TR_NOOP("Issue the camera position to the console and to a macro, to easily recall this position");
sPixmap = "Std_Tool8";
sPixmap = "Std_ViewIvIssueCamPos";
eType = Alter3DView;
}
@@ -3099,6 +3111,7 @@ StdCmdTextureMapping::StdCmdTextureMapping()
sToolTipText = QT_TR_NOOP("Texture mapping");
sWhatsThis = "Std_TextureMapping";
sStatusTip = QT_TR_NOOP("Texture mapping");
sPixmap = "Std_TextureMapping";
eType = Alter3DView;
}

View File

@@ -477,8 +477,10 @@ void Document::_resetEdit(void)
// the editing object gets deleted inside the above call to
// 'finishEditing()', which will trigger our slotDeletedObject(), which
// nullifies _editViewProvider.
if (d->_editViewProvider && d->_editViewProvider->isDerivedFrom(ViewProviderDocumentObject::getClassTypeId()))
signalResetEdit(*(static_cast<ViewProviderDocumentObject*>(d->_editViewProvider)));
if (d->_editViewProvider && d->_editViewProvider->isDerivedFrom(ViewProviderDocumentObject::getClassTypeId())) {
auto vpd = static_cast<ViewProviderDocumentObject*>(d->_editViewProvider);
vpd->getDocument()->signalResetEdit(*vpd);
}
d->_editViewProvider = 0;
// The logic below is not necessary anymore, because this method is

View File

@@ -0,0 +1,231 @@
<?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="64"
height="64"
viewBox="0 0 64 64"
id="svg2"
version="1.1">
<title
id="title930">Std_AxisCross</title>
<defs
id="defs4">
<linearGradient
id="linearGradient926">
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="0"
id="stop922" />
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="1"
id="stop924" />
</linearGradient>
<linearGradient
id="linearGradient918">
<stop
style="stop-color:#8ae234;stop-opacity:1"
offset="0"
id="stop914" />
<stop
style="stop-color:#4e9a06;stop-opacity:1"
offset="1"
id="stop916" />
</linearGradient>
<linearGradient
id="linearGradient910">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop906" />
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="1"
id="stop908" />
</linearGradient>
<marker
orient="auto"
refY="0"
refX="0"
id="marker4732"
style="overflow:visible">
<path
id="path4734"
style="fill:#00ff00;fill-opacity:1;fill-rule:evenodd;stroke:#00ff08;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="Arrow2Lstart"
style="overflow:visible">
<path
id="path4174"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(1.1,0,0,1.1,1.1,0)" />
</marker>
<marker
orient="auto"
refY="0"
refX="0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path4156"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
transform="matrix(0.8,0,0,0.8,10,0)" />
</marker>
<linearGradient
id="linearGradient4067-6">
<stop
style="stop-color:#888a85;stop-opacity:1;"
offset="0"
id="stop4069-7" />
<stop
style="stop-color:#2e3436;stop-opacity:1;"
offset="1"
id="stop4071-5" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient910"
id="linearGradient912"
x1="16.275192"
y1="999.11859"
x2="20.275194"
y2="1005.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-0.32823259,0.25769489)" />
<linearGradient
xlink:href="#linearGradient918"
id="linearGradient920"
x1="37.791718"
y1="1008.163"
x2="41.744087"
y2="1014.2588"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(0,0.67970822)" />
<linearGradient
xlink:href="#linearGradient926"
id="linearGradient928"
x1="32.554726"
y1="1037.6899"
x2="38.136963"
y2="1044.7837"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(0,0.67970822)" />
</defs>
<metadata
id="metadata7">
<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_AxisCross</dc:title>
<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:date>2020/12/20</dc:date>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
transform="translate(0,-988.36216)">
<g
id="g4036-9-5"
transform="matrix(0.42333463,-1.0406928,1.2322046,0.04560555,-18.902112,1031.4247)"
style="fill:#73d216;fill-opacity:1;stroke:#172a04;stroke-width:1.753;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<g
id="g4033-8-3"
transform="matrix(0.70857077,0.64561924,-0.7760537,0.70710678,30.848953,1.7173836)"
style="fill:#73d216;fill-opacity:1;stroke:#172a04;stroke-width:1.75119;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<rect
style="fill:#73d216;fill-opacity:1;stroke:#172a04;stroke-width:1.75119;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect3261-1-56"
width="23"
height="6"
x="-25"
y="-38"
transform="scale(-1)" />
</g>
</g>
<path
style="fill:none;fill-opacity:1;stroke:#8ae234;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 17.758513,1025.996 23.516681,-15.1976"
id="path4083-0-29" />
<g
style="fill:#cc0000;fill-opacity:1;stroke:#280000;stroke-width:1.77168;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="matrix(-0.09950839,-1.2704661,0.99694669,-0.07808517,-7.0272263,1034.6728)"
id="g4033-8-5">
<rect
transform="matrix(-0.61568026,0.78799608,-0.61567913,-0.78799696,0,0)"
y="-22.253193"
x="11.761694"
height="4.9622731"
width="24.257404"
id="rect3261-1-6"
style="fill:#cc0000;fill-opacity:1;stroke:#280000;stroke-width:1.65466;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<path
style="fill:none;stroke:#ef2929;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 38.136962,1045.4634 17.397878,1027.7269"
id="path4083-0-2" />
<path
id="path872-8"
d="m 44,1049.0419 -8.562552,-14.5923 c -4.048591,1.9848 -5.937899,5.0071 -7.162254,8.3488 z"
style="fill:url(#linearGradient928);fill-opacity:1;stroke:#280000;stroke-width:2.50713;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:url(#linearGradient920);fill-opacity:1;stroke:#172a04;stroke-width:2.50713;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 52.025756,1005.4549 -16.544154,3.5417 c 0.611589,4.4672 2.886818,7.2108 5.674284,9.4235 z"
id="path872-8-1" />
<g
id="g4036-9"
transform="matrix(-0.64428531,-0.92040759,0.70710678,-1.0101525,0.936348,1060.8558)"
style="fill:#3465a4;fill-opacity:1;stroke:#0b1521;stroke-width:1.753;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<g
id="g4033-8"
transform="matrix(0.53748674,0.48973482,-0.7760537,0.70710678,30.821878,1.6927139)"
style="fill:#3465a4;fill-opacity:1;stroke:#0b1521;stroke-width:1.75119;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<rect
style="fill:#3465a4;fill-opacity:1;stroke:#0b1521;stroke-width:1.75119;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect3261-1"
width="23"
height="6"
x="-25"
y="-38"
transform="scale(-1)" />
</g>
</g>
<path
style="fill:none;stroke:#729fcf;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 16.157967,1027.8686 V 999.86865"
id="path4083-0" />
<path
style="fill:url(#linearGradient912);fill-opacity:1;stroke:#0b1521;stroke-width:2.50713;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 17.171767,991.6197 -5.5,16.0002 c 4.142481,1.7805 7.666483,1.2466 11,0 z"
id="path872" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.7 KiB

View File

@@ -0,0 +1,518 @@
<?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"
version="1.1"
id="svg3057"
height="64px"
width="64px">
<title
id="title861">Std_HideObjects</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient919">
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="0"
id="stop915" />
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="1"
id="stop917" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
id="stop3816"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop3818"
offset="1"
style="stop-color:#d3d7cf;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
id="stop3880"
offset="0"
style="stop-color:#000000;stop-opacity:0.58823532;" />
<stop
id="stop3882"
offset="1"
style="stop-color:#000000;stop-opacity:0.58823532;" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
id="stop3872"
offset="0"
style="stop-color:#000000;stop-opacity:0.19607843;" />
<stop
id="stop3874"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
id="stop3868"
offset="0"
style="stop-color:#000000;stop-opacity:0.19607843;" />
<stop
id="stop3862"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
id="stop3841"
offset="0"
style="stop-color:#01d6d6;stop-opacity:1;" />
<stop
id="stop3843"
offset="1"
style="stop-color:#01d6d6;stop-opacity:0;" />
</linearGradient>
<linearGradient
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)"
gradientUnits="userSpaceOnUse"
y2="64.894638"
x2="64.94799"
y1="0.43078607"
x1="0.1544303"
id="linearGradient3844-0"
xlink:href="#linearGradient3838-3" />
<linearGradient
id="linearGradient3838-3">
<stop
id="stop3840-1"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop3842-2"
offset="1"
style="stop-color:#dde0dd;stop-opacity:0.09302326" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient919"
id="linearGradient921"
x1="156.11201"
y1="112.10596"
x2="143.52336"
y2="85.579796"
gradientUnits="userSpaceOnUse" />
<linearGradient
y2="609.50507"
x2="302.85715"
y1="366.64789"
x1="302.85715"
gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)"
gradientUnits="userSpaceOnUse"
id="linearGradient5027"
xlink:href="#linearGradient5048" />
<linearGradient
id="linearGradient5048">
<stop
id="stop5050"
offset="0"
style="stop-color:black;stop-opacity:0;" />
<stop
style="stop-color:black;stop-opacity:1;"
offset="0.5"
id="stop5056" />
<stop
id="stop5052"
offset="1"
style="stop-color:black;stop-opacity:0;" />
</linearGradient>
<radialGradient
r="117.14286"
fy="486.64789"
fx="605.71429"
cy="486.64789"
cx="605.71429"
gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)"
gradientUnits="userSpaceOnUse"
id="radialGradient5029"
xlink:href="#linearGradient5060" />
<linearGradient
id="linearGradient5060">
<stop
id="stop5062"
offset="0"
style="stop-color:black;stop-opacity:1;" />
<stop
id="stop5064"
offset="1"
style="stop-color:black;stop-opacity:0;" />
</linearGradient>
<radialGradient
r="117.14286"
fy="486.64789"
fx="605.71429"
cy="486.64789"
cx="605.71429"
gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)"
gradientUnits="userSpaceOnUse"
id="radialGradient5031"
xlink:href="#linearGradient5060" />
<radialGradient
xlink:href="#linearGradient259"
id="radialGradient15658"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.960493,0,0,1.041132,7.9999997,5.9999995)"
cx="33.966679"
cy="35.736916"
fx="33.966679"
fy="35.736916"
r="86.70845" />
<linearGradient
id="linearGradient259">
<stop
id="stop260"
offset="0.0000000"
style="stop-color:#fafafa;stop-opacity:1.0000000;" />
<stop
id="stop261"
offset="1.0000000"
style="stop-color:#bbbbbb;stop-opacity:1.0000000;" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient269"
id="radialGradient15656"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.968273,0,0,1.032767,11.353553,6.6464465)"
cx="8.824419"
cy="3.7561285"
fx="8.824419"
fy="3.7561285"
r="37.751713" />
<linearGradient
id="linearGradient269">
<stop
id="stop270"
offset="0.0000000"
style="stop-color:#a3a3a3;stop-opacity:1.0000000;" />
<stop
id="stop271"
offset="1.0000000"
style="stop-color:#4c4c4c;stop-opacity:1.0000000;" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient15662"
id="radialGradient15668"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.968273,0,0,1.032767,11.353553,6.6464465)"
cx="8.1435566"
cy="7.2678967"
fx="8.1435566"
fy="7.2678967"
r="38.158695" />
<linearGradient
id="linearGradient15662">
<stop
id="stop15664"
offset="0.0000000"
style="stop-color:#ffffff;stop-opacity:1.0000000;" />
<stop
id="stop15666"
offset="1.0000000"
style="stop-color:#f8f8f8;stop-opacity:1.0000000;" />
</linearGradient>
<radialGradient
r="5.256"
fy="114.5684"
fx="20.892099"
cy="114.5684"
cx="20.892099"
gradientTransform="matrix(0.229703,0,0,0.229703,4.613529,3.979808)"
gradientUnits="userSpaceOnUse"
id="radialGradient2283"
xlink:href="#aigrd2" />
<radialGradient
id="aigrd2"
cx="20.892099"
cy="114.5684"
r="5.256"
fx="20.892099"
fy="114.5684"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
style="stop-color:#F0F0F0"
id="stop15566" />
<stop
offset="1.0000000"
style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
id="stop15568" />
</radialGradient>
<radialGradient
r="5.257"
fy="64.567902"
fx="20.892099"
cy="64.567902"
cx="20.892099"
gradientTransform="matrix(0.229703,0,0,0.229703,4.613529,3.979808)"
gradientUnits="userSpaceOnUse"
id="radialGradient2285"
xlink:href="#aigrd3" />
<radialGradient
id="aigrd3"
cx="20.892099"
cy="64.567902"
r="5.257"
fx="20.892099"
fy="64.567902"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
style="stop-color:#F0F0F0"
id="stop15573" />
<stop
offset="1.0000000"
style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
id="stop15575" />
</radialGradient>
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.56579776,1.5556263,-1.400577,0.53125337,102.03373,-38.341495)"
r="26.352777"
fy="24.73864"
fx="20.945665"
cy="24.73864"
cx="20.945665"
id="radialGradient3820-0"
xlink:href="#linearGradient3814" />
</defs>
<metadata
id="metadata3062">
<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_HideObjects</dc:title>
<dc:date>2020/12/25</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:subject>
<rdf:Bag>
<rdf:li>eye</rdf:li>
<rdf:li>box</rdf:li>
<rdf:li>page</rdf:li>
</rdf:Bag>
</dc:subject>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
id="g1188"
transform="matrix(1.3085841,0,0,1.3085841,-9.8885318,-9.0044046)">
<g
style="display:inline"
id="g5022"
transform="matrix(0.02165152,0,0,0.01485743,51.0076,48.68539)">
<rect
y="-150.69685"
x="-1559.2523"
height="478.35718"
width="1339.6335"
id="rect4173"
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#linearGradient5027);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<path
id="path5058"
d="m -219.61876,-150.68038 c 0,0 0,478.33079 0,478.33079 142.874166,0.90045 345.40022,-107.16966 345.40014,-239.196175 0,-132.026537 -159.436816,-239.134595 -345.40014,-239.134615 z"
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#radialGradient5029);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<path
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#radialGradient5031);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none"
d="m -1559.2523,-150.68038 c 0,0 0,478.33079 0,478.33079 -142.8742,0.90045 -345.4002,-107.16966 -345.4002,-239.196175 0,-132.026537 159.4368,-239.134595 345.4002,-239.134615 z"
id="path5018" />
</g>
<rect
ry="1.1490486"
y="9.6464453"
x="14.603553"
height="40.920494"
width="34.875"
id="rect15391"
style="color:#000000;display:block;overflow:visible;visibility:visible;fill:url(#radialGradient15658);fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient15656);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<rect
rx="0.14904857"
ry="0.14904857"
y="10.583945"
x="15.666054"
height="38.946384"
width="32.775887"
id="rect15660"
style="color:#000000;display:block;overflow:visible;visibility:visible;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient15668);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<g
style="display:inline"
id="g2270"
transform="translate(8.6464467,5.9620101)">
<g
transform="matrix(0.229703,0,0,0.229703,4.967081,4.244972)"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-miterlimit:4"
id="g1440">
<radialGradient
gradientUnits="userSpaceOnUse"
fy="114.5684"
fx="20.892099"
r="5.256"
cy="114.5684"
cx="20.892099"
id="radialGradient1442">
<stop
id="stop1444"
style="stop-color:#F0F0F0"
offset="0" />
<stop
id="stop1446"
style="stop-color:#474747"
offset="1" />
</radialGradient>
<path
id="path1448"
d="m 23.428,113.07 c 0,1.973 -1.6,3.572 -3.573,3.572 -1.974,0 -3.573,-1.6 -3.573,-3.572 0,-1.974 1.6,-3.573 3.573,-3.573 1.973,0 3.573,1.6 3.573,3.573 z"
style="stroke:none" />
<radialGradient
gradientUnits="userSpaceOnUse"
fy="64.567902"
fx="20.892099"
r="5.257"
cy="64.567902"
cx="20.892099"
id="radialGradient1450">
<stop
id="stop1452"
style="stop-color:#F0F0F0"
offset="0" />
<stop
id="stop1454"
style="stop-color:#474747"
offset="1" />
</radialGradient>
<path
id="path1456"
d="m 23.428,63.07 c 0,1.973 -1.6,3.573 -3.573,3.573 -1.974,0 -3.573,-1.6 -3.573,-3.573 0,-1.974 1.6,-3.573 3.573,-3.573 1.973,0 3.573,1.6 3.573,3.573 z"
style="stroke:none" />
</g>
<path
id="path15570"
d="m 9.9950109,29.952326 c 0,0.453204 -0.3675248,0.820499 -0.8207288,0.820499 -0.4534338,0 -0.8207289,-0.367524 -0.8207289,-0.820499 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z"
style="fill:url(#radialGradient2283);fill-rule:nonzero;stroke:none;stroke-miterlimit:4" />
<path
id="path15577"
d="m 9.9950109,18.467176 c 0,0.453204 -0.3675248,0.820729 -0.8207288,0.820729 -0.4534338,0 -0.8207289,-0.367525 -0.8207289,-0.820729 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z"
style="fill:url(#radialGradient2285);fill-rule:nonzero;stroke:none;stroke-miterlimit:4" />
</g>
<path
id="path15672"
d="M 19.505723,11.494276 V 49.400869"
style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.988553;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.0175438" />
<path
id="path15674"
d="M 20.5,11.020515 V 49.038228"
style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.204678" />
</g>
<g
transform="matrix(0.60952727,0,0,0.50029644,-49.907082,-1.6810936)"
id="g3060-2"
style="stroke-width:3.5;stroke-miterlimit:4;stroke-dasharray:none">
<path
style="fill:#204a87;stroke:none"
d="M 181.76846,74.564006 V 110.8957 l -17.89251,14.53268 v -36.3317 z"
id="path3150-7-8" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 163.87595,121.79521 17.89251,-14.53268"
id="path3930-1" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 178.78637,114.52887 V 78.197173"
id="path3932-0" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 181.76846,78.197173 -17.89251,14.53268"
id="path3934-2" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 166.85803,85.463513 V 121.79521"
id="path3936-5" />
<path
style="fill:url(#linearGradient921);fill-opacity:1;stroke:none;stroke-width:3.50043;stroke-miterlimit:4;stroke-dasharray:none"
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.532677 z"
id="path3152-1-3" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 160.89386,89.096683 V 121.79521"
id="path3938-2" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 140.01927,107.26253 23.85668,14.53268"
id="path3940-4" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 143.00136,110.8957 V 78.197173"
id="path3942-2" />
<path
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 181.76846,74.564003 V 110.8957 l -17.89251,14.53268 V 89.096683 Z"
id="path3150-5" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 163.87595,92.729853 140.01927,78.197173"
id="path3944-9" />
<path
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.53268 z"
id="path3152-9" />
<path
style="fill:#729fcf;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="m 181.76846,74.564003 -17.89251,14.53268 -23.85668,-14.53268 17.89251,-14.53268 23.85668,14.53268"
id="path3156-2" />
</g>
<g
id="g1211"
transform="matrix(0.68009161,0,0,0.68009161,-41.415906,6.1210315)">
<path
id="path3016-4"
d="m 65,15.948961 c 14.326599,27.813708 42.65526,28.27173 58,0.147085 -14.59152,-27.868192 -42.637019,-28.337211 -58,-0.147085 z"
style="fill:url(#radialGradient3820-0);fill-opacity:1;stroke:#2e3436;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path3016-7-2"
d="M 67.000001,15.953823 C 80.338557,41.118611 106.71352,41.533012 121,16.086902 107.41479,-9.1271781 81.303465,-9.5515298 67.000001,15.953823 Z"
style="fill:none;stroke:#888a85;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#2e3436;stroke-width:8;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 79,4 28,25"
id="path906" />
<path
id="path906-6"
d="m 79,4 28,25"
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,209 @@
<?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="svg3057"
version="1.1">
<title
id="title861">Std_HideSelection</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient3862">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop3864" />
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="1"
id="stop3866" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3816" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1"
offset="1"
id="stop3818" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="0"
id="stop3880" />
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="1"
id="stop3882" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3872" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3874" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3868" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3862" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
style="stop-color:#01d6d6;stop-opacity:1;"
offset="0"
id="stop3841" />
<stop
style="stop-color:#01d6d6;stop-opacity:0;"
offset="1"
id="stop3843" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3838-3"
id="linearGradient3844-0"
x1="0.1544303"
y1="0.43078607"
x2="64.94799"
y2="64.894638"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)" />
<linearGradient
id="linearGradient3838-3">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3840-1" />
<stop
style="stop-color:#dde0dd;stop-opacity:0.09302326"
offset="1"
id="stop3842-2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3814"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352778"
gradientTransform="matrix(0.56579776,1.5556263,-1.400577,0.53125337,40.033725,-30.341495)"
gradientUnits="userSpaceOnUse" />
<radialGradient
xlink:href="#linearGradient3862"
id="radialGradient3868"
cx="44.616356"
cy="44.709038"
fx="44.616356"
fy="44.709038"
r="16.079005"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0572796,-0.99508664,0.9062161,0.96285465,-49.688012,40.348834)" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="18"
x2="31"
y1="51"
x1="35"
id="linearGradient3771"
xlink:href="#linearGradient3765"
gradientTransform="matrix(0.5518208,0,0,0.55482649,4.4577306,27.600091)" />
<linearGradient
id="linearGradient3765">
<stop
id="stop3767"
offset="0"
style="stop-color:#555753;stop-opacity:1" />
<stop
id="stop3769"
offset="1"
style="stop-color:#888a85;stop-opacity:1" />
</linearGradient>
</defs>
<metadata
id="metadata3062">
<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_HideSelection</dc:title>
<dc:date>2020/12/25</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:subject>
<rdf:Bag>
<rdf:li>eye</rdf:li>
<rdf:li>arrow</rdf:li>
</rdf:Bag>
</dc:subject>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<path
id="path3016"
d="M 3.0000003,23.948961 C 17.326599,51.762669 45.655264,52.220691 61.000004,24.096046 46.408481,-3.7721464 18.362981,-4.2411648 3.0000003,23.948961 Z"
style="fill:url(#radialGradient3820);fill-opacity:1;stroke:#2e3436;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path3016-7"
d="M 5.0000005,23.953823 C 18.338557,49.118611 44.713521,49.533012 59.000001,24.086902 45.41479,-1.1271781 19.303465,-1.5515298 5.0000005,23.953823 Z"
style="fill:none;stroke:#888a85;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#2e3436;stroke-width:8;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 17,12 45,37"
id="path906" />
<path
id="path906-6"
d="M 17,12 45,37"
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<g
transform="matrix(1.162122,0,0,1.1558264,-6.7132409,-7.586234)"
id="g887">
<path
id="path3761"
d="m 8.320476,54.786589 4.414566,4.438612 11.036417,-11.09653 3.310925,6.657918 8.829133,-23.302713 -23.176475,8.877224 6.621851,3.328959 z"
style="fill:url(#linearGradient3771);fill-opacity:1;stroke:#2e3436;stroke-width:1.76123;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path3763"
d="M 9.8756073,54.786589 21.213017,43.336988 15.494147,40.512417 34.005227,33.40055 26.931887,52.012457 24.122618,46.262437 12.735042,57.661599 Z"
style="fill:none;stroke:#888a85;stroke-width:1.32092;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

@@ -0,0 +1,299 @@
<?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="64"
height="64"
id="svg1307"
version="1.1">
<title
id="title953">Std_RandomColor</title>
<defs
id="defs1309">
<linearGradient
id="linearGradient951">
<stop
id="stop947"
offset="0"
style="stop-color:#4e9a06;stop-opacity:1" />
<stop
id="stop949"
offset="1"
style="stop-color:#8ae234;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient945">
<stop
id="stop941"
offset="0"
style="stop-color:#ce5c00;stop-opacity:1" />
<stop
id="stop943"
offset="1"
style="stop-color:#fcaf3e;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3851">
<stop
style="stop-color:#5c3566;stop-opacity:1"
offset="0"
id="stop3853" />
<stop
style="stop-color:#ad7fa8;stop-opacity:1"
offset="1"
id="stop3855" />
</linearGradient>
<linearGradient
id="linearGradient2684">
<stop
id="stop2686"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop2688"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient2584">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop2586" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop2588" />
</linearGradient>
<linearGradient
id="linearGradient5075">
<stop
style="stop-color:#adb0a8;stop-opacity:1;"
offset="0"
id="stop5077" />
<stop
style="stop-color:#464744;stop-opacity:1"
offset="1"
id="stop5079" />
</linearGradient>
<linearGradient
id="linearGradient3340">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3342" />
<stop
style="stop-color:#ffffff;stop-opacity:0.62886596;"
offset="1"
id="stop3344" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient5075"
id="linearGradient2306"
gradientUnits="userSpaceOnUse"
x1="71.288956"
y1="124.11652"
x2="70.826942"
y2="95"
gradientTransform="translate(-105.00042,-71.09425)" />
<linearGradient
xlink:href="#linearGradient2684"
id="linearGradient2690"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.128181,0,0,1.128181,-113.99314,-83.36009)"
x1="70.913956"
y1="101.74152"
x2="70.951942"
y2="88.923729" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="12.5"
x2="6.75"
y1="0.5"
x1="6.75"
id="linearGradient7035"
xlink:href="#linearGradient7029" />
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1,0,0,1.0057859,0,-2.4948735)"
r="9.3095722"
fy="431.19708"
fx="466.73566"
cy="431.19708"
cx="466.73566"
id="radialGradient6052"
xlink:href="#linearGradient17794" />
<linearGradient
y2="424.95065"
x2="461.39169"
y1="436.79602"
x1="472.42236"
gradientUnits="userSpaceOnUse"
id="linearGradient2438"
xlink:href="#linearGradient17794" />
<linearGradient
y2="424.95065"
x2="461.39169"
y1="436.79602"
x1="472.42236"
gradientUnits="userSpaceOnUse"
id="linearGradient24732"
xlink:href="#linearGradient17794" />
<linearGradient
id="linearGradient17794">
<stop
id="stop17798"
offset="0"
style="stop-color:#f18383;stop-opacity:1;" />
<stop
style="stop-color:#ed6767;stop-opacity:1;"
offset="0.3807947"
id="stop8006" />
<stop
id="stop17796"
offset="1"
style="stop-color:#e62323;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient7029">
<stop
id="stop7031"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop7033"
offset="1"
style="stop-color:#ffffff;stop-opacity:0;" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient945"
id="linearGradient3857"
x1="35.599998"
y1="60.799999"
x2="27.200001"
y2="27.199999"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83333333,0,0,0.83333332,17.035644,-8.666666)" />
<linearGradient
gradientTransform="matrix(0.83333333,0,0,0.83333332,-6.6522187,-8.7504872)"
gradientUnits="userSpaceOnUse"
y2="27.199999"
x2="27.200001"
y1="60.799999"
x1="35.599998"
id="linearGradient3857-0"
xlink:href="#linearGradient951" />
<linearGradient
xlink:href="#linearGradient3851"
id="linearGradient3857-0-8"
x1="35.599998"
y1="60.799999"
x2="27.200001"
y2="27.199999"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83333333,0,0,0.83333332,5.3496667,-32.545057)" />
</defs>
<metadata
id="metadata1312">
<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_RandomColor</dc:title>
<dc:creator>
<cc:Agent>
<dc:title>bitacovir</dc:title>
</cc:Agent>
</dc:creator>
<cc:license
rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
<dc:subject>
<rdf:Bag />
</dc:subject>
<dc:contributor>
<cc:Agent>
<dc:title />
</cc:Agent>
</dc:contributor>
<dc:date>2020/12/15</dc:date>
<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:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
</cc:Work>
<cc:License
rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
<cc:permits
rdf:resource="http://web.resource.org/cc/Reproduction" />
<cc:permits
rdf:resource="http://web.resource.org/cc/Distribution" />
<cc:requires
rdf:resource="http://web.resource.org/cc/Notice" />
<cc:requires
rdf:resource="http://web.resource.org/cc/Attribution" />
<cc:permits
rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
<cc:requires
rdf:resource="http://web.resource.org/cc/ShareAlike" />
</cc:License>
</rdf:RDF>
</metadata>
<g
id="layer4"
style="display:inline"
transform="translate(0,16)" />
<g
id="layer1"
style="display:inline"
transform="translate(0,16)">
<circle
style="fill:#ef2929;fill-opacity:1;stroke:#321900;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:6;stroke-opacity:1"
id="path3831"
cx="43.702312"
cy="28"
r="17" />
<circle
style="display:inline;fill:url(#linearGradient3857);fill-opacity:1;stroke:#fcaf3e;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:6;stroke-opacity:1"
id="path3831-6"
cx="43.702312"
cy="28"
r="15" />
<circle
r="17"
cy="27.916178"
cx="20.01445"
id="path3831-7"
style="display:inline;fill:#ef2929;fill-opacity:1;stroke:#172a04;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:6;stroke-opacity:1" />
<circle
r="15"
cy="27.916178"
cx="20.01445"
id="path3831-6-9"
style="display:inline;fill:url(#linearGradient3857-0);fill-opacity:1;stroke:#8ae234;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:6;stroke-opacity:1" />
<circle
style="display:inline;fill:#ef2929;fill-opacity:1;stroke:#171018;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:6;stroke-opacity:1"
id="path3831-7-5"
cx="32.016338"
cy="4.1216102"
r="17" />
<circle
style="display:inline;fill:url(#linearGradient3857-0-8);fill-opacity:1;stroke:#ad7fa8;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:6;stroke-opacity:1"
id="path3831-6-9-0"
cx="32.016338"
cy="4.1216102"
r="15" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

@@ -0,0 +1,304 @@
<?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"
version="1.1"
id="svg3057"
height="64px"
width="64px">
<title
id="title861">Std_SelectVisibleObjects</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient919">
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="0"
id="stop915" />
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="1"
id="stop917" />
</linearGradient>
<linearGradient
id="linearGradient3862">
<stop
id="stop3864"
offset="0"
style="stop-color:#729fcf;stop-opacity:1" />
<stop
id="stop3866"
offset="1"
style="stop-color:#204a87;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
id="stop3816"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop3818"
offset="1"
style="stop-color:#d3d7cf;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
id="stop3880"
offset="0"
style="stop-color:#000000;stop-opacity:0.58823532;" />
<stop
id="stop3882"
offset="1"
style="stop-color:#000000;stop-opacity:0.58823532;" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
id="stop3872"
offset="0"
style="stop-color:#000000;stop-opacity:0.19607843;" />
<stop
id="stop3874"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
id="stop3868"
offset="0"
style="stop-color:#000000;stop-opacity:0.19607843;" />
<stop
id="stop3862"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
id="stop3841"
offset="0"
style="stop-color:#01d6d6;stop-opacity:1;" />
<stop
id="stop3843"
offset="1"
style="stop-color:#01d6d6;stop-opacity:0;" />
</linearGradient>
<linearGradient
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)"
gradientUnits="userSpaceOnUse"
y2="64.894638"
x2="64.94799"
y1="0.43078607"
x1="0.1544303"
id="linearGradient3844-0"
xlink:href="#linearGradient3838-3" />
<linearGradient
id="linearGradient3838-3">
<stop
id="stop3840-1"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop3842-2"
offset="1"
style="stop-color:#dde0dd;stop-opacity:0.09302326" />
</linearGradient>
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.56579776,1.5556263,-1.400577,0.53125337,40.033725,-22.341495)"
r="26.352778"
fy="24.73864"
fx="20.945665"
cy="24.73864"
cx="20.945665"
id="radialGradient3820"
xlink:href="#linearGradient3814" />
<radialGradient
gradientTransform="matrix(1.0572796,-0.99508664,0.9062161,0.96285465,-49.688012,40.348834)"
gradientUnits="userSpaceOnUse"
r="16.079005"
fy="44.709038"
fx="44.616356"
cy="44.709038"
cx="44.616356"
id="radialGradient3868"
xlink:href="#linearGradient3862" />
<linearGradient
gradientTransform="matrix(0.5518208,0,0,0.55482649,4.4577306,27.600091)"
xlink:href="#linearGradient3765"
id="linearGradient3771"
x1="35"
y1="51"
x2="31"
y2="18"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient3765">
<stop
style="stop-color:#555753;stop-opacity:1"
offset="0"
id="stop3767" />
<stop
style="stop-color:#888a85;stop-opacity:1"
offset="1"
id="stop3769" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient919"
id="linearGradient921"
x1="156.11201"
y1="112.10596"
x2="143.52336"
y2="85.579796"
gradientUnits="userSpaceOnUse" />
</defs>
<metadata
id="metadata3062">
<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_SelectVisibleObjects</dc:title>
<dc:date>2020/12/25</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:subject>
<rdf:Bag>
<rdf:li>eye</rdf:li>
<rdf:li>arrow</rdf:li>
</rdf:Bag>
</dc:subject>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
id="g929"
transform="translate(0.56099874,0.30599931)">
<g
style="stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="g902"
transform="matrix(0.65904671,0,0,0.65904671,0.63701529,-4.5904668)">
<path
style="fill:url(#radialGradient3820);fill-opacity:1;stroke:#2e3436;stroke-width:3.03469;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 3.0000003,31.948961 C 17.326599,59.762669 45.655264,60.220691 61.000004,32.096046 46.408481,4.2278536 18.362981,3.7588352 3.0000003,31.948961 Z"
id="path3016" />
<circle
style="fill:url(#radialGradient3868);fill-opacity:1;fill-rule:evenodd;stroke:#204a87;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="path3808"
cx="32"
cy="32"
r="15" />
<circle
style="fill:#2e3436;fill-opacity:1;fill-rule:evenodd;stroke:#2e3436;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="path3810"
cx="32"
cy="32"
r="7" />
<path
style="fill:none;stroke:#888a85;stroke-width:3.03469;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 5.0000005,31.953823 C 18.338557,57.118611 44.713521,57.533012 59.000001,32.086902 45.41479,6.8728219 19.303465,6.4484702 5.0000005,31.953823 Z"
id="path3016-7" />
<circle
style="fill:none;stroke:#729fcf;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="path3808-0"
cx="32"
cy="32"
r="13" />
</g>
</g>
<g
transform="matrix(0.60952727,0,0,0.50029644,-49.907082,-1.6810936)"
id="g3060-2"
style="stroke-width:3.5;stroke-miterlimit:4;stroke-dasharray:none">
<path
style="fill:#204a87;stroke:none"
d="M 181.76846,74.564006 V 110.8957 l -17.89251,14.53268 v -36.3317 z"
id="path3150-7-8" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 163.87595,121.79521 17.89251,-14.53268"
id="path3930-1" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 178.78637,114.52887 V 78.197173"
id="path3932-0" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 181.76846,78.197173 -17.89251,14.53268"
id="path3934-2" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 166.85803,85.463513 V 121.79521"
id="path3936-5" />
<path
style="fill:url(#linearGradient921);fill-opacity:1;stroke:none;stroke-width:3.50043;stroke-miterlimit:4;stroke-dasharray:none"
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.532677 z"
id="path3152-1-3" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 160.89386,89.096683 V 121.79521"
id="path3938-2" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 140.01927,107.26253 23.85668,14.53268"
id="path3940-4" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 143.00136,110.8957 V 78.197173"
id="path3942-2" />
<path
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 181.76846,74.564003 V 110.8957 l -17.89251,14.53268 V 89.096683 Z"
id="path3150-5" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 163.87595,92.729853 140.01927,78.197173"
id="path3944-9" />
<path
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.53268 z"
id="path3152-9" />
<path
style="fill:#729fcf;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="m 181.76846,74.564003 -17.89251,14.53268 -23.85668,-14.53268 17.89251,-14.53268 23.85668,14.53268"
id="path3156-2" />
</g>
<g
id="g887"
transform="matrix(1.0662904,0,0,1.060514,-4.7762666,-1.8574072)">
<path
style="fill:url(#linearGradient3771);fill-opacity:1;stroke:#2e3436;stroke-width:1.76123;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8.320476,54.786589 4.414566,4.438612 11.036417,-11.09653 3.310925,6.657918 8.829133,-23.302713 -23.176475,8.877224 6.621851,3.328959 z"
id="path3761" />
<path
style="fill:none;stroke:#888a85;stroke-width:1.32092;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 9.8756073,54.786589 21.213017,43.336988 15.494147,40.512417 34.005227,33.40055 26.931887,52.012457 24.122618,46.262437 12.735042,57.661599 Z"
id="path3763" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -0,0 +1,554 @@
<?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"
version="1.1"
id="svg3057"
height="64px"
width="64px">
<title
id="title861">Std_ShowObjects</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient919">
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="0"
id="stop915" />
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="1"
id="stop917" />
</linearGradient>
<linearGradient
id="linearGradient3862">
<stop
id="stop3864"
offset="0"
style="stop-color:#729fcf;stop-opacity:1" />
<stop
id="stop3866"
offset="1"
style="stop-color:#204a87;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
id="stop3816"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop3818"
offset="1"
style="stop-color:#d3d7cf;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
id="stop3880"
offset="0"
style="stop-color:#000000;stop-opacity:0.58823532;" />
<stop
id="stop3882"
offset="1"
style="stop-color:#000000;stop-opacity:0.58823532;" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
id="stop3872"
offset="0"
style="stop-color:#000000;stop-opacity:0.19607843;" />
<stop
id="stop3874"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
id="stop3868"
offset="0"
style="stop-color:#000000;stop-opacity:0.19607843;" />
<stop
id="stop3862"
offset="1"
style="stop-color:#000000;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
id="stop3841"
offset="0"
style="stop-color:#01d6d6;stop-opacity:1;" />
<stop
id="stop3843"
offset="1"
style="stop-color:#01d6d6;stop-opacity:0;" />
</linearGradient>
<linearGradient
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)"
gradientUnits="userSpaceOnUse"
y2="64.894638"
x2="64.94799"
y1="0.43078607"
x1="0.1544303"
id="linearGradient3844-0"
xlink:href="#linearGradient3838-3" />
<linearGradient
id="linearGradient3838-3">
<stop
id="stop3840-1"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop3842-2"
offset="1"
style="stop-color:#dde0dd;stop-opacity:0.09302326" />
</linearGradient>
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.56579776,1.5556263,-1.400577,0.53125337,40.033725,-22.341495)"
r="26.352778"
fy="24.73864"
fx="20.945665"
cy="24.73864"
cx="20.945665"
id="radialGradient3820"
xlink:href="#linearGradient3814" />
<radialGradient
gradientTransform="matrix(1.0572796,-0.99508664,0.9062161,0.96285465,-49.688012,40.348834)"
gradientUnits="userSpaceOnUse"
r="16.079005"
fy="44.709038"
fx="44.616356"
cy="44.709038"
cx="44.616356"
id="radialGradient3868"
xlink:href="#linearGradient3862" />
<linearGradient
xlink:href="#linearGradient919"
id="linearGradient921"
x1="156.11201"
y1="112.10596"
x2="143.52336"
y2="85.579796"
gradientUnits="userSpaceOnUse" />
<linearGradient
y2="609.50507"
x2="302.85715"
y1="366.64789"
x1="302.85715"
gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)"
gradientUnits="userSpaceOnUse"
id="linearGradient5027"
xlink:href="#linearGradient5048" />
<linearGradient
id="linearGradient5048">
<stop
id="stop5050"
offset="0"
style="stop-color:black;stop-opacity:0;" />
<stop
style="stop-color:black;stop-opacity:1;"
offset="0.5"
id="stop5056" />
<stop
id="stop5052"
offset="1"
style="stop-color:black;stop-opacity:0;" />
</linearGradient>
<radialGradient
r="117.14286"
fy="486.64789"
fx="605.71429"
cy="486.64789"
cx="605.71429"
gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)"
gradientUnits="userSpaceOnUse"
id="radialGradient5029"
xlink:href="#linearGradient5060" />
<linearGradient
id="linearGradient5060">
<stop
id="stop5062"
offset="0"
style="stop-color:black;stop-opacity:1;" />
<stop
id="stop5064"
offset="1"
style="stop-color:black;stop-opacity:0;" />
</linearGradient>
<radialGradient
r="117.14286"
fy="486.64789"
fx="605.71429"
cy="486.64789"
cx="605.71429"
gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)"
gradientUnits="userSpaceOnUse"
id="radialGradient5031"
xlink:href="#linearGradient5060" />
<radialGradient
xlink:href="#linearGradient259"
id="radialGradient15658"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.960493,0,0,1.041132,7.9999997,5.9999995)"
cx="33.966679"
cy="35.736916"
fx="33.966679"
fy="35.736916"
r="86.70845" />
<linearGradient
id="linearGradient259">
<stop
id="stop260"
offset="0.0000000"
style="stop-color:#fafafa;stop-opacity:1.0000000;" />
<stop
id="stop261"
offset="1.0000000"
style="stop-color:#bbbbbb;stop-opacity:1.0000000;" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient269"
id="radialGradient15656"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.968273,0,0,1.032767,11.353553,6.6464465)"
cx="8.824419"
cy="3.7561285"
fx="8.824419"
fy="3.7561285"
r="37.751713" />
<linearGradient
id="linearGradient269">
<stop
id="stop270"
offset="0.0000000"
style="stop-color:#a3a3a3;stop-opacity:1.0000000;" />
<stop
id="stop271"
offset="1.0000000"
style="stop-color:#4c4c4c;stop-opacity:1.0000000;" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient15662"
id="radialGradient15668"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.968273,0,0,1.032767,11.353553,6.6464465)"
cx="8.1435566"
cy="7.2678967"
fx="8.1435566"
fy="7.2678967"
r="38.158695" />
<linearGradient
id="linearGradient15662">
<stop
id="stop15664"
offset="0.0000000"
style="stop-color:#ffffff;stop-opacity:1.0000000;" />
<stop
id="stop15666"
offset="1.0000000"
style="stop-color:#f8f8f8;stop-opacity:1.0000000;" />
</linearGradient>
<radialGradient
r="5.256"
fy="114.5684"
fx="20.892099"
cy="114.5684"
cx="20.892099"
gradientTransform="matrix(0.229703,0,0,0.229703,4.613529,3.979808)"
gradientUnits="userSpaceOnUse"
id="radialGradient2283"
xlink:href="#aigrd2" />
<radialGradient
id="aigrd2"
cx="20.892099"
cy="114.5684"
r="5.256"
fx="20.892099"
fy="114.5684"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
style="stop-color:#F0F0F0"
id="stop15566" />
<stop
offset="1.0000000"
style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
id="stop15568" />
</radialGradient>
<radialGradient
r="5.257"
fy="64.567902"
fx="20.892099"
cy="64.567902"
cx="20.892099"
gradientTransform="matrix(0.229703,0,0,0.229703,4.613529,3.979808)"
gradientUnits="userSpaceOnUse"
id="radialGradient2285"
xlink:href="#aigrd3" />
<radialGradient
id="aigrd3"
cx="20.892099"
cy="64.567902"
r="5.257"
fx="20.892099"
fy="64.567902"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
style="stop-color:#F0F0F0"
id="stop15573" />
<stop
offset="1.0000000"
style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
id="stop15575" />
</radialGradient>
</defs>
<metadata
id="metadata3062">
<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_ShowObjects</dc:title>
<dc:date>2020/12/25</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:subject>
<rdf:Bag>
<rdf:li>eye</rdf:li>
<rdf:li>cube</rdf:li>
<rdf:li>page</rdf:li>
</rdf:Bag>
</dc:subject>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
id="g1188"
transform="matrix(1.3085841,0,0,1.3085841,-9.8885318,-9.0044046)">
<g
style="display:inline"
id="g5022"
transform="matrix(0.02165152,0,0,0.01485743,51.0076,48.68539)">
<rect
y="-150.69685"
x="-1559.2523"
height="478.35718"
width="1339.6335"
id="rect4173"
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#linearGradient5027);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<path
id="path5058"
d="m -219.61876,-150.68038 c 0,0 0,478.33079 0,478.33079 142.874166,0.90045 345.40022,-107.16966 345.40014,-239.196175 0,-132.026537 -159.436816,-239.134595 -345.40014,-239.134615 z"
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#radialGradient5029);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<path
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#radialGradient5031);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none"
d="m -1559.2523,-150.68038 c 0,0 0,478.33079 0,478.33079 -142.8742,0.90045 -345.4002,-107.16966 -345.4002,-239.196175 0,-132.026537 159.4368,-239.134595 345.4002,-239.134615 z"
id="path5018" />
</g>
<rect
ry="1.1490486"
y="9.6464453"
x="14.603553"
height="40.920494"
width="34.875"
id="rect15391"
style="color:#000000;display:block;overflow:visible;visibility:visible;fill:url(#radialGradient15658);fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient15656);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<rect
rx="0.14904857"
ry="0.14904857"
y="10.583945"
x="15.666054"
height="38.946384"
width="32.775887"
id="rect15660"
style="color:#000000;display:block;overflow:visible;visibility:visible;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient15668);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
<g
style="display:inline"
id="g2270"
transform="translate(8.6464467,5.9620101)">
<g
transform="matrix(0.229703,0,0,0.229703,4.967081,4.244972)"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-miterlimit:4"
id="g1440">
<radialGradient
gradientUnits="userSpaceOnUse"
fy="114.5684"
fx="20.892099"
r="5.256"
cy="114.5684"
cx="20.892099"
id="radialGradient1442">
<stop
id="stop1444"
style="stop-color:#F0F0F0"
offset="0" />
<stop
id="stop1446"
style="stop-color:#474747"
offset="1" />
</radialGradient>
<path
id="path1448"
d="m 23.428,113.07 c 0,1.973 -1.6,3.572 -3.573,3.572 -1.974,0 -3.573,-1.6 -3.573,-3.572 0,-1.974 1.6,-3.573 3.573,-3.573 1.973,0 3.573,1.6 3.573,3.573 z"
style="stroke:none" />
<radialGradient
gradientUnits="userSpaceOnUse"
fy="64.567902"
fx="20.892099"
r="5.257"
cy="64.567902"
cx="20.892099"
id="radialGradient1450">
<stop
id="stop1452"
style="stop-color:#F0F0F0"
offset="0" />
<stop
id="stop1454"
style="stop-color:#474747"
offset="1" />
</radialGradient>
<path
id="path1456"
d="m 23.428,63.07 c 0,1.973 -1.6,3.573 -3.573,3.573 -1.974,0 -3.573,-1.6 -3.573,-3.573 0,-1.974 1.6,-3.573 3.573,-3.573 1.973,0 3.573,1.6 3.573,3.573 z"
style="stroke:none" />
</g>
<path
id="path15570"
d="m 9.9950109,29.952326 c 0,0.453204 -0.3675248,0.820499 -0.8207288,0.820499 -0.4534338,0 -0.8207289,-0.367524 -0.8207289,-0.820499 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z"
style="fill:url(#radialGradient2283);fill-rule:nonzero;stroke:none;stroke-miterlimit:4" />
<path
id="path15577"
d="m 9.9950109,18.467176 c 0,0.453204 -0.3675248,0.820729 -0.8207288,0.820729 -0.4534338,0 -0.8207289,-0.367525 -0.8207289,-0.820729 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z"
style="fill:url(#radialGradient2285);fill-rule:nonzero;stroke:none;stroke-miterlimit:4" />
</g>
<path
id="path15672"
d="M 19.505723,11.494276 V 49.400869"
style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.988553;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.0175438" />
<path
id="path15674"
d="M 20.5,11.020515 V 49.038228"
style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.204678" />
</g>
<g
id="g929"
transform="translate(0.56099874,0.30599931)">
<g
style="stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="g902"
transform="matrix(0.65904671,0,0,0.65904671,0.63701529,-4.5904668)">
<path
style="fill:url(#radialGradient3820);fill-opacity:1;stroke:#2e3436;stroke-width:3.03469;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 3.0000003,31.948961 C 17.326599,59.762669 45.655264,60.220691 61.000004,32.096046 46.408481,4.2278536 18.362981,3.7588352 3.0000003,31.948961 Z"
id="path3016" />
<circle
style="fill:url(#radialGradient3868);fill-opacity:1;fill-rule:evenodd;stroke:#204a87;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="path3808"
cx="32"
cy="32"
r="15" />
<circle
style="fill:#2e3436;fill-opacity:1;fill-rule:evenodd;stroke:#2e3436;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="path3810"
cx="32"
cy="32"
r="7" />
<path
style="fill:none;stroke:#888a85;stroke-width:3.03469;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 5.0000005,31.953823 C 18.338557,57.118611 44.713521,57.533012 59.000001,32.086902 45.41479,6.8728219 19.303465,6.4484702 5.0000005,31.953823 Z"
id="path3016-7" />
<circle
style="fill:none;stroke:#729fcf;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none"
id="path3808-0"
cx="32"
cy="32"
r="13" />
</g>
</g>
<g
transform="matrix(0.60952727,0,0,0.50029644,-49.907082,-1.6810936)"
id="g3060-2"
style="stroke-width:3.5;stroke-miterlimit:4;stroke-dasharray:none">
<path
style="fill:#204a87;stroke:none"
d="M 181.76846,74.564006 V 110.8957 l -17.89251,14.53268 v -36.3317 z"
id="path3150-7-8" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 163.87595,121.79521 17.89251,-14.53268"
id="path3930-1" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 178.78637,114.52887 V 78.197173"
id="path3932-0" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 181.76846,78.197173 -17.89251,14.53268"
id="path3934-2" />
<path
style="fill:none;stroke:#3465a4;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 166.85803,85.463513 V 121.79521"
id="path3936-5" />
<path
style="fill:url(#linearGradient921);fill-opacity:1;stroke:none;stroke-width:3.50043;stroke-miterlimit:4;stroke-dasharray:none"
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.532677 z"
id="path3152-1-3" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 160.89386,89.096683 V 121.79521"
id="path3938-2" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 140.01927,107.26253 23.85668,14.53268"
id="path3940-4" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 143.00136,110.8957 V 78.197173"
id="path3942-2" />
<path
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 181.76846,74.564003 V 110.8957 l -17.89251,14.53268 V 89.096683 Z"
id="path3150-5" />
<path
style="fill:none;stroke:#729fcf;stroke-width:3.29157;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 163.87595,92.729853 140.01927,78.197173"
id="path3944-9" />
<path
style="fill:none;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 163.87595,125.42838 140.01927,110.8957 V 74.564003 l 23.85668,14.53268 z"
id="path3152-9" />
<path
style="fill:#729fcf;stroke:#0b1521;stroke-width:3.29157;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="m 181.76846,74.564003 -17.89251,14.53268 -23.85668,-14.53268 17.89251,-14.53268 23.85668,14.53268"
id="path3156-2" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 21 KiB

View File

@@ -0,0 +1,223 @@
<?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="svg3057"
version="1.1">
<title
id="title861">Std_ShowSelection</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient3862">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop3864" />
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="1"
id="stop3866" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3816" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1"
offset="1"
id="stop3818" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="0"
id="stop3880" />
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="1"
id="stop3882" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3872" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3874" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3868" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3862" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
style="stop-color:#01d6d6;stop-opacity:1;"
offset="0"
id="stop3841" />
<stop
style="stop-color:#01d6d6;stop-opacity:0;"
offset="1"
id="stop3843" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3838-3"
id="linearGradient3844-0"
x1="0.1544303"
y1="0.43078607"
x2="64.94799"
y2="64.894638"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)" />
<linearGradient
id="linearGradient3838-3">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3840-1" />
<stop
style="stop-color:#dde0dd;stop-opacity:0.09302326"
offset="1"
id="stop3842-2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3814"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352778"
gradientTransform="matrix(0.56579776,1.5556263,-1.400577,0.53125337,40.033725,-22.341495)"
gradientUnits="userSpaceOnUse" />
<radialGradient
xlink:href="#linearGradient3862"
id="radialGradient3868"
cx="44.616356"
cy="44.709038"
fx="44.616356"
fy="44.709038"
r="16.079005"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0572796,-0.99508664,0.9062161,0.96285465,-49.688012,40.348834)" />
<linearGradient
gradientUnits="userSpaceOnUse"
y2="18"
x2="31"
y1="51"
x1="35"
id="linearGradient3771"
xlink:href="#linearGradient3765"
gradientTransform="matrix(0.5518208,0,0,0.55482649,4.4577306,27.600091)" />
<linearGradient
id="linearGradient3765">
<stop
id="stop3767"
offset="0"
style="stop-color:#555753;stop-opacity:1" />
<stop
id="stop3769"
offset="1"
style="stop-color:#888a85;stop-opacity:1" />
</linearGradient>
</defs>
<metadata
id="metadata3062">
<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_ShowSelection</dc:title>
<dc:date>2020/12/25</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:subject>
<rdf:Bag>
<rdf:li>eye</rdf:li>
<rdf:li>arrow</rdf:li>
</rdf:Bag>
</dc:subject>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
id="g902"
transform="translate(0,-8)">
<path
style="fill:url(#radialGradient3820);fill-opacity:1;stroke:#2e3436;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 3.0000003,31.948961 C 17.326599,59.762669 45.655264,60.220691 61.000004,32.096046 46.408481,4.2278536 18.362981,3.7588352 3.0000003,31.948961 Z"
id="path3016" />
<circle
style="fill:url(#radialGradient3868);fill-opacity:1;fill-rule:evenodd;stroke:#204a87;stroke-width:2"
id="path3808"
cx="32"
cy="32"
r="15" />
<circle
style="fill:#2e3436;fill-opacity:1;fill-rule:evenodd;stroke:#2e3436;stroke-width:2"
id="path3810"
cx="32"
cy="32"
r="7" />
<path
style="fill:none;stroke:#888a85;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 5.0000005,31.953823 C 18.338557,57.118611 44.713521,57.533012 59.000001,32.086902 45.41479,6.8728219 19.303465,6.4484702 5.0000005,31.953823 Z"
id="path3016-7" />
<circle
style="fill:none;stroke:#729fcf;stroke-width:2"
id="path3808-0"
cx="32"
cy="32"
r="13" />
</g>
<g
transform="matrix(1.162122,0,0,1.1558264,-6.7132409,-7.586234)"
id="g887">
<path
id="path3761"
d="m 8.320476,54.786589 4.414566,4.438612 11.036417,-11.09653 3.310925,6.657918 8.829133,-23.302713 -23.176475,8.877224 6.621851,3.328959 z"
style="fill:url(#linearGradient3771);fill-opacity:1;stroke:#2e3436;stroke-width:1.76123;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path3763"
d="M 9.8756073,54.786589 21.213017,43.336988 15.494147,40.512417 34.005227,33.40055 26.931887,52.012457 24.122618,46.262437 12.735042,57.661599 Z"
style="fill:none;stroke:#888a85;stroke-width:1.32092;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.1 KiB

View File

@@ -0,0 +1,153 @@
<?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"
version="1.1"
id="svg6248"
height="64px"
width="64px">
<title
id="title856">Std_TextureMapping</title>
<defs
id="defs6250">
<linearGradient
id="linearGradient3253">
<stop
id="stop3255"
offset="0"
style="stop-color:#89d5f8;stop-opacity:1;" />
<stop
id="stop3257"
offset="1"
style="stop-color:#00899e;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient6816">
<stop
id="stop6818"
offset="0"
style="stop-color:#000000;stop-opacity:1;" />
<stop
id="stop6820"
offset="1"
style="stop-color:#000000;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient6781">
<stop
id="stop6783"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop6785"
offset="1"
style="stop-color:#3465a4;stop-opacity:0;" />
</linearGradient>
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.1581633,0,0,0.6558985,-7.29237,16.126077)"
r="25.198714"
fy="51.929391"
fx="33.369828"
cy="51.929391"
cx="33.369828"
id="radialGradient6822"
xlink:href="#linearGradient6816" />
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.9724373,-0.105657,5.0523169e-2,0.4650009,-0.3519546,9.5854384)"
r="27.986705"
fy="17.013988"
fx="18.417862"
cy="17.013988"
cx="18.417862"
id="radialGradient3259"
xlink:href="#linearGradient3253" />
<radialGradient
r="27.986705"
fy="17.013988"
fx="18.417862"
cy="17.013988"
cx="18.417862"
gradientTransform="matrix(0.9724373,-0.105657,0.05052317,0.4650009,-0.3519546,9.5854384)"
gradientUnits="userSpaceOnUse"
id="radialGradient3270"
xlink:href="#linearGradient3253" />
</defs>
<metadata
id="metadata6253">
<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_TextureMapping</dc:title>
<dc:date>2020/12/17</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:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
<dc:subject>
<rdf:Bag />
</dc:subject>
<dc:description />
<dc:contributor>
<cc:Agent>
<dc:title />
</cc:Agent>
</dc:contributor>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
transform="matrix(-1,0,0,0.99363058,4,0.0382165)"
id="g3913-7" />
<rect
style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.86437;stroke-linecap:round;stroke-linejoin:round"
id="rect848"
width="42"
height="56"
x="11"
y="4" />
<rect
style="fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none"
id="rect890"
width="40"
height="53.97327"
x="12"
y="5.0267296" />
<rect
style="fill:#cc0000;fill-rule:evenodd;stroke:#cc0000;stroke-width:3.96136;stroke-linecap:round;stroke-linejoin:miter"
id="rect850"
width="17"
height="24"
x="13"
y="6" />
<rect
y="34"
x="34"
height="24"
width="17"
id="rect850-1"
style="fill:#cc0000;fill-rule:evenodd;stroke:#cc0000;stroke-width:3.96136;stroke-linecap:round;stroke-linejoin:miter" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.8 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -0,0 +1,477 @@
<?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="svg3057"
version="1.1">
<title
id="title861">Std_ToggleObjects</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient3862">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop3864" />
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="1"
id="stop3866" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3816" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1"
offset="1"
id="stop3818" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="0"
id="stop3880" />
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="1"
id="stop3882" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3872" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3874" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3868" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3862" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
style="stop-color:#01d6d6;stop-opacity:1;"
offset="0"
id="stop3841" />
<stop
style="stop-color:#01d6d6;stop-opacity:0;"
offset="1"
id="stop3843" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3838-3"
id="linearGradient3844-0"
x1="0.1544303"
y1="0.43078607"
x2="64.94799"
y2="64.894638"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)" />
<linearGradient
id="linearGradient3838-3">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3840-1" />
<stop
style="stop-color:#dde0dd;stop-opacity:0.09302326"
offset="1"
id="stop3842-2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3814"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352778"
gradientTransform="matrix(0.56579776,1.5556263,-1.400577,0.53125337,40.033725,-22.341495)"
gradientUnits="userSpaceOnUse" />
<radialGradient
xlink:href="#linearGradient3862"
id="radialGradient3868"
cx="44.616356"
cy="44.709038"
fx="44.616356"
fy="44.709038"
r="16.079005"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0572796,-0.99508664,0.9062161,0.96285465,-49.688012,40.348834)" />
<linearGradient
xlink:href="#linearGradient5048"
id="linearGradient5027"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)"
x1="302.85715"
y1="366.64789"
x2="302.85715"
y2="609.50507" />
<linearGradient
id="linearGradient5048">
<stop
style="stop-color:black;stop-opacity:0;"
offset="0"
id="stop5050" />
<stop
id="stop5056"
offset="0.5"
style="stop-color:black;stop-opacity:1;" />
<stop
style="stop-color:black;stop-opacity:0;"
offset="1"
id="stop5052" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient5060"
id="radialGradient5029"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)"
cx="605.71429"
cy="486.64789"
fx="605.71429"
fy="486.64789"
r="117.14286" />
<linearGradient
id="linearGradient5060">
<stop
style="stop-color:black;stop-opacity:1;"
offset="0"
id="stop5062" />
<stop
style="stop-color:black;stop-opacity:0;"
offset="1"
id="stop5064" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient5060"
id="radialGradient5031"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)"
cx="605.71429"
cy="486.64789"
fx="605.71429"
fy="486.64789"
r="117.14286" />
<radialGradient
r="86.70845"
fy="35.736916"
fx="33.966679"
cy="35.736916"
cx="33.966679"
gradientTransform="matrix(0.960493,0,0,1.041132,7.9999997,5.9999995)"
gradientUnits="userSpaceOnUse"
id="radialGradient15658"
xlink:href="#linearGradient259" />
<linearGradient
id="linearGradient259">
<stop
style="stop-color:#fafafa;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop260" />
<stop
style="stop-color:#bbbbbb;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop261" />
</linearGradient>
<radialGradient
r="37.751713"
fy="3.7561285"
fx="8.824419"
cy="3.7561285"
cx="8.824419"
gradientTransform="matrix(0.968273,0,0,1.032767,11.353553,6.6464465)"
gradientUnits="userSpaceOnUse"
id="radialGradient15656"
xlink:href="#linearGradient269" />
<linearGradient
id="linearGradient269">
<stop
style="stop-color:#a3a3a3;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop270" />
<stop
style="stop-color:#4c4c4c;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop271" />
</linearGradient>
<radialGradient
r="38.158695"
fy="7.2678967"
fx="8.1435566"
cy="7.2678967"
cx="8.1435566"
gradientTransform="matrix(0.968273,0,0,1.032767,11.353553,6.6464465)"
gradientUnits="userSpaceOnUse"
id="radialGradient15668"
xlink:href="#linearGradient15662" />
<linearGradient
id="linearGradient15662">
<stop
style="stop-color:#ffffff;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop15664" />
<stop
style="stop-color:#f8f8f8;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop15666" />
</linearGradient>
<radialGradient
xlink:href="#aigrd2"
id="radialGradient2283"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.229703,0,0,0.229703,4.613529,3.979808)"
cx="20.892099"
cy="114.5684"
fx="20.892099"
fy="114.5684"
r="5.256" />
<radialGradient
gradientUnits="userSpaceOnUse"
fy="114.5684"
fx="20.892099"
r="5.256"
cy="114.5684"
cx="20.892099"
id="aigrd2">
<stop
id="stop15566"
style="stop-color:#F0F0F0"
offset="0" />
<stop
id="stop15568"
style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
offset="1.0000000" />
</radialGradient>
<radialGradient
xlink:href="#aigrd3"
id="radialGradient2285"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.229703,0,0,0.229703,4.613529,3.979808)"
cx="20.892099"
cy="64.567902"
fx="20.892099"
fy="64.567902"
r="5.257" />
<radialGradient
gradientUnits="userSpaceOnUse"
fy="64.567902"
fx="20.892099"
r="5.257"
cy="64.567902"
cx="20.892099"
id="aigrd3">
<stop
id="stop15573"
style="stop-color:#F0F0F0"
offset="0" />
<stop
id="stop15575"
style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
offset="1.0000000" />
</radialGradient>
</defs>
<metadata
id="metadata3062">
<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_ToggleObjects</dc:title>
<dc:date>2020/12/25</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:subject>
<rdf:Bag>
<rdf:li>eye</rdf:li>
<rdf:li>page</rdf:li>
</rdf:Bag>
</dc:subject>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
transform="matrix(1.3085841,0,0,1.3085841,-9.8885318,-9.0044046)"
id="g1188">
<g
transform="matrix(0.02165152,0,0,0.01485743,51.0076,48.68539)"
id="g5022"
style="display:inline">
<rect
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#linearGradient5027);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none"
id="rect4173"
width="1339.6335"
height="478.35718"
x="-1559.2523"
y="-150.69685" />
<path
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#radialGradient5029);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none"
d="m -219.61876,-150.68038 c 0,0 0,478.33079 0,478.33079 142.874166,0.90045 345.40022,-107.16966 345.40014,-239.196175 0,-132.026537 -159.436816,-239.134595 -345.40014,-239.134615 z"
id="path5058" />
<path
id="path5018"
d="m -1559.2523,-150.68038 c 0,0 0,478.33079 0,478.33079 -142.8742,0.90045 -345.4002,-107.16966 -345.4002,-239.196175 0,-132.026537 159.4368,-239.134595 345.4002,-239.134615 z"
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.402062;fill:url(#radialGradient5031);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none" />
</g>
<rect
style="color:#000000;display:block;overflow:visible;visibility:visible;fill:url(#radialGradient15658);fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient15656);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none"
id="rect15391"
width="34.875"
height="40.920494"
x="14.603553"
y="9.6464453"
ry="1.1490486" />
<rect
style="color:#000000;display:block;overflow:visible;visibility:visible;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient15668);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none"
id="rect15660"
width="32.775887"
height="38.946384"
x="15.666054"
y="10.583945"
ry="0.14904857"
rx="0.14904857" />
<g
transform="translate(8.6464467,5.9620101)"
id="g2270"
style="display:inline">
<g
id="g1440"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-miterlimit:4"
transform="matrix(0.229703,0,0,0.229703,4.967081,4.244972)">
<radialGradient
id="radialGradient1442"
cx="20.892099"
cy="114.5684"
r="5.256"
fx="20.892099"
fy="114.5684"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
style="stop-color:#F0F0F0"
id="stop1444" />
<stop
offset="1"
style="stop-color:#474747"
id="stop1446" />
</radialGradient>
<path
style="stroke:none"
d="m 23.428,113.07 c 0,1.973 -1.6,3.572 -3.573,3.572 -1.974,0 -3.573,-1.6 -3.573,-3.572 0,-1.974 1.6,-3.573 3.573,-3.573 1.973,0 3.573,1.6 3.573,3.573 z"
id="path1448" />
<radialGradient
id="radialGradient1450"
cx="20.892099"
cy="64.567902"
r="5.257"
fx="20.892099"
fy="64.567902"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
style="stop-color:#F0F0F0"
id="stop1452" />
<stop
offset="1"
style="stop-color:#474747"
id="stop1454" />
</radialGradient>
<path
style="stroke:none"
d="m 23.428,63.07 c 0,1.973 -1.6,3.573 -3.573,3.573 -1.974,0 -3.573,-1.6 -3.573,-3.573 0,-1.974 1.6,-3.573 3.573,-3.573 1.973,0 3.573,1.6 3.573,3.573 z"
id="path1456" />
</g>
<path
style="fill:url(#radialGradient2283);fill-rule:nonzero;stroke:none;stroke-miterlimit:4"
d="m 9.9950109,29.952326 c 0,0.453204 -0.3675248,0.820499 -0.8207288,0.820499 -0.4534338,0 -0.8207289,-0.367524 -0.8207289,-0.820499 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z"
id="path15570" />
<path
style="fill:url(#radialGradient2285);fill-rule:nonzero;stroke:none;stroke-miterlimit:4"
d="m 9.9950109,18.467176 c 0,0.453204 -0.3675248,0.820729 -0.8207288,0.820729 -0.4534338,0 -0.8207289,-0.367525 -0.8207289,-0.820729 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z"
id="path15577" />
</g>
<path
style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.988553;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.0175438"
d="M 19.505723,11.494276 V 49.400869"
id="path15672" />
<path
style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.204678"
d="M 20.5,11.020515 V 49.038228"
id="path15674" />
</g>
<g
transform="translate(0.56099874,0.30599931)"
id="g929">
<g
transform="matrix(0.65904671,0,0,0.65904671,0.63701529,-4.5904668)"
id="g902"
style="stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none">
<path
id="path3016"
d="M 3.0000003,31.948961 C 17.326599,59.762669 45.655264,60.220691 61.000004,32.096046 46.408481,4.2278536 18.362981,3.7588352 3.0000003,31.948961 Z"
style="fill:url(#radialGradient3820);fill-opacity:1;stroke:#2e3436;stroke-width:3.03469;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<circle
r="15"
cy="32"
cx="32"
id="path3808"
style="fill:url(#radialGradient3868);fill-opacity:1;fill-rule:evenodd;stroke:#204a87;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none" />
<circle
r="7"
cy="32"
cx="32"
id="path3810"
style="fill:#2e3436;fill-opacity:1;fill-rule:evenodd;stroke:#2e3436;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none" />
<path
id="path3016-7"
d="M 5.0000005,31.953823 C 18.338557,57.118611 44.713521,57.533012 59.000001,32.086902 45.41479,6.8728219 19.303465,6.4484702 5.0000005,31.953823 Z"
style="fill:none;stroke:#888a85;stroke-width:3.03469;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<circle
r="13"
cy="32"
cx="32"
id="path3808-0"
style="fill:none;stroke:#729fcf;stroke-width:3.03469;stroke-miterlimit:4;stroke-dasharray:none" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -0,0 +1,172 @@
<?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="svg3057"
version="1.1">
<title
id="title861">Std_ToggleVisibility</title>
<defs
id="defs3059">
<linearGradient
id="linearGradient3862">
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="0"
id="stop3864" />
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="1"
id="stop3866" />
</linearGradient>
<linearGradient
id="linearGradient3814">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3816" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1"
offset="1"
id="stop3818" />
</linearGradient>
<linearGradient
id="linearGradient3878">
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="0"
id="stop3880" />
<stop
style="stop-color:#000000;stop-opacity:0.58823532;"
offset="1"
id="stop3882" />
</linearGradient>
<linearGradient
id="linearGradient3870">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3872" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3874" />
</linearGradient>
<linearGradient
id="linearGradient3858">
<stop
style="stop-color:#000000;stop-opacity:0.19607843;"
offset="0"
id="stop3868" />
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="1"
id="stop3862" />
</linearGradient>
<linearGradient
id="linearGradient3839">
<stop
style="stop-color:#01d6d6;stop-opacity:1;"
offset="0"
id="stop3841" />
<stop
style="stop-color:#01d6d6;stop-opacity:0;"
offset="1"
id="stop3843" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3838-3"
id="linearGradient3844-0"
x1="0.1544303"
y1="0.43078607"
x2="64.94799"
y2="64.894638"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.83341111,0,0,0.86929423,6.5373399,6.8175926)" />
<linearGradient
id="linearGradient3838-3">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3840-1" />
<stop
style="stop-color:#dde0dd;stop-opacity:0.09302326"
offset="1"
id="stop3842-2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3814"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352778"
gradientTransform="matrix(0.49689881,1.3736343,-1.2300244,0.46910229,40.296276,-13.659687)"
gradientUnits="userSpaceOnUse" />
<radialGradient
xlink:href="#linearGradient3862"
id="radialGradient3868"
cx="44.616356"
cy="44.709038"
fx="44.616356"
fy="44.709038"
r="16.079005"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0625002,-1.0000002,0.91069082,0.96760906,-43.504641,46.064532)" />
</defs>
<metadata
id="metadata3062">
<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_ToggleVisibility</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
id="g3851"
transform="matrix(1.1386579,0,0,1.1324894,-5.849948,-6.8720445)">
<path
style="fill:url(#radialGradient3820);fill-opacity:1;stroke:#2e3436;stroke-width:1.76123;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 7.7722627,34.279354 C 20.354267,58.83915 45.233263,59.243588 58.709426,34.409232 45.894758,9.8013263 21.264446,9.3871781 7.7722627,34.279354 Z"
id="path3016" />
<circle
style="fill:url(#radialGradient3868);fill-opacity:1;fill-rule:evenodd;stroke:#204a87;stroke-width:2.00988"
id="path3808"
transform="matrix(0.87391169,0,0,0.87867175,-0.48055252,1.2209273)"
cx="38.586731"
cy="37.674473"
r="15.074067" />
<circle
style="fill:#2e3436;fill-opacity:1;fill-rule:evenodd;stroke:#2e3436;stroke-width:2.22435"
id="path3810"
transform="matrix(0.78964818,0,0,0.79394928,7.0423882,8.1349206)"
cx="33.177376"
cy="32.986366"
r="7.7852244" />
<path
style="fill:none;stroke:#888a85;stroke-width:1.76123;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 9.5287167,34.283648 C 21.242996,56.504419 44.406199,56.870339 56.95297,34.401158 45.022072,12.136861 22.090404,11.762154 9.5287167,34.283648 Z"
id="path3016-7" />
<circle
style="fill:none;stroke:#729fcf;stroke-width:2.31909"
id="path3808-0"
transform="matrix(0.75739013,0,0,0.76151552,4.0156334,5.6347265)"
cx="38.586731"
cy="37.674473"
r="15.074067" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@@ -0,0 +1,133 @@
<?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"
version="1.1"
id="svg6248"
height="64px"
width="64px">
<title
id="title856">Std_ViewHome</title>
<defs
id="defs6250">
<linearGradient
id="linearGradient3253">
<stop
id="stop3255"
offset="0"
style="stop-color:#89d5f8;stop-opacity:1;" />
<stop
id="stop3257"
offset="1"
style="stop-color:#00899e;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient6816">
<stop
id="stop6818"
offset="0"
style="stop-color:#000000;stop-opacity:1;" />
<stop
id="stop6820"
offset="1"
style="stop-color:#000000;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient6781">
<stop
id="stop6783"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop6785"
offset="1"
style="stop-color:#3465a4;stop-opacity:0;" />
</linearGradient>
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.1581633,0,0,0.6558985,-7.29237,16.126077)"
r="25.198714"
fy="51.929391"
fx="33.369828"
cy="51.929391"
cx="33.369828"
id="radialGradient6822"
xlink:href="#linearGradient6816" />
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.9724373,-0.105657,5.0523169e-2,0.4650009,-0.3519546,9.5854384)"
r="27.986705"
fy="17.013988"
fx="18.417862"
cy="17.013988"
cx="18.417862"
id="radialGradient3259"
xlink:href="#linearGradient3253" />
<radialGradient
r="27.986705"
fy="17.013988"
fx="18.417862"
cy="17.013988"
cx="18.417862"
gradientTransform="matrix(0.9724373,-0.105657,0.05052317,0.4650009,-0.3519546,9.5854384)"
gradientUnits="userSpaceOnUse"
id="radialGradient3270"
xlink:href="#linearGradient3253" />
</defs>
<metadata
id="metadata6253">
<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_ViewHome</dc:title>
<dc:date>2020/12/15</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:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
<dc:subject>
<rdf:Bag />
</dc:subject>
<dc:description />
<dc:contributor>
<cc:Agent>
<dc:title></dc:title>
</cc:Agent>
</dc:contributor>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
transform="matrix(-1,0,0,0.99363058,4,0.0382165)"
id="g3913-7" />
<path
id="path858"
d="M 40,29 V 54 H 59 V 17 L 32,5 5,17 V 54 H 24 V 29 Z"
style="fill:none;stroke:#042a2a;stroke-width:6;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#34e0e2;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 40,54 H 59 V 17 L 32,5 5,17 V 54 H 24 V 29 h 16 z"
id="path858-8" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -0,0 +1,172 @@
<?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"
version="1.1"
id="svg6248"
height="64px"
width="64px">
<title
id="title856">Std_ViewIvIssueCamPos</title>
<defs
id="defs6250">
<linearGradient
id="linearGradient1152">
<stop
style="stop-color:#06989a;stop-opacity:1"
offset="0"
id="stop1148" />
<stop
style="stop-color:#34e0e2;stop-opacity:1"
offset="1"
id="stop1150" />
</linearGradient>
<linearGradient
id="linearGradient3253">
<stop
id="stop3255"
offset="0"
style="stop-color:#89d5f8;stop-opacity:1;" />
<stop
id="stop3257"
offset="1"
style="stop-color:#00899e;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient6816">
<stop
id="stop6818"
offset="0"
style="stop-color:#000000;stop-opacity:1;" />
<stop
id="stop6820"
offset="1"
style="stop-color:#000000;stop-opacity:0;" />
</linearGradient>
<linearGradient
id="linearGradient6781">
<stop
id="stop6783"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop6785"
offset="1"
style="stop-color:#3465a4;stop-opacity:0;" />
</linearGradient>
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.1581633,0,0,0.6558985,-7.29237,16.126077)"
r="25.198714"
fy="51.929391"
fx="33.369828"
cy="51.929391"
cx="33.369828"
id="radialGradient6822"
xlink:href="#linearGradient6816" />
<radialGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.9724373,-0.105657,5.0523169e-2,0.4650009,-0.3519546,9.5854384)"
r="27.986705"
fy="17.013988"
fx="18.417862"
cy="17.013988"
cx="18.417862"
id="radialGradient3259"
xlink:href="#linearGradient3253" />
<radialGradient
r="27.986705"
fy="17.013988"
fx="18.417862"
cy="17.013988"
cx="18.417862"
gradientTransform="matrix(0.9724373,-0.105657,0.05052317,0.4650009,-0.3519546,9.5854384)"
gradientUnits="userSpaceOnUse"
id="radialGradient3270"
xlink:href="#linearGradient3253" />
<linearGradient
xlink:href="#linearGradient1152"
id="linearGradient1154"
x1="39"
y1="46"
x2="11"
y2="12"
gradientUnits="userSpaceOnUse" />
</defs>
<metadata
id="metadata6253">
<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_ViewIvIssueCamPos</dc:title>
<dc:date>2020/12/10</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:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
<dc:subject>
<rdf:Bag />
</dc:subject>
<dc:description />
<dc:contributor>
<cc:Agent>
<dc:title></dc:title>
</cc:Agent>
</dc:contributor>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<g
transform="matrix(-1,0,0,0.99363058,4,0.0382165)"
id="g3913-7" />
<path
id="path850"
d="M 5,55 V 9 H 46 V 25 L 61,16 V 48 L 46,39 v 16 z"
style="fill:url(#linearGradient1154);fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;stroke:#34e0e2;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 44,36.806206 V 53 H 7 V 11 l 37,-0.0048 v 15.708674"
id="path850-5" />
<path
id="path850-5-6"
d="m 44.997299,26.942664 15,-9.128564 v 28.210499 l -15,-9.25713"
style="fill:none;stroke:#34e0e2;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:none;fill-opacity:1;stroke:#042a2a;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 4.999997,55 V 9 H 46 V 25 L 61,16 V 48 L 46,39 v 16 z"
id="path850-0" />
<path
style="fill:none;stroke:#042a2a;stroke-width:4.33844;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 11,22.118413 19.4,32 11,41.881586"
id="path1195" />
<path
id="path1195-0"
d="m 21.981818,22.118413 8.4,9.881587 -8.4,9.881586"
style="fill:none;stroke:#042a2a;stroke-width:4.33844;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
id="path1195-6"
d="M 32.6,22.118413 41,32 32.6,41.881586"
style="fill:none;stroke:#042a2a;stroke-width:4.33844;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.3 KiB

View File

@@ -141,6 +141,7 @@
<file>DrawStyleHiddenLine.svg</file>
<file>DrawStyleNoShading.svg</file>
<file>user.svg</file>
<file>Std_AxisCross.svg</file>
<file>Std_CoordinateSystem.svg</file>
<file>Std_CoordinateSystem_alt.svg</file>
<file>Std_Placement.svg</file>
@@ -155,14 +156,25 @@
<file>Std_CloseActiveWindow.svg</file>
<file>Std_CloseAllWindows.svg</file>
<file>Std_Export.svg</file>
<file>Std_HideObjects.svg</file>
<file>Std_HideSelection.svg</file>
<file>Std_Import.svg</file>
<file>Std_MergeProjects.svg</file>
<file>Std_PrintPdf.svg</file>
<file>Std_RandomColor.svg</file>
<file>Std_RecentFiles.svg</file>
<file>Std_Revert.svg</file>
<file>Std_SaveAll.svg</file>
<file>Std_SaveCopy.svg</file>
<file>Std_SelectVisibleObjects.svg</file>
<file>Std_SetAppearance.svg</file>
<file>Std_ShowObjects.svg</file>
<file>Std_ShowSelection.svg</file>
<file>Std_TextureMapping.svg</file>
<file>Std_ToggleClipPlane.svg</file>
<file>Std_ToggleNavigation.svg</file>
<file>Std_ToggleObjects.svg</file>
<file>Std_ToggleVisibility.svg</file>
<file>Std_Tool1.svg</file>
<file>Std_Tool2.svg</file>
<file>Std_Tool3.svg</file>
@@ -175,11 +187,15 @@
<file>Std_Tool10.svg</file>
<file>Std_Tool11.svg</file>
<file>Std_Tool12.svg</file>
<file>Std_ViewDimetric.svg</file>
<file>Std_ViewHome.svg</file>
<file>Std_ViewIvIssueCamPos.svg</file>
<file>Std_ViewIvStereoInterleavedColumns.svg</file>
<file>Std_ViewIvStereoInterleavedRows.svg</file>
<file>Std_ViewIvStereoOff.svg</file>
<file>Std_ViewIvStereoQuadBuff.svg</file>
<file>Std_ViewIvStereoRedGreen.svg</file>
<file>Std_ViewTrimetric.svg</file>
<file>Std_WindowCascade.svg</file>
<file>Std_WindowNext.svg</file>
<file>Std_WindowPrev.svg</file>

View File

@@ -513,12 +513,11 @@ void View3DInventor::printPreview()
{
QPrinter printer(QPrinter::ScreenResolution);
printer.setFullPage(true);
#if (QT_VERSION > QT_VERSION_CHECK(5, 9, 0))
printer.setPageSize(QPrinter::A4);
#endif
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(QPageSize::A4));
printer.setPageOrientation(QPageLayout::Landscape);
#else
printer.setPageSize(QPrinter::A4);
printer.setOrientation(QPrinter::Landscape);
#endif

View File

@@ -695,7 +695,7 @@ MenuItem* StdWorkbench::setupMenuBar() const
// Help
MenuItem* help = new MenuItem( menuBar );
help->setCommand("&Help");
*help << "Std_OnlineHelp" << "Std_FreeCADWebsite"
*help << "Std_OnlineHelp" << "Std_FreeCADWebsite" << "Std_FreeCADDonation"
<< "Std_FreeCADUserHub" << "Std_FreeCADPowerUserHub"
<< "Std_PythonHelp" << "Std_FreeCADForum"
<< "Std_FreeCADFAQ" << "Std_About" << "Std_WhatsThis";

View File

@@ -320,7 +320,7 @@ def getSVG(source,
lineColor=(0.0, 0.0, 0.0),
fontsize=1,
showFill=False,
fillColor=(0.8, 0.8, 0.8),
fillColor=(1.0, 1.0, 1.0),
techdraw=False,
fillSpaces=False,
cutlinewidth=0,
@@ -400,10 +400,10 @@ def getSVG(source,
svgSymbolLineWidth = str(linewidth * yt)
hiddenPattern = archUserParameters.GetString("archHiddenPattern","30,10")
svgHiddenPattern = hiddenPattern.replace(" ","")
fillpattern = '<pattern id="sectionfill" patternUnits="userSpaceOnUse" patternTransform="matrix(5,0,0,5,0,0)"'
fillpattern += ' x="0" y="0" width="10" height="10">'
fillpattern += '<g>'
fillpattern += '<rect width="10" height="10" style="stroke:none; fill:#ffffff" /><path style="stroke:#000000; stroke-width:1" d="M0,0 l10,10" /></g></pattern>'
#fillpattern = '<pattern id="sectionfill" patternUnits="userSpaceOnUse" patternTransform="matrix(5,0,0,5,0,0)"'
#fillpattern += ' x="0" y="0" width="10" height="10">'
#fillpattern += '<g>'
#fillpattern += '<rect width="10" height="10" style="stroke:none; fill:#ffffff" /><path style="stroke:#000000; stroke-width:1" d="M0,0 l10,10" /></g></pattern>'
svgLineColor = Draft.getrgb(lineColor)
svg = ''
# reading cached version
@@ -444,11 +444,16 @@ def getSVG(source,
render.cut(cutplane,showHidden)
else:
render.cut(cutplane)
svgcache += '<g transform="scale(1,-1)">\n'
g = '<g transform="scale(1,-1)">\n'
if hasattr(source.ViewObject,"RotateSolidRender"):
if (source.ViewObject.RotateSolidRender.Value != 0):
g = '<g transform="scale(1,-1) rotate('
g += str(source.ViewObject.RotateSolidRender.Value)
g += ')">\n'
svgcache += g
svgcache += render.getViewSVG(linewidth="SVGLINEWIDTH")
svgcache += fillpattern
svgcache += render.getSectionSVG(linewidth="SVGCUTLINEWIDTH",
fillpattern="sectionfill")
#svgcache += fillpattern
svgcache += render.getSectionSVG(linewidth="SVGCUTLINEWIDTH",fillpattern="#ffffff")
if showHidden:
svgcache += render.getHiddenSVG(linewidth="SVGLINEWIDTH")
svgcache += '</g>\n'

View File

@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>453</width>
<height>424</height>
<width>416</width>
<height>542</height>
</rect>
</property>
<property name="windowTitle">
@@ -22,6 +22,18 @@
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QComboBox" name="comboBoxStyles">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>60</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>The name of your style. Existing style names can be edited.</string>
</property>
@@ -46,11 +58,17 @@
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>60</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>110</width>
@@ -71,11 +89,17 @@
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>60</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>110</width>
@@ -90,6 +114,26 @@
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonImport">
<property name="toolTip">
<string>Import styles from json file</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonExport">
<property name="toolTip">
<string>Export styles to json file</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</item>
@@ -108,8 +152,8 @@
<property name="geometry">
<rect>
<x>0</x>
<y>-290</y>
<width>420</width>
<y>0</y>
<width>383</width>
<height>589</height>
</rect>
</property>
@@ -152,6 +196,18 @@
</item>
<item row="0" column="1">
<widget class="QFontComboBox" name="FontName">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>60</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>The font to use for texts and dimensions</string>
</property>
@@ -400,6 +456,18 @@
</item>
<item row="4" column="1">
<widget class="QComboBox" name="ArrowType">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>60</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>The type of arrows or markers to use at the end of dimension lines</string>
</property>

View File

@@ -27,12 +27,21 @@
## \addtogroup draftfuctions
# @{
import lazy_loader.lazy_loader as lz
import FreeCAD as App
import draftutils.gui_utils as gui_utils
import draftmake.make_block as make_block
import draftmake.make_wire as make_wire
import draftmake.make_circle as make_circle
import draftmake.make_bspline as make_bspline
import draftmake.make_bezcurve as make_bezcurve
import draftmake.make_arc_3points as make_arc_3points
# Delay import of module until first use because it is heavy
Part = lz.LazyLoader("Part", globals(), "Part")
DraftGeomUtils = lz.LazyLoader("DraftGeomUtils", globals(), "DraftGeomUtils")
def draftify(objectslist, makeblock=False, delete=True):
"""draftify(objectslist,[makeblock],[delete])
@@ -52,24 +61,18 @@ def draftify(objectslist, makeblock=False, delete=True):
delete : bool
If delete = False, old objects are not deleted
"""
import Part
import DraftGeomUtils
if not isinstance(objectslist,list):
objectslist = [objectslist]
newobjlist = []
for obj in objectslist:
if hasattr(obj,'Shape'):
for cluster in Part.getSortedClusters(obj.Shape.Edges):
for cluster in Part.sortEdges(obj.Shape.Edges):
w = Part.Wire(cluster)
if DraftGeomUtils.hasCurves(w):
if (len(w.Edges) == 1) and (DraftGeomUtils.geomType(w.Edges[0]) == "Circle"):
nobj = make_circle.make_circle(w.Edges[0])
else:
nobj = App.ActiveDocument.addObject("Part::Feature", obj.Name)
nobj.Shape = w
else:
nobj = make_wire.make_wire(w)
nobj = draftify_shape(w)
if nobj == None:
nobj = App.ActiveDocument.addObject("Part::Feature", obj.Name)
nobj.Shape = w
newobjlist.append(nobj)
gui_utils.format_object(nobj, obj)
# sketches are always in wireframe mode. In Draft we don't like that!
@@ -85,4 +88,34 @@ def draftify(objectslist, makeblock=False, delete=True):
return newobjlist[0]
return newobjlist
def draftify_shape(shape):
nobj = None
if DraftGeomUtils.hasCurves(shape):
if (len(shape.Edges) == 1):
edge = shape.Edges[0]
edge_type = DraftGeomUtils.geomType(edge)
if edge_type == "Circle":
if edge.isClosed():
nobj = make_circle.make_circle(edge)
else:
first_parameter = edge.FirstParameter
last_parameter = edge.LastParameter
points = [edge.Curve.value(first_parameter),
edge.Curve.value((first_parameter + last_parameter)/2),
edge.Curve.value(last_parameter)]
nobj = make_arc_3points.make_arc_3points(points)
# TODO: take into consideration trimmed curves and capture the specific
# type of BSpline and Bezier that can be converted to a draft object.
# elif edge_type == "BSplineCurve":
# knots = [edge.Curve.value(p) for p in edge.Curve.getKnots()]
# nobj = make_bspline.make_bspline(knots, closed=edge.isClosed())
# elif edge_type == "BezierCurve":
# nobj = make_bezcurve.make_bezcurve(edge.Curve.getPoles(),
# closed=edge.isClosed())
else:
nobj = make_wire.make_wire(shape)
return nobj
## @}

View File

@@ -504,18 +504,10 @@ def upgrade(objects, delete=False, force=None):
if result:
_msg(_tr("Found closed wires: creating faces"))
# wires or edges: we try to join them
elif len(wires) > 1 or len(loneedges) > 1:
elif len(objects) > 1 and len(edges) > 1:
result = makeWires(objects)
if result:
_msg(_tr("Found several wires or edges: wiring them"))
# TODO: improve draftify function
# only one object: if not parametric, we "draftify" it
# elif (len(objects) == 1
# and not objects[0].isDerivedFrom("Part::Part2DObjectPython")):
# result = ext_draftify.draftify(objects[0])
# if result:
# _msg(_tr("Found 1 non-parametric objects: "
# "draftifying it"))
# special case, we have only one open wire. We close it,
# unless it has only 1 edge!
elif len(objects) == 1 and len(openwires) == 1:
@@ -524,14 +516,23 @@ def upgrade(objects, delete=False, force=None):
if result:
_msg(_tr("Found 1 open wire: closing it"))
# we have only one object that contains one edge
# TODO: this case should be considered in draftify
elif len(objects) == 1 and len(edges) == 1:
# turn to Draft Line
# TODO: improve draftify function
# only one object: if not parametric, we "draftify" it
# elif (len(objects) == 1
# and not objects[0].isDerivedFrom("Part::Part2DObjectPython")):
# result = ext_draftify.draftify(objects[0])
# if result:
# _msg(_tr("Found 1 non-parametric objects: "
# "draftifying it"))
elif (len(objects) == 1 and len(edges) == 1
and not objects[0].isDerivedFrom("Part::Part2DObjectPython")):
e = objects[0].Shape.Edges[0]
if isinstance(e.Curve, (Part.LineSegment, Part.Line)):
result = turnToLine(objects[0])
edge_type = DraftGeomUtils.geomType(e)
# currently only support Line and Circle
if edge_type in ("Line", "Circle"):
result = ext_draftify.draftify(objects[0])
if result:
_msg(_tr("Found 1 linear object: converting to line"))
_msg(_tr("Found 1 object: draftifying it"))
# only points, no edges
elif not edges and len(objects) > 1:
result = makeCompound(objects)

View File

@@ -111,6 +111,8 @@ class AnnotationStyleEditor(gui_base.GuiCommandSimplest):
self.form.pushButtonRename.setIcon(QtGui.QIcon(":/icons/accessories-text-editor.svg"))
self.form.pushButtonDelete.resize(self.form.pushButtonDelete.sizeHint())
self.form.pushButtonRename.resize(self.form.pushButtonRename.sizeHint())
self.form.pushButtonImport.setIcon(QtGui.QIcon(":/icons/Std_Import.svg"))
self.form.pushButtonExport.setIcon(QtGui.QIcon(":/icons/Std_Export.svg"))
# fill the styles combo
self.styles = self.read_meta()
@@ -121,6 +123,8 @@ class AnnotationStyleEditor(gui_base.GuiCommandSimplest):
self.form.comboBoxStyles.currentIndexChanged.connect(self.on_style_changed)
self.form.pushButtonDelete.clicked.connect(self.on_delete)
self.form.pushButtonRename.clicked.connect(self.on_rename)
self.form.pushButtonImport.clicked.connect(self.on_import)
self.form.pushButtonExport.clicked.connect(self.on_export)
for attr in DEFAULT.keys():
control = getattr(self.form, attr)
for signal in ("clicked", "textChanged",
@@ -280,6 +284,42 @@ class AnnotationStyleEditor(gui_base.GuiCommandSimplest):
self.styles[newname] = value
self.renamed[style] = newname
def on_import(self):
"""imports styles from a json file"""
filename = QtGui.QFileDialog.getOpenFileName(
QtGui.QApplication.activeWindow(),
_tr("Open styles file"),
None,
_tr("JSON file (*.json)"))
if filename and filename[0]:
with open(filename[0]) as f:
nstyles = json.load(f)
if nstyles:
self.styles.update(nstyles)
l1 = self.form.comboBoxStyles.itemText(0)
l2 = self.form.comboBoxStyles.itemText(1)
self.form.comboBoxStyles.clear()
self.form.comboBoxStyles.addItem(l1)
self.form.comboBoxStyles.addItem(l2)
for style in self.styles.keys():
self.form.comboBoxStyles.addItem(style)
print("Styles updated from "+filename[0])
def on_export(self):
"""exports styles to a json file"""
filename = QtGui.QFileDialog.getSaveFileName(
QtGui.QApplication.activeWindow(),
_tr("Save styles file"),
None,
_tr("JSON file (*.json)"))
if filename and filename[0]:
with open(filename[0],"w") as f:
json.dump(self.styles,f,indent=4)
print("Styles saved to "+filename[0])
def fill_editor(self, style):
"""Fill the editor fields with the contents of a style."""
if style is None:

View File

@@ -79,16 +79,14 @@ class Array(gui_base_original.Modifier):
if self.ui:
self.ui.selectUi()
_msg(translate("draft", "Select an object to array"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
if Gui.Selection.getSelection():
obj = Gui.Selection.getSelection()[0]
Gui.addModule("Draft")

View File

@@ -80,17 +80,14 @@ class Clone(gui_base_original.Modifier):
if self.ui:
self.ui.selectUi()
_msg(translate("draft", "Select an object to clone"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
if Gui.Selection.getSelection():
sels = len(Gui.Selection.getSelection())
Gui.addModule("Draft")

View File

@@ -71,17 +71,14 @@ class Downgrade(gui_base_original.Modifier):
if not Gui.Selection.getSelection():
self.ui.selectUi()
_msg(translate("draft", "Select an object to upgrade"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed with execution of the command after selection."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
if Gui.Selection.getSelection():
Gui.addModule("Draft")
_cmd = 'Draft.downgrade'

View File

@@ -71,17 +71,14 @@ class Draft2Sketch(gui_base_original.Modifier):
if self.ui:
self.ui.selectUi()
_msg(translate("draft", "Select an object to convert."))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
sel = Gui.Selection.getSelection()
allSketches = True
allDraft = True

View File

@@ -70,16 +70,14 @@ class Facebinder(gui_base_original.Creator):
if self.ui:
self.ui.selectUi()
_msg(translate("draft", "Select faces from existing objects"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed when a valid selection has been made."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
if Gui.Selection.getSelection():
App.ActiveDocument.openTransaction("Create Facebinder")
Gui.addModule("Draft")

View File

@@ -78,8 +78,9 @@ class Join(gui_base_original.Modifier):
if not Gui.Selection.getSelection():
self.ui.selectUi()
_msg(translate("draft", "Select an object to join"))
self.call = self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
@@ -90,8 +91,6 @@ class Join(gui_base_original.Modifier):
visually share a point. This is due to the underlying `joinWires`
method not handling the points correctly.
"""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
if Gui.Selection.getSelection():
self.print_selection()
Gui.addModule("Draft")

View File

@@ -78,9 +78,9 @@ class Offset(gui_base_original.Modifier):
if not Gui.Selection.getSelection():
self.ui.selectUi()
_msg(translate("draft", "Select an object to offset"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
elif len(Gui.Selection.getSelection()) > 1:
_wrn(translate("draft", "Offset only works "
"on one object at a time."))

View File

@@ -103,9 +103,6 @@ class PathArray(gui_base_original.Modifier):
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
sel = Gui.Selection.getSelectionEx()
if len(sel) != 2:
_err(_tr("Please select exactly two objects, "

View File

@@ -80,9 +80,6 @@ class PathTwistedArray(gui_base_original.Modifier):
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
sel = Gui.Selection.getSelectionEx()
if len(sel) != 2:
_err(_tr("Please select exactly two objects, "

View File

@@ -113,9 +113,6 @@ class PointArray(gui_base_original.Modifier):
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
sel = Gui.Selection.getSelectionEx()
if len(sel) != 2:
_err(_tr("Please select exactly two objects, "

View File

@@ -75,17 +75,14 @@ class Shape2DView(gui_base_original.Modifier):
if self.ui:
self.ui.selectUi()
_msg(translate("draft", "Select an object to project"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed with the command if one object was selected."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
faces = []
objs = []
vec = Gui.ActiveDocument.ActiveView.getViewDirection().negative()

View File

@@ -112,8 +112,6 @@ class Split(gui_base_original.Modifier):
self.commit(translate("draft", "Split line"),
_cmd_list)
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
self.finish()

View File

@@ -73,17 +73,14 @@ class Upgrade(gui_base_original.Modifier):
if not Gui.Selection.getSelection():
self.ui.selectUi()
_msg(translate("draft", "Select an object to upgrade"))
self.call = \
self.view.addEventCallback("SoEvent",
gui_tool_utils.selectObject)
self.call = self.view.addEventCallback(
"SoEvent",
gui_tool_utils.selectObject)
else:
self.proceed()
def proceed(self):
"""Proceed with execution of the command after selection."""
if self.call:
self.view.removeEventCallback("SoEvent", self.call)
if Gui.Selection.getSelection():
Gui.addModule("Draft")
_cmd = 'Draft.upgrade'

View File

@@ -59,12 +59,18 @@ def make_copy(obj, force=None, reparent=False, simple_copy=False):
newobj = None
if simple_copy and hasattr(obj, 'Shape'):
# this was the old implementation that is actyally not used by default
_name = utils.get_real_name(obj.Name)
newobj = App.ActiveDocument.addObject("Part::Feature", _name)
newobj.Shape = obj.Shape
gui_utils.format_object(newobj, obj)
elif not simple_copy:
newobj = App.ActiveDocument.copyObject(obj)
# this is the new implementation using doc.copyObject API
if obj.hasExtension("App::OriginGroupExtension"):
# always copy with dependencies when copying App::Part and PartDesign::Body
newobj = App.ActiveDocument.copyObject(obj, True)
else:
newobj = App.ActiveDocument.copyObject(obj)
if not newobj:
return None

View File

@@ -260,10 +260,11 @@ DrawingView::DrawingView(Gui::Document* doc, QWidget* parent)
//setWindowTitle(tr("SVG Viewer"));
#if QT_VERSION >= 0x050300
m_orientation = QPageLayout::Landscape;
m_pageSize = QPageSize::A4;
#else
m_orientation = QPrinter::Landscape;
#endif
m_pageSize = QPrinter::A4;
#endif
ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath
("User parameter:BaseApp/Preferences/View");
@@ -319,6 +320,29 @@ void DrawingView::findPrinterSettings(const QString& fileName)
#endif
}
#if QT_VERSION >= 0x050300
QMap<QPageSize::PageSizeId, QString> pageSizes;
pageSizes[QPageSize::A0] = QString::fromLatin1("A0");
pageSizes[QPageSize::A1] = QString::fromLatin1("A1");
pageSizes[QPageSize::A2] = QString::fromLatin1("A2");
pageSizes[QPageSize::A3] = QString::fromLatin1("A3");
pageSizes[QPageSize::A4] = QString::fromLatin1("A4");
pageSizes[QPageSize::A5] = QString::fromLatin1("A5");
pageSizes[QPageSize::A6] = QString::fromLatin1("A6");
pageSizes[QPageSize::A7] = QString::fromLatin1("A7");
pageSizes[QPageSize::A8] = QString::fromLatin1("A8");
pageSizes[QPageSize::A9] = QString::fromLatin1("A9");
pageSizes[QPageSize::B0] = QString::fromLatin1("B0");
pageSizes[QPageSize::B1] = QString::fromLatin1("B1");
pageSizes[QPageSize::B2] = QString::fromLatin1("B2");
pageSizes[QPageSize::B3] = QString::fromLatin1("B3");
pageSizes[QPageSize::B4] = QString::fromLatin1("B4");
pageSizes[QPageSize::B5] = QString::fromLatin1("B5");
pageSizes[QPageSize::B6] = QString::fromLatin1("B6");
pageSizes[QPageSize::B7] = QString::fromLatin1("B7");
pageSizes[QPageSize::B8] = QString::fromLatin1("B8");
pageSizes[QPageSize::B9] = QString::fromLatin1("B9");
#else
QMap<QPrinter::PageSize, QString> pageSizes;
pageSizes[QPrinter::A0] = QString::fromLatin1("A0");
pageSizes[QPrinter::A1] = QString::fromLatin1("A1");
@@ -340,7 +364,12 @@ void DrawingView::findPrinterSettings(const QString& fileName)
pageSizes[QPrinter::B7] = QString::fromLatin1("B7");
pageSizes[QPrinter::B8] = QString::fromLatin1("B8");
pageSizes[QPrinter::B9] = QString::fromLatin1("B9");
#endif
#if QT_VERSION >= 0x050300
for (QMap<QPageSize::PageSizeId, QString>::iterator it = pageSizes.begin(); it != pageSizes.end(); ++it) {
#else
for (QMap<QPrinter::PageSize, QString>::iterator it = pageSizes.begin(); it != pageSizes.end(); ++it) {
#endif
if (fileName.startsWith(it.value(), Qt::CaseInsensitive)) {
m_pageSize = it.key();
break;
@@ -499,6 +528,20 @@ void DrawingView::printPdf()
formLayout->addWidget(groupBox, 0, 0, 1, 1);
groupBox->setTitle(tr("Page sizes"));
#if QT_VERSION >= 0x050300
item = new QListWidgetItem(tr("A0"), listWidget);
item->setData(Qt::UserRole, QVariant(QPageSize::A0));
item = new QListWidgetItem(tr("A1"), listWidget);
item->setData(Qt::UserRole, QVariant(QPageSize::A1));
item = new QListWidgetItem(tr("A2"), listWidget);
item->setData(Qt::UserRole, QVariant(QPageSize::A2));
item = new QListWidgetItem(tr("A3"), listWidget);
item->setData(Qt::UserRole, QVariant(QPageSize::A3));
item = new QListWidgetItem(tr("A4"), listWidget);
item->setData(Qt::UserRole, QVariant(QPageSize::A4));
item = new QListWidgetItem(tr("A5"), listWidget);
item->setData(Qt::UserRole, QVariant(QPageSize::A5));
#else
item = new QListWidgetItem(tr("A0"), listWidget);
item->setData(Qt::UserRole, QVariant(QPrinter::A0));
item = new QListWidgetItem(tr("A1"), listWidget);
@@ -511,6 +554,7 @@ void DrawingView::printPdf()
item->setData(Qt::UserRole, QVariant(QPrinter::A4));
item = new QListWidgetItem(tr("A5"), listWidget);
item->setData(Qt::UserRole, QVariant(QPrinter::A5));
#endif
int index = 4; // by default A4
for (int i=0; i<listWidget->count(); i++) {
if (listWidget->item(i)->data(Qt::UserRole).toInt() == m_pageSize) {
@@ -536,7 +580,11 @@ void DrawingView::printPdf()
QList<QListWidgetItem*> items = listWidget->selectedItems();
if (items.size() == 1) {
int AX = items.front()->data(Qt::UserRole).toInt();
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(QPageSize::PageSizeId(AX)));
#else
printer.setPaperSize(QPrinter::PageSize(AX));
#endif
}
print(&printer);
@@ -547,10 +595,12 @@ void DrawingView::print()
{
QPrinter printer(QPrinter::HighResolution);
printer.setFullPage(true);
printer.setPageSize(m_pageSize);
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(m_pageSize));
printer.setPageOrientation(m_orientation);
#else
printer.setPageSize(m_pageSize);
printer.setOrientation(m_orientation);
#endif
@@ -564,10 +614,12 @@ void DrawingView::printPreview()
{
QPrinter printer(QPrinter::HighResolution);
printer.setFullPage(true);
printer.setPageSize(m_pageSize);
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(m_pageSize));
printer.setPageOrientation(m_orientation);
#else
printer.setPageSize(m_pageSize);
printer.setOrientation(m_orientation);
#endif
@@ -594,8 +646,13 @@ void DrawingView::print(QPrinter* printer)
if (printer->outputFormat() == QPrinter::NativeFormat) {
int w = printer->widthMM();
int h = printer->heightMM();
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId realPaperSize = getPageSize(w, h);
QPageSize::PageSizeId curPaperSize = printer->pageLayout().pageSize().id();
#else
QPrinter::PaperSize realPaperSize = getPageSize(w, h);
QPrinter::PaperSize curPaperSize = printer->paperSize();
#endif
// for the preview a 'Picture' paint engine is used which we don't
// care if it uses wrong printer settings
@@ -658,7 +715,11 @@ void DrawingView::print(QPrinter* printer)
p.end();
}
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId DrawingView::getPageSize(int w, int h) const
#else
QPrinter::PageSize DrawingView::getPageSize(int w, int h) const
#endif
{
static const float paperSizes[][2] = {
{210, 297}, // A4
@@ -693,17 +754,29 @@ QPrinter::PageSize DrawingView::getPageSize(int w, int h) const
{279.4f, 431.8f} // Tabloid
};
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId ps = QPageSize::Custom;
#else
QPrinter::PageSize ps = QPrinter::Custom;
#endif
for (int i=0; i<30; i++) {
if (std::abs(paperSizes[i][0]-w) <= 1 &&
std::abs(paperSizes[i][1]-h) <= 1) {
#if QT_VERSION >= 0x050300
ps = static_cast<QPageSize::PageSizeId>(i);
#else
ps = static_cast<QPrinter::PageSize>(i);
#endif
break;
}
else
if (std::abs(paperSizes[i][0]-h) <= 1 &&
std::abs(paperSizes[i][1]-w) <= 1) {
#if QT_VERSION >= 0x050300
ps = static_cast<QPageSize::PageSizeId>(i);
#else
ps = static_cast<QPrinter::PageSize>(i);
#endif
break;
}
}

View File

@@ -107,7 +107,11 @@ protected:
void contextMenuEvent(QContextMenuEvent *event);
void closeEvent(QCloseEvent*);
void findPrinterSettings(const QString&);
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId getPageSize(int w, int h) const;
#else
QPrinter::PageSize getPageSize(int w, int h) const;
#endif
private:
QAction *m_nativeAction;
@@ -123,10 +127,11 @@ private:
QString m_currentPath;
#if QT_VERSION >= 0x050300
QPageLayout::Orientation m_orientation;
QPageSize::PageSizeId m_pageSize;
#else
QPrinter::Orientation m_orientation;
#endif
QPrinter::PageSize m_pageSize;
#endif
};
} // namespace DrawingViewGui

View File

@@ -482,7 +482,7 @@ S, E
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -494,8 +494,8 @@ S, E
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -613,7 +613,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -625,8 +625,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -432,7 +432,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -444,8 +444,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -466,7 +466,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -478,8 +478,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -429,7 +429,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -441,8 +441,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -437,7 +437,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -449,8 +449,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -38439,7 +38439,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -38451,8 +38451,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -5371,7 +5371,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -5383,8 +5383,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -3485,7 +3485,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -3497,8 +3497,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -2213,7 +2213,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -2225,8 +2225,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -18677,7 +18677,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -18689,8 +18689,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -29213,7 +29213,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -29225,8 +29225,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -2724,7 +2724,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -2736,8 +2736,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -1305,7 +1305,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -1317,8 +1317,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -20142,7 +20142,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -20154,8 +20154,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -2687,7 +2687,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -2699,8 +2699,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -2799,7 +2799,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -2811,8 +2811,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -8274,7 +8274,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -8286,8 +8286,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -183,7 +183,7 @@ MF, PS
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -195,8 +195,8 @@ MF, PS
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -222,7 +222,7 @@ RF
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhodts company: mm, N, s, K
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
@@ -234,8 +234,8 @@ RF
** This leads to:
** Force: N
** Pressure: N/mm^2
** Density: t/mm^2
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K*s^3
** Specific Heat: kJ/t/K = mm^2/s^2/K
** Thermal conductivity: t*mm/K/s^3 (same as W/m/K)
** Specific Heat: mm^2/s^2/K (same as J/kg/K)
**

View File

@@ -141,6 +141,12 @@ SOURCE_GROUP("Module" FILES ${Mod_SRCS})
add_library(Path SHARED ${Path_SRCS})
target_link_libraries(Path ${Path_LIBS})
# Boost >= 1.75.0
if(NOT ${Boost_VERSION} LESS 107500)
set_target_properties(Path PROPERTIES CXX_STANDARD_REQUIRED ON)
set_target_properties(Path PROPERTIES CXX_STANDARD 14)
endif()
if(FREECAD_USE_PCH)
add_definitions(-D_PreComp_)
GET_MSVC_PRECOMPILED_SOURCE("PreCompiled.cpp" Path_CPP_SRCS ${Path_SRCS})

View File

@@ -174,6 +174,7 @@ def GenerateGCode(op,obj,adaptiveResults, helixDiameter):
if obj.UseHelixArcs == False:
# rapid move to start point
op.commandlist.append(Path.Command("G0", {"Z": obj.ClearanceHeight.Value}))
op.commandlist.append(Path.Command("G0", {"X": helixStart[0], "Y": helixStart[1], "Z": obj.ClearanceHeight.Value}))
# rapid move to safe height
@@ -205,6 +206,7 @@ def GenerateGCode(op,obj,adaptiveResults, helixDiameter):
helixStart = [region["HelixCenterPoint"][0] + r, region["HelixCenterPoint"][1]]
# rapid move to start point
op.commandlist.append(Path.Command("G0", {"Z": obj.ClearanceHeight.Value}))
op.commandlist.append(Path.Command("G0", {"X": helixStart[0], "Y": helixStart[1], "Z": obj.ClearanceHeight.Value}))
# rapid move to safe height
@@ -238,6 +240,7 @@ def GenerateGCode(op,obj,adaptiveResults, helixDiameter):
else: # no helix entry
# rapid move to clearance height
op.commandlist.append(Path.Command("G0", {"Z": obj.ClearanceHeight.Value}))
op.commandlist.append(Path.Command("G0", {"X": region["StartPoint"][0], "Y": region["StartPoint"][1], "Z": obj.ClearanceHeight.Value}))
# straight plunge to target depth
op.commandlist.append(Path.Command("G1", {"X":region["StartPoint"][0], "Y": region["StartPoint"][1], "Z": passEndDepth,"F": op.vertFeed}))

View File

@@ -58,6 +58,7 @@ class JobTemplate:
PostProcessorOutputFile = 'Output'
SetupSheet = 'SetupSheet'
Stock = 'Stock'
# TCs are grouped under Tools in a job, the template refers to them directly though
ToolController = 'ToolController'
Version = 'Version'
@@ -120,7 +121,7 @@ class ObjectJob:
obj.addProperty("App::PropertyLink", "Stock", "Base", QtCore.QT_TRANSLATE_NOOP("PathJob", "Solid object to be used as stock."))
obj.addProperty("App::PropertyLink", "Operations", "Base", QtCore.QT_TRANSLATE_NOOP("PathJob", "Compound path of all operations in the order they are processed."))
obj.addProperty("App::PropertyLinkList", "ToolController", "Base", QtCore.QT_TRANSLATE_NOOP("PathJob", "Collection of tool controllers available for this job."))
#obj.addProperty("App::PropertyLinkList", "ToolController", "Base", QtCore.QT_TRANSLATE_NOOP("PathJob", "Collection of tool controllers available for this job."))
obj.addProperty("App::PropertyBool", "SplitOutput", "Output", QtCore.QT_TRANSLATE_NOOP("PathJob", "Split output into multiple gcode files"))
obj.addProperty("App::PropertyEnumeration", "OrderOutputBy", "WCS", QtCore.QT_TRANSLATE_NOOP("PathJob", "If multiple WCS, order the output this way"))
@@ -150,6 +151,7 @@ class ObjectJob:
self.setupSetupSheet(obj)
self.setupBaseModel(obj, models)
self.setupToolTable(obj)
self.tooltip = None
self.tooltipArgs = None
@@ -191,6 +193,18 @@ class ObjectJob:
obj.Base = None
obj.removeProperty('Base')
def setupToolTable(self, obj):
if not hasattr(obj, 'Tools'):
obj.addProperty("App::PropertyLink", "Tools", "Base", QtCore.QT_TRANSLATE_NOOP("PathJob", "Collection of all tool controllers for the job"))
toolTable = FreeCAD.ActiveDocument.addObject("App::DocumentObjectGroup", "Tools")
toolTable.Label = 'Tools'
if toolTable.ViewObject:
toolTable.ViewObject.Visibility = False
if hasattr(obj, 'ToolController'):
toolTable.addObjects(obj.ToolController)
obj.removeProperty('ToolController')
obj.Tools = toolTable
def removeBase(self, obj, base, removeFromModel):
if isResourceClone(obj, base, None):
PathUtil.clearExpressionEngine(base)
@@ -234,14 +248,16 @@ class ObjectJob:
# Tool controllers might refer to either legacy tool or toolbit
PathLog.debug('taking down tool controller')
for tc in obj.ToolController:
for tc in obj.Tools.Group:
if hasattr(tc.Tool, "Proxy"):
PathUtil.clearExpressionEngine(tc.Tool)
doc.removeObject(tc.Tool.Name)
PathUtil.clearExpressionEngine(tc)
tc.Proxy.onDelete(tc)
doc.removeObject(tc.Name)
obj.ToolController = []
obj.Tools.Group = []
doc.removeObject(obj.Tools.Name)
obj.Tools = None
# SetupSheet
PathUtil.clearExpressionEngine(obj.SetupSheet)
@@ -268,6 +284,7 @@ class ObjectJob:
self.setupBaseModel(obj)
self.fixupOperations(obj)
self.setupSetupSheet(obj)
self.setupToolTable(obj)
obj.setEditorMode('Operations', 2) # hide
obj.setEditorMode('Placement', 2)
@@ -334,7 +351,7 @@ class ObjectJob:
obj.Stock = PathStock.CreateFromTemplate(obj, attrs.get(JobTemplate.Stock))
PathLog.debug("setting tool controllers (%d)" % len(tcs))
obj.ToolController = tcs
obj.Tools.Group = tcs
else:
PathLog.error(translate('PathJob', "Unsupported PathJob template version %s") % attrs.get(JobTemplate.Version))
if not tcs:
@@ -414,13 +431,12 @@ class ObjectJob:
op.Path.Center = self.obj.Operations.Path.Center
def addToolController(self, tc):
group = self.obj.ToolController
group = self.obj.Tools.Group
PathLog.debug("addToolController(%s): %s" % (tc.Label, [t.Label for t in group]))
if tc.Name not in [str(t.Name) for t in group]:
tc.setExpression('VertRapid', "%s.%s" % (self.setupSheet.expressionReference(), PathSetupSheet.Template.VertRapid))
tc.setExpression('HorizRapid', "%s.%s" % (self.setupSheet.expressionReference(), PathSetupSheet.Template.HorizRapid))
group.append(tc)
self.obj.ToolController = group
self.obj.Tools.addObject(tc)
Notification.updateTC.emit(self.obj, tc)
def allOperations(self):

View File

@@ -146,7 +146,7 @@ class CommandJobTemplateExport:
attrs.pop(PathJob.JobTemplate.PostProcessorOutputFile, None)
# tool controller settings
toolControllers = dialog.includeToolControllers() if dialog else job.ToolController
toolControllers = dialog.includeToolControllers() if dialog else job.Tools.Group
if toolControllers:
tcAttrs = [tc.Proxy.templateAttrs(tc) for tc in toolControllers]
attrs[PathJob.JobTemplate.ToolController] = tcAttrs

View File

@@ -338,7 +338,7 @@ class JobTemplateExport:
self.dialog.settingsOpsList.addItem(item)
self.dialog.toolsList.clear()
for tc in sorted(job.ToolController, key=lambda o: o.Label):
for tc in sorted(job.Tools.Group, key=lambda o: o.Label):
item = QtGui.QListWidgetItem(tc.Label)
item.setData(self.DataObject, tc)
item.setCheckState(QtCore.Qt.CheckState.Checked)

View File

@@ -210,7 +210,7 @@ class ViewProvider:
return ":/icons/Path_Job.svg"
def claimChildren(self):
children = self.obj.ToolController
children = []
children.append(self.obj.Operations)
if hasattr(self.obj, 'Model'):
# unfortunately this function is called before the object has been fully loaded
@@ -222,6 +222,8 @@ class ViewProvider:
if hasattr(self.obj, 'SetupSheet'):
# when loading a job that didn't have a setup sheet they might not've been created yet
children.append(self.obj.SetupSheet)
if hasattr(self.obj, 'Tools'):
children.append(self.obj.Tools)
return children
def onDelete(self, vobj, arg2=None):
@@ -707,7 +709,7 @@ class TaskPanel:
vUnit = FreeCAD.Units.Quantity(1, FreeCAD.Units.Velocity).getUserPreferred()[2]
for row, tc in enumerate(sorted(self.obj.ToolController, key=lambda tc: tc.Label)):
for row, tc in enumerate(sorted(self.obj.Tools.Group, key=lambda tc: tc.Label)):
self.form.activeToolController.addItem(tc.Label, tc)
if tc == select:
index = row
@@ -847,7 +849,7 @@ class TaskPanel:
# can only delete what is selected
delete = edit
# ... but we want to make sure there's at least one TC left
if len(self.obj.ToolController) == len(self.form.toolControllerList.selectedItems()):
if len(self.obj.Tools.Group) == len(self.form.toolControllerList.selectedItems()):
delete = False
# ... also don't want to delete any TCs that are already used
if delete:

View File

@@ -517,7 +517,7 @@ class CommandPathSanity:
data = {}
try:
for TC in obj.ToolController:
for TC in obj.Tools.Group:
if not hasattr(TC.Tool, 'BitBody'):
self.squawk("PathSanity",
"Tool number {} is a legacy tool. Legacy tools not \

View File

@@ -165,12 +165,12 @@ class CommandPathToolController(object):
tool = PathToolBitGui.ToolBitSelector().getTool()
if tool:
toolNr = None
for tc in job.ToolController:
for tc in job.Tools.Group:
if tc.Tool == tool:
toolNr = tc.ToolNumber
break
if not toolNr:
toolNr = max([tc.ToolNumber for tc in job.ToolController]) + 1
toolNr = max([tc.ToolNumber for tc in job.Tools.Group]) + 1
tc = Create("TC: {}".format(tool.Label), tool, toolNr)
job.Proxy.addToolController(tc)
FreeCAD.ActiveDocument.recompute()

View File

@@ -403,7 +403,7 @@ def getToolControllers(obj, proxy=None):
PathLog.debug("op={} ({})".format(obj.Label, type(obj)))
if job:
return [c for c in job.ToolController if proxy.isToolSupported(obj, c.Tool)]
return [tc for tc in job.Tools.Group if proxy.isToolSupported(obj, tc.Tool)]
return []

View File

@@ -62,7 +62,7 @@ class TestPathHelix(PathTestUtils.PathTestBase):
def test02(self):
'''Verify Helix generates proper holes for rotated model'''
self.job.ToolController[0].Tool.Diameter = 0.5
self.job.Tools.Group[0].Tool.Diameter = 0.5
op = PathHelix.Create('Helix')
proxy = op.Proxy
@@ -87,7 +87,7 @@ class TestPathHelix(PathTestUtils.PathTestBase):
self.doc.Body.Placement.Rotation = FreeCAD.Rotation(deg, 0, 0)
self.job = PathJob.Create('Job', [self.doc.Body])
self.job.ToolController[0].Tool.Diameter = 0.5
self.job.Tools.Group[0].Tool.Diameter = 0.5
op = PathHelix.Create('Helix')
proxy = op.Proxy
@@ -109,7 +109,7 @@ class TestPathHelix(PathTestUtils.PathTestBase):
self.clone.Placement.Rotation = FreeCAD.Rotation(deg, 0, 0)
self.job = PathJob.Create('Job', [self.clone])
self.job.ToolController[0].Tool.Diameter = 0.5
self.job.Tools.Group[0].Tool.Diameter = 0.5
op = PathHelix.Create('Helix')
proxy = op.Proxy

View File

@@ -11,7 +11,7 @@
<div class="title">
<div class="version">
VERSIONSTRING
<a href="OpenSettings.py">
<a title="T_VTOOLTIP" href="OpenSettings.py">
<img class="settingsicon" src="IMAGE_SRC_SETTINGS">
</a>
</div>

View File

@@ -79,3 +79,4 @@ T_EXTERNALLINKS = translate("StartPage", "To open any of the links above in your
T_CREATIONDATE = translate("StartPage", "Creation date")
T_LASTMODIFIED = translate("StartPage", "Last modification")
T_NOTES = translate("StartPage", "Notes")
T_VTOOLTIP = translate("StartPage", "Open start page preferences")

View File

@@ -119,10 +119,11 @@ MDIViewPage::MDIViewPage(ViewProviderPage *pageVp, Gui::Document* doc, QWidget*
: Gui::MDIView(doc, parent),
#if QT_VERSION >= 0x050300
m_orientation(QPageLayout::Landscape),
m_paperSize(QPageSize::A4),
#else
m_orientation(QPrinter::Landscape),
#endif
m_paperSize(QPrinter::A4),
#endif
m_vpPage(pageVp)
{
@@ -675,10 +676,12 @@ void MDIViewPage::printPdf(std::string file)
QPrinter printer(QPrinter::HighResolution);
printer.setFullPage(true);
printer.setOutputFileName(filename);
if (m_paperSize == QPrinter::Ledger) {
#if QT_VERSION >= 0x050300
if (m_paperSize == QPageSize::Ledger) {
printer.setPageOrientation((QPageLayout::Orientation) (1 - m_orientation)); //reverse 0/1
#else
if (m_paperSize == QPrinter::Ledger) {
printer.setOrientation((QPrinter::Orientation) (1 - m_orientation)); //reverse 0/1
#endif
} else {
@@ -688,7 +691,11 @@ void MDIViewPage::printPdf(std::string file)
printer.setOrientation(m_orientation);
#endif
}
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(m_paperSize));
#else
printer.setPaperSize(m_paperSize);
#endif
print(&printer);
}
@@ -696,10 +703,11 @@ void MDIViewPage::print()
{
QPrinter printer(QPrinter::HighResolution);
printer.setFullPage(true);
printer.setPaperSize(m_paperSize);
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(m_paperSize));
printer.setPageOrientation(m_orientation);
#else
printer.setPaperSize(m_paperSize);
printer.setOrientation(m_orientation);
#endif
QPrintDialog dlg(&printer, this);
@@ -712,10 +720,11 @@ void MDIViewPage::printPreview()
{
QPrinter printer(QPrinter::HighResolution);
printer.setFullPage(true);
printer.setPaperSize(m_paperSize);
#if QT_VERSION >= 0x050300
printer.setPageSize(QPageSize(m_paperSize));
printer.setPageOrientation(m_orientation);
#else
printer.setPaperSize(m_paperSize);
printer.setOrientation(m_orientation);
#endif
@@ -743,8 +752,13 @@ void MDIViewPage::print(QPrinter* printer)
if (printer->outputFormat() == QPrinter::NativeFormat) {
int w = printer->widthMM();
int h = printer->heightMM();
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId psPrtCalcd = getPaperSize(w, h);
QPageSize::PageSizeId psPrtSetting = printer->pageLayout().pageSize().id();
#else
QPrinter::PaperSize psPrtCalcd = getPaperSize(w, h);
QPrinter::PaperSize psPrtSetting = printer->paperSize();
#endif
// for the preview a 'Picture' paint engine is used which we don't
// care if it uses wrong printer settings
@@ -836,8 +850,11 @@ void MDIViewPage::print(QPrinter* printer)
static_cast<void> (blockConnection(false));
}
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId MDIViewPage::getPaperSize(int w, int h) const
#else
QPrinter::PaperSize MDIViewPage::getPaperSize(int w, int h) const
#endif
{
static const float paperSizes[][2] = {
{210, 297}, // A4
@@ -872,25 +889,46 @@ QPrinter::PaperSize MDIViewPage::getPaperSize(int w, int h) const
{279.4f, 431.8f} // Tabloid (29) causes trouble with orientation on PDF export
};
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId ps = QPageSize::Custom;
#else
QPrinter::PaperSize ps = QPrinter::Custom;
#endif
for (int i=0; i<30; i++) {
if (std::abs(paperSizes[i][0]-w) <= 1 &&
std::abs(paperSizes[i][1]-h) <= 1) {
#if QT_VERSION >= 0x050300
ps = static_cast<QPageSize::PageSizeId>(i);
#else
ps = static_cast<QPrinter::PaperSize>(i);
#endif
break;
}
else //handle landscape & portrait w/h
if (std::abs(paperSizes[i][0]-h) <= 1 &&
std::abs(paperSizes[i][1]-w) <= 1) {
#if QT_VERSION >= 0x050300
ps = static_cast<QPageSize::PageSizeId>(i);
#else
ps = static_cast<QPrinter::PaperSize>(i);
#endif
break;
}
}
#if QT_VERSION >= 0x050300
if (ps == QPageSize::Ledger) { //check if really Tabloid
if (w < 431) {
ps = QPageSize::Tabloid;
}
}
#else
if (ps == QPrinter::Ledger) { //check if really Tabloid
if (w < 431) {
ps = QPrinter::Tabloid;
}
}
#endif
return ps;
}

View File

@@ -128,7 +128,12 @@ protected:
void contextMenuEvent(QContextMenuEvent *event);
void closeEvent(QCloseEvent*);
#if QT_VERSION >= 0x050300
QPageSize::PageSizeId getPaperSize(int w, int h) const;
#else
QPrinter::PaperSize getPaperSize(int w, int h) const;
#endif
void setDimensionGroups(void);
void setBalloonGroups(void);
void setLeaderGroups(void);
@@ -161,10 +166,11 @@ private:
QString m_currentPath;
#if QT_VERSION >= 0x050300
QPageLayout::Orientation m_orientation;
QPageSize::PageSizeId m_paperSize;
#else
QPrinter::Orientation m_orientation;
#endif
QPrinter::PaperSize m_paperSize;
#endif
ViewProviderPage *m_vpPage;
QList<QGraphicsItem*> m_qgSceneSelected; //items in selection order