Files
create/icons/themed/TechDraw_ExtensionCascadeVertDimension.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

297 lines
13 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">
<rect
x="13.878315"
y="11.282371"
width="48.923557"
height="45.828393"
id="rect4" />
</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"
transform="rotate(-90,8.7988077,8.0022339)"
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 2.5135423,14.020093 -3e-7,-12.7"
id="path28" />
<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 2.5135423,14.020093 -3e-7,-13.22916665"
id="path29" />
<g
id="g22">
<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 14.155348,14.020093 14.155218,1.3201435"
id="path1" />
<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 10.451042,10.315926 V 1.320093"
id="path2" />
<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.482422,6.6117597 6.482292,1.320093"
id="path9" />
<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 2.513542,12.432593 12.170833,0.0028"
id="path13" />
<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 2.5135422,8.7284264 7.8054688,9.098e-4"
id="path12" />
<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 2.5135422,5.0242597 7.011719,5.0251661"
id="path10" />
</g>
<g
id="g27"
style="enable-background:new">
<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 14.155342,14.020093 14.155212,0.79092635"
id="path22" />
<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 10.451042,10.315926 V 0.79092635"
id="path23" />
<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.482422,6.6117597 6.4822921,0.79092635"
id="path24" />
<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 2.5135422,12.432593 12.1708328,0.0028"
id="path27" />
<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 2.5135422,8.7284266 7.8054688,9.096e-4"
id="path26" />
<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 2.5135422,5.0242599 7.011719,5.0251663"
id="path25" />
</g>
<g
id="g7"
transform="translate(-0.09075122,-1.0860281)"
style="enable-background:new">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="path3"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="circle3"
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="g6"
transform="translate(-3.7949179,-4.7901948)"
style="enable-background:new">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="circle4"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="path4"
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="g11"
transform="translate(-7.763668,-8.4943615)"
style="display:inline;enable-background:new">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="circle11"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="path11"
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="g15"
transform="translate(-11.732418,-8.4943615)"
style="display:inline;stroke-width:0.529167;stroke-dasharray:none;enable-background:new">
<circle
style="fill:#6c7086;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="circle15"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="path15"
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="g17"
transform="translate(-11.732418,-4.7901948)"
style="enable-background:new">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="circle17"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="path17"
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="g19"
transform="translate(-11.732418,-1.0860281)"
style="display:inline;enable-background:new">
<circle
style="fill:#f9e2af;stroke:#664506;stroke-width:0.529167;stroke-dasharray:none"
id="circle19"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#bc8009;stroke:#f9e2af;stroke-width:0.529167;stroke-dasharray:none"
id="path19"
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="g23"
style="enable-background:new"
transform="rotate(-90,4.9374672,12.741463)">
<g
id="g14"
transform="translate(0.07725068,0.164946)">
<path
style="fill:none;stroke:#d76363;stroke-width:0.529167;stroke-linecap:square;stroke-dasharray:none"
d="M 6.4920032,12.798425 H 7.5503363"
id="path18" />
<path
style="fill:none;stroke:#d76363;stroke-width:0.529167;stroke-linecap:square;stroke-dasharray:none"
d="M 6.4920032,11.740092 H 7.5503363"
id="path7" />
</g>
<g
id="g16"
transform="translate(-0.55774933,0.164946)">
<path
style="fill:none;stroke:#d76363;stroke-width:0.529167;stroke-linecap:square;stroke-dasharray:none"
d="m 10.83117,12.798425 h 1.058333"
id="path16" />
<path
style="fill:none;stroke:#d76363;stroke-width:0.529167;stroke-linecap:square;stroke-dasharray:none"
d="m 10.83117,11.740092 h 1.058333"
id="path8" />
</g>
</g>
<g
id="g20-3"
transform="translate(-0.13229134,-0.26740702)"
style="enable-background:new">
<path
style="fill:#bc8009;stroke:#313244;stroke-width:1.5875;stroke-linecap:square;stroke-linejoin:round;stroke-dasharray:none;paint-order:fill markers stroke"
d="M 2.1166651,2.1166667 H 14.816668"
id="path5-4" />
<path
style="fill:#bc8009;stroke:#6c7086;stroke-width:0.529167;stroke-linecap:square;stroke-linejoin:round;stroke-dasharray:none;paint-order:fill markers stroke"
d="M 1.5875,2.1166667 H 15.345833"
id="path6-5" />
</g>
<g
id="g18-6"
transform="translate(-11.732418,-11.669362)"
style="display:inline;enable-background:new">
<circle
style="fill:#6c7086;stroke:#313244;stroke-width:0.529167;stroke-dasharray:none"
id="circle6-1"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#45475a;stroke:#6c7086;stroke-width:0.529167;stroke-dasharray:none"
id="path14-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="g21-7"
transform="translate(-0.09075122,-11.669362)"
style="enable-background:new">
<circle
style="fill:#6c7086;stroke:#313244;stroke-width:0.529167;stroke-dasharray:none"
id="circle20-0"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#45475a;stroke:#6c7086;stroke-width:0.529167;stroke-dasharray:none"
id="path20-5"
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="g24-6"
transform="translate(-3.7949179,-11.669362)"
style="enable-background:new">
<circle
style="fill:#6c7086;stroke:#313244;stroke-width:0.529167;stroke-dasharray:none"
id="circle21-3"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#45475a;stroke:#6c7086;stroke-width:0.529167;stroke-dasharray:none"
id="path21-5"
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="g30-7"
transform="translate(-7.763668,-11.669362)"
style="display:inline;enable-background:new">
<circle
style="fill:#6c7086;stroke:#313244;stroke-width:0.529167;stroke-dasharray:none"
id="circle24-7"
cx="14.24596"
cy="13.518621"
r="1.0583334" />
<path
style="fill:#45475a;stroke:#6c7086;stroke-width:0.529167;stroke-dasharray:none"
id="path30-0"
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>