Files
create/icons/themed/TechDraw_ExtensionCreateHorizChamferDimension.svg
forbes d7b532255b
Some checks failed
Build and Test / build (pull_request) Has been cancelled
feat(icons): add icon theming infrastructure with Catppuccin color remapping
- Remove hand-crafted kindred-icons/ in favor of auto-generated themed icons
- Add icons/mappings/ with FCAD.csv (Tango palette) and kindred.csv (Catppuccin Mocha)
- Add icons/retheme.py script to remap upstream FreeCAD SVG colors
- Generate icons/themed/ with 1,595 themed SVGs (45,300 color replacements)
- BitmapFactory loads icons/themed/ as highest priority before default icons
- 157-color mapping covers the full Tango palette, interpolating between
  4 luminance anchors per color family

Regenerate: python3 icons/retheme.py
2026-02-15 20:34:22 -06:00

166 lines
7.2 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64"
height="64"
viewBox="0 0 16.933333 16.933334"
version="1.1"
id="svg1876"
style="enable-background:new"
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="defs1870">
<filter
style="color-interpolation-filters:sRGB"
id="filter1958"
x="-0.071428812"
y="-0.09313091"
width="1.1428603"
height="1.1862584">
<feBlend
mode="exclusion"
in2="BackgroundImage"
id="feBlend1960" />
</filter>
</defs>
<metadata
id="metadata1873">
<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"
style="enable-background:new"
transform="matrix(0,1,1,0,1.0917794e-5,-1.09e-5)">
<g
id="g1">
<path
style="display:inline;fill:none;stroke:#664506;stroke-width:1.5875;stroke-linecap:round;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 14.116977,4.1022798 H 8.2961434"
id="path12"
transform="matrix(0,0.99999999,0.99999999,0,-0.662763,-4.85656)" />
<path
style="display:inline;fill:none;stroke:#f9e2af;stroke-width:0.529167;stroke-linecap:round;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 14.116977,4.1022798 H 8.2961434"
id="path13"
transform="matrix(0,0.99999999,0.99999999,0,-0.662763,-4.85656)" />
</g>
<g
id="g5-5"
transform="matrix(0,0.99999999,0.99999999,0,-0.662763,-4.85656)"
style="display:inline;enable-background:new">
<path
style="fill:none;stroke:#664506;stroke-width:1.5875;stroke-linecap:round;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 5.7074616,1.9856817 5.7075907,13.098115"
id="path10"
transform="translate(2.5886821)" />
<path
style="fill:none;stroke:#f9e2af;stroke-width:0.529167;stroke-linecap:round;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 5.7074616,1.9856817 5.7075907,13.098115"
id="path11"
transform="translate(2.5886821)" />
<g
id="g7-1"
style="display:inline;enable-background:new"
transform="translate(-5.9498167,-9.4162747)">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="path3-4"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="circle3-1"
d="m 14.21875,12.990234 h 0.02734 c 0.289417,0 0.529297,0.23988 0.529297,0.529297 0,0.289418 -0.238664,0.527344 -0.529297,0.527344 -0.290634,0 -0.529297,-0.237926 -0.529297,-0.527344 0,-0.280508 0.228874,-0.515454 0.501953,-0.529297 z" />
</g>
</g>
<g
id="g6-1"
transform="matrix(0,0.99999999,0.99999999,0,-0.66276501,-2.2678779)"
style="enable-background:new">
<path
style="fill:none;stroke:#664506;stroke-width:1.5875;stroke-linecap:round;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 6.6145168,9.2604172 H 1.3229167"
id="path7"
transform="matrix(0,1,1,0,2.2678779,0.66276502)" />
<path
style="fill:none;stroke:#f9e2af;stroke-width:0.529167;stroke-linecap:round;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 6.6145168,9.2604172 H 1.3229167"
id="path9"
transform="matrix(0,1,1,0,2.2678779,0.66276502)" />
<g
id="g4-9"
style="enable-background:new"
transform="translate(-2.7176654,-9.4162727)">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="circle2-5"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="path4-8"
d="m 14.21875,12.990234 h 0.02734 c 0.289417,0 0.529297,0.23988 0.529297,0.529297 0,0.289418 -0.238664,0.527344 -0.529297,0.527344 -0.290634,0 -0.529297,-0.237926 -0.529297,-0.527344 0,-0.280508 0.228874,-0.515454 0.501953,-0.529297 z" />
</g>
</g>
<g
id="g2-5"
style="display:inline;enable-background:new"
transform="matrix(0,1.0000024,1.0000152,0,-0.6126779,-0.73663088)">
<path
style="display:inline;fill:none;stroke:#313244;stroke-width:1.5875;stroke-linecap:square;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 6.6145835,14.022917 6.6145167,9.2604171 12.43535,3.4397129 15.610417,3.4395834"
id="path5"
transform="matrix(0,0.99998479,0.99999759,0,0.73662911,0.61266859)" />
<path
style="display:inline;fill:none;stroke:#6c7086;stroke-width:0.529167;stroke-linecap:square;stroke-dasharray:none;paint-order:fill markers stroke;enable-background:new"
d="M 6.6145835,14.552084 6.6145167,9.2604171 12.43535,3.4397129 16.139584,3.4395834"
id="path6"
transform="matrix(0,0.99998479,0.99999759,0,0.73662911,0.61266859)" />
</g>
<g
id="g15-5"
transform="matrix(0,0.99999999,0.99999999,0,-6.9040377,-4.9855431)"
style="display:inline;stroke-width:0.529167;stroke-dasharray:none;enable-background:new">
<circle
style="fill:#6c7086;stroke:#313244;stroke-width:0.529167;stroke-dasharray:none"
id="circle15-2"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#45475a;stroke:#6c7086;stroke-width:0.529167;stroke-dasharray:none"
id="path15-6"
d="m 14.21875,12.990234 h 0.02734 c 0.289417,0 0.529297,0.23988 0.529297,0.529297 0,0.289418 -0.238664,0.527344 -0.529297,0.527344 -0.290634,0 -0.529297,-0.237926 -0.529297,-0.527344 0,-0.280508 0.228874,-0.515454 0.501953,-0.529297 z" />
</g>
<g
id="g8-4"
transform="matrix(0,0.99999999,0.99999999,0,-1.0832043,-10.806377)"
style="display:inline;stroke-width:0.529167;stroke-dasharray:none;enable-background:new">
<circle
style="fill:#6c7086;stroke:#313244;stroke-width:0.529167;stroke-dasharray:none"
id="circle8-8"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#45475a;stroke:#6c7086;stroke-width:0.529167;stroke-dasharray:none"
id="path8-1"
d="m 14.21875,12.990234 h 0.02734 c 0.289417,0 0.529297,0.23988 0.529297,0.529297 0,0.289418 -0.238664,0.527344 -0.529297,0.527344 -0.290634,0 -0.529297,-0.237926 -0.529297,-0.527344 0,-0.280508 0.228874,-0.515454 0.501953,-0.529297 z" />
</g>
</g>
</svg>