Also add some tweaks to the process-model script that I managed to lose.master
| @@ -19817,6 +19817,17 @@ const attributionData = { | |||
| "https://en.wikipedia.org/wiki/Compact_disc#/media/File:Comparison_CD_DVD_HDDVD_BD.svg" | |||
| ] | |||
| }, | |||
| { | |||
| prefix: "./media/objects/Bricks/", | |||
| all: null, | |||
| authors: [ | |||
| "chemicalcrux" | |||
| ], | |||
| citations: [ | |||
| "https://ncma.org/resource/typical-sizes-and-shapes-of-concrete-masonry-units/", | |||
| "https://www.homedepot.com/p/8-in-x-4-in-x-2-in-Clay-Brick-20050276/100570450#product-overview" | |||
| ] | |||
| }, | |||
| { | |||
| prefix: "./media/real-buildings/", | |||
| all: "https://wiki.openstreetmap.org/wiki/Blender", | |||
| @@ -0,0 +1,58 @@ | |||
| <?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" | |||
| id="svg20" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 630 298" | |||
| height="298pt" | |||
| width="630pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs24" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-185,649)"> | |||
| <path | |||
| id="path4" | |||
| d="m 1872,6467 -22,-23 V 4999 3553 l 23,-21 23,-22 h 3111 c 3000,0 3110,1 3126,18 16,17 17,134 17,1474 0,1397 -1,1456 -18,1471 -17,16 -249,17 -3129,17 H 1893 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g12" | |||
| transform="matrix(0.1,0,0,-0.1,-185,649)"> | |||
| <path | |||
| id="path8" | |||
| d="M 1950,5000 V 3610 H 3985 6020 V 5000 6390 H 3985 1950 Z" /> | |||
| <path | |||
| id="path10" | |||
| d="M 6120,5000 V 3610 h 965 965 v 1390 1390 h -965 -965 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g18" | |||
| transform="matrix(0.1,0,0,-0.1,-185,649)"> | |||
| <path | |||
| id="path14" | |||
| d="m 2013,6383 -51,-4 -7,-92 c -9,-133 -2,-2654 8,-2664 11,-11 4033,-11 4044,0 11,11 11,2743 0,2754 -8,8 -3887,14 -3994,6 z" /> | |||
| <path | |||
| id="path16" | |||
| d="m 6183,6383 -51,-4 -7,-92 c -9,-133 -2,-2654 8,-2664 11,-11 1893,-11 1904,0 11,11 11,2743 0,2754 -8,8 -1751,14 -1854,6 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,52 @@ | |||
| <?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" | |||
| id="svg16" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 844 416" | |||
| height="416pt" | |||
| width="844pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs20" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-78,708)"> | |||
| <path | |||
| id="path4" | |||
| d="m 796,7064 c -14,-14 -16,-215 -16,-2064 0,-1849 2,-2050 16,-2064 14,-15 410,-16 4204,-16 3794,0 4190,1 4204,16 14,14 16,215 16,2064 0,1849 -2,2050 -16,2064 -14,15 -410,16 -4204,16 -3794,0 -4190,-1 -4204,-16 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g10" | |||
| transform="matrix(0.1,0,0,-0.1,-78,708)"> | |||
| <path | |||
| id="path8" | |||
| d="M 880,5000 V 3020 H 5000 9120 V 5000 6980 H 5000 880 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g14" | |||
| transform="matrix(0.1,0,0,-0.1,-78,708)"> | |||
| <path | |||
| id="path12" | |||
| d="m 943,6973 -51,-4 -7,-102 c -9,-148 -2,-3824 8,-3834 11,-11 8203,-11 8214,0 11,11 11,3923 0,3934 -8,8 -8055,14 -8164,6 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,52 @@ | |||
| <?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" | |||
| id="svg16" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 416.15002 416.15002" | |||
| height="416.15002pt" | |||
| width="416.15002pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs20" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-291.925,708.075)"> | |||
| <path | |||
| id="path4" | |||
| d="m 2932,7068 c -17,-17 -17,-4119 0,-4136 17,-17 4119,-17 4136,0 17,17 17,4119 0,4136 -17,17 -4119,17 -4136,0 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g10" | |||
| transform="matrix(0.1,0,0,-0.1,-291.925,708.075)"> | |||
| <path | |||
| id="path8" | |||
| d="M 3020,5000 V 3020 H 5000 6980 V 5000 6980 H 5000 3020 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g14" | |||
| transform="matrix(0.1,0,0,-0.1,-291.925,708.075)"> | |||
| <path | |||
| id="path12" | |||
| d="m 3078,6973 -46,-4 -7,-102 c -9,-148 -2,-3824 8,-3834 11,-11 3923,-11 3934,0 11,11 11,3923 0,3934 -8,8 -3793,14 -3889,6 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,52 @@ | |||
| <?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" | |||
| id="svg16" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 844 416" | |||
| height="416pt" | |||
| width="844pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs20" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-78,708)"> | |||
| <path | |||
| id="path4" | |||
| d="m 796,7064 c -14,-14 -16,-213 -16,-2064 0,-1849 2,-2050 16,-2064 14,-15 410,-16 4204,-16 3794,0 4190,1 4204,16 14,14 16,215 16,2064 0,1845 -2,2050 -16,2064 -14,14 -417,16 -4204,16 -3798,0 -4190,-1 -4204,-16 z m 3385,-824 c 277,-44 519,-82 537,-85 l 32,-6 V 5000 3851 l -32,-6 c -18,-3 -260,-41 -537,-85 l -503,-80 h -528 -528 l -503,80 c -277,44 -519,82 -536,85 l -33,6 v 1149 c 0,633 3,1150 8,1151 4,0 239,38 522,83 l 515,84 541,1 542,1 z m 3700,0 c 277,-44 519,-82 537,-85 l 32,-6 V 5000 3851 l -32,-6 c -18,-3 -260,-41 -537,-85 l -503,-80 h -528 -528 l -503,80 c -277,44 -519,82 -536,85 l -33,6 v 1149 c 0,633 3,1150 8,1151 4,0 239,38 522,83 l 515,84 541,1 542,1 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g10" | |||
| transform="matrix(0.1,0,0,-0.1,-78,708)"> | |||
| <path | |||
| id="path8" | |||
| d="M 880,5000 V 3020 H 5000 9120 V 5000 6980 H 5000 880 Z m 3405,1327 c 297,-48 544,-92 550,-98 14,-14 14,-2444 0,-2458 -6,-6 -253,-50 -550,-98 l -540,-88 h -595 -595 l -540,88 c -297,48 -544,92 -550,98 -14,14 -14,2444 0,2458 8,8 671,118 1110,184 17,2 287,4 600,3 l 570,-2 z m 3700,0 c 297,-48 544,-92 550,-98 14,-14 14,-2444 0,-2458 -6,-6 -253,-50 -550,-98 l -540,-88 h -595 -595 l -540,88 c -297,48 -544,92 -550,98 -14,14 -14,2444 0,2458 8,8 671,118 1110,184 17,2 287,4 600,3 l 570,-2 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g14" | |||
| transform="matrix(0.1,0,0,-0.1,-78,708)"> | |||
| <path | |||
| id="path12" | |||
| d="m 943,6973 -51,-4 -7,-102 c -9,-148 -2,-3824 8,-3834 11,-11 8203,-11 8214,0 11,11 11,3923 0,3934 -8,8 -8055,14 -8164,6 z m 3310,-638 c 574,-91 578,-91 589,-109 4,-6 8,-558 8,-1226 0,-668 -4,-1220 -8,-1226 -11,-18 -15,-18 -589,-109 l -541,-85 h -562 -562 l -541,85 c -574,91 -578,91 -589,109 -10,15 -10,2438 0,2453 10,16 5,15 582,107 l 525,84 573,1 574,1 z m 3700,0 c 574,-91 578,-91 589,-109 4,-6 8,-558 8,-1226 0,-668 -4,-1220 -8,-1226 -11,-18 -15,-18 -589,-109 l -541,-85 h -562 -562 l -541,85 c -574,91 -578,91 -589,109 -10,15 -10,2438 0,2453 10,16 5,15 582,107 l 525,84 573,1 574,1 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,58 @@ | |||
| <?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" | |||
| id="svg20" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 646 184" | |||
| height="184pt" | |||
| width="646pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs24" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-177,592)"> | |||
| <path | |||
| id="path4" | |||
| d="m 1786,5898 c -14,-20 -16,-122 -16,-898 0,-776 2,-878 16,-898 l 15,-22 h 3199 3199 l 15,22 c 14,20 16,122 16,898 0,776 -2,878 -16,898 l -15,22 H 5000 1801 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g12" | |||
| transform="matrix(0.1,0,0,-0.1,-177,592)"> | |||
| <path | |||
| id="path8" | |||
| d="m 1870,5000 v -820 h 2035 2035 v 820 820 H 3905 1870 Z" /> | |||
| <path | |||
| id="path10" | |||
| d="m 6040,5000 v -820 h 1045 1045 v 820 820 H 7085 6040 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g18" | |||
| transform="matrix(0.1,0,0,-0.1,-177,592)"> | |||
| <path | |||
| id="path14" | |||
| d="m 1933,5813 -51,-4 -7,-102 c -9,-142 -2,-1503 8,-1514 11,-11 4033,-11 4044,0 11,11 11,1603 0,1614 -8,8 -3887,14 -3994,6 z" /> | |||
| <path | |||
| id="path16" | |||
| d="m 6103,5813 -51,-4 -7,-92 c -9,-129 -2,-1514 8,-1524 11,-11 2053,-11 2064,0 11,11 11,1603 0,1614 -8,8 -1910,14 -2014,6 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,52 @@ | |||
| <?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" | |||
| id="svg16" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 844 256" | |||
| height="256pt" | |||
| width="844pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs20" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-78,628)"> | |||
| <path | |||
| id="path4" | |||
| d="m 796,6258 c -14,-20 -16,-155 -16,-1258 0,-1102 2,-1238 16,-1258 l 15,-22 h 4189 4189 l 15,22 c 14,20 16,156 16,1258 0,1100 -2,1238 -16,1258 l -15,22 H 5000 811 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g10" | |||
| transform="matrix(0.1,0,0,-0.1,-78,628)"> | |||
| <path | |||
| id="path8" | |||
| d="M 880,5000 V 3820 H 5000 9120 V 5000 6180 H 5000 880 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g14" | |||
| transform="matrix(0.1,0,0,-0.1,-78,628)"> | |||
| <path | |||
| id="path12" | |||
| d="m 943,6173 -51,-4 -7,-92 c -9,-132 -2,-2234 8,-2244 11,-11 8203,-11 8214,0 11,11 11,2323 0,2334 -8,8 -8055,14 -8164,6 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,52 @@ | |||
| <?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" | |||
| id="svg16" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 448 256" | |||
| height="256pt" | |||
| width="448pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs20" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-276,628)"> | |||
| <path | |||
| id="path4" | |||
| d="m 2782,6257 -22,-23 V 4999 3763 l 23,-21 23,-22 h 2201 c 2119,0 2201,1 2216,18 16,17 17,119 17,1264 0,1193 -1,1246 -18,1261 -17,16 -185,17 -2219,17 H 2803 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g10" | |||
| transform="matrix(0.1,0,0,-0.1,-276,628)"> | |||
| <path | |||
| id="path8" | |||
| d="M 2860,5000 V 3820 H 5000 7140 V 5000 6180 H 5000 2860 Z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g14" | |||
| transform="matrix(0.1,0,0,-0.1,-276,628)"> | |||
| <path | |||
| id="path12" | |||
| d="m 2918,6173 -46,-4 -7,-102 c -9,-145 -2,-2224 8,-2234 11,-11 4243,-11 4254,0 11,11 11,2323 0,2334 -8,8 -4113,14 -4209,6 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -0,0 +1,52 @@ | |||
| <?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" | |||
| id="svg16" | |||
| preserveAspectRatio="xMidYMid meet" | |||
| viewBox="0 0 844 448" | |||
| height="448pt" | |||
| width="844pt" | |||
| version="1.0"> | |||
| <defs | |||
| id="defs20" /> | |||
| <metadata | |||
| id="metadata2"> | |||
| Created by potrace 1.16, written by Peter Selinger 2001-2019 | |||
| <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 | |||
| style="fill:#000000;stroke:none" | |||
| id="g6" | |||
| transform="matrix(0.1,0,0,-0.1,-78,724)"> | |||
| <path | |||
| id="path4" | |||
| d="m 800,7220 c -20,-20 -20,-33 -20,-2220 0,-2187 0,-2200 20,-2220 20,-20 33,-20 4200,-20 4167,0 4180,0 4200,20 20,20 20,33 20,2220 0,2187 0,2200 -20,2220 -20,20 -33,20 -4200,20 -4167,0 -4180,0 -4200,-20 z M 2793,5860 c 241,-34 438,-226 477,-464 13,-79 13,-713 0,-792 -39,-238 -236,-430 -477,-464 -96,-13 -678,-13 -763,0 -109,17 -207,63 -282,130 -119,108 -178,217 -198,363 -13,102 -13,632 0,734 20,146 79,255 198,363 72,65 173,113 272,129 78,12 684,13 773,1 z m 2607,-4 c 236,-43 413,-220 456,-456 19,-105 19,-695 0,-800 -43,-236 -220,-413 -456,-456 -104,-19 -695,-19 -800,0 -124,22 -200,63 -296,160 -97,96 -138,172 -160,296 -19,105 -19,695 0,800 22,124 63,200 160,296 95,96 172,138 291,159 100,19 704,19 805,1 z m 2571,3 c 253,-39 445,-236 479,-492 13,-102 13,-632 0,-734 -34,-256 -226,-453 -479,-492 -88,-14 -671,-14 -766,-1 -38,6 -101,23 -140,38 -61,23 -83,40 -170,127 -88,88 -104,109 -128,171 -42,108 -47,163 -47,524 0,361 5,416 47,524 24,62 40,83 128,171 87,87 109,104 171,128 39,15 98,31 130,36 88,13 693,13 775,0 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#1a1a1a;stroke:none" | |||
| id="g10" | |||
| transform="matrix(0.1,0,0,-0.1,-78,724)"> | |||
| <path | |||
| id="path8" | |||
| d="M 880,5000 V 2860 H 5000 9120 V 5000 7140 H 5000 880 Z m 1921,959 c 292,-37 533,-275 569,-561 13,-107 13,-689 0,-796 -36,-286 -277,-524 -569,-561 -107,-14 -660,-14 -771,-1 -93,12 -224,57 -280,99 -56,40 -149,132 -186,182 -55,75 -96,183 -110,289 -18,128 -18,652 0,780 14,106 55,214 110,289 37,50 130,142 186,182 53,39 186,88 265,98 102,12 687,13 786,0 z m 2579,1 c 55,-6 118,-23 180,-47 92,-36 99,-42 205,-148 106,-106 112,-113 148,-205 49,-126 57,-201 57,-560 0,-359 -8,-434 -57,-560 -36,-92 -42,-99 -148,-205 -106,-106 -113,-112 -205,-148 -126,-49 -201,-57 -560,-57 -359,0 -434,8 -560,57 -92,36 -99,42 -205,148 -106,106 -112,113 -148,205 -49,126 -57,201 -57,560 0,359 8,434 57,560 36,92 42,99 148,205 106,106 114,112 205,148 53,21 126,41 165,46 100,12 674,13 775,1 z m 2590,0 c 93,-12 224,-57 280,-99 56,-40 149,-132 186,-182 55,-75 96,-183 110,-289 18,-128 18,-652 0,-780 -14,-106 -55,-214 -110,-289 -37,-50 -130,-142 -186,-182 -56,-42 -187,-87 -280,-99 -111,-13 -664,-13 -771,1 -292,37 -533,275 -569,561 -5,46 -10,224 -10,398 0,174 5,352 10,398 35,278 266,514 545,557 100,16 677,19 795,5 z" /> | |||
| </g> | |||
| <g | |||
| style="fill:#333333;stroke:none" | |||
| id="g14" | |||
| transform="matrix(0.1,0,0,-0.1,-78,724)"> | |||
| <path | |||
| id="path12" | |||
| d="m 943,7133 -51,-4 -7,-102 c -9,-149 -2,-4144 8,-4154 11,-11 8203,-11 8214,0 11,11 11,4243 0,4254 -8,8 -8055,14 -8164,6 z M 2830,5960 c 151,-24 323,-128 415,-249 27,-36 68,-109 90,-161 l 40,-95 v -455 -455 l -40,-95 c -50,-118 -120,-211 -207,-278 -80,-62 -204,-117 -298,-131 -86,-14 -753,-14 -834,-1 -216,35 -415,194 -500,398 -20,48 -40,119 -46,157 -13,94 -13,714 1,810 22,160 121,329 251,427 77,58 201,113 284,127 72,13 768,13 844,1 z m 2667,-18 c 133,-47 175,-74 274,-172 98,-98 123,-137 171,-273 22,-59 23,-79 26,-450 4,-434 -1,-486 -53,-614 -65,-157 -191,-283 -348,-348 -128,-52 -180,-57 -614,-53 -427,4 -416,2 -570,75 -81,38 -239,197 -276,276 -73,156 -71,143 -75,570 -2,250 0,413 8,459 24,158 118,317 245,417 71,56 203,116 287,130 29,5 235,9 458,7 391,-1 407,-2 467,-24 z m 2507,18 c 216,-35 415,-194 500,-398 20,-48 40,-118 46,-157 13,-94 13,-714 -1,-810 -38,-274 -269,-510 -544,-555 -80,-13 -752,-13 -835,0 -151,24 -323,128 -415,249 -27,36 -68,109 -90,161 l -40,95 v 455 455 l 40,95 c 22,52 63,125 90,161 92,121 243,215 395,245 80,15 766,19 854,4 z" /> | |||
| </g> | |||
| </svg> | |||
| @@ -948,6 +948,7 @@ function makeObjects() { | |||
| /* ***PO Boxes*** */ results.push(makeModel({"name": "PO Boxes", "kind": "objects", "forms": [{"name": "XS", "views": [{"name": "Front", "height": 0.07620000094175339, "volume": 0.003988201638571948}, {"name": "Side", "height": 0.07620000094175339, "volume": 0.003988201638571948}, {"name": "Top", "height": 0.3746500015258789, "volume": 0.003988201638571948}]}, {"name": "S", "views": [{"name": "Front", "height": 0.12700000405311584, "volume": 0.006647002860937575}, {"name": "Side", "height": 0.12700000405311584, "volume": 0.006647002860937575}, {"name": "Top", "height": 0.3746500015258789, "volume": 0.006647002860937575}]}, {"name": "M", "views": [{"name": "Front", "height": 0.1396999955177307, "volume": 0.014623405358175506}, {"name": "Side", "height": 0.1396999955177307, "volume": 0.014623405358175506}, {"name": "Top", "height": 0.3746500015258789, "volume": 0.014623405358175506}]}, {"name": "L", "views": [{"name": "Front", "height": 0.2793999910354614, "volume": 0.02924681071635101}, {"name": "Side", "height": 0.2793999910354614, "volume": 0.02924681071635101}, {"name": "Top", "height": 0.3746500015258789, "volume": 0.02924681071635101}]}, {"name": "XL", "views": [{"name": "Front", "height": 0.30480000376701355, "volume": 0.06526148383352366}, {"name": "Side", "height": 0.30480000376701355, "volume": 0.06526148383352366}, {"name": "Top", "height": 0.3746500015258789, "volume": 0.06526148383352366}]}]})); | |||
| /* ***Sex Toys*** */ results.push(makeModel({"name": "Sex Toys", "kind": "objects", "forms": [{"name": "Chance", "views": [{"name": "Front", "height": 0.44450023770332336, "volume": 0.0024940192673095084}, {"name": "Side", "height": 0.44450023770332336, "volume": 0.0024940192673095084}, {"name": "Top", "height": 0.18736252188682556, "volume": 0.0024940192673095084}]}, {"name": "Fenrir", "views": [{"name": "Front", "height": 0.32130947709083557, "volume": 0.0014611460855557515}, {"name": "Side", "height": 0.32130947709083557, "volume": 0.0014611460855557515}, {"name": "Top", "height": 0.11701348423957825, "volume": 0.0014611460855557515}]}]})); | |||
| /* ***LEGO*** */ results.push(makeModel({"name": "LEGO", "kind": "objects", "forms": [{"name": "1x1", "views": [{"name": "Front", "height": 0.01119999960064888, "volume": 3.3640754098503267e-07}, {"name": "Angled", "height": 0.01119999960064888, "volume": 3.3640754098503267e-07}, {"name": "Side", "height": 0.01119999960064888, "volume": 3.3640754098503267e-07}, {"name": "Top", "height": 0.00800000037997961, "volume": 3.3640754098503267e-07}, {"name": "Bottom", "height": 0.00800000037997961, "volume": 3.3640754098503267e-07}]}, {"name": "1x2", "views": [{"name": "Front", "height": 0.011200000531971455, "volume": 5.669391684500056e-07}, {"name": "Angled", "height": 0.011200000531971455, "volume": 5.669391684500056e-07}, {"name": "Side", "height": 0.011200000531971455, "volume": 5.669391684500056e-07}, {"name": "Top", "height": 0.00800000037997961, "volume": 5.669391684500056e-07}, {"name": "Bottom", "height": 0.00800000037997961, "volume": 5.669391684500056e-07}]}, {"name": "2x2", "views": [{"name": "Front", "height": 0.01119999960064888, "volume": 1.0245981619502385e-06}, {"name": "Angled", "height": 0.01119999960064888, "volume": 1.0245981619502385e-06}, {"name": "Side", "height": 0.01119999960064888, "volume": 1.0245981619502385e-06}, {"name": "Top", "height": 0.01600000075995922, "volume": 1.0245981619502385e-06}, {"name": "Bottom", "height": 0.01600000075995922, "volume": 1.0245981619502385e-06}]}, {"name": "2x4", "views": [{"name": "Front", "height": 0.011200000531971455, "volume": 1.939916458324457e-06}, {"name": "Angled", "height": 0.011200000531971455, "volume": 1.939916458324457e-06}, {"name": "Side", "height": 0.011200000531971455, "volume": 1.939916458324457e-06}, {"name": "Top", "height": 0.01600000075995922, "volume": 1.939916458324457e-06}, {"name": "Bottom", "height": 0.01600000075995922, "volume": 1.939916458324457e-06}]}]})); | |||
| /* ***Bricks*** */ results.push(makeModel({"name": "Bricks", "kind": "objects", "forms": [{"name": "Cinderblock", "views": [{"name": "Front", "height": 0.1936749964952469, "volume": 0.0072986710396893105}, {"name": "Angled", "height": 0.1936749964952469, "volume": 0.0072986710396893105}, {"name": "Side", "height": 0.1936749964952469, "volume": 0.0072986710396893105}, {"name": "Top", "height": 0.1936749964952469, "volume": 0.0072986710396893105}]}, {"name": "Clay Brick", "views": [{"name": "Front", "height": 0.05714999884366989, "volume": 0.1697502847209491}, {"name": "Angled", "height": 0.05714999884366989, "volume": 0.1697502847209491}, {"name": "Side", "height": 0.05714999884366989, "volume": 0.1697502847209491}, {"name": "Top", "height": 0.10159999877214432, "volume": 0.1697502847209491}]}]})); | |||
| /* ***INSERT HERE*** */ | |||
| return results; | |||
| } | |||
| @@ -6,7 +6,7 @@ import os | |||
| import pathlib | |||
| import bmesh | |||
| GROUP_NAME = "LEGO" | |||
| GROUP_NAME = "Bricks" | |||
| GROUP_KIND = "objects" | |||
| path_info = pathlib.Path(bpy.data.filepath).parent.joinpath("macrovision-directory.txt") | |||
| @@ -61,7 +61,7 @@ for selected in objects: | |||
| b = selected | |||
| for angles in [[0, 1, 2, "Front"], [0.5, 1, 2, "Angled"], [1, 1, 2, "Side"], [0, 0, 1, "Top"], [0, 2, 1, "Bottom"]]: | |||
| for angles in [[0, 1, 2, "Front"], [0.5, 1, 2, "Angled"], [1, 1, 2, "Side"], [0, 0, 1, "Top"]]: | |||
| local_bbox_center = 0.125 * sum((Vector(box) for box in b.bound_box), Vector()) | |||
| global_bbox_center = b.matrix_world @ local_bbox_center | |||
| c.location = global_bbox_center | |||
| @@ -19,7 +19,7 @@ def combine(base_path, highlight_path, vivid_path, output_path): | |||
| with open(output_path, "w", encoding="utf-8") as f: | |||
| f.write(vivid_data) | |||
| subprocess.run([INKSCAPE, "--without-gui", "--export-plain-svg=" + output_path.resolve().__str__(), "--export-area-drawing", output_path], shell=False) | |||
| subprocess.run([INKSCAPE, "--without-gui", "--export-plain-svg=" + output_path, "--export-area-drawing", output_path], shell=False) | |||
| configdir = pathlib.Path(__file__).parent | |||
| configpath = configdir.joinpath("config.json") | |||
| @@ -56,24 +56,24 @@ for data in all_data["forms"]: | |||
| name = data["name"] | |||
| for view in data["views"]: | |||
| view_name = view["name"] | |||
| input = sourcedir.joinpath(name + "-" + view_name + ".png") | |||
| result = outputdir.joinpath(name + "-" + view_name + ".svg") | |||
| input = sourcedir.joinpath(name + "-" + view_name + ".png").__str__() | |||
| result = outputdir.joinpath(name + "-" + view_name + ".svg").__str__() | |||
| print(result) | |||
| if os.path.exists(result) and os.path.getmtime(input) < os.path.getmtime(result): | |||
| print("Skipping ", input) | |||
| continue | |||
| input_base = sourcedir.joinpath(name + "-" + view_name + "-base.bmp") | |||
| input_highlight = sourcedir.joinpath(name + "-" + view_name + "-highlight.bmp") | |||
| input_vivid = sourcedir.joinpath(name + "-" + view_name + "-vivid.bmp") | |||
| input_base = sourcedir.joinpath(name + "-" + view_name + "-base.bmp").__str__() | |||
| input_highlight = sourcedir.joinpath(name + "-" + view_name + "-highlight.bmp").__str__() | |||
| input_vivid = sourcedir.joinpath(name + "-" + view_name + "-vivid.bmp").__str__() | |||
| subprocess.run(["magick", "convert", input, base_lut, "-channel", "RGB", "-clut", "-background", "#FFFFFF", "-flatten", input_base], shell=False) | |||
| subprocess.run(["magick", "convert", input, highlight_lut, "-channel", "RGB", "-clut", "-background", "#FFFFFF", "-flatten", input_highlight], shell=False) | |||
| subprocess.run(["magick", "convert", input, vivid_lut, "-channel", "RGB", "-clut", "-background", "#FFFFFF", "-flatten", input_vivid], shell=False) | |||
| output_base = sourcedir.joinpath(name + "-" + view_name + "-base.svg") | |||
| output_highlight = sourcedir.joinpath(name + "-" + view_name + "-highlight.svg") | |||
| output_vivid = sourcedir.joinpath(name + "-" + view_name + "-vivid.svg") | |||
| output_base = sourcedir.joinpath(name + "-" + view_name + "-base.svg").__str__() | |||
| output_highlight = sourcedir.joinpath(name + "-" + view_name + "-highlight.svg").__str__() | |||
| output_vivid = sourcedir.joinpath(name + "-" + view_name + "-vivid.svg").__str__() | |||
| subprocess.run([POTRACE, input_base, "-b", "svg", "-o", output_base], shell=False) | |||
| subprocess.run([POTRACE, input_highlight, "-b", "svg", "-C", "#1a1a1a", "-o", output_highlight], shell=False) | |||