Browse Source

Add a new entry to Houses

This also includes new scripts for generating some data -- but I am going
to migrate the actual generator scripts to another repo soon
master
Fen Dweller 4 years ago
parent
commit
38cd662117
11 changed files with 188 additions and 1617 deletions
  1. +12
    -0
      media/attribution.js
  2. +1
    -559
      media/buildings/Houses/Shotgun House-Angled.svg
  3. +1
    -367
      media/buildings/Houses/Shotgun House-Front.svg
  4. +1
    -607
      media/buildings/Houses/Shotgun House-Side.svg
  5. +1
    -83
      media/buildings/Houses/Shotgun House-Top.svg
  6. +1
    -0
      media/buildings/Houses/Two-Story House-Angled.svg
  7. +1
    -0
      media/buildings/Houses/Two-Story House-Front.svg
  8. +1
    -0
      media/buildings/Houses/Two-Story House-Side.svg
  9. +1
    -0
      media/buildings/Houses/Two-Story House-Top.svg
  10. +11
    -1
      presets/buildings.js
  11. +157
    -0
      scripts/blender-svg

+ 12
- 0
media/attribution.js View File

@@ -1263,6 +1263,18 @@ const attributionData = {
"dimensions-guide"
]
},
{
prefix: "./media/buildings/Houses/",
files: [
{ name: "Two-Story House-Front.svg", source: "http://www.sweethome3d.com/gallery.jsp" },
{ name: "Two-Story House-Angled.svg", source: "http://www.sweethome3d.com/gallery.jsp" },
{ name: "Two-Story House-Side.svg", source: "http://www.sweethome3d.com/gallery.jsp" },
{ name: "Two-Story House-Top.svg", source: "http://www.sweethome3d.com/gallery.jsp" },
],
authors: [
"eteks"
]
},
{
prefix: "./media/buildings/Houses",
all: null,


+ 1
- 559
media/buildings/Houses/Shotgun House-Angled.svg
File diff suppressed because it is too large
View File


+ 1
- 367
media/buildings/Houses/Shotgun House-Front.svg View File

@@ -1,367 +1 @@
<?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="svg172"
width="802.33014pt"
viewBox="0 0 802.33014 821.23853"
version="1.0"
preserveAspectRatio="xMidYMid meet"
height="821.23853pt">
<defs
id="defs176" />
<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:#1a1a1a;stroke:none"
id="g6"
transform="matrix(0.1,0,0,-0.1,-698.83506,1510.4045)">
<path
id="path4"
d="m 10982,15083 c -6,-2 -10,-9 -7,-14 4,-5 -2,-6 -11,-2 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -255,-112 -247,-124 4,-6 -1,-7 -11,-3 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -255,-112 -247,-124 4,-6 -1,-7 -11,-3 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -255,-112 -247,-124 4,-6 -1,-7 -11,-3 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -255,-112 -247,-124 4,-6 -1,-7 -11,-3 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -255,-112 -247,-124 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-8 4,-11 -3,-6 -15,9 -235,-102 -227,-114 4,-6 -1,-7 -11,-3 -12,4 -15,3 -10,-5 5,-8 1,-10 -10,-5 -13,5 -15,3 -9,-7 5,-9 4,-11 -3,-6 -14,8 -49,-9 -75,-35 -10,-11 -27,-19 -37,-19 -18,0 -20,-7 -20,-73 v -72 l 103,-35 102,-35 3,-2742 2,-2743 h -105 -105 v -118 -117 l 103,-93 104,-92 h 3774 3774 l 30,32 c 23,25 24,28 5,13 l -25,-20 19,22 c 10,13 23,20 27,17 5,-3 35,20 67,52 31,32 44,47 27,33 l -30,-24 23,26 c 13,15 31,26 40,25 15,-1 17,14 20,122 l 3,122 h -106 -105 l 2,2743 3,2742 103,35 103,35 -3,74 -3,75 -1980,1027 c -1089,565 -1984,1028 -1990,1028 -5,-1 -16,-3 -23,-6 z M 7037,7273 c -3,-10 -5,-4 -5,12 0,17 2,24 5,18 2,-7 2,-21 0,-30 z" />
</g>
<g
transform="translate(-698.83506,-689.59545)"
id="View Layer_LineSet">
<g
id="strokes">
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path8"
d="m 1497.291,897.263 -8.878,-4.603 -8.878,-4.603 -8.877,-4.602 -8.878,-4.603 -8.878,-4.603 -8.878,-4.602 -8.877,-4.603 -8.878,-4.603 -8.878,-4.603 -8.878,-4.602 -8.878,-4.603 -8.877,-4.603 -8.878,-4.603 -8.878,-4.602 -8.878,-4.603 -8.877,-4.603 -8.878,-4.603 -8.878,-4.602 -8.878,-4.603 -8.877,-4.603 -8.878,-4.603 -8.878,-4.602 -8.878,-4.603 -8.878,-4.603 -8.877,-4.603 -8.878,-4.602 -8.878,-4.603 -8.877,-4.603 -8.878,-4.602 -8.878,-4.603 -8.878,-4.603 -8.878,-4.603 -8.877,-4.602 -8.878,-4.603 -8.878,-4.603 -8.878,-4.603 -8.877,-4.602 -8.878,-4.603 -8.878,-4.603 -8.878,-4.603 -8.878,-4.602 -8.877,-4.603 -8.878,-4.603 -8.878,-4.603 -6.669,-3.457 -8.878,4.602 -8.877,4.603 -8.878,4.603 -8.878,4.603 -8.878,4.602 -8.878,4.603 -8.877,4.603 -8.878,4.603 -8.878,4.602 -8.878,4.603 -8.877,4.603 -8.878,4.603 -8.878,4.602 -8.878,4.603 -8.878,4.603 -8.877,4.603 -8.878,4.602 -8.878,4.603 -8.878,4.603 -8.877,4.603 -8.878,4.602 -8.878,4.603 -8.878,4.603 -8.877,4.602 -8.878,4.603 -8.878,4.603 -8.878,4.603 -8.878,4.602 -8.877,4.603 -8.878,4.603 -8.878,4.603 -8.878,4.603 -8.877,4.602 -8.878,4.603 -8.878,4.603 -8.878,4.602 -8.877,4.603 -8.878,4.603 -8.878,4.603 -8.878,4.602 -8.878,4.603 -8.877,4.603 -8.878,4.603 -8.878,4.602 -6.669,3.458 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 14.582 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path10"
d="m 723.307,1467.52 h -10 -10 -0.598 v 0 10 10 2.431 0 l 7.392,6.734 7.393,6.735 5.813,5.295 v 0 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 13.386 l 7.393,-6.734 7.392,-6.735 5.813,-5.295 h -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -14.582 l 7.392,6.734 7.393,6.734 5.813,5.296" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path12"
d="m 723.307,1508.715 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 13.386 l 7.393,-6.734 7.392,-6.735 5.813,-5.295 v 0 -10 -10 -2.431 h -10 -10 -0.598 v -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -2.776 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path14"
d="m 1476.693,917.861 h -10 -10 -10 -10 -10 -10 -10 -10 -5.357 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -5.979 -10 -10 l -10,10e-4 h -10 -10 -10 l -10,0.001 h -10 -5.357 -10 l -10,-0.001 h -10 -10 -10 l -10,-10e-4 h -10 -10 -5.357 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -5.979 -10 -10 -10 -10 -10 -10 -10 -10 -5.357 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path16"
d="m 1476.693,1508.715 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path18"
d="m 1185.357,1467.52 -10,-10e-4 h -10 -10 -10 l -10,-10e-4 h -10 -10 -10 -5.357 -10 -10 -10 -10 l -10,10e-4 h -10 -10 -10 l -5.357,10e-4 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10.714 0.736 10 9.862" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path20"
d="m 723.307,917.861 -9.479,-3.186 -9.479,-3.186 -1.64,-0.551 v 0 l 9.479,3.186 9.479,3.186 1.64,0.551" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path22"
d="m 702.709,897.263 v 10 3.675 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 14.582 v 0 l -9.479,3.186 -9.479,3.186 -1.64,0.551 v 0 10 10 10 10 10 10 10 10 10 10 2.177 10 8.168 0 2.429" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path24"
d="m 1476.693,917.861 9.479,-3.186 9.479,-3.186 1.64,-0.551 v 0 -10 -3.675" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path26"
d="m 1497.291,910.938 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path28"
d="m 829.262,1179.148 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 4.783" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path30"
d="m 1298.646,1110.299 h 10 10 10 10 10 10 10 2.092 v 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 4.783" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path32"
d="m 1205.956,1179.149 v -10 -10 -10 -10 -10 -10 -8.849 h 10 10 10 10 10 l 10,-10e-4 h 10 2.091 v 10 10 10 10 10 10 8.85" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path34"
d="m 1298.646,1275.082 v -10 -10 -10 -10 -10 -10 -10 -2.093 h -10 -10 -0.598" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path36"
d="m 723.307,1375.088 v 10 10 10 10 10 10 10 10 10 2.432 h 10 10 10 10 10 10 10 10 10 10 5.955" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path38"
d="m 723.307,1326.574 v 10 10 10 10 8.514 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path40"
d="m 723.307,1326.574 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path42"
d="m 723.307,1275.683 v 10 10 10 10 10 0.891" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path44"
d="m 723.307,1275.683 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path46"
d="m 723.307,1109.697 v 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5.986 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path48"
d="m 723.307,1109.697 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path50"
d="m 723.307,1058.803 v 10 10 10.296 0 10 10 0.598" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path52"
d="m 723.307,1010.292 v 10 10 7.914 0 10 10 0.595" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path54"
d="m 723.307,917.861 v 10 10 10 10 10 10 10 1.832 10 10 0.599" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path56"
d="m 994.045,1467.52 h -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -4.783 v -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -8.372" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path58"
d="m 994.045,1179.148 v 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8.369" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path60"
d="m 994.045,1467.52 h 10 10 0.598 l -10,-10e-4 -10,-10e-4 -0.598,-10e-4" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path62"
d="m 1205.956,1182.391 v -3.242" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path64"
d="m 1205.956,1202.989 v -10 -10 -0.598 h 10 10 10 10 10 10 10 2.092" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path66"
d="m 1205.955,1275.082 v -10 -10 -10 l 10e-4,-10 v -10 -10 -10 -2.093 h 10 10 10 10 10 10 10 2.092" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path68"
d="m 1278.048,1202.989 v 10 10 10 10 10 10 10 2.093" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path70"
d="m 1278.048,1179.149 v 3.242 h 10 10 0.598" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path72"
d="m 1298.646,1179.149 v -10 -10 -10 -10 -10 -10 -8.85 h -10 -10 -0.598" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path74"
d="m 1298.646,1182.391 v -3.242" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path76"
d="m 1370.738,1275.082 h -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -4.783" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path78"
d="m 1298.646,1202.989 h 10 10 10 10 10 10 10 2.092" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path80"
d="m 1370.738,1182.391 h -10 -10 -10 -10 -10 -10 -10 -2.092" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path82"
d="m 1476.693,1058.803 v -10 -8.166" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path84"
d="m 1476.693,1081.455 v -10 -10 -2.652" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path86"
d="m 1476.693,1096.152 v -6.452 -8.245" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path88"
d="m 1476.693,1107.644 v -10 -1.492" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path90"
d="m 1476.693,1107.644 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path92"
d="m 1476.693,1110.299 v -2.655" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path94"
d="m 1476.693,1118.88 v -8.581" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path96"
d="m 1476.693,1118.88 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path98"
d="m 1476.693,1133.832 v -10 -4.952" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path100"
d="m 1476.693,1133.832 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path102"
d="m 1476.693,1141.608 v -7.776" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path104"
d="m 1476.693,1141.608 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path106"
d="m 1476.693,1160.02 v -10 -8.412" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path108"
d="m 1476.693,1160.02 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path110"
d="m 1476.693,1164.335 v -4.315" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path112"
d="m 1476.693,1164.336 v -10e-4" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path114"
d="m 1476.693,1186.209 v -10 -10 -1.873" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path116"
d="m 1476.693,1186.209 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path118"
d="m 1476.693,1187.063 v -0.854" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path120"
d="m 1476.693,1187.063 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path122"
d="m 1476.693,1209.791 v -10 -10 -2.728" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path124"
d="m 1476.693,1209.791 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path126"
d="m 1476.693,1212.397 v -2.606" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path128"
d="m 1476.693,1212.397 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path130"
d="m 1476.693,1232.519 v -10 -10.122" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path132"
d="m 1476.693,1232.519 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path134"
d="m 1476.693,1238.585 v -6.066" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path136"
d="m 1476.693,1238.585 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path138"
d="m 1476.693,1255.246 v -10 -6.661" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path140"
d="m 1476.693,1255.246 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path142"
d="m 1476.693,1264.774 v -9.528" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path144"
d="m 1476.693,1264.774 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path146"
d="m 1476.693,1275.082 v -10 -0.308" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path148"
d="m 1476.693,1277.974 v -2.892" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path150"
d="m 1476.693,1277.974 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path152"
d="m 1476.693,1290.962 v -10 -2.988" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path154"
d="m 1476.693,1290.962 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path156"
d="m 1476.693,1300.702 v -9.74" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path158"
d="m 1476.693,1300.702 v 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path160"
d="m 1476.693,1317.15 v -10 -6.448" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path162"
d="m 1476.693,1326.574 v -9.424" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path164"
d="m 1476.693,1344.744 v -10 -8.17 0" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path166"
d="m 1370.738,1467.52 h -5.885 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -8.898" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path168"
d="m 1476.693,1467.52 h -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -5.955" />
</g>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="308" height="316" viewBox="0 -316 308 316"><g stroke-width="2" stroke="#1a1a1a" fill="#1a1a1a"><path d="M1-236h306l-153-79L1-236"/><path d="M1-236h306m-153-79 153 79m-153-79L1-236" fill="none" stroke="#000"/><path d="M50-17h63v-111H50v111" stroke="#2a2a2a" fill="#2a2a2a"/><path d="M50-17h63m0 0v-111m0 0H50m0 111v-111" fill="none" stroke="#000"/><path d="M195-91h63v-63h-63v63" stroke="#2a2a2a" fill="#2a2a2a"/><path d="M258-91h-63m63 0v-63m0 0h-63m0 63v-63" fill="none" stroke="#000"/><path d="M222-91h8v-63h-8v63"/><path d="M230-91h-8m8 0v-63m0 0h-8m0 63v-63" fill="none" stroke="#000"/><path d="M195-118h63v-8h-63v8"/><path d="M258-118h-63m63 0v-8m0 0h-63m0 8v-8" fill="none" stroke="#000"/><path d="M9-17h33v-211H9v211"/><path d="M9-17h33M9-228h33m-33 0v211" fill="none" stroke="#000"/><path d="M42-17h8v-118h-8v118"/><path d="M42-17h8m0 0v-111" fill="none" stroke="#000"/><path d="M50-128h63v-7H50v7"/><path d="M113-128H50" fill="none" stroke="#000"/><path d="M42-135h79v-93H42v93"/><path d="M42-228h79" fill="none" stroke="#000"/><path d="M113-17h8v-118h-8v118"/><path d="M113-17h8m-8 0v-111" fill="none" stroke="#000"/><path d="M121-17h33v-211h-33v211"/><path d="M121-17h33m-33-211h33" fill="none" stroke="#000"/><path d="M154-17h33v-211h-33v211"/><path d="M154-17h33m-33-211h33" fill="none" stroke="#000"/><path d="M187-83h8v-79h-8v79"/><path d="M195-91v-63" fill="none" stroke="#000"/><path d="M187-17h79v-66h-79v66"/><path d="M187-17h79" fill="none" stroke="#000"/><path d="M195-83h63v-8h-63v8"/><path d="M258-91h-63" fill="none" stroke="#000"/><path d="M195-154h63v-8h-63v8"/><path d="M258-154h-63" fill="none" stroke="#000"/><path d="M187-162h79v-66h-79v66"/><path d="M187-228h79" fill="none" stroke="#000"/><path d="M258-83h8v-79h-8v79"/><path d="M258-91v-63" fill="none" stroke="#000"/><path d="M266-17h33v-211h-33v211"/><path d="M266-17h33m0 0v-211m-33 0h33" fill="none" stroke="#000"/><path d="M307-231H1l8 3h290l8-3"/><path d="M1-231h306M1-231l8 3m0 0h33m0 0h79m0 0h33m0 0h33m0 0h79m0 0h33m0 0 8-3" fill="none" stroke="#000"/><path d="M307-8H1l8 7h290l8-7"/><path d="M1-8h306M9-1 1-8m8 7h290m0 0 8-7" fill="none" stroke="#000"/><path d="M1-231h306v-5H1v5"/><path d="M1-231h306m0-5v5M1-236h306M1-231v-5" fill="none" stroke="#000"/><path d="M1-8h306v-9H1v9"/><path d="M1-8h306m0-9v9M1-17h306M1-8v-9" fill="none" stroke="#000"/></g></svg>

+ 1
- 607
media/buildings/Houses/Shotgun House-Side.svg
File diff suppressed because it is too large
View File


+ 1
- 83
media/buildings/Houses/Shotgun House-Top.svg View File

@@ -1,83 +1 @@
<?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="svg30"
width="800.32465pt"
viewBox="0 0 800.32465 2004.2426"
version="1.0"
preserveAspectRatio="xMidYMid meet"
height="2004.2426pt">
<defs
id="defs34" />
<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:#1a1a1a;stroke:none"
id="g6"
transform="matrix(0.1,0,0,-0.1,-699.08768,2102.1213)">
<path
id="path4"
d="M 7020,11000 V 990 h 3980 3980 v 10010 10010 h -3909 c -2596,0 -3912,-3 -3916,-10 -3,-5 -33,-10 -66,-10 -38,0 -58,4 -54,10 3,6 1,10 -4,10 -8,0 -11,-2971 -11,-10010 z" />
</g>
<g
transform="translate(-699.08768,-97.87868)"
id="View Layer_LineSet">
<g
id="strokes">
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path8"
d="m 723.307,120.598 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.072,7.072 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.072,7.071 7.071,7.072 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.072 7.072,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 7.071,7.071 8.998,8.998 v 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 15.418 l -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.072,7.072 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.072,7.072 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.072,7.072 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.072 -8.998,8.997" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path10"
d="m 1497.291,2100 v -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -30" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path12"
d="m 1497.291,100 h -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -14.582 l 7.071,7.071 7.071,7.071 6.456,6.456" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path14"
d="m 702.709,100 v 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 30" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path16"
d="m 723.307,2079.402 -7.071,7.071 -7.071,7.071 -6.456,6.456" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path18"
d="m 702.709,2100 h 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 14.582" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path20"
d="m 1476.693,2079.402 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.072,-7.071 -7.071,-7.072 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.072,-7.072 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.072 -7.072,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -7.071,-7.071 -8.998,-8.998" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path22"
d="m 1497.291,2100 -7.071,-7.071 -7.071,-7.071 -6.456,-6.456" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path24"
d="m 1476.693,120.598 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.072,7.071 -7.071,7.072 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.072,7.072 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.072 -7.072,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -7.071,7.071 -8.998,8.998" />
<path
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
id="path26"
d="m 1497.291,100 -7.071,7.071 -7.071,7.071 -6.456,6.456" />
</g>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="308" height="772" viewBox="0 -772 308 772"><g stroke-width="2" stroke="#1a1a1a" fill="#1a1a1a"><path d="M307-771H1l153 153 153-153"/><path d="M307-771H1m153 153L1-771m153 153 153-153" fill="none" stroke="#000"/><path d="M1-1h306L154-154 1-1"/><path d="M1-1h306M154-154 307-1M154-154 1-1" fill="none" stroke="#000"/><path d="M154-154v-464L1-771V-1l153-153"/><path d="M154-154v-464m0 0L1-771m0 0V-1m153-153L1-1" fill="none" stroke="#000"/><path d="M154-618v464L307-1v-770L154-618"/><path d="M154-154v-464m0 464L307-1m0 0v-770M154-618l153-153" fill="none" stroke="#000"/></g></svg>

+ 1
- 0
media/buildings/Houses/Two-Story House-Angled.svg
File diff suppressed because it is too large
View File


+ 1
- 0
media/buildings/Houses/Two-Story House-Front.svg
File diff suppressed because it is too large
View File


+ 1
- 0
media/buildings/Houses/Two-Story House-Side.svg View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="412" height="516" viewBox="0 -516 412 516"><g stroke-width="2" stroke="#1a1a1a" fill="#1a1a1a"><path d="M176-320h65v-195h-65v195"/><path d="M241-320h-65m65 0v-195m-65 0h65m-65 195v-195" fill="none" stroke="#000"/><path d="M411-335v-160H1v160h410"/><path d="M411-335v-160M1-495h410M1-495v160m0 0h410" fill="none" stroke="#000"/><path d="M368-1h33v-156h-33V-1"/><path d="M401-1h-33m33-156V-1m0-156h-33m0 156v-156" fill="none" stroke="#000"/><path d="M165-157h236v-163H165v163"/><path d="M165-157h236m0 0v-163m0 0H165m0 163v-163" fill="none" stroke="#000"/><path d="M10-320h391v-28H10v28"/><path d="M401-320H10m391 0v-28m0 0H10m0 28v-28" fill="none" stroke="#000"/><path d="M10-157h155v-163H10v163"/><path d="M165-157H10m155 0v-163m0 0H10m0 163v-163" fill="none" stroke="#000"/><path d="M10-1h38v-156H10V-1"/><path d="M10-1h38m0 0v-156m-38 0h38M10-1v-156" fill="none" stroke="#000"/><path d="M385-340v12h25v-12h-25"/><path d="M385-328v-12m25 12h-25m25 0v-12m-25 0h25" fill="none" stroke="#000"/><path d="M2-340v12h25v-12H2"/><path d="M2-328v-12m25 12H2m25 0v-12m-25 0h25" fill="none" stroke="#000"/><path d="M377-127v-30H36v30h341"/><path d="M377-127v-30m-341 0h341m-341 0v30m0 0h341" fill="none" stroke="#000"/><path d="M43-1h330v-125H43V-1"/><path d="M373-1H43m330 0v-125m0 0H43M43-1v-125" fill="none" stroke="#000"/><path d="M36-127v2h341v-2H36"/><path d="M36-125v-2m341 2H36m341 0v-2m-341 0h341" fill="none" stroke="#000"/></g></svg>

+ 1
- 0
media/buildings/Houses/Two-Story House-Top.svg View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="772" height="412" viewBox="0 -412 772 412"><g stroke-width="2" stroke="#1a1a1a" fill="#1a1a1a"><path d="M771-1 557-26 307-137l-68-1 58 1-63-175 63 7-58-11L1-411V-1h770"/><path d="M771-1 557-26M307-137 557-26M307-137l-68-1m58 1-58-1m58 1-63-175m63 7-63-7m63 7-58-11M1-411l238 95M1-411V-1m770 0H1" fill="none" stroke="#000"/><path d="M771-1v-410H1l238 95 58 11-63-7 63 175h10L557-26 771-1"/><path d="M771-1v-410m0 0H1m0 0 238 95m58 11-58-11m58 11-63-7m63 175-63-175m63 175h10m0 0L557-26M771-1 557-26" fill="none" stroke="#000"/><path d="M771-377H574v341h197v-341"/><path d="M771-377H574m0 341v-341m0 341h197m0 0v-341" fill="none" stroke="#000"/><path d="M1-1h302v-410H1V-1"/><path d="M1-1h302m0-410V-1m0-410H1m0 0V-1" fill="none" stroke="#000"/><path d="M604-411H303V-1h301v-410"/><path d="M604-411H303m0 410v-410m0 410h301m0 0v-410" fill="none" stroke="#000"/><path d="M320-241h-13v65h13v-65"/><path d="M320-241h-13m0 65v-65m13 65h-13m13 0v-65" fill="none" stroke="#000"/></g></svg>

+ 11
- 1
presets/buildings.js View File

@@ -286,11 +286,21 @@ function makeBuildings() {
name: "Shotgun House",
sides: {
"Front": { height: math.unit(3.968526840209961, "meters") },
"Angled": { height: math.unit(3.968526840209961, "meters") },
"Side": { height: math.unit(3.968526840209961, "meters") },
"Top": { height: math.unit(9.709759712219238, "meters") },
"Angled": { height: math.unit(3.968526840209961, "meters") }
}
},
{
name: "Two-Story House",
sides: {
"Front": { height: math.unit(8.241991996765137, "meters") },
"Angled": { height: math.unit(8.241991996765137, "meters") },
"Side": { height: math.unit(8.241991996765137, "meters") },
"Top": { height: math.unit(6.589994430541992, "meters") },
}
}

]

const dataRooms = [


+ 157
- 0
scripts/blender-svg View File

@@ -0,0 +1,157 @@
import bpy
from mathutils import Vector, Euler
from math import pi
import json
import os
import bpy_extras
import bmesh
import time

class ModalTimerOperator(bpy.types.Operator):
"""Operator which runs its self from a timer"""
bl_idname = "wm.modal_timer_operator"
bl_label = "Modal Timer Operator"

_timer = None
index = 0
def menu_func(self, context):
self.layout.operator(ModalTimerOperator.bl_idname)

def modal(self, context, event):
scene = context.scene
if self.index >= len(self.sides):
self.cancel(context)
return {'CANCELLED'}

if event.type == 'TIMER':
print("HOLY COW!!!")
self.capture(self.sides[self.index])
self.index += 1
if self.index < len(self.sides):
self.position_camera(self.sides[self.index])
else:
self.export_data()

return {'PASS_THROUGH'}

def execute(self, context):
print("execute!")
self.c = bpy.data.objects["cam"]
self.scene = bpy.context.scene
selected = bpy.context.selected_objects[0]

bpy.ops.object.mode_set(mode="OBJECT")
bpy.ops.object.transform_apply( rotation = True )

self.data = {}

self.b = selected

FRONT = [0, 1, 2, "Front"]
SIDE = [1, 1, 2, "Side"]
TOP = [0, 0, 1, "Top"]
ANGLED = [0.5, 1, 2, "Angled"]

self.sides = [FRONT, SIDE, TOP, ANGLED]

path = "/tmp/macrovision/"

media_path = "/home/crux/furry/macrovision/media/"
media_folder = "buildings/Houses/"

os.makedirs(path, exist_ok=True)
os.makedirs(os.path.join(media_path, media_folder), exist_ok=True)
wm = context.window_manager
self._timer = wm.event_timer_add(0.25, window=context.window)
wm.modal_handler_add(self)
self.position_camera(self.sides[self.index])
return {'RUNNING_MODAL'}

def cancel(self, context):
wm = context.window_manager
wm.event_timer_remove(self._timer)


def getView3dAreaAndRegion(self, context):
for area in context.screen.areas:
if area.type == "VIEW_3D":
for region in area.regions:
if region.type == "WINDOW":
print("Found WINDOW")
return area, region

def select_border(self, context, view3dAreaAndRegion=None, extend=True):
if not view3dAreaAndRegion:
view3dAreaAndRegion = self.getView3dAreaAndRegion(context)
print(view3dAreaAndRegion)
view3dArea, view3dRegion = view3dAreaAndRegion
override = context.copy()
override['area'] = view3dArea
override['region'] = view3dRegion
bpy.ops.view3d.select_box(override,xmin=0,xmax=view3dArea.width,ymin=0,ymax=view3dArea.height,mode='SET')

def position_camera(self, angles):
bpy.ops.object.mode_set(mode="OBJECT")
local_bbox_center = 0.125 * sum((Vector(box) for box in self.b.bound_box), Vector())
global_bbox_center = self.b.matrix_world @ local_bbox_center
self.c.data.ortho_scale = max(self.b.dimensions) * 1.3
self.c.location = global_bbox_center
self.c.rotation_euler = Euler([angles[1] * pi / 2, 0, angles[0] * pi / 2])
rot = self.c.rotation_euler.to_matrix()
rot.invert()
self.c.location = self.c.location + Vector([0, 0, 100]) @ rot
self.data[angles[3]] = self.b.dimensions[angles[2]]
def capture(self, angles):
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_all(action="SELECT")
bpy.ops.mesh.sort_elements(type='VIEW_ZAXIS', elements={'FACE'}, reverse=False)
bm = bmesh.from_edit_mesh(bpy.context.active_object.data)
polygons = []
edges = []
self.select_border(bpy.context)
bm.faces.ensure_lookup_table()
bm.verts.ensure_lookup_table()
bm.edges.ensure_lookup_table()
for face in bm.faces:
if not face.select:
continue
verts = []
for vert in face.verts:
co = bpy_extras.object_utils.world_to_camera_view(self.scene, self.c, vert.co)
verts.append([co[0], co[1]])
verts.append(verts[0])
polygons.append({"verts": verts, "type": "bright" if face.material_index == 1 else "dark"})
for edge in face.edges:
if not edge.select:
continue
co1 = bpy_extras.object_utils.world_to_camera_view(self.scene, self.c, edge.verts[0].co)
co2 = bpy_extras.object_utils.world_to_camera_view(self.scene, self.c, edge.verts[1].co)
polygons.append({"type": "edge", "verts": [
[co1[0], co1[1]],
[co2[0], co2[1]]
]})
bm.free()
bpy.ops.object.mode_set(mode="OBJECT")

with open(f"/tmp/polygons-{angles[3]}.json", "w", encoding="utf-8") as file:
json.dump({"polygons": polygons}, file)

def export_data(self):
with open(f"/tmp/data-{self.b.name}.json", "w", encoding="utf-8") as file:
json.dump({"name": self.b.name, "views": self.data}, file)


def register():
bpy.utils.register_class(ModalTimerOperator)
bpy.types.VIEW3D_MT_object.append(ModalTimerOperator.menu_func)

def unregister():
bpy.utils.unregister_class(ModalTimerOperator)


register()

Loading…
Cancel
Save