diff --git a/benchmarks/3d/buildings_prismmesh.geo b/benchmarks/3d/buildings_prismmesh.geo new file mode 100644 index 0000000000000000000000000000000000000000..7ba4eb7f83c65d78cce7e77b75b4a280c9660cb6 --- /dev/null +++ b/benchmarks/3d/buildings_prismmesh.geo @@ -0,0 +1,1305 @@ +height=100; +Point(1) = {75.90000000000001, 298.7, height,5}; +Point(2) = {59.4, 293.3, height,5}; +Point(3) = {32.3, 285.3, height,5}; +Point(4) = {27.8, 303.1, height,5}; +Point(5) = {23.4, 320.5, height,5}; +Point(6) = {18.9, 338.7, height,5}; +Point(7) = {47, 345.4, height,5}; +Point(8) = {128, 363.7, height,5}; +Point(9) = {188.1, 377, height,5}; +Point(10) = {191.2, 363.7, height,5}; +Point(11) = {150.7, 354.3, height,5}; +Point(12) = {151.6, 350.3, height,5}; +Point(13) = {132.4, 346.3, height,5}; +Point(14) = {131.1, 350.7, height,5}; +Point(15) = {50.5, 332.1, height,5}; +Point(16) = {52.3, 324.5, height,5}; +Point(17) = {46.1, 323.2, height,5}; +Point(18) = {39, 323.6, height,5}; +Point(19) = {43, 308, height,5}; +Point(20) = {44.3, 304, height,5}; +Point(21) = {56.8, 307.1, height,5}; +Point(22) = {71.5, 311.6, height,5}; +Point(23) = {88.8, 328, height,5}; +Point(24) = {103.1, 331.6, height,5}; +Point(25) = {108.8, 307.6, height,5}; +Point(26) = {95, 304.5, height,5}; +Point(27) = {126.6, 328.9, height,5}; +Point(28) = {140.4, 331.6, height,5}; +Point(29) = {145.3, 314.7, height,5}; +Point(30) = {131.1, 312, height,5}; +Point(31) = {164.5, 335.6, height,5}; +Point(32) = {178.3, 339.2, height,5}; +Point(33) = {183.2, 323.2, height,5}; +Point(34) = {169.4, 319.6, height,5}; +Point(35) = {37.2, 265.1, height,5}; +Point(36) = {51.9, 268.6, height,5}; +Point(37) = {62.1, 228.1, height,5}; +Point(38) = {83.5, 233.5, height,5}; +Point(39) = {82.59999999999999, 237, height,5}; +Point(40) = {121.3, 245.5, height,5}; +Point(41) = {134.2, 248.6, height,5}; +Point(42) = {188.1, 262, height,5}; +Point(43) = {201, 265.5, height,5}; +Point(44) = {194.3, 289.1, height,5}; +Point(45) = {206.8, 292.2, height,5}; +Point(46) = {215.2, 259.7, height,5}; +Point(47) = {217.9, 260.2, height,5}; +Point(48) = {220.6, 253.5, height,5}; +Point(49) = {192.1, 246.4, height,5}; +Point(50) = {138.2, 233.9, height,5}; +Point(51) = {124.9, 230.8, height,5}; +Point(52) = {86.09999999999999, 222.3, height,5}; +Point(53) = {87.5, 217.4, height,5}; +Point(54) = {65.7, 212.6, height,5}; +Point(55) = {64.8, 216.1, height,5}; +Point(56) = {50.1, 213, height,5}; +Point(57) = {197.9, 255.3, height,5}; +Point(58) = {203.2, 257.1, height,5}; +Point(59) = {159.1, 295.8, height,5}; +Point(60) = {174.7, 298.4, height,5}; +Point(61) = {178.7, 281.5, height,5}; +Point(62) = {164, 278.4, height,5}; +Point(63) = {120, 287.3, height,5}; +Point(64) = {134.2, 290.9, height,5}; +Point(65) = {138.7, 274.9, height,5}; +Point(66) = {124.4, 271.3, height,5}; +Point(67) = {85.7, 262.4, height,5}; +Point(68) = {99.90000000000001, 266, height,5}; +Point(69) = {95.5, 282, height,5}; +Point(70) = {82.09999999999999, 278.4, height,5}; +Point(71) = {79.5, 185.2, height,5}; +Point(72) = {127.1, 196.8, height,5}; +Point(73) = {131.1, 185.2, height,5}; +Point(74) = {127.5, 183.8, height,5}; +Point(75) = {133.3, 162.9, height,5}; +Point(76) = {127.1, 161.1, height,5}; +Point(77) = {120.9, 181.6, height,5}; +Point(78) = {88.8, 174.1, height,5}; +Point(79) = {92.8, 157.6, height,5}; +Point(80) = {74.09999999999999, 152.7, height,5}; +Point(81) = {69.2, 170.5, height,5}; +Point(82) = {76.8, 172.3, height,5}; +Point(83) = {80.8, 178.9, height,5}; +Point(84) = {81.3, 154, height,5}; +Point(85) = {84.40000000000001, 141.6, height,5}; +Point(86) = {125.3, 150.9, height,5}; +Point(87) = {121.8, 163.8, height,5}; +Point(88) = {143.6, 195.9, height,5}; +Point(89) = {172, 202.5, height,5}; +Point(90) = {174.3, 194.5, height,5}; +Point(91) = {145.8, 187.9, height,5}; +Point(92) = {186.7, 206.5, height,5}; +Point(93) = {266, 224.8, height,5}; +Point(94) = {270.9, 210.1, height,5}; +Point(95) = {294, 215, height,5}; +Point(96) = {298.9, 199.9, height,5}; +Point(97) = {263.7, 191.9, height,5}; +Point(98) = {260.2, 207, height,5}; +Point(99) = {264.2, 208.3, height,5}; +Point(100) = {262.4, 214.1, height,5}; +Point(101) = {189, 197.6, height,5}; +Point(102) = {200.5, 189.6, height,5}; +Point(103) = {223.7, 194.5, height,5}; +Point(104) = {222.8, 198.5, height,5}; +Point(105) = {245.5, 203.9, height,5}; +Point(106) = {247.7, 195.4, height,5}; +Point(108) = {225.5, 186.5, height,5}; +Point(110) = {310.5, 169.2, height,5}; +Point(111) = {323.4, 172.3, height,5}; +Point(112) = {325.6, 163.8, height,5}; +Point(113) = {344.7, 158.5, height,5}; +Point(114) = {341.2, 143.8, height,5}; +Point(115) = {334.5, 145.6, height,5}; +Point(116) = {335.8, 150, height,5}; +Point(117) = {328.7, 152.2, height,5}; +Point(118) = {324.7, 148.2, height,5}; +Point(119) = {318.5, 150, height,5}; +Point(120) = {309.1, 147.8, height,5}; +Point(121) = {306.9, 155.4, height,5}; +Point(122) = {314.5, 157.1, height,5}; +Point(123) = {264.2, 180.3, height,5}; +Point(124) = {274.9, 187.4, height,5}; +Point(125) = {282.9, 175.4, height,5}; +Point(126) = {288.2, 178.1, height,5}; +Point(127) = {292.7, 170, height,5}; +Point(128) = {271.3, 157.6, height,5}; +Point(129) = {266.4, 165.6, height,5}; +Point(130) = {271.3, 168.7, height,5}; +Point(131) = {236.6, 166.9, height,5}; +Point(132) = {246.8, 172.3, height,5}; +Point(133) = {253.5, 160.7, height,5}; +Point(134) = {257.9, 162.5, height,5}; +Point(135) = {262.4, 155.4, height,5}; +Point(136) = {241, 146, height,5}; +Point(137) = {237.5, 152.7, height,5}; +Point(138) = {242.4, 155.8, height,5}; +Point(139) = {289.1, 240.8, height,5}; +Point(140) = {329.2, 250.6, height,5}; +Point(141) = {350.1, 254.6, height,5}; +Point(142) = {371, 260, height,5}; +Point(143) = {391.9, 264.4, height,5}; +Point(144) = {412.4, 269.3, height,5}; +Point(145) = {441.3, 276, height,5}; +Point(146) = {448.9, 248.8, height,5}; +Point(147) = {456.4, 221.2, height,5}; +Point(148) = {427.1, 214.6, height,5}; +Point(149) = {406.2, 209.7, height,5}; +Point(150) = {385.7, 205.2, height,5}; +Point(151) = {364.8, 199.9, height,5}; +Point(152) = {343.8, 195, height,5}; +Point(153) = {323.4, 190.1, height,5}; +Point(154) = {320.3, 203.9, height,5}; +Point(155) = {340.7, 208.8, height,5}; +Point(156) = {355.4, 211.4, height,5}; +Point(157) = {351.4, 225.2, height,5}; +Point(158) = {346.5, 224.3, height,5}; +Point(159) = {344.7, 227.9, height,5}; +Point(160) = {350.1, 229.7, height,5}; +Point(161) = {347.8, 239.9, height,5}; +Point(162) = {332.7, 236.8, height,5}; +Point(163) = {312.2, 231.9, height,5}; +Point(164) = {312.7, 227.9, height,5}; +Point(165) = {304.7, 226.6, height,5}; +Point(166) = {303.3, 229.2, height,5}; +Point(167) = {293.1, 227, height,5}; +Point(168) = {359.9, 242.1, height,5}; +Point(169) = {367, 215.9, height,5}; +Point(170) = {395.9, 223, height,5}; +Point(171) = {387.9, 248.8, height,5}; +Point(172) = {401.3, 251, height,5}; +Point(173) = {430.6, 258.2, height,5}; +Point(174) = {437.3, 232.8, height,5}; +Point(175) = {408.8, 225.7, height,5}; +Point(176) = {405.3, 238.1, height,5}; +Point(177) = {415.9, 254.6, height,5}; +Point(178) = {434.6, 244.8, height,5}; +Point(179) = {423.5, 229.2, height,5}; +Point(180) = {392.8, 235.5, height,5}; +Point(181) = {374.6, 245.7, height,5}; +Point(182) = {382.1, 219, height,5}; +Point(183) = {363.9, 228.4, height,5}; +Point(184) = {234.8, 280.6, height,5}; +Point(185) = {240.1, 284.2, height,5}; +Point(186) = {261.5, 257.1, height,5}; +Point(187) = {249.5, 253.9, height,5}; +Point(188) = {243.7, 254.8, height,5}; +Point(189) = {242.8, 257.9, height,5}; +Point(190) = {249.9, 260.2, height,5}; +Point(191) = {243.3, 269.1, height,5}; +Point(192) = {239.3, 266.4, height,5}; +Point(193) = {237.9, 271.3, height,5}; +Point(194) = {240.6, 273.5, height,5}; +Point(195) = {241, 298.9, height,5}; +Point(196) = {252.2, 303.8, height,5}; +Point(197) = {264.2, 305.6, height,5}; +Point(198) = {265.5, 297.6, height,5}; +Point(199) = {255.7, 295.8, height,5}; +Point(200) = {260.2, 289.1, height,5}; +Point(201) = {263.3, 291.3, height,5}; +Point(202) = {266.4, 287.3, height,5}; +Point(203) = {263.3, 285.1, height,5}; +Point(204) = {271.7, 274, height,5}; +Point(205) = {268.6, 271.7, height,5}; +Point(206) = {266, 274.9, height,5}; +Point(207) = {262.4, 272.6, height,5}; +Point(208) = {272.6, 265.5, height,5}; +Point(209) = {283.8, 268.2, height,5}; +Point(210) = {285.5, 263.3, height,5}; +Point(211) = {273.5, 260.2, height,5}; +Point(212) = {278.4, 309.6, height,5}; +Point(213) = {315.8, 318.5, height,5}; +Point(214) = {371.4, 330.9, height,5}; +Point(215) = {394.1, 336.7, height,5}; +Point(216) = {423.5, 343, height,5}; +Point(217) = {429.7, 321.1, height,5}; +Point(218) = {435.5, 298.4, height,5}; +Point(219) = {405.7, 291.3, height,5}; +Point(220) = {383.5, 286, height,5}; +Point(221) = {326.9, 272.6, height,5}; +Point(222) = {289.1, 263.7, height,5}; +Point(223) = {286.4, 274.9, height,5}; +Point(224) = {323.8, 283.8, height,5}; +Point(225) = {365.2, 294, height,5}; +Point(226) = {364.8, 297.6, height,5}; +Point(227) = {374.1, 300.2, height,5}; +Point(228) = {375.4, 296.7, height,5}; +Point(229) = {383.9, 298.4, height,5}; +Point(230) = {383, 306, height,5}; +Point(231) = {391, 307.4, height,5}; +Point(232) = {393.2, 301.1, height,5}; +Point(233) = {379.9, 297.6, height,5}; +Point(234) = {402.6, 302.9, height,5}; +Point(235) = {418.2, 306.9, height,5}; +Point(236) = {415.5, 318, height,5}; +Point(237) = {410.6, 317.1, height,5}; +Point(238) = {409.7, 321.6, height,5}; +Point(239) = {416.8, 323.4, height,5}; +Point(240) = {415.1, 329.6, height,5}; +Point(241) = {396.8, 325.2, height,5}; +Point(242) = {387.5, 322.9, height,5}; +Point(243) = {388.8, 315.8, height,5}; +Point(244) = {380.3, 314, height,5}; +Point(245) = {379, 319.4, height,5}; +Point(246) = {374.6, 318.5, height,5}; +Point(247) = {318.9, 305.1, height,5}; +Point(248) = {281.1, 296.7, height,5}; +Point(249) = {428.8, 340.3, height,5}; +Point(250) = {432.4, 341.2, height,5}; +Point(251) = {435.5, 330, height,5}; +Point(252) = {431.5, 329.2, height,5}; +Point(253) = {207.4, 381.5, height,5}; +Point(254) = {240.8, 389.5, height,5}; +Point(255) = {258.2, 393.5, height,5}; +Point(256) = {275.1, 397, height,5}; +Point(257) = {293.8, 401.5, height,5}; +Point(258) = {309.8, 405, height,5}; +Point(259) = {325.8, 409, height,5}; +Point(260) = {344.5, 412.6, height,5}; +Point(261) = {361, 417.1, height,5}; +Point(262) = {377.9, 420.6, height,5}; +Point(263) = {401, 425.5, height,5}; +Point(264) = {408.2, 401.5, height,5}; +Point(265) = {412.6, 384.1, height,5}; +Point(266) = {419.3, 360.5, height,5}; +Point(267) = {394.4, 354.3, height,5}; +Point(268) = {377.4, 350.3, height,5}; +Point(269) = {345, 342.3, height,5}; +Point(270) = {326.7, 338.7, height,5}; +Point(271) = {309.8, 334.3, height,5}; +Point(272) = {279.1, 327.2, height,5}; +Point(273) = {268.8, 366.3, height,5}; +Point(274) = {280.9, 369, height,5}; +Point(275) = {288, 341.8, height,5}; +Point(276) = {307.1, 345.8, height,5}; +Point(277) = {324, 349.4, height,5}; +Point(278) = {340.9, 355.2, height,5}; +Point(279) = {374.8, 362.3, height,5}; +Point(280) = {391.7, 366.3, height,5}; +Point(281) = {403.3, 369, height,5}; +Point(282) = {399.7, 381, height,5}; +Point(283) = {395.2, 398.4, height,5}; +Point(284) = {391.7, 410.8, height,5}; +Point(285) = {381, 408.2, height,5}; +Point(286) = {363.6, 404.6, height,5}; +Point(287) = {347.2, 400.6, height,5}; +Point(288) = {329.4, 396.6, height,5}; +Point(289) = {312.9, 392.6, height,5}; +Point(290) = {296.9, 389, height,5}; +Point(291) = {284.4, 385.9, height,5}; +Point(292) = {287.1, 376.1, height,5}; +Point(293) = {280.9, 374.3, height,5}; +Point(294) = {276.4, 373, height,5}; +Point(295) = {272.9, 385, height,5}; +Point(296) = {261.3, 382.3, height,5}; +Point(297) = {249.3, 380.1, height,5}; +Point(298) = {251.9, 368.1, height,5}; +Point(299) = {246.6, 367.2, height,5}; +Point(300) = {241.3, 365.9, height,5}; +Point(301) = {238.6, 377, height,5}; +Point(302) = {223, 373.9, height,5}; +Point(303) = {226.6, 361.9, height,5}; +Point(304) = {213.7, 358.8, height,5}; +Point(305) = {317.8, 374.8, height,5}; +Point(306) = {334.7, 378.8, height,5}; +Point(307) = {369, 385.5, height,5}; +Point(308) = {384.6, 390.4, height,5}; +Point(309) = {388.6, 377.9, height,5}; +Point(310) = {371.7, 374.3, height,5}; +Point(311) = {337.8, 365.9, height,5}; +Point(312) = {320.9, 362.3, height,5}; +Point(313) = {219.4, 335.6, height,5}; +Point(314) = {236.4, 340.1, height,5}; +Point(315) = {238.1, 334.3, height,5}; +Point(316) = {220.8, 329.8, height,5}; +Point(317) = {240.4, 341.8, height,5}; +Point(318) = {252.8, 344.5, height,5}; +Point(319) = {259.5, 316, height,5}; +Point(320) = {243.5, 312.9, height,5}; +Point(321) = {226.6, 309.4, height,5}; +Point(322) = {225.7, 315.1, height,5}; +Point(323) = {242.6, 319.1, height,5}; +Point(324) = {243.5, 316, height,5}; +Point(325) = {254.2, 318.3, height,5}; +Point(326) = {253.7, 321.4, height,5}; +Point(327) = {245.7, 320.5, height,5}; +Point(328) = {242.6, 333.4, height,5}; +Point(329) = {250.6, 334.7, height,5}; +Point(330) = {249.7, 339.2, height,5}; +Point(331) = {241.7, 336.9, height,5}; +Point(332) = {423.5, 462.5, height,5}; +Point(333) = {431.5, 463.3, height,5}; +Point(334) = {438.6, 435.3, height,5}; +Point(335) = {431.1, 433.5, height,5}; +Point(337) = {427.1, 432.6, height,5}; +Point(338) = {424, 432.2, height,5}; +Point(339) = {416.4, 436.2, height,5}; +Point(340) = {414.6, 442.9, height,5}; +Point(341) = {404.8, 440.6, height,5}; +Point(342) = {399.5, 459.3, height,5}; +Point(343) = {418.2, 461.6, height,5}; +Point(344) = {421.3, 451.8, height,5}; +Point(345) = {412.4, 450.4, height,5}; +Point(346) = {411.9, 453.1, height,5}; +Point(347) = {405.3, 453.6, height,5}; +Point(348) = {407, 445.5, height,5}; +Point(349) = {415.9, 448.2, height,5}; +Point(350) = {418.6, 445.5, height,5}; +Point(351) = {419.5, 438.4, height,5}; +Point(352) = {424, 436.2, height,5}; +Point(353) = {426.6, 436.6, height,5}; +Point(354) = {452.4, 415.7, height,5}; +Point(355) = {468.9, 419.3, height,5}; +Point(356) = {472.5, 406.8, height,5}; +Point(357) = {468.9, 405.9, height,5}; +Point(358) = {473.4, 387.7, height,5}; +Point(359) = {549, 404.6, height,5}; +Point(360) = {552.6, 392.1, height,5}; +Point(361) = {464, 372.1, height,5}; +Point(362) = {468.7, 355.6, height,5}; +Point(363) = {548.3, 373.9, height,5}; +Point(364) = {565.3, 377.4, height,5}; +Point(365) = {586.2000000000001, 381.9, height,5}; +Point(366) = {607.5, 387.2, height,5}; +Point(367) = {634.2000000000001, 393.5, height,5}; +Point(368) = {650.3, 397, height,5}; +Point(369) = {669.4, 401.5, height,5}; +Point(370) = {686.8, 405, height,5}; +Point(371) = {697.9, 360.5, height,5}; +Point(372) = {680.5, 356.5, height,5}; +Point(373) = {661, 352.1, height,5}; +Point(374) = {645.4, 348.5, height,5}; +Point(375) = {642.7000000000001, 359.6, height,5}; +Point(376) = {658.3, 363.7, height,5}; +Point(377) = {663.2000000000001, 365, height,5}; +Point(378) = {662.3, 369, height,5}; +Point(379) = {671.6, 371.7, height,5}; +Point(380) = {673, 367.7, height,5}; +Point(381) = {677.4, 367.7, height,5}; +Point(382) = {671.6, 389.5, height,5}; +Point(383) = {667.6, 389, height,5}; +Point(384) = {669.4, 381.9, height,5}; +Point(385) = {659.6, 380.1, height,5}; +Point(386) = {657.8, 387.7, height,5}; +Point(387) = {652.9, 386.8, height,5}; +Point(388) = {636.9, 383.2, height,5}; +Point(389) = {610.2000000000001, 377.4, height,5}; +Point(390) = {611.1, 373.4, height,5}; +Point(391) = {589.7000000000001, 368.1, height,5}; +Point(392) = {568.8, 363.7, height,5}; +Point(393) = {567.9, 367.7, height,5}; +Point(394) = {551, 362.8, height,5}; +Point(395) = {482, 348.5, height,5}; +Point(396) = {487.8, 323.6, height,5}; +Point(397) = {498.9, 325.8, height,5}; +Point(398) = {503.4, 327.2, height,5}; +Point(399) = {503, 332.1, height,5}; +Point(401) = {514.5, 329.8, height,5}; +Point(402) = {519.4, 330.3, height,5}; +Point(403) = {531.4, 334.3, height,5}; +Point(404) = {528.3, 345.8, height,5}; +Point(405) = {541.7000000000001, 349, height,5}; +Point(406) = {545.2000000000001, 337.4, height,5}; +Point(407) = {557.3, 339.6, height,5}; +Point(408) = {574.2000000000001, 343.6, height,5}; +Point(409) = {573.3, 347.6, height,5}; +Point(410) = {594.2000000000001, 352.5, height,5}; +Point(411) = {614.7000000000001, 357, height,5}; +Point(412) = {618.7000000000001, 342.3, height,5}; +Point(413) = {597.8, 336.9, height,5}; +Point(414) = {576.8, 332.1, height,5}; +Point(415) = {559.9, 328, height,5}; +Point(416) = {522.1, 319.6, height,5}; +Point(417) = {502.1, 315.1, height,5}; +Point(418) = {480.7, 309.8, height,5}; +Point(419) = {486.5, 287.3, height,5}; +Point(420) = {508.7, 292.7, height,5}; +Point(421) = {526.1, 296.2, height,5}; +Point(422) = {554.6, 302.9, height,5}; +Point(423) = {576.4, 308.2, height,5}; +Point(424) = {597.3, 313.6, height,5}; +Point(425) = {611.1, 316.3, height,5}; +Point(426) = {624.9, 320.3, height,5}; +Point(427) = {644.9, 324.7, height,5}; +Point(428) = {662.7000000000001, 328.7, height,5}; +Point(429) = {680.1, 332.7, height,5}; +Point(430) = {706.8, 338.9, height,5}; +Point(431) = {721.5, 283.8, height,5}; +Point(432) = {657.8, 269.5, height,5}; +Point(433) = {638.7000000000001, 265.1, height,5}; +Point(434) = {624.5, 262, height,5}; +Point(435) = {611.1, 258.8, height,5}; +Point(436) = {575.5, 250.4, height,5}; +Point(437) = {540.8, 241.5, height,5}; +Point(438) = {537.2000000000001, 253.9, height,5}; +Point(439) = {572.4, 262.8, height,5}; +Point(440) = {608.4, 270.9, height,5}; +Point(441) = {621.8, 274.9, height,5}; +Point(442) = {635.1, 277.1, height,5}; +Point(443) = {640.9, 278.9, height,5}; +Point(444) = {638.7000000000001, 288.2, height,5}; +Point(445) = {647.2000000000001, 289.5, height,5}; +Point(446) = {649.8, 282.4, height,5}; +Point(447) = {655.2000000000001, 282.4, height,5}; +Point(448) = {704.1, 295.8, height,5}; +Point(449) = {701, 306.9, height,5}; +Point(450) = {691.2000000000001, 304.2, height,5}; +Point(451) = {690.8, 309.6, height,5}; +Point(452) = {701.5, 312.7, height,5}; +Point(453) = {697.9, 323.4, height,5}; +Point(454) = {683.2000000000001, 318.9, height,5}; +Point(455) = {678.8, 318, height,5}; +Point(456) = {680.5, 310.5, height,5}; +Point(457) = {672.1, 309.1, height,5}; +Point(458) = {669.9, 316.3, height,5}; +Point(459) = {665.4, 315.8, height,5}; +Point(460) = {660.1, 314.5, height,5}; +Point(461) = {662.7000000000001, 307.4, height,5}; +Point(462) = {653.4, 305.1, height,5}; +Point(463) = {651.6, 312.2, height,5}; +Point(464) = {647.6, 312.2, height,5}; +Point(465) = {640.9, 309.6, height,5}; +Point(466) = {644, 300.7, height,5}; +Point(467) = {635.1, 298.4, height,5}; +Point(468) = {632.9, 307.4, height,5}; +Point(469) = {628, 306, height,5}; +Point(470) = {614.2000000000001, 303.3, height,5}; +Point(471) = {600.9, 299.3, height,5}; +Point(472) = {600, 302.9, height,5}; +Point(473) = {578.6, 298.9, height,5}; +Point(474) = {556.8, 292.7, height,5}; +Point(475) = {561.7000000000001, 276.2, height,5}; +Point(476) = {555.5, 275.3, height,5}; +Point(477) = {551, 290, height,5}; +Point(478) = {535, 286, height,5}; +Point(479) = {539, 270.9, height,5}; +Point(480) = {524.3, 266.4, height,5}; +Point(481) = {515.4, 264.6, height,5}; +Point(482) = {514.5, 270.9, height,5}; +Point(483) = {531.4, 275.3, height,5}; +Point(484) = {528.3, 285.5, height,5}; +Point(485) = {510.5, 281.1, height,5}; +Point(486) = {504.7, 279.8, height,5}; +Point(487) = {508.3, 262.8, height,5}; +Point(488) = {511.9, 247.7, height,5}; +Point(489) = {519.9, 249.5, height,5}; +Point(490) = {523.4, 237.9, height,5}; +Point(491) = {501.2, 232.6, height,5}; +Point(492) = {494.1, 259.7, height,5}; +Point(493) = {507.8, 207.4, height,5}; +Point(494) = {548.8, 216.8, height,5}; +Point(495) = {553.2000000000001, 199.9, height,5}; +Point(496) = {512.3, 190.1, height,5}; +Point(497) = {513.6, 185.6, height,5}; +Point(498) = {530.5, 190.1, height,5}; +Point(499) = {533.2000000000001, 180.7, height,5}; +Point(500) = {527, 178.9, height,5}; +Point(501) = {533.2000000000001, 154, height,5}; +Point(502) = {540.8, 155.8, height,5}; +Point(503) = {542.6, 152.2, height,5}; +Point(504) = {523.4, 147.3, height,5}; +Point(505) = {558.1, 219, height,5}; +Point(506) = {599.1, 228.8, height,5}; +Point(507) = {596.9, 237.7, height,5}; +Point(508) = {638.3, 247, height,5}; +Point(509) = {649.4, 206.1, height,5}; +Point(510) = {620, 199.4, height,5}; +Point(511) = {616.9, 211, height,5}; +Point(512) = {633.8, 215, height,5}; +Point(513) = {628.9, 231.5, height,5}; +Point(514) = {600.4, 225.2, height,5}; +Point(515) = {602.2000000000001, 216.8, height,5}; +Point(516) = {572.8, 210.1, height,5}; +Point(517) = {578.6, 190.5, height,5}; +Point(518) = {599.1, 195, height,5}; +Point(519) = {602.6, 183, height,5}; +Point(520) = {568.8, 175.4, height,5}; +Point(521) = {337.2, 98.8, height,5}; +Point(522) = {340.3, 108.6, height,5}; +Point(523) = {344.7, 107.3, height,5}; +Point(524) = {380.3, 134.4, height,5}; +Point(525) = {385.7, 128.7, height,5}; +Point(526) = {355.9, 104.6, height,5}; +Point(527) = {359.4, 103.3, height,5}; +Point(528) = {356.3, 93.09999999999999, height,5}; +Point(529) = {333.2, 95.7, height,5}; +Point(530) = {399.9, 75.2, height,5}; +Point(531) = {395, 59.2, height,5}; +Point(532) = {400.8, 57.4, height,5}; +Point(533) = {399.5, 50.8, height,5}; +Point(534) = {393.7, 52.6, height,5}; +Point(535) = {390.1, 45, height,5}; +Point(536) = {331.4, 62.3, height,5}; +Point(537) = {333.2, 67.2, height,5}; +Point(538) = {328.7, 68.59999999999999, height,5}; +Point(539) = {334, 83.7, height,5}; +Point(540) = {329.6, 85, height,5}; +Point(541) = {302.5, 135.3, height,5}; +Point(542) = {326.9, 128.2, height,5}; +Point(543) = {316.2, 98.40000000000001, height,5}; +Point(544) = {285.1, 107.3, height,5}; +Point(545) = {286.9, 113.1, height,5}; +Point(546) = {291.8, 111.7, height,5}; +Point(547) = {293.1, 115.3, height,5}; +Point(548) = {310.5, 110.9, height,5}; +Point(549) = {315.4, 122.4, height,5}; +Point(550) = {305.6, 125.5, height,5}; +Point(551) = {306.9, 129.1, height,5}; +Point(552) = {300.7, 130.9, height,5}; +Point(553) = {528.1, 130.9, height,5}; +Point(554) = {542.3, 134.4, height,5}; +Point(555) = {550.4, 103.7, height,5}; +Point(556) = {536.6, 100.6, height,5}; +Point(557) = {450.2, 38.8, height,5}; +Point(558) = {488.5, 47.7, height,5}; +Point(559) = {490.3, 43.2, height,5}; +Point(560) = {496.1, 44.5, height,5}; +Point(561) = {496.9, 39.6, height,5}; +Point(562) = {452.4, 29, height,5}; +Point(563) = {251.9, 137.1, height,5}; +Point(564) = {281.3, 136.7, height,5}; +Point(565) = {281.3, 129.5, height,5}; +Point(566) = {251.9, 129.5, height,5}; +Point(568) = {223.7, 194.5, height,5}; +Point(569) = {222.8, 198.5, height,5}; +Point(572) = {225, 190.1, height,5}; +Point(573) = {225.5, 186.5, height,5}; +Point(574) = {202.8, 181.2, height,5}; +Point(575) = {209.9, 161.1, height,5}; +Point(576) = {221.9, 162.5, height,5}; +Point(577) = {223.7, 150.5, height,5}; +Point(578) = {229, 150.5, height,5}; +Point(579) = {230.8, 141.6, height,5}; +Point(580) = {207.2, 138.4, height,5}; +Point(581) = {205.9, 147.8, height,5}; +Point(582) = {211.7, 149.1, height,5}; +Point(583) = {181.4, 162.5, height,5}; +Point(584) = {193.4, 160.3, height,5}; +Point(585) = {192.1, 146.9, height,5}; +Point(586) = {197.9, 145.6, height,5}; +Point(587) = {196.5, 135.8, height,5}; +Point(588) = {170.7, 138.4, height,5}; +Point(589) = {172, 148.7, height,5}; +Point(590) = {179.6, 147.8, height,5}; +Point(591) = {138.7, 153.6, height,5}; +Point(592) = {167.6, 150, height,5}; +Point(593) = {165.8, 142, height,5}; +Point(594) = {137.8, 146, height,5}; +Point(596) = {-200, -200, height,50}; +Point(597) = {900, -200, height,50}; +Point(598) = {-200, 700, height,50}; +Point(599) = {900, 700, height,50}; +Point(600) = {196, 263, height,5}; +Point(601) = {513.2000000000001, 334.2, height,5}; +Line (1) = {81, 82}; +Line (2) = {83, 71}; +Line (3) = {82, 83}; +Line (4) = {71, 72}; +Line (5) = {72, 73}; +Line (6) = {73, 74}; +Line (7) = {74, 75}; +Line (8) = {75, 76}; +Line (9) = {76, 77}; +Line (10) = {77, 78}; +Line (11) = {78, 79}; +Line (12) = {79, 87}; +Line (13) = {86, 87}; +Line (14) = {86, 85}; +Line (15) = {85, 84}; +Line (16) = {84, 80}; +Line (17) = {80, 81}; +Line (18) = {88, 89}; +Line (19) = {89, 90}; +Line (20) = {90, 91}; +Line (21) = {91, 88}; +Line (22) = {591, 592}; +Line (23) = {592, 593}; +Line (24) = {593, 594}; +Line (25) = {594, 591}; +Line (26) = {589, 590}; +Line (27) = {590, 583}; +Line (28) = {583, 584}; +Line (29) = {584, 585}; +Line (30) = {585, 586}; +Line (31) = {586, 587}; +Line (32) = {587, 588}; +Line (33) = {588, 589}; +Line (34) = {599, 598}; +Line (35) = {598, 596}; +Line (36) = {596, 597}; +Line (37) = {597, 599}; +Line (40) = {92, 101}; +Line (42) = {569, 568}; +Line (44) = {106, 105}; +Line (46) = {573, 572}; +Line (48) = {574, 102}; +Line (49) = {123, 124}; +Line (50) = {124, 125}; +Line (51) = {125, 126}; +Line (52) = {126, 127}; +Line (53) = {127, 128}; +Line (54) = {128, 129}; +Line (55) = {129, 130}; +Line (56) = {130, 123}; +Line (59) = {131, 132}; +Line (60) = {132, 133}; +Line (61) = {133, 134}; +Line (62) = {134, 135}; +Line (63) = {135, 136}; +Line (64) = {136, 137}; +Line (65) = {137, 138}; +Line (66) = {138, 131}; +Line (68) = {577, 576}; +Line (69) = {577, 578}; +Line (70) = {578, 579}; +Line (71) = {579, 580}; +Line (72) = {580, 581}; +Line (73) = {581, 582}; +Line (74) = {582, 575}; +Line (75) = {575, 576}; +Line (76) = {98, 97}; +Line (77) = {98, 99}; +Line (78) = {99, 100}; +Line (79) = {100, 101}; +Line (80) = {93, 94}; +Line (81) = {94, 95}; +Line (82) = {93, 92}; +Line (83) = {97, 96}; +Line (84) = {96, 95}; +Line (85) = {563, 564}; +Line (86) = {564, 565}; +Line (87) = {565, 566}; +Line (88) = {566, 563}; +Line (89) = {105, 569}; +Line (90) = {568, 102}; +Line (91) = {574, 573}; +Line (92) = {572, 106}; +Line (93) = {139, 140}; +Line (94) = {140, 141}; +Line (95) = {141, 142}; +Line (96) = {142, 143}; +Line (97) = {143, 144}; +Line (98) = {144, 145}; +Line (99) = {145, 146}; +Line (100) = {146, 147}; +Line (101) = {147, 148}; +Line (102) = {148, 149}; +Line (103) = {149, 150}; +Line (104) = {150, 151}; +Line (105) = {151, 152}; +Line (106) = {152, 153}; +Line (107) = {153, 154}; +Line (108) = {154, 155}; +Line (109) = {155, 156}; +Line (111) = {169, 182}; +Line (112) = {182, 170}; +Line (113) = {180, 170}; +Line (114) = {180, 171}; +Line (115) = {171, 181}; +Line (116) = {181, 168}; +Line (117) = {168, 183}; +Line (118) = {183, 169}; +Line (119) = {156, 157}; +Line (120) = {157, 158}; +Line (121) = {158, 159}; +Line (122) = {159, 160}; +Line (123) = {160, 161}; +Line (124) = {161, 162}; +Line (125) = {162, 163}; +Line (126) = {163, 164}; +Line (127) = {164, 165}; +Line (128) = {165, 166}; +Line (129) = {166, 167}; +Line (130) = {167, 139}; +Line (131) = {175, 179}; +Line (132) = {179, 174}; +Line (133) = {174, 178}; +Line (134) = {178, 173}; +Line (135) = {173, 177}; +Line (136) = {177, 172}; +Line (137) = {172, 176}; +Line (138) = {176, 175}; +Line (139) = {110, 111}; +Line (140) = {111, 112}; +Line (141) = {112, 113}; +Line (142) = {113, 114}; +Line (143) = {114, 115}; +Line (144) = {115, 116}; +Line (145) = {116, 117}; +Line (146) = {117, 118}; +Line (147) = {118, 119}; +Line (148) = {119, 120}; +Line (149) = {120, 121}; +Line (150) = {121, 122}; +Line (151) = {122, 110}; +Line (152) = {524, 525}; +Line (153) = {525, 526}; +Line (154) = {526, 527}; +Line (155) = {527, 528}; +Line (156) = {528, 521}; +Line (157) = {521, 522}; +Line (158) = {522, 523}; +Line (159) = {523, 524}; +Line (160) = {544, 543}; +Line (161) = {543, 542}; +Line (162) = {542, 541}; +Line (163) = {541, 552}; +Line (164) = {552, 551}; +Line (165) = {551, 550}; +Line (166) = {550, 549}; +Line (167) = {549, 548}; +Line (168) = {548, 547}; +Line (169) = {547, 546}; +Line (170) = {546, 545}; +Line (171) = {545, 544}; +Line (172) = {557, 558}; +Line (173) = {558, 559}; +Line (174) = {559, 560}; +Line (175) = {560, 561}; +Line (176) = {561, 562}; +Line (177) = {562, 557}; +Line (178) = {529, 530}; +Line (179) = {530, 531}; +Line (180) = {531, 532}; +Line (181) = {532, 533}; +Line (182) = {533, 534}; +Line (183) = {534, 535}; +Line (184) = {535, 536}; +Line (185) = {536, 537}; +Line (186) = {537, 538}; +Line (187) = {538, 539}; +Line (188) = {539, 540}; +Line (189) = {540, 529}; +Line (190) = {35, 36}; +Line (191) = {36, 37}; +Line (192) = {37, 38}; +Line (193) = {38, 39}; +Line (194) = {39, 40}; +Line (195) = {40, 41}; +Line (196) = {41, 42}; +Line (197) = {44, 45}; +Line (198) = {35, 56}; +Line (199) = {56, 55}; +Line (200) = {55, 54}; +Line (201) = {54, 53}; +Line (202) = {53, 52}; +Line (203) = {52, 51}; +Line (204) = {51, 50}; +Line (205) = {50, 49}; +Line (206) = {49, 48}; +Line (207) = {48, 47}; +Line (208) = {47, 46}; +Line (209) = {46, 45}; +Line (210) = {43, 58}; +Line (211) = {43, 44}; +Line (212) = {58, 57}; +Line (213) = {70, 69}; +Line (214) = {69, 68}; +Line (215) = {68, 67}; +Line (216) = {67, 70}; +Line (217) = {63, 64}; +Line (218) = {64, 65}; +Line (219) = {65, 66}; +Line (220) = {66, 63}; +Line (221) = {59, 60}; +Line (222) = {60, 61}; +Line (223) = {61, 62}; +Line (224) = {62, 59}; +Line (226) = {600, 42}; +Line (227) = {600, 57}; +Line (228) = {31, 32}; +Line (229) = {32, 33}; +Line (230) = {33, 34}; +Line (231) = {34, 31}; +Line (232) = {27, 28}; +Line (233) = {28, 29}; +Line (234) = {29, 30}; +Line (235) = {30, 27}; +Line (236) = {25, 24}; +Line (237) = {24, 23}; +Line (238) = {23, 26}; +Line (239) = {26, 25}; +Line (240) = {6, 7}; +Line (241) = {7, 8}; +Line (242) = {8, 9}; +Line (244) = {10, 11}; +Line (245) = {11, 12}; +Line (246) = {12, 13}; +Line (247) = {13, 14}; +Line (248) = {14, 15}; +Line (249) = {18, 19}; +Line (250) = {20, 19}; +Line (251) = {20, 21}; +Line (252) = {21, 22}; +Line (253) = {22, 1}; +Line (254) = {1, 2}; +Line (256) = {3, 4}; +Line (257) = {4, 5}; +Line (258) = {5, 6}; +Line (259) = {15, 16}; +Line (260) = {16, 17}; +Line (261) = {17, 18}; +Line (265) = {252, 251}; +Line (266) = {251, 250}; +Line (267) = {250, 249}; +Line (268) = {249, 252}; +Line (269) = {218, 219}; +Line (270) = {219, 220}; +Line (271) = {220, 221}; +Line (272) = {221, 222}; +Line (273) = {222, 223}; +Line (274) = {223, 224}; +Line (275) = {224, 225}; +Line (276) = {225, 226}; +Line (277) = {226, 227}; +Line (278) = {227, 228}; +Line (279) = {228, 233}; +Line (280) = {233, 229}; +Line (281) = {229, 230}; +Line (282) = {230, 231}; +Line (283) = {231, 232}; +Line (284) = {232, 234}; +Line (285) = {234, 235}; +Line (286) = {212, 213}; +Line (287) = {213, 214}; +Line (288) = {214, 215}; +Line (289) = {215, 216}; +Line (290) = {248, 212}; +Line (291) = {248, 247}; +Line (292) = {247, 246}; +Line (293) = {246, 245}; +Line (294) = {245, 244}; +Line (295) = {244, 243}; +Line (296) = {243, 242}; +Line (297) = {242, 241}; +Line (298) = {241, 240}; +Line (299) = {240, 239}; +Line (300) = {239, 238}; +Line (305) = {237, 238}; +Line (306) = {208, 209}; +Line (307) = {209, 210}; +Line (308) = {210, 211}; +Line (309) = {211, 208}; +Line (310) = {186, 187}; +Line (311) = {187, 188}; +Line (312) = {188, 189}; +Line (313) = {189, 190}; +Line (314) = {190, 191}; +Line (315) = {191, 192}; +Line (316) = {192, 193}; +Line (317) = {193, 194}; +Line (318) = {194, 184}; +Line (319) = {184, 185}; +Line (320) = {185, 186}; +Line (321) = {207, 195}; +Line (322) = {207, 206}; +Line (323) = {206, 205}; +Line (324) = {205, 204}; +Line (325) = {204, 203}; +Line (326) = {203, 202}; +Line (327) = {202, 201}; +Line (328) = {201, 200}; +Line (329) = {200, 199}; +Line (330) = {199, 198}; +Line (331) = {198, 197}; +Line (332) = {197, 196}; +Line (333) = {196, 195}; +Line (334) = {313, 314}; +Line (335) = {314, 315}; +Line (336) = {315, 316}; +Line (337) = {316, 313}; +Line (338) = {317, 318}; +Line (339) = {318, 319}; +Line (340) = {317, 331}; +Line (341) = {331, 330}; +Line (342) = {330, 329}; +Line (343) = {329, 328}; +Line (344) = {327, 328}; +Line (345) = {327, 326}; +Line (346) = {326, 325}; +Line (347) = {325, 324}; +Line (348) = {324, 323}; +Line (349) = {323, 322}; +Line (350) = {322, 321}; +Line (351) = {321, 320}; +Line (352) = {320, 319}; +Line (353) = {253, 254}; +Line (354) = {254, 255}; +Line (355) = {255, 256}; +Line (356) = {257, 256}; +Line (357) = {257, 258}; +Line (358) = {258, 259}; +Line (359) = {259, 260}; +Line (360) = {260, 261}; +Line (361) = {261, 262}; +Line (362) = {262, 263}; +Line (363) = {263, 264}; +Line (364) = {264, 265}; +Line (366) = {265, 266}; +Line (367) = {266, 267}; +Line (368) = {267, 268}; +Line (369) = {268, 269}; +Line (370) = {269, 270}; +Line (371) = {270, 271}; +Line (372) = {271, 272}; +Line (373) = {272, 273}; +Line (374) = {273, 274}; +Line (375) = {274, 275}; +Line (376) = {275, 276}; +Line (377) = {276, 277}; +Line (378) = {277, 278}; +Line (379) = {278, 279}; +Line (380) = {279, 280}; +Line (381) = {280, 281}; +Line (382) = {281, 282}; +Line (383) = {282, 283}; +Line (384) = {283, 284}; +Line (385) = {284, 285}; +Line (386) = {285, 286}; +Line (387) = {286, 287}; +Line (388) = {287, 288}; +Line (389) = {288, 289}; +Line (390) = {289, 290}; +Line (391) = {290, 291}; +Line (392) = {291, 292}; +Line (393) = {292, 293}; +Line (394) = {293, 294}; +Line (395) = {294, 295}; +Line (396) = {295, 296}; +Line (397) = {296, 297}; +Line (398) = {297, 298}; +Line (399) = {298, 299}; +Line (400) = {299, 300}; +Line (401) = {300, 301}; +Line (402) = {301, 302}; +Line (403) = {302, 303}; +Line (404) = {303, 304}; +Line (405) = {253, 304}; +Line (406) = {305, 306}; +Line (407) = {306, 307}; +Line (408) = {307, 308}; +Line (409) = {308, 309}; +Line (410) = {309, 310}; +Line (411) = {310, 311}; +Line (412) = {311, 312}; +Line (413) = {312, 305}; +Line (414) = {556, 555}; +Line (415) = {555, 554}; +Line (416) = {554, 553}; +Line (417) = {553, 556}; +Line (418) = {503, 504}; +Line (419) = {504, 497}; +Line (420) = {497, 498}; +Line (421) = {498, 499}; +Line (422) = {499, 500}; +Line (423) = {500, 501}; +Line (424) = {501, 502}; +Line (425) = {502, 503}; +Line (426) = {493, 494}; +Line (427) = {494, 495}; +Line (428) = {495, 496}; +Line (429) = {496, 493}; +Line (430) = {518, 519}; +Line (435) = {518, 517}; +Line (436) = {517, 516}; +Line (438) = {506, 507}; +Line (439) = {507, 508}; +Line (440) = {508, 509}; +Line (441) = {509, 510}; +Line (442) = {510, 511}; +Line (443) = {511, 512}; +Line (444) = {512, 513}; +Line (445) = {513, 514}; +Line (446) = {514, 515}; +Line (447) = {515, 516}; +Line (448) = {489, 490}; +Line (449) = {490, 491}; +Line (450) = {491, 492}; +Line (451) = {492, 419}; +Line (452) = {419, 420}; +Line (453) = {420, 421}; +Line (454) = {421, 422}; +Line (455) = {422, 423}; +Line (456) = {423, 424}; +Line (457) = {424, 425}; +Line (458) = {425, 426}; +Line (459) = {426, 427}; +Line (460) = {427, 428}; +Line (461) = {428, 429}; +Line (462) = {429, 430}; +Line (463) = {430, 431}; +Line (464) = {431, 432}; +Line (465) = {432, 433}; +Line (466) = {433, 434}; +Line (467) = {434, 435}; +Line (468) = {435, 436}; +Line (469) = {436, 437}; +Line (470) = {437, 438}; +Line (471) = {438, 439}; +Line (472) = {439, 440}; +Line (473) = {440, 441}; +Line (474) = {441, 442}; +Line (475) = {442, 443}; +Line (476) = {443, 444}; +Line (477) = {444, 445}; +Line (478) = {445, 446}; +Line (479) = {446, 447}; +Line (480) = {447, 448}; +Line (481) = {448, 449}; +Line (482) = {449, 450}; +Line (483) = {450, 451}; +Line (484) = {451, 452}; +Line (485) = {452, 453}; +Line (486) = {453, 454}; +Line (487) = {454, 455}; +Line (488) = {455, 456}; +Line (489) = {456, 457}; +Line (490) = {457, 458}; +Line (491) = {458, 459}; +Line (492) = {459, 460}; +Line (493) = {460, 461}; +Line (494) = {461, 462}; +Line (495) = {462, 463}; +Line (496) = {463, 464}; +Line (497) = {465, 464}; +Line (498) = {465, 466}; +Line (499) = {466, 467}; +Line (500) = {467, 468}; +Line (501) = {468, 469}; +Line (502) = {469, 470}; +Line (503) = {470, 471}; +Line (504) = {471, 472}; +Line (505) = {472, 473}; +Line (506) = {473, 474}; +Line (507) = {474, 475}; +Line (508) = {475, 476}; +Line (509) = {476, 477}; +Line (510) = {477, 478}; +Line (511) = {478, 479}; +Line (512) = {484, 483}; +Line (513) = {489, 488}; +Line (514) = {488, 487}; +Line (515) = {487, 486}; +Line (516) = {486, 485}; +Line (517) = {485, 484}; +Line (518) = {483, 482}; +Line (519) = {482, 481}; +Line (520) = {481, 480}; +Line (521) = {480, 479}; +Line (522) = {362, 363}; +Line (523) = {363, 364}; +Line (524) = {364, 365}; +Line (525) = {365, 366}; +Line (526) = {366, 367}; +Line (527) = {367, 368}; +Line (528) = {368, 369}; +Line (529) = {369, 370}; +Line (530) = {370, 371}; +Line (531) = {371, 372}; +Line (532) = {372, 373}; +Line (533) = {373, 374}; +Line (534) = {374, 375}; +Line (535) = {375, 376}; +Line (536) = {376, 377}; +Line (537) = {377, 378}; +Line (538) = {378, 379}; +Line (539) = {379, 380}; +Line (540) = {380, 381}; +Line (541) = {381, 382}; +Line (542) = {382, 383}; +Line (543) = {383, 384}; +Line (544) = {384, 385}; +Line (545) = {385, 386}; +Line (546) = {386, 387}; +Line (547) = {387, 388}; +Line (548) = {388, 389}; +Line (549) = {389, 390}; +Line (550) = {390, 391}; +Line (551) = {391, 392}; +Line (552) = {392, 393}; +Line (553) = {393, 394}; +Line (554) = {394, 395}; +Line (555) = {395, 396}; +Line (556) = {396, 397}; +Line (557) = {397, 398}; +Line (565) = {403, 404}; +Line (566) = {404, 405}; +Line (567) = {405, 406}; +Line (568) = {406, 407}; +Line (569) = {407, 408}; +Line (570) = {408, 409}; +Line (571) = {409, 410}; +Line (572) = {410, 411}; +Line (573) = {411, 412}; +Line (574) = {413, 412}; +Line (575) = {413, 414}; +Line (576) = {414, 415}; +Line (577) = {415, 416}; +Line (578) = {416, 417}; +Line (579) = {417, 418}; +Line (580) = {418, 362}; +Line (581) = {354, 355}; +Line (582) = {355, 356}; +Line (583) = {356, 357}; +Line (584) = {357, 358}; +Line (585) = {358, 359}; +Line (586) = {359, 360}; +Line (587) = {360, 361}; +Line (588) = {361, 354}; +Line (589) = {342, 341}; +Line (590) = {341, 340}; +Line (591) = {340, 339}; +Line (592) = {342, 343}; +Line (593) = {343, 344}; +Line (594) = {344, 345}; +Line (595) = {345, 346}; +Line (596) = {346, 347}; +Line (597) = {347, 348}; +Line (598) = {348, 349}; +Line (599) = {349, 350}; +Line (600) = {350, 351}; +Line (601) = {351, 352}; +Line (602) = {339, 338}; +Line (603) = {338, 337}; +Line (604) = {352, 353}; +Line (605) = {353, 337}; +Line (606) = {332, 333}; +Line (607) = {333, 334}; +Line (608) = {334, 335}; +Line (609) = {335, 332}; +Line (685) = {398, 399}; +Line (689) = {402, 403}; +Line (691) = {401, 402}; +Line (693) = {399, 601}; +Line (694) = {401, 601}; +Line (707) = {216, 217}; +Line (708) = {217, 218}; +Line (709) = {237, 236}; +Line (710) = {236, 235}; +Line (713) = {519, 520}; +Line (714) = {520, 505}; +Line (715) = {505, 506}; +Line (759) = {3, 2}; +Line (769) = {9, 10}; +Line Loop(770) = {242,769,244,245,246,247,248,259,260,261,249,-250,251,252,253,254,-759,256,257,258,240,241}; +Plane Surface(771) = {770}; +Line Loop(772) = {237,238,239,236}; +Plane Surface(773) = {772}; +Line Loop(774) = {232,233,234,235}; +Plane Surface(775) = {774}; +Line Loop(776) = {228,229,230,231}; +Plane Surface(777) = {776}; +Line Loop(778) = {221,222,223,224}; +Plane Surface(779) = {778}; +Line Loop(780) = {217,218,219,220}; +Plane Surface(781) = {780}; +Line Loop(782) = {213,214,215,216}; +Plane Surface(783) = {782}; +Line Loop(784) = {191,192,193,194,195,196,-226,227,-212,-210,211,197,-209,-208,-207,-206,-205,-204,-203,-202,-201,-200,-199,-198,190}; +Plane Surface(785) = {784}; +Line Loop(786) = {4,5,6,7,8,9,10,11,12,-13,14,15,16,17,1,3,2}; +Plane Surface(787) = {786}; +Line Loop(788) = {18,19,20,21}; +Plane Surface(789) = {788}; +Line Loop(790) = {82,40,-79,-78,-77,76,83,84,-81,-80}; +Plane Surface(791) = {790}; +Line Loop(792) = {90,-48,91,46,92,44,89,42}; +Plane Surface(793) = {792}; +Line Loop(794) = {22,23,24,25}; +Plane Surface(795) = {794}; +Line Loop(796) = {28,29,30,31,32,33,26,27}; +Plane Surface(797) = {796}; +Line Loop(798) = {75,-68,69,70,71,72,73,74}; +Plane Surface(799) = {798}; +Line Loop(800) = {59,60,61,62,63,64,65,66}; +Plane Surface(801) = {800}; +Line Loop(802) = {56,49,50,51,52,53,54,55}; +Plane Surface(803) = {802}; +Line Loop(804) = {85,86,87,88}; +Plane Surface(805) = {804}; +Line Loop(806) = {148,149,150,151,139,140,141,142,143,144,145,146,147}; +Plane Surface(807) = {806}; +Line Loop(808) = {162,163,164,165,166,167,168,169,170,171,160,161}; +Plane Surface(809) = {808}; +Line Loop(810) = {153,154,155,156,157,158,159,152}; +Plane Surface(811) = {810}; +Line Loop(812) = {178,179,180,181,182,183,184,185,186,187,188,189}; +Plane Surface(813) = {812}; +Line Loop(814) = {172,173,174,175,176,177}; +Line Loop(815) = {103,104,105,106,107,108,109,119,120,121,122,123,124,125,126,127,128,129,130,93,94,95,96,97,98,99,100,101,102}; +Line Loop(816) = {112,-113,114,115,116,117,118,111}; +Line Loop(817) = {131,132,133,134,135,136,137,138}; +Plane Surface(818) = {815,816,817}; +Plane Surface(819) = {816}; +Plane Surface(820) = {817}; +Plane Surface(821) = {814}; +Line Loop(822) = {269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,-710,-709,305,-300,-299,-298,-297,-296,-295,-294,-293,-292,-291,290,286,287,288,289,707,708}; +Plane Surface(823) = {822}; +Line Loop(824) = {265,266,267,268}; +Plane Surface(825) = {824}; +Line Loop(826) = {367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,-405,353,354,355,-356,357,358,359,360,361,362,363,364,366}; +Plane Surface(827) = {826}; +Line Loop(828) = {410,411,412,413,406,407,408,409}; +Plane Surface(829) = {828}; +Line Loop(830) = {306,307,308,309}; +Plane Surface(831) = {830}; +Line Loop(832) = {324,325,326,327,328,329,330,331,332,333,-321,322,323}; +Plane Surface(833) = {832}; +Line Loop(834) = {320,310,311,312,313,314,315,316,317,318,319}; +Plane Surface(835) = {834}; +Line Loop(836) = {351,352,-339,-338,340,341,342,343,-344,345,346,347,348,349,350}; +Plane Surface(837) = {836}; +Line Loop(838) = {336,337,334,335}; +Plane Surface(839) = {838}; +Line Loop(840) = {590,591,602,603,-605,-604,-601,-600,-599,-598,-597,-596,-595,-594,-593,-592,589}; +Plane Surface(841) = {840}; +Line Loop(842) = {609,606,607,608}; +Plane Surface(843) = {842}; +Line Loop(844) = {587,588,581,582,583,584,585,586}; +Plane Surface(845) = {844}; +Line Loop(846) = {522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,685,693,-694,691,689,565,566,567,568,569,570,571,572,573,-574,575,576,577,578,579,580}; +Plane Surface(847) = {846}; +Line Loop(848) = {455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,-497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,-521,-520,-519,-518,-512,-517,-516,-515,-514,-513,448,449,450,451,452,453,454}; +Plane Surface(849) = {848}; +Line Loop(850) = {715,438,439,440,441,442,443,444,445,446,447,-436,-435,430,713,714}; +Plane Surface(851) = {850}; +Line Loop(852) = {426,427,428,429}; +Plane Surface(853) = {852}; +Line Loop(854) = {423,424,425,418,419,420,421,422}; +Plane Surface(855) = {854}; +Line Loop(856) = {414,415,416,417}; +Plane Surface(857) = {856}; +Line Loop(858) = {34,35,36,37}; +Plane Surface(859) = {858,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,802,804,806,808,810,812,814,815,834,830,832,836,838,822,824,826,828,840,842,844,846,848,850,852,854,856}; + + + +Geometry.AutoCoherence=0; // to speed things up + +// should make one list for each group of buildings with same height +s[] = {819,820,821,823,825,827,829,831,833,835,837,839,841,843,845,847, + 849,851,853,855,857,859,771,773,775,777,779,781,783,785,787,789, + 791,793,795,797,799,801,803,805,807,809,811,813,818}; +p[] = {}; + +For i In {0:#s[]-1} + // need as many extrusions as you have different building heights... + e1[] = Extrude {0,0,30} { Surface{s[i]}; Layers{5}; Recombine; }; + e2[] = Extrude {0,0,15} { Surface{e1[0]}; Layers{3}; Recombine; }; + e3[] = Extrude {0,0,20} { Surface{e2[0]}; Layers{4}; Recombine; }; + e4[] = Extrude {0,0,30} { Surface{e3[0]}; Layers{5}; Recombine; }; + + If(s[i] == 819 || s[i] == 820 || s[i] == 859) // no buildings here + p[] += {e1[1], e2[1], e3[1]}; + EndIf + + p[] += e4[1]; // volume above all buildings + + // add other bits in p[] depending on height of each building +EndFor + +Geometry.AutoCoherence=1; +Coherence; // remove duplicates + +Physical Volume(1) = p[]; diff --git a/benchmarks/3d/tetmesh.geo b/benchmarks/3d/buildings_tetmesh.geo similarity index 100% rename from benchmarks/3d/tetmesh.geo rename to benchmarks/3d/buildings_tetmesh.geo