update hardcoded XPMs to .svg files. Updated .svg icons for clarity.

This commit is contained in:
Max Wilfinger
2024-03-23 14:59:24 +01:00
committed by wwmayer
parent df4a517e32
commit e38b8d9bd4
33 changed files with 3207 additions and 593 deletions

View File

@@ -54,7 +54,6 @@
#include "ViewProviderTransform.h"
#include "ViewProviderTransformDemolding.h"
#include "Workbench.h"
#include "images.h"
// use a different name to CreateCommand()
@@ -138,9 +137,6 @@ PyMOD_INIT_FUNC(MeshGui)
PyObject* mod = MeshGui::initModule();
Base::Console().Log("Loading GUI of Mesh module... done\n");
// Register icons
Gui::BitmapFactory().addXPM("mesh_fillhole", mesh_fillhole);
// instantiating the commands
CreateMeshCommands();
if (qApp) {

View File

@@ -1585,7 +1585,10 @@ void CmdMeshFillInteractiveHole::activated(int)
if (view) {
Gui::View3DInventorViewer* viewer = view->getViewer();
viewer->setEditing(true);
viewer->setEditingCursor(QCursor(Gui::BitmapFactory().pixmap("mesh_fillhole"), 5, 5));
viewer->setEditingCursor(
QCursor(Gui::BitmapFactory().pixmapFromSvg("Mesh_CursorFillInteractive", QSize(32, 32)),
6,
6));
viewer->addEventCallback(SoMouseButtonEvent::getClassTypeId(),
MeshGui::ViewProviderMeshFaceSet::fillHoleCallback);
viewer->setSelectionEnabled(false);

View File

@@ -4,6 +4,7 @@
<file>icons/Mesh_BoundingBox.svg</file>
<file>icons/Mesh_BuildRegularSolid.svg</file>
<file>icons/Mesh_CrossSections.svg</file>
<file>icons/Mesh_CursorFillInteractive.svg</file>
<file>icons/Mesh_CurvatureInfo.svg</file>
<file>icons/Mesh_Decimating.svg</file>
<file>icons/Mesh_Difference.svg</file>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64px"
height="64px"
id="svg2980"
version="1.1"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2982">
<linearGradient
id="linearGradient3765">
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="0"
id="stop3767" />
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="1"
id="stop3769" />
</linearGradient>
<linearGradient
id="linearGradient3864">
<stop
id="stop3866"
offset="0"
style="stop-color:#71b2f8;stop-opacity:1;" />
<stop
id="stop3868"
offset="1"
style="stop-color:#002795;stop-opacity:1;" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3765"
id="linearGradient3771"
x1="35"
y1="51"
x2="31"
y2="18"
gradientUnits="userSpaceOnUse" />
<linearGradient
xlink:href="#linearGradient3765"
id="linearGradient3000"
gradientUnits="userSpaceOnUse"
x1="35"
y1="51"
x2="31"
y2="18" />
</defs>
<metadata
id="metadata2985">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<rect
style="fill:#c8c8c8;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
id="rect12275"
width="2"
height="26"
x="12"
y="1.1085762e-06" />
<rect
style="fill:#c8c8c8;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
id="rect12379"
width="26"
height="2"
x="9.1291042e-08"
y="12.000001" />
<path
style="fill:#73d216;stroke:none;stroke-width:1"
d="M 13.29328,39.322385 52.228648,13.929754 59.000016,59.636489 Z"
id="path2991-3" />
<path
style="fill:none;stroke:#8ae234;stroke-width:4.15385;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 16.98489,40.412782 51.699332,18.107412"
id="path3779" />
<path
style="fill:none;stroke:#8ae234;stroke-width:4.15385;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 48.876308,16.721754 6.13595,39.970853"
id="path3781" />
<path
style="fill:none;stroke:#8ae234;stroke-width:4.15385;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 58.222982,55.26355 15.832544,36.783122"
id="path3783" />
<path
style="fill:none;stroke:#172a04;stroke-width:4.15385;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 13.29328,39.322385 52.228648,13.929754 59.000016,59.636489 Z"
id="path2991" />
<ellipse
style="fill:#204a87;fill-opacity:1;stroke:#0b1521;stroke-width:4.15385;stroke-opacity:1"
id="path10509"
cx="41.265102"
cy="36.691578"
rx="7.9562716"
ry="6.1528296" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -1,40 +0,0 @@
// clang-format off
/* XPM */
static const char *mesh_fillhole[]={
"32 32 3 1",
"# c #000000",
"+ c #ffffff",
". c None",
"....+...........................",
"....+....................##.....",
"....+...................###.....",
".......................####.....",
"+++.+.+++............###++#.....",
"....................###+++##....",
"....+.............###+++++##....",
"....+............###++++++##....",
"....+..........###++++++++##....",
"..............###++++++++++#....",
"............###++++++++++++#....",
"...........###+++#######+++##...",
"..........###+++#......##++##...",
"........###++++#........#++##...",
".......###+++++#........##+##...",
".....###+++++++#........##.##...",
"....###++++++++##.......#+++#...",
"....####++++++++##....##++++##..",
"......####++++++++#####+++++##..",
"........#####+++++++++++++++##..",
"...........####+++++++++++++##..",
".............#####++++++++++##..",
"................####+++++++++#..",
"..................#####++++++#..",
".....................####++++##.",
".......................#####+##.",
"..........................#####.",
"............................##..",
"................................",
"................................",
"................................",
"................................"};
// clang-format on

View File

@@ -96,5 +96,6 @@
<file>icons/Part_SectionCut.svg</file>
<file>icons/PartWorkbench.svg</file>
<file>icons/preferences-part_design.svg</file>
<file>icons/Part_Detached.svg</file>
</qresource>
</RCC>

View File

@@ -0,0 +1,389 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64"
height="64"
id="svg2869"
version="1.1"
viewBox="0 0 64 64"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2871">
<linearGradient
id="linearGradient295">
<stop
style="stop-color:#d4d8d0;stop-opacity:1;"
offset="0"
id="stop295" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop296" />
</linearGradient>
<linearGradient
id="linearGradient5">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop19" />
<stop
style="stop-color:#ef2929;stop-opacity:0;"
offset="1"
id="stop20" />
</linearGradient>
<linearGradient
id="swatch18">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop18" />
</linearGradient>
<linearGradient
id="swatch15">
<stop
style="stop-color:#3d0000;stop-opacity:1;"
offset="0"
id="stop15" />
</linearGradient>
<linearGradient
id="linearGradient5-1">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop5" />
<stop
style="stop-color:#ef2929;stop-opacity:0;"
offset="1"
id="stop6" />
</linearGradient>
<linearGradient
id="linearGradient3836-9">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1" />
</linearGradient>
<linearGradient
id="linearGradient3836-9-3">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8-5" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1-6" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientUnits="userSpaceOnUse"
id="linearGradient3082"
xlink:href="#linearGradient3836-9-3" />
<linearGradient
id="linearGradient3836-9-7">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8-0" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1-9" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientUnits="userSpaceOnUse"
id="linearGradient3082-3"
xlink:href="#linearGradient3836-9-7" />
<linearGradient
xlink:href="#linearGradient3836-9-3"
id="linearGradient3801-1-3"
gradientUnits="userSpaceOnUse"
x1="-18"
y1="18"
x2="-22"
y2="5"
gradientTransform="matrix(0.76342439,0,0,0.75750425,-4.596389,2.7525637)" />
<linearGradient
xlink:href="#linearGradient3836-9-3"
id="linearGradient3801-1-3-2"
gradientUnits="userSpaceOnUse"
x1="-18"
y1="18"
x2="-22"
y2="5"
gradientTransform="matrix(0.84956703,0,0,0.84301394,-2.927337,1.7790378)" />
<linearGradient
xlink:href="#linearGradient3838"
id="linearGradient3844"
x1="36"
y1="1039.3622"
x2="32"
y2="1003.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(2.0563921e-6,-988.36218)" />
<linearGradient
id="linearGradient3838">
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="0"
id="stop3840" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop3842" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3830"
id="linearGradient3836"
x1="36"
y1="1037.3622"
x2="32"
y2="1005.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(2.0563921e-6,-988.36218)" />
<linearGradient
id="linearGradient3830">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3832" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="1"
id="stop3834" />
</linearGradient>
<linearGradient
x1="10.504496"
y1="16.48678"
x2="5.9349072"
y2="1.6356685"
id="linearGradient-1"
gradientTransform="scale(0.99999018,1.0000098)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#A40000"
offset="0%"
id="stop6-9" />
<stop
stop-color="#EF2929"
offset="100%"
id="stop8" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3815"
id="linearGradient3856"
gradientUnits="userSpaceOnUse"
x1="80"
y1="58"
x2="79"
y2="42" />
<linearGradient
id="linearGradient3815">
<stop
style="stop-color:#3465a4;stop-opacity:1"
offset="0"
id="stop3817" />
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="1"
id="stop3819" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3841"
id="linearGradient3858"
gradientUnits="userSpaceOnUse"
x1="109"
y1="51"
x2="105"
y2="38" />
<linearGradient
id="linearGradient3841">
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="0"
id="stop3843" />
<stop
style="stop-color:#3465a4;stop-opacity:1"
offset="1"
id="stop3845" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientTransform="matrix(0.77114848,0,0,0.77113937,-4.4090973,2.5859051)"
gradientUnits="userSpaceOnUse"
id="linearGradient3898"
xlink:href="#linearGradient3836-9-3" />
<linearGradient
xlink:href="#linearGradient3815"
id="linearGradient3978"
gradientUnits="userSpaceOnUse"
x1="-15"
y1="37"
x2="-19"
y2="37"
gradientTransform="rotate(135.18861,5.7426909,37.969029)" />
<linearGradient
xlink:href="#linearGradient17"
id="linearGradient3898-0"
x1="37.429146"
y1="41.590584"
x2="24.483221"
y2="4.9104676"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient17">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop16" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="1"
id="stop17" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient17"
id="linearGradient3856-9"
x1="22.84341"
y1="4.8241611"
x2="30.783579"
y2="28.644661"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient2">
<stop
style="stop-color:#73d216;stop-opacity:1;"
offset="0"
id="stop1" />
<stop
style="stop-color:#8ae234;stop-opacity:1;"
offset="1"
id="stop2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3830"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352777"
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.079004"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0625002,-1.0000002,0.91069082,0.96760906,-43.504641,46.064532)" />
<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="linearGradient3806">
<stop
style="stop-color:#8ae234;stop-opacity:1"
offset="0"
id="stop3808" />
<stop
style="stop-color:#4e9a06;stop-opacity:1"
offset="1"
id="stop3810" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient295"
id="linearGradient296"
x1="2.2958763"
y1="34.751953"
x2="63.331003"
y2="34.751953"
gradientUnits="userSpaceOnUse" />
<linearGradient
xlink:href="#linearGradient2"
id="linearGradient4"
x1="47.210747"
y1="56.922218"
x2="24.176626"
y2="19.896067"
gradientUnits="userSpaceOnUse" />
</defs>
<metadata
id="metadata2874">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:creator>
<cc:Agent>
<dc:title>[maxwxyz]</dc:title>
</cc:Agent>
</dc:creator>
<dc:relation>https://www.freecad.org/wiki/index.php?title=Artwork</dc:relation>
<dc:publisher>
<cc:Agent>
<dc:title>FreeCAD</dc:title>
</cc:Agent>
</dc:publisher>
<dc:identifier>FreeCAD/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_CreateArc.svg</dc:identifier>
<dc:rights>
<cc:Agent>
<dc:title>FreeCAD LGPL2+</dc:title>
</cc:Agent>
</dc:rights>
<dc:date>2023-12-19</dc:date>
</cc:Work>
</rdf:RDF>
</metadata>
<path
style="display:inline;fill:#be1cd8;stroke:#5c3566;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;fill-opacity:1"
id="ellipse294"
d="M 32.000002,1.5000047 C 48.833516,1.5000047 62.5,15.166487 62.5,32.000002 62.5,48.833517 48.833516,62.5 32.000002,62.5 15.166488,62.5 1.5000047,48.833517 1.5000047,32.000002 1.5000047,15.166487 15.166488,1.5000047 32.000002,1.5000047 Z" />
<ellipse
style="fill:#eeeeec;fill-opacity:1;stroke:#5c3566;stroke-width:4;stroke-linecap:round;stroke-linejoin:round"
id="path1"
cx="31.999998"
cy="17.617846"
rx="10.262354"
ry="10.236812" />
<ellipse
style="fill:#eeeeec;fill-opacity:1;stroke:#5c3566;stroke-width:4;stroke-linecap:round;stroke-linejoin:round"
id="circle1"
cx="31.999998"
cy="46.382153"
rx="10.262354"
ry="10.236812" />
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -61,27 +61,13 @@ QIcon ViewProviderAttachExtension::extensionMergeColorfullOverlayIcons (const QI
if (attach) {
if(!attach->isAttacherActive()) {
QPixmap px;
static QPixmap px(
Gui::BitmapFactory().pixmapFromSvg("Part_Detached", QSize(10, 10)));
static const char * const feature_detached_xpm[]={
"9 10 3 1",
". c None",
"# c #cc00cc",
"a c #ffffff",
"...###...",
".##aaa##.",
"##aaaaa##",
"##aaaaa##",
"#########",
"#########",
"#########",
".##aaa##.",
".##aaa##.",
"...###..."};
px = QPixmap(feature_detached_xpm);
mergedicon = Gui::BitmapFactoryInst::mergePixmap(mergedicon, px, Gui::BitmapFactoryInst::BottomLeft);
mergedicon =
Gui::BitmapFactoryInst::mergePixmap(mergedicon,
px,
Gui::BitmapFactoryInst::BottomLeft);
}
}
}

View File

@@ -35,6 +35,7 @@
<file>icons/PartDesign_MoveFeatureInTree.svg</file>
<file>icons/PartDesign_MoveTip.svg</file>
<file>icons/PartDesign_MultiTransform.svg</file>
<file>icons/PartDesign_Overlay_Tip.svg</file>
<file>icons/PartDesign_Pad.svg</file>
<file>icons/PartDesign_Plane.svg</file>
<file>icons/PartDesign_Pocket.svg</file>

View File

@@ -0,0 +1,393 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64"
height="64"
id="svg2869"
version="1.1"
viewBox="0 0 64 64"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2871">
<linearGradient
id="linearGradient295">
<stop
style="stop-color:#d4d8d0;stop-opacity:1;"
offset="0"
id="stop295" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop296" />
</linearGradient>
<linearGradient
id="linearGradient5">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop19" />
<stop
style="stop-color:#ef2929;stop-opacity:0;"
offset="1"
id="stop20" />
</linearGradient>
<linearGradient
id="swatch18">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop18" />
</linearGradient>
<linearGradient
id="swatch15">
<stop
style="stop-color:#3d0000;stop-opacity:1;"
offset="0"
id="stop15" />
</linearGradient>
<linearGradient
id="linearGradient5-1">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop5" />
<stop
style="stop-color:#ef2929;stop-opacity:0;"
offset="1"
id="stop6" />
</linearGradient>
<linearGradient
id="linearGradient3836-9">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1" />
</linearGradient>
<linearGradient
id="linearGradient3836-9-3">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8-5" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1-6" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientUnits="userSpaceOnUse"
id="linearGradient3082"
xlink:href="#linearGradient3836-9-3" />
<linearGradient
id="linearGradient3836-9-7">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8-0" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1-9" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientUnits="userSpaceOnUse"
id="linearGradient3082-3"
xlink:href="#linearGradient3836-9-7" />
<linearGradient
xlink:href="#linearGradient3836-9-3"
id="linearGradient3801-1-3"
gradientUnits="userSpaceOnUse"
x1="-18"
y1="18"
x2="-22"
y2="5"
gradientTransform="matrix(0.76342439,0,0,0.75750425,-4.596389,2.7525637)" />
<linearGradient
xlink:href="#linearGradient3836-9-3"
id="linearGradient3801-1-3-2"
gradientUnits="userSpaceOnUse"
x1="-18"
y1="18"
x2="-22"
y2="5"
gradientTransform="matrix(0.84956703,0,0,0.84301394,-2.927337,1.7790378)" />
<linearGradient
xlink:href="#linearGradient3838"
id="linearGradient3844"
x1="36"
y1="1039.3622"
x2="32"
y2="1003.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(2.0563921e-6,-988.36218)" />
<linearGradient
id="linearGradient3838">
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="0"
id="stop3840" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop3842" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3830"
id="linearGradient3836"
x1="36"
y1="1037.3622"
x2="32"
y2="1005.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(2.0563921e-6,-988.36218)" />
<linearGradient
id="linearGradient3830">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3832" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="1"
id="stop3834" />
</linearGradient>
<linearGradient
x1="10.504496"
y1="16.48678"
x2="5.9349072"
y2="1.6356685"
id="linearGradient-1"
gradientTransform="scale(0.99999018,1.0000098)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#A40000"
offset="0%"
id="stop6-9" />
<stop
stop-color="#EF2929"
offset="100%"
id="stop8" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3815"
id="linearGradient3856"
gradientUnits="userSpaceOnUse"
x1="80"
y1="58"
x2="79"
y2="42" />
<linearGradient
id="linearGradient3815">
<stop
style="stop-color:#3465a4;stop-opacity:1"
offset="0"
id="stop3817" />
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="1"
id="stop3819" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3841"
id="linearGradient3858"
gradientUnits="userSpaceOnUse"
x1="109"
y1="51"
x2="105"
y2="38" />
<linearGradient
id="linearGradient3841">
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="0"
id="stop3843" />
<stop
style="stop-color:#3465a4;stop-opacity:1"
offset="1"
id="stop3845" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientTransform="matrix(0.77114848,0,0,0.77113937,-4.4090973,2.5859051)"
gradientUnits="userSpaceOnUse"
id="linearGradient3898"
xlink:href="#linearGradient3836-9-3" />
<linearGradient
xlink:href="#linearGradient3815"
id="linearGradient3978"
gradientUnits="userSpaceOnUse"
x1="-15"
y1="37"
x2="-19"
y2="37"
gradientTransform="rotate(135.18861,5.7426909,37.969029)" />
<linearGradient
xlink:href="#linearGradient17"
id="linearGradient3898-0"
x1="37.429146"
y1="41.590584"
x2="24.483221"
y2="4.9104676"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient17">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop16" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="1"
id="stop17" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient17"
id="linearGradient3856-9"
x1="22.84341"
y1="4.8241611"
x2="30.783579"
y2="28.644661"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient2">
<stop
style="stop-color:#73d216;stop-opacity:1;"
offset="0"
id="stop1" />
<stop
style="stop-color:#8ae234;stop-opacity:1;"
offset="1"
id="stop2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3830"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352777"
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.079004"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0625002,-1.0000002,0.91069082,0.96760906,-43.504641,46.064532)" />
<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="linearGradient3806">
<stop
style="stop-color:#8ae234;stop-opacity:1"
offset="0"
id="stop3808" />
<stop
style="stop-color:#4e9a06;stop-opacity:1"
offset="1"
id="stop3810" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient295"
id="linearGradient296"
x1="2.2958763"
y1="34.751953"
x2="63.331003"
y2="34.751953"
gradientUnits="userSpaceOnUse" />
<linearGradient
xlink:href="#linearGradient2"
id="linearGradient4"
x1="47.210747"
y1="56.922218"
x2="24.176626"
y2="19.896067"
gradientUnits="userSpaceOnUse" />
</defs>
<metadata
id="metadata2874">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:creator>
<cc:Agent>
<dc:title>[maxwxyz]</dc:title>
</cc:Agent>
</dc:creator>
<dc:relation>https://www.freecad.org/wiki/index.php?title=Artwork</dc:relation>
<dc:publisher>
<cc:Agent>
<dc:title>FreeCAD</dc:title>
</cc:Agent>
</dc:publisher>
<dc:identifier>FreeCAD/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_CreateArc.svg</dc:identifier>
<dc:rights>
<cc:Agent>
<dc:title>FreeCAD LGPL2+</dc:title>
</cc:Agent>
</dc:rights>
<dc:date>2023-12-19</dc:date>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer3"
style="display:inline;stroke-width:0.935513"
transform="matrix(1.0689331,0,0,1.0689331,-2.2058574,-2.2058574)">
<path
style="display:inline;fill:#73d216;stroke:#4e9a06;stroke-width:2.80654;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"
id="ellipse294"
d="M 32,3.4668795 C 47.747958,3.4668795 60.53312,16.252041 60.53312,32 60.53312,47.747959 47.747958,60.53312 32,60.53312 16.252042,60.53312 3.4668795,47.747959 3.4668795,32 3.4668795,16.252041 16.252042,3.4668795 32,3.4668795 Z" />
<g
style="display:inline;stroke-width:0.855194"
id="layer1-3-3"
transform="matrix(0,0.72063277,0.66122554,0,9.0206815,7.8179105)">
<path
id="path3343-6"
d="M 33.483354,-4.2025842 V 25.020123 H 0.75863469 l 1e-7,19.464988 H 33.483354 v 29.222706 l 37.072683,-38.9552 z"
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4.06573;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<g
style="display:inline;fill:url(#linearGradient296);fill-opacity:1;stroke:#eeeeec;stroke-width:2.71049;stroke-dasharray:none;stroke-opacity:1"
id="g294"
transform="matrix(0,0.72063277,0.66122554,0,9.0206815,7.8179105)" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -205,26 +205,8 @@ QIcon ViewProvider::mergeColorfulOverlayIcons (const QIcon & orig) const
QIcon mergedicon = orig;
if(isSetTipIcon) {
QPixmap px;
static const char * const feature_tip_xpm[]={
"9 9 3 1",
". c None",
"# c #00cc00",
"a c #ffffff",
"...###...",
".##aaa##.",
".##aaa##.",
"###aaa###",
"##aaaaa##",
"##aaaaa##",
".##aaa##.",
".##aaa##.",
"...###..."};
px = QPixmap(feature_tip_xpm);
static QPixmap px(Gui::BitmapFactory().pixmapFromSvg("PartDesign_Overlay_Tip", QSize(10, 10)));
mergedicon = Gui::BitmapFactoryInst::mergePixmap(mergedicon, px, Gui::BitmapFactoryInst::BottomRight);
}
return Gui::ViewProvider::mergeColorfulOverlayIcons (mergedicon);

View File

@@ -2,6 +2,7 @@
<qresource>
<file>icons/Sketcher_Sketch.svg</file>
<file>icons/SketcherWorkbench.svg</file>
<file>icons/Sketcher_NotFullyConstrained.svg</file>
<file alias="icons/preferences-sketcher.svg">icons/SketcherWorkbench.svg</file>
</qresource>
<qresource>

View File

@@ -0,0 +1,399 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64"
height="64"
id="svg2869"
version="1.1"
viewBox="0 0 64 64"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2871">
<linearGradient
id="linearGradient295">
<stop
style="stop-color:#d4d8d0;stop-opacity:1;"
offset="0"
id="stop295" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop296" />
</linearGradient>
<linearGradient
id="linearGradient5">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop19" />
<stop
style="stop-color:#ef2929;stop-opacity:0;"
offset="1"
id="stop20" />
</linearGradient>
<linearGradient
id="swatch18">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop18" />
</linearGradient>
<linearGradient
id="swatch15">
<stop
style="stop-color:#3d0000;stop-opacity:1;"
offset="0"
id="stop15" />
</linearGradient>
<linearGradient
id="linearGradient5-1">
<stop
style="stop-color:#ef2929;stop-opacity:1;"
offset="0"
id="stop5" />
<stop
style="stop-color:#ef2929;stop-opacity:0;"
offset="1"
id="stop6" />
</linearGradient>
<linearGradient
id="linearGradient3836-9">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1" />
</linearGradient>
<linearGradient
id="linearGradient3836-9-3">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8-5" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1-6" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientUnits="userSpaceOnUse"
id="linearGradient3082"
xlink:href="#linearGradient3836-9-3" />
<linearGradient
id="linearGradient3836-9-7">
<stop
style="stop-color:#a40000;stop-opacity:1"
offset="0"
id="stop3838-8-0" />
<stop
style="stop-color:#ef2929;stop-opacity:1"
offset="1"
id="stop3840-1-9" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientUnits="userSpaceOnUse"
id="linearGradient3082-3"
xlink:href="#linearGradient3836-9-7" />
<linearGradient
xlink:href="#linearGradient3836-9-3"
id="linearGradient3801-1-3"
gradientUnits="userSpaceOnUse"
x1="-18"
y1="18"
x2="-22"
y2="5"
gradientTransform="matrix(0.76342439,0,0,0.75750425,-4.596389,2.7525637)" />
<linearGradient
xlink:href="#linearGradient3836-9-3"
id="linearGradient3801-1-3-2"
gradientUnits="userSpaceOnUse"
x1="-18"
y1="18"
x2="-22"
y2="5"
gradientTransform="matrix(0.84956703,0,0,0.84301394,-2.927337,1.7790378)" />
<linearGradient
xlink:href="#linearGradient3838"
id="linearGradient3844"
x1="36"
y1="1039.3622"
x2="32"
y2="1003.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(2.0563921e-6,-988.36218)" />
<linearGradient
id="linearGradient3838">
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="0"
id="stop3840" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop3842" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3830"
id="linearGradient3836"
x1="36"
y1="1037.3622"
x2="32"
y2="1005.3622"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(2.0563921e-6,-988.36218)" />
<linearGradient
id="linearGradient3830">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3832" />
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="1"
id="stop3834" />
</linearGradient>
<linearGradient
x1="10.504496"
y1="16.48678"
x2="5.9349072"
y2="1.6356685"
id="linearGradient-1"
gradientTransform="scale(0.99999018,1.0000098)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#A40000"
offset="0%"
id="stop6-9" />
<stop
stop-color="#EF2929"
offset="100%"
id="stop8" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3815"
id="linearGradient3856"
gradientUnits="userSpaceOnUse"
x1="80"
y1="58"
x2="79"
y2="42" />
<linearGradient
id="linearGradient3815">
<stop
style="stop-color:#3465a4;stop-opacity:1"
offset="0"
id="stop3817" />
<stop
style="stop-color:#729fcf;stop-opacity:1"
offset="1"
id="stop3819" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3841"
id="linearGradient3858"
gradientUnits="userSpaceOnUse"
x1="109"
y1="51"
x2="105"
y2="38" />
<linearGradient
id="linearGradient3841">
<stop
style="stop-color:#204a87;stop-opacity:1"
offset="0"
id="stop3843" />
<stop
style="stop-color:#3465a4;stop-opacity:1"
offset="1"
id="stop3845" />
</linearGradient>
<linearGradient
y2="5"
x2="-22"
y1="18"
x1="-18"
gradientTransform="matrix(0.77114848,0,0,0.77113937,-4.4090973,2.5859051)"
gradientUnits="userSpaceOnUse"
id="linearGradient3898"
xlink:href="#linearGradient3836-9-3" />
<linearGradient
xlink:href="#linearGradient3815"
id="linearGradient3978"
gradientUnits="userSpaceOnUse"
x1="-15"
y1="37"
x2="-19"
y2="37"
gradientTransform="rotate(135.18861,5.7426909,37.969029)" />
<linearGradient
xlink:href="#linearGradient17"
id="linearGradient3898-0"
x1="37.429146"
y1="41.590584"
x2="24.483221"
y2="4.9104676"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient17">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop16" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="1"
id="stop17" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient17"
id="linearGradient3856-9"
x1="22.84341"
y1="4.8241611"
x2="30.783579"
y2="28.644661"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient2">
<stop
style="stop-color:#73d216;stop-opacity:1;"
offset="0"
id="stop1" />
<stop
style="stop-color:#8ae234;stop-opacity:1;"
offset="1"
id="stop2" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient3830"
id="radialGradient3820"
cx="20.945665"
cy="24.73864"
fx="20.945665"
fy="24.73864"
r="26.352777"
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.079004"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0625002,-1.0000002,0.91069082,0.96760906,-43.504641,46.064532)" />
<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="linearGradient3806">
<stop
style="stop-color:#8ae234;stop-opacity:1"
offset="0"
id="stop3808" />
<stop
style="stop-color:#4e9a06;stop-opacity:1"
offset="1"
id="stop3810" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient295"
id="linearGradient296"
x1="2.2958763"
y1="34.751953"
x2="63.331003"
y2="34.751953"
gradientUnits="userSpaceOnUse" />
<linearGradient
xlink:href="#linearGradient2"
id="linearGradient4"
x1="47.210747"
y1="56.922218"
x2="24.176626"
y2="19.896067"
gradientUnits="userSpaceOnUse" />
</defs>
<metadata
id="metadata2874">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:creator>
<cc:Agent>
<dc:title>[maxwxyz]</dc:title>
</cc:Agent>
</dc:creator>
<dc:relation>https://www.freecad.org/wiki/index.php?title=Artwork</dc:relation>
<dc:publisher>
<cc:Agent>
<dc:title>FreeCAD</dc:title>
</cc:Agent>
</dc:publisher>
<dc:identifier>FreeCAD/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_CreateArc.svg</dc:identifier>
<dc:rights>
<cc:Agent>
<dc:title>FreeCAD LGPL2+</dc:title>
</cc:Agent>
</dc:rights>
<dc:date>2023-12-19</dc:date>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer3"
style="display:none;stroke-width:0.935513"
transform="matrix(1.0689331,0,0,1.0689331,-2.2058574,-2.2058574)">
<path
style="display:inline;fill:#73d216;stroke:#4e9a06;stroke-width:2.64333;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"
id="ellipse294"
d="M 32,4.6855469 C 47.075353,4.6855469 59.314453,16.924646 59.314453,32 59.314453,47.075354 47.075353,59.314453 32,59.314453 16.924647,59.314453 4.6855469,47.075354 4.6855469,32 4.6855469,16.924646 16.924647,4.6855469 32,4.6855469 Z"
transform="matrix(1.0617412,0,0,1.0617412,-1.9757177,-1.9757177)" />
<g
style="display:inline;stroke-width:0.855194"
id="layer1-3-3"
transform="matrix(0,0.72063277,0.66122554,0,9.0206815,7.8179105)">
<path
id="path3343-6"
d="M 33.483354,-4.2025842 V 25.020123 H 0.75863469 l 1e-7,19.464988 H 33.483354 v 29.222706 l 37.072683,-38.9552 z"
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4.06573;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
<g
style="display:inline;fill:url(#linearGradient296);fill-opacity:1;stroke:#eeeeec;stroke-width:2.71049;stroke-dasharray:none;stroke-opacity:1"
id="g294"
transform="matrix(0,0.72063277,0.66122554,0,9.0206815,7.8179105)" />
</g>
<path
d="m 31.75945,42.10967 10.859112,13.960971 h 19.381454 v -0.06877 L 42.481105,31.381044 60.969088,7.9981378 V 7.9293645 H 41.931277 L 32.24055,20.514869 22.481094,7.9293646 H 3.0309121 v 0.068773 L 21.518895,31.31227 1.9999837,56.001867 v 0.06877 H 21.037794 Z"
id="text1"
style="font-size:68.7509px;font-family:Decimal;-inkscape-font-specification:'Decimal, weight=950';fill:#edd400;stroke:#a38500;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
aria-label="X" />
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -3618,23 +3618,7 @@ QIcon ViewProviderSketch::mergeColorfulOverlayIcons(const QIcon& orig) const
QIcon mergedicon = orig;
if (!getSketchObject()->FullyConstrained.getValue()) {
QPixmap px;
static const char* const sketcher_notfullyconstrained_xpm[] = {"9 9 3 1",
". c None",
"# c #dbaf00",
"a c #ffcc00",
"##.....##",
"#a#...#a#",
"#aa#.#aa#",
".#a#.#a#.",
".#a#.#a#.",
".#a#.#a#.",
"#aa#.#aa#",
"#a#...#a#",
"##.....##"};
px = QPixmap(sketcher_notfullyconstrained_xpm);
static QPixmap px(Gui::BitmapFactory().pixmapFromSvg("Sketcher_NotFullyConstrained", QSize(10, 10)));
mergedicon = Gui::BitmapFactoryInst::mergePixmap(
mergedicon, px, Gui::BitmapFactoryInst::BottomRight);
}