diff --git a/hub/data/costs/montreal_costs_oriol.xml b/hub/data/costs/montreal_costs_oriol.xml new file mode 100644 index 00000000..cadb2391 --- /dev/null +++ b/hub/data/costs/montreal_costs_oriol.xml @@ -0,0 +1,166 @@ + + + + + 15.89 + 215.90 + + + + 0 + 0 + 50 + + + + 304 + 304 + 50 + + + 857.14 + 857.14 + 20 + + + + + 118 + 118 + 50 + + + 857.14 + 857.14 + 20 + + + + + + 0 + 0 + 50 + + + 0 + 0 + 50 + + + + 50 + 50 + 20 + + + 62 + 62 + 20 + + + 70 + 70 + 20 + + + + + 0 + 100 + + + + 800 + 800 + 25 + + + + 622.86 + 622.86 + 25 + + + 622.86 + 622.86 + 15 + + + 0 + 0 + 15 + + + 0 + 0 + 15 + + + 47.62 + 47.62 + 15 + + + + + 171.43 + 171.43 + 20 + + + 139 + 139 + 20 + + + + + + 0 + 0 + 15 + + + 0 + 0 + 15 + + + 2.5 + + + + + 0 + 0 + + 5.6 + + + 40 + 40 + 0.05 + 1 + 4.6 + + 30 + + 6.3 + + + 2 + 1.5 + 3.6 + + + hourlydatatable + 0 + + + 2 + + 0 + + + \ No newline at end of file diff --git a/hub/data/costs/montreal_costs_oriol_LOD0.xml b/hub/data/costs/montreal_costs_oriol_LOD0.xml new file mode 100644 index 00000000..8c1ae830 --- /dev/null +++ b/hub/data/costs/montreal_costs_oriol_LOD0.xml @@ -0,0 +1,212 @@ + + + + + + 0 + + + + 304 + + + 857.14 + + + + + 118 + + + + + + + + 800 + 800 + 25 + + + + 622.86 + 622.86 + 25 + + + 622.86 + 622.86 + 15 + + + 0 + 0 + 15 + + + 47.62 + 47.62 + 15 + + + + + 139 + 139 + 20 + + + + + 2.5 + 14 + + + + + + 12.27 + 0 + + 0.075 + + + + 17.71 + + 0.640 + + + 1.2 + + + 0.09 + + + 40 + 40 + 1 + + 30 + + 6.3 + + + 2 + 1.5 + 3.6 + + + 0 + + + 2 + + + + + + + + 0 + + + + 304 + + + 857.14 + + + + + 118 + + + + + + + + 800 + 800 + 25 + + + + 622.86 + 622.86 + 25 + + + 622.86 + 622.86 + 15 + + + 0 + 0 + 15 + + + 47.62 + 47.62 + 15 + + + + + 139 + 139 + 20 + + + + + 6 + 14 + + + + + + 12.27 + 0 + + 0.075 + + + + 17.71 + + 0.640 + + + 1.2 + + + 0.09 + + + 40 + 40 + 1 + + 30 + + 6.3 + + + 2 + 1.5 + 3.6 + + + 0 + + + 2 + + + + \ No newline at end of file diff --git a/hub/data/costs/montreal_costs_oriol_LOD1.xml b/hub/data/costs/montreal_costs_oriol_LOD1.xml new file mode 100644 index 00000000..93e4795a --- /dev/null +++ b/hub/data/costs/montreal_costs_oriol_LOD1.xml @@ -0,0 +1,178 @@ + + + + + 15.89 + 215.90 + + + + 0 + 0 + 50 + + + + 304 + 304 + 50 + + + 857.14 + 857.14 + 20 + + + + + 118 + 118 + 50 + + + 857.14 + 857.14 + 20 + + + + + + 0 + 0 + 50 + + + 0 + 0 + 50 + + + + 50 + 50 + 20 + + + 62 + 62 + 20 + + + 70 + 70 + 20 + + + + + 0 + 100 + + + + 800 + 800 + 25 + + + + 622.86 + 622.86 + 25 + + + 622.86 + 622.86 + 15 + + + 0 + 0 + 15 + + + 0 + 0 + 15 + + + 47.62 + 47.62 + 15 + + + + + 171.43 + 171.43 + 20 + + + 139 + 139 + 20 + + + + + + 0 + 0 + 15 + + + 0 + 0 + 15 + + + 2.5 + + + + + 12.27 + + hourlydatatable1 + hourlydatatable2 + + + + 17.71 + + 0.640 + + + 1.2 + + + 0.09 + + + 40 + 40 + 0.05 + 1 + 4.6 + + 30 + + 6.3 + + + 2 + 1.5 + 3.6 + + + hourlydatatable + 0 + + + 2 + + 0 + + + \ No newline at end of file diff --git a/hub/exports/building_energy/idf.py b/hub/exports/building_energy/idf.py index b5d34102..8cc6f0bb 100644 --- a/hub/exports/building_energy/idf.py +++ b/hub/exports/building_energy/idf.py @@ -20,6 +20,7 @@ class Idf: _BUILDING = 'BUILDING' _ZONE = 'ZONE' _LIGHTS = 'LIGHTS' + _APPLIANCES = 'OtherEquipment' _PEOPLE = 'PEOPLE' _THERMOSTAT = 'HVACTEMPLATE:THERMOSTAT' _IDEAL_LOAD_AIR_SYSTEM = 'HVACTEMPLATE:ZONE:IDEALLOADSAIRSYSTEM' @@ -338,7 +339,7 @@ class Idf: def _add_lighting(self, thermal_zone, zone_name): fraction_radiant = thermal_zone.lighting.radiative_fraction - fraction_visible = 1 + fraction_visible = 0.3 method = 'Watts/Area' watts_per_zone_floor_area = thermal_zone.lighting.density fraction_replaceable = 1 @@ -356,6 +357,27 @@ class Idf: EndUse_Subcategory=subcategory ) + def _add_appliances(self, thermal_zone, zone_name): + fueltype='Electricity' + fraction_radiant = thermal_zone.appliances.radiative_fraction + fraction_convective= thermal_zone.appliances.convective_fraction + fraction_latent = 0 + method = 'Watts/Area' + watts_per_zone_floor_area = thermal_zone.appliances.density + subcategory = f'ELECTRIC EQUIPMENT#{zone_name}#InteriorEquipment' + + self._idf.newidfobject(self._APPLIANCES, + Fuel_type=fueltype, + Name=f'{zone_name}_appliances', + Zone_or_ZoneList_Name=zone_name, + Schedule_Name=f'Appliance schedules {thermal_zone.usage_name}', + Design_Level_Calculation_Method=method, + Watts_per_Zone_Floor_Area=watts_per_zone_floor_area, + Fraction_Latent=fraction_latent, + Fraction_Convective=fraction_convective, + Fraction_Radiant=fraction_radiant, + EndUse_Subcategory=subcategory + ) def _add_infiltration(self, thermal_zone, zone_name): for zone in self._idf.idfobjects["ZONE"]: if zone.Name == f'{zone_name}_infiltration': @@ -422,6 +444,8 @@ class Idf: self._add_infiltration(thermal_zone, building.name) self._add_occupancy(thermal_zone, building.name) self._add_lighting(thermal_zone, building.name) + self._add_appliances(thermal_zone, building.name) + if self._export_type == "Surfaces": if building.name in self._target_buildings or building.name in self._adjacent_buildings: self._add_surfaces(building, building.name) diff --git a/hub/exports/building_energy/insel/insel_monthly_energy_balance.py b/hub/exports/building_energy/insel/insel_monthly_energy_balance.py index f517abba..20e5b728 100644 --- a/hub/exports/building_energy/insel/insel_monthly_energy_balance.py +++ b/hub/exports/building_energy/insel/insel_monthly_energy_balance.py @@ -104,7 +104,7 @@ class InselMonthlyEnergyBalance(Insel): f'zone {i + 1} (degree Celsius)') parameters.append(f'{usage.thermal_control.heating_set_back} % BP(14) #4 Heating setback temperature ' f'zone {i + 1} (degree Celsius)') - parameters.append(f'{usage.thermal_control.mean_cooling_set_point} % BP(15) #5 Cooling setpoint temperature ' + parameters.append(f'{usage.thermal_control.mean_cooling_set_point + 3} % BP(15) #5 Cooling setpoint temperature ' f'zone {i + 1} (degree Celsius)') parameters.append(f'{usage.hours_day} % BP(16) #6 Usage hours per day zone {i + 1}') parameters.append(f'{usage.days_year} % BP(17) #7 Usage days per year zone {i + 1}') diff --git a/hub/exports/energy_building_exports_factory.py b/hub/exports/energy_building_exports_factory.py index 0ae9ae55..4915a3c8 100644 --- a/hub/exports/energy_building_exports_factory.py +++ b/hub/exports/energy_building_exports_factory.py @@ -54,7 +54,9 @@ class EnergyBuildingsExportsFactory: """ idf_data_path = (Path(__file__).parent / './building_energy/idf_files/').resolve() # todo: create a get epw file function based on the city + print('path', idf_data_path) weather_path = (Path(__file__).parent / '../data/weather/epw/CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').resolve() + print(weather_path) return Idf(self._city, self._path, (idf_data_path / 'Minimal.idf'), (idf_data_path / 'Energy+.idd'), weather_path, target_buildings=self._target_buildings, adjacent_buildings=self._adjacent_buildings) @@ -71,6 +73,7 @@ class EnergyBuildingsExportsFactory: Export the city given to the class using the given export type handler :return: None """ + print(self) return getattr(self, self._export_type, lambda: None) def export_debug(self): diff --git a/hub/helpers/geometry_helper.py b/hub/helpers/geometry_helper.py index 02658bbd..03ef06b1 100644 --- a/hub/helpers/geometry_helper.py +++ b/hub/helpers/geometry_helper.py @@ -9,7 +9,6 @@ import math import numpy as np import requests -from PIL import Image from trimesh import Trimesh from trimesh import intersections @@ -18,6 +17,7 @@ from hub.city_model_structure.attributes.polyhedron import Polyhedron from hub.helpers.location import Location + class MapPoint: def __init__(self, x, y): self._x = int(x) @@ -79,15 +79,14 @@ class GeometryHelper: y = int((city.upper_corner[1] - city.lower_corner[1]) * 0.5) + 1 city_map = [['' for _ in range(y + 1)] for _ in range(x + 1)] map_info = [[{} for _ in range(y + 1)] for _ in range(x + 1)] - img = Image.new('RGB', (x + 1, y + 1), "black") # create a new black image - city_image = img.load() # create the pixel map + # img = Image.new('RGB', (x + 1, y + 1), "black") # create a new black image + # city_image = img.load() # create the pixel map for building_name in building_names: building = city.city_object(building_name) line = 0 for ground in building.grounds: length = len(ground.perimeter_polygon.coordinates) - 1 for i, coordinate in enumerate(ground.perimeter_polygon.coordinates): - j = i + 1 if i == length: j = 0 @@ -107,7 +106,7 @@ class GeometryHelper: 'line_start': (coordinate[0], coordinate[1]), 'line_end': (next_coordinate[0], next_coordinate[1]), } - city_image[x, y] = (100, 0, 0) + # city_image[x, y] = (100, 0, 0) elif city_map[x][y] != building.name: neighbour = city.city_object(city_map[x][y]) neighbour_info = map_info[x][y] @@ -167,51 +166,8 @@ class GeometryHelper: elif building not in neighbour.neighbours: neighbour.neighbours.append(building) line += 1 - - if plot: - img.show() - return lines_information - - @staticmethod - def fast_city_mapping(city, building_names=None): - lines_information = {} - if building_names is None: - building_names = [b.name for b in city.buildings] - x = int((city.upper_corner[0] - city.lower_corner[0]) * 0.5) + 1 - y = int((city.upper_corner[1] - city.lower_corner[1]) * 0.5) + 1 - city_map = [['' for _ in range(y + 1)] for _ in range(x + 1)] - for building_name in building_names: - building = city.city_object(building_name) - line = 0 - for ground in building.grounds: - length = len(ground.perimeter_polygon.coordinates) - 1 - for i, coordinate in enumerate(ground.perimeter_polygon.coordinates): - j = i + 1 - if i == length: - j = 0 - next_coordinate = ground.perimeter_polygon.coordinates[j] - point = GeometryHelper.coordinate_to_map_point(coordinate, city) - distance = int(GeometryHelper.distance_between_points(coordinate, next_coordinate)) - if distance == 0: - continue - delta_x = (coordinate[0] - next_coordinate[0]) / (distance / 0.5) - delta_y = (coordinate[1] - next_coordinate[1]) / (distance / 0.5) - for k in range(0, distance): - x = MapPoint(point.x + (delta_x * k), point.y + (delta_y * k)).x - y = MapPoint(point.x + (delta_x * k), point.y + (delta_y * k)).y - if city_map[x][y] == '': - city_map[x][y] = building.name - elif city_map[x][y] != building.name: - neighbour = city.city_object(city_map[x][y]) - if building.neighbours is None: - building.neighbours = [neighbour] - elif neighbour not in building.neighbours: - building.neighbours.append(neighbour) - if neighbour.neighbours is None: - neighbour.neighbours = [building] - elif building not in neighbour.neighbours: - neighbour.neighbours.append(building) - line += 1 + # if plot: + # img.show() return lines_information @staticmethod diff --git a/hub/unittests/test_city_layers.py b/hub/unittests/test_city_layers.py index a763e895..afa03a56 100644 --- a/hub/unittests/test_city_layers.py +++ b/hub/unittests/test_city_layers.py @@ -61,7 +61,7 @@ class CityLayerTest(TestCase): def _genidf(self, bldgs_group): t0 = time.time() buildings_df, target_buildings, adjacent_buildings = self._prepare_buildings(bldgs_group) - output_path = (Path(__file__).parent / 'tests_outputs').resolve() + #output_path = (Path(__file__).parent / 'tests_outputs').resolve() city = GeometryFactory('gpandas', data_frame=buildings_df).city ConstructionFactory('nrel', city).enrich() UsageFactory('comnet', city).enrich() diff --git a/hub/unittests/tests_data/custom.geojson b/hub/unittests/tests_data/custom.geojson deleted file mode 100644 index c3f2d04c..00000000 --- a/hub/unittests/tests_data/custom.geojson +++ /dev/null @@ -1,1408 +0,0 @@ -{ - "type":"FeatureCollection", - "features":[ - { - "type":"Feature", - "id":70, - "geometry":{ - "type":"MultiPolygon", - "coordinates":[ - [ - [ - [ - -73.576472289808251, - 45.493177852869216 - ], - [ - -73.576495250377462, - 45.493188158714574 - ], - [ - -73.576518210955058, - 45.49319846455532 - ], - [ - -73.576527204740515, - 45.493188555738655 - ], - [ - -73.576536198522817, - 45.493178646921258 - ], - [ - -73.576532639519186, - 45.493167590213829 - ], - [ - -73.576529080516934, - 45.493156533506244 - ], - [ - -73.576502477757714, - 45.493144592389548 - ], - [ - -73.576472289808251, - 45.493177852869216 - ] - ] - ], - [ - [ - [ - -73.576894294282425, - 45.493438920982065 - ], - [ - -73.576967759631842, - 45.493363428010589 - ], - [ - -73.576977694577408, - 45.493368212988962 - ], - [ - -73.57698762952468, - 45.493372997966489 - ], - [ - -73.577158309970628, - 45.49319762004157 - ], - [ - -73.577148183002237, - 45.493192745224015 - ], - [ - -73.577138056035565, - 45.493187870405478 - ], - [ - -73.577200282371294, - 45.493123934992674 - ], - [ - -73.577204642765594, - 45.49312603307969 - ], - [ - -73.577313242038372, - 45.493178312594821 - ], - [ - -73.577421841512063, - 45.493230592006064 - ], - [ - -73.577484170850823, - 45.493166552783705 - ], - [ - -73.5775465000483, - 45.493102513526729 - ], - [ - -73.57743790070576, - 45.493050234232733 - ], - [ - -73.577329301564092, - 45.492997954834884 - ], - [ - -73.577390001751795, - 45.492935572478565 - ], - [ - -73.577329830715513, - 45.492906600932677 - ], - [ - -73.577370943138092, - 45.492864362673494 - ], - [ - -73.577355106211229, - 45.492856738216339 - ], - [ - -73.577339269288629, - 45.492849113756947 - ], - [ - -73.577323432370292, - 45.492841489295373 - ], - [ - -73.577307595456233, - 45.492833864831596 - ], - [ - -73.577266512158786, - 45.492876115947638 - ], - [ - -73.577263167503659, - 45.49287450575882 - ], - [ - -73.577252874645708, - 45.492869550105141 - ], - [ - -73.577207517331786, - 45.492847714543146 - ], - [ - -73.577177160803899, - 45.492878905681714 - ], - [ - -73.577146804242517, - 45.492910096812132 - ], - [ - -73.577126587679842, - 45.492900361615355 - ], - [ - -73.577127746349944, - 45.492899171168567 - ], - [ - -73.576951761086534, - 45.492814452493256 - ], - [ - -73.576957746762545, - 45.492808266526772 - ], - [ - -73.576963732437235, - 45.492802080559997 - ], - [ - -73.576958317364713, - 45.492781009842794 - ], - [ - -73.576965320363001, - 45.492784352547169 - ], - [ - -73.576967226309733, - 45.492784063312598 - ], - [ - -73.576969132256451, - 45.492783774077999 - ], - [ - -73.577029614889923, - 45.492721230085394 - ], - [ - -73.5769586502972, - 45.492687281781308 - ], - [ - -73.576956438734257, - 45.492689568877203 - ], - [ - -73.576952170366127, - 45.492687529105027 - ], - [ - -73.576947900718892, - 45.492685489333553 - ], - [ - -73.576936738785093, - 45.492686234724957 - ], - [ - -73.576925576850996, - 45.492686980115295 - ], - [ - -73.576877602080373, - 45.492736584865526 - ], - [ - -73.576876537460905, - 45.492748706491859 - ], - [ - -73.576875472840982, - 45.492760828118172 - ], - [ - -73.576874156885395, - 45.492762187769458 - ], - [ - -73.576872840929724, - 45.492763547420765 - ], - [ - -73.576580975842575, - 45.492619624321087 - ], - [ - -73.576575650663827, - 45.492625127162192 - ], - [ - -73.576533143841573, - 45.492604790942366 - ], - [ - -73.576466592021845, - 45.492673606155712 - ], - [ - -73.576400040040127, - 45.492742421329574 - ], - [ - -73.576442558402988, - 45.492762756963423 - ], - [ - -73.576437101669526, - 45.492768402050331 - ], - [ - -73.576730510424966, - 45.492908761091506 - ], - [ - -73.576725642646323, - 45.492913794493731 - ], - [ - -73.576728530645468, - 45.492925346561002 - ], - [ - -73.576731418645778, - 45.492936898628209 - ], - [ - -73.576781143890599, - 45.492960675107646 - ], - [ - -73.576814479704396, - 45.492956216460122 - ], - [ - -73.576820420685635, - 45.492950071024119 - ], - [ - -73.57682636166551, - 45.492943925587753 - ], - [ - -73.577001924663747, - 45.493028446773195 - ], - [ - -73.577012034948979, - 45.493033315316225 - ], - [ - -73.577022145235873, - 45.493038183858367 - ], - [ - -73.576723660199264, - 45.493344879957434 - ], - [ - -73.576711872725312, - 45.49333920355506 - ], - [ - -73.576711286324581, - 45.493337010127433 - ], - [ - -73.57670306696707, - 45.493333047331788 - ], - [ - -73.576699944424305, - 45.493333459757757 - ], - [ - -73.576698977818467, - 45.493332994287229 - ], - [ - -73.576698012493324, - 45.493332529715659 - ], - [ - -73.576697349388951, - 45.493333209543678 - ], - [ - -73.576696687565303, - 45.493333890270684 - ], - [ - -73.576693281039297, - 45.49333434068059 - ], - [ - -73.576690463806614, - 45.493337231073681 - ], - [ - -73.576687646573603, - 45.493340121466701 - ], - [ - -73.576688286988187, - 45.493342520022807 - ], - [ - -73.576671436000268, - 45.49335983264946 - ], - [ - -73.576654583996572, - 45.493377147208015 - ], - [ - -73.576649143848655, - 45.493374530376734 - ], - [ - -73.576581836866609, - 45.493443692594838 - ], - [ - -73.57658726920495, - 45.493446312843083 - ], - [ - -73.57656866507439, - 45.493465425476032 - ], - [ - -73.576550064981134, - 45.493484536160615 - ], - [ - -73.576547552524772, - 45.493484865473967 - ], - [ - -73.576541930823581, - 45.493490646244169 - ], - [ - -73.576542398829517, - 45.493492412430882 - ], - [ - -73.576541514789497, - 45.493493319961594 - ], - [ - -73.576540631926434, - 45.493494227596628 - ], - [ - -73.576543207838398, - 45.493495467656231 - ], - [ - -73.576543756963517, - 45.493497537830947 - ], - [ - -73.576551976321639, - 45.493501491639499 - ], - [ - -73.576554920440927, - 45.493501105747107 - ], - [ - -73.576566289909451, - 45.493506579666196 - ], - [ - -73.576266708786861, - 45.493814391987812 - ], - [ - -73.575839558195582, - 45.493608755035062 - ], - [ - -73.575827369698672, - 45.493621277826108 - ], - [ - -73.575790450004689, - 45.493603501941806 - ], - [ - -73.575740320151539, - 45.493655010807814 - ], - [ - -73.575690190207041, - 45.493706519651376 - ], - [ - -73.575708649145241, - 45.493715409581661 - ], - [ - -73.575727108133279, - 45.49372429953015 - ], - [ - -73.57571456122227, - 45.49373719360203 - ], - [ - -73.575928133826139, - 45.493840010262552 - ], - [ - -73.576141707206986, - 45.493942826521355 - ], - [ - -73.576032378433325, - 45.494055158562745 - ], - [ - -73.576087609579957, - 45.494081743911948 - ], - [ - -73.576037212717651, - 45.494133499416094 - ], - [ - -73.576055047067584, - 45.494142085558067 - ], - [ - -73.576072881422903, - 45.494150671697234 - ], - [ - -73.576109215889886, - 45.494168158469215 - ], - [ - -73.576120535824018, - 45.494156533752616 - ], - [ - -73.576235558076021, - 45.494211896513399 - ], - [ - -73.576232412700463, - 45.494215130090247 - ], - [ - -73.576241902195719, - 45.494219702166042 - ], - [ - -73.576259929039423, - 45.494201181228867 - ], - [ - -73.576277891984859, - 45.494182724220458 - ], - [ - -73.576273143402773, - 45.494180439986444 - ], - [ - -73.576268394822264, - 45.494178156652005 - ], - [ - -73.576265314326392, - 45.49418131986284 - ], - [ - -73.576150298708455, - 45.494125955427037 - ], - [ - -73.57615959576799, - 45.494116401054981 - ], - [ - -73.576214877725121, - 45.494143018346982 - ], - [ - -73.576324208300164, - 45.494030682879171 - ], - [ - -73.577101000772842, - 45.494404629377556 - ], - [ - -73.577152116601098, - 45.494352110620213 - ], - [ - -73.577191835183115, - 45.494371228788452 - ], - [ - -73.57720334055854, - 45.49435940605354 - ], - [ - -73.577214845929191, - 45.494347583317513 - ], - [ - -73.577188868635986, - 45.494335084036706 - ], - [ - -73.577175125611674, - 45.494328471794212 - ], - [ - -73.577213719007432, - 45.494288806232056 - ], - [ - -73.57723157663257, - 45.494297405671503 - ], - [ - -73.57724427657844, - 45.494284340339156 - ], - [ - -73.577250632952584, - 45.49427781216734 - ], - [ - -73.577256989325292, - 45.494271283995147 - ], - [ - -73.577232159635059, - 45.49425933121222 - ], - [ - -73.577307516881731, - 45.494181896141576 - ], - [ - -73.577351282419698, - 45.494136927970658 - ], - [ - -73.577397332812652, - 45.494159095346603 - ], - [ - -73.577410569332002, - 45.494145498723583 - ], - [ - -73.577423805832595, - 45.494131893100516 - ], - [ - -73.577400780952331, - 45.494120810021286 - ], - [ - -73.57737775497921, - 45.494109726406997 - ], - [ - -73.577383638377128, - 45.494103679395955 - ], - [ - -73.577385774650395, - 45.494101484332425 - ], - [ - -73.577457665638661, - 45.494135874453427 - ], - [ - -73.577532746205875, - 45.494058234414453 - ], - [ - -73.577607826566819, - 45.49398059432513 - ], - [ - -73.577540777737696, - 45.493948524404999 - ], - [ - -73.577374429878944, - 45.493868955963606 - ], - [ - -73.577263185641925, - 45.49398397741804 - ], - [ - -73.577269358037455, - 45.493986932283754 - ], - [ - -73.577240899757285, - 45.494016367012186 - ], - [ - -73.577225411959546, - 45.494008910661393 - ], - [ - -73.577136937927961, - 45.494099820554453 - ], - [ - -73.577111226626286, - 45.494126241099409 - ], - [ - -73.577048465073645, - 45.494190732892747 - ], - [ - -73.576897596374508, - 45.494118105658828 - ], - [ - -73.576907258037934, - 45.494108171210989 - ], - [ - -73.576582871300232, - 45.493952014157983 - ], - [ - -73.576578039148117, - 45.493956977341227 - ], - [ - -73.576573208060481, - 45.493961941644514 - ], - [ - -73.576495290653952, - 45.493924433145516 - ], - [ - -73.57656768264377, - 45.493914021201604 - ], - [ - -73.576640073812015, - 45.493903609142983 - ], - [ - -73.576640375448477, - 45.493901491606145 - ], - [ - -73.576640675752998, - 45.49389937353164 - ], - [ - -73.57673024457813, - 45.493942489384047 - ], - [ - -73.576819819889607, - 45.493985608222339 - ], - [ - -73.576799824407189, - 45.494006147123997 - ], - [ - -73.576872954535304, - 45.494041344845584 - ], - [ - -73.576882945873976, - 45.494031075393181 - ], - [ - -73.576892937209024, - 45.49402080593989 - ], - [ - -73.576947944898905, - 45.494047287318445 - ], - [ - -73.577002952640399, - 45.494073768670404 - ], - [ - -73.577050113706363, - 45.494025309030441 - ], - [ - -73.577063963903299, - 45.494031974734469 - ], - [ - -73.577103239182648, - 45.493991626192589 - ], - [ - -73.577096312805708, - 45.493988292444165 - ], - [ - -73.577089386429648, - 45.493984958695265 - ], - [ - -73.577161459088785, - 45.493910897810686 - ], - [ - -73.57700734048359, - 45.493836707942442 - ], - [ - -73.577012672151895, - 45.493831231492692 - ], - [ - -73.577018006374331, - 45.493825752341458 - ], - [ - -73.576979745012736, - 45.493807335816882 - ], - [ - -73.576941483676038, - 45.493788919279403 - ], - [ - -73.576930828004308, - 45.493799868567521 - ], - [ - -73.576849638763562, - 45.49376078897491 - ], - [ - -73.576768449635139, - 45.493721709324255 - ], - [ - -73.576745803090944, - 45.493744981027611 - ], - [ - -73.576723156528075, - 45.49376825272644 - ], - [ - -73.576638555926834, - 45.493727519425825 - ], - [ - -73.576646333924586, - 45.493719522821323 - ], - [ - -73.576639767369528, - 45.49371636427329 - ], - [ - -73.576633196415386, - 45.493713204506093 - ], - [ - -73.576745392745352, - 45.493597915439736 - ], - [ - -73.576865534009073, - 45.493655748552563 - ], - [ - -73.576846073713853, - 45.49367574615362 - ], - [ - -73.576864667249609, - 45.493684697895894 - ], - [ - -73.576860579898892, - 45.493691628550451 - ], - [ - -73.576858440631554, - 45.493699125696068 - ], - [ - -73.576858412542549, - 45.493706693408669 - ], - [ - -73.576860508231334, - 45.493714187704654 - ], - [ - -73.576864586384531, - 45.493721185752015 - ], - [ - -73.576870403529099, - 45.493727408762517 - ], - [ - -73.576874117557509, - 45.493730083300974 - ], - [ - -73.576877831586273, - 45.49373275783924 - ], - [ - -73.576882415000384, - 45.493734963873045 - ], - [ - -73.576886998414821, - 45.49373716990663 - ], - [ - -73.576896534201609, - 45.493740051988993 - ], - [ - -73.576901832201045, - 45.493740858282465 - ], - [ - -73.576907130200667, - 45.493741664575701 - ], - [ - -73.576917877736904, - 45.493741810312606 - ], - [ - -73.576928559267174, - 45.493740462350821 - ], - [ - -73.576938586369124, - 45.493737711071134 - ], - [ - -73.576943170380943, - 45.493735656337577 - ], - [ - -73.576947754392378, - 45.493733601603836 - ], - [ - -73.576955462149925, - 45.493728409856729 - ], - [ - -73.576974561655931, - 45.493737604947945 - ], - [ - -73.576979466579743, - 45.49373256611176 - ], - [ - -73.577045552343677, - 45.49376438145633 - ], - [ - -73.577111645863596, - 45.493796200356641 - ], - [ - -73.577138167417417, - 45.493768959448872 - ], - [ - -73.57716468766624, - 45.493741718535723 - ], - [ - -73.577167843234889, - 45.493741042551292 - ], - [ - -73.577176852256216, - 45.493752685722789 - ], - [ - -73.577187122442567, - 45.493749934257067 - ], - [ - -73.577198286812475, - 45.493746138366298 - ], - [ - -73.577208094527805, - 45.493742019447325 - ], - [ - -73.57721280602567, - 45.493739636173423 - ], - [ - -73.577217517523138, - 45.493737252899386 - ], - [ - -73.577226440685237, - 45.49373186579583 - ], - [ - -73.577230307232171, - 45.493729105157755 - ], - [ - -73.57723417377872, - 45.493726344519544 - ], - [ - -73.577241841533052, - 45.493719824459298 - ], - [ - -73.577248677020137, - 45.493712846040587 - ], - [ - -73.577254590777514, - 45.493705481311672 - ], - [ - -73.577259174343482, - 45.493698432427777 - ], - [ - -73.577263155561269, - 45.493690646078505 - ], - [ - -73.577266125870722, - 45.493682752431532 - ], - [ - -73.577268098202069, - 45.493674850461069 - ], - [ - -73.577269148251631, - 45.493666157251184 - ], - [ - -73.577269137680844, - 45.493658427592521 - ], - [ - -73.577259950009505, - 45.493657498868593 - ], - [ - -73.577250761072648, - 45.493656570146172 - ], - [ - -73.577250442256343, - 45.493653600872939 - ], - [ - -73.577303574462988, - 45.493598995646366 - ], - [ - -73.577171386062673, - 45.493535367726459 - ], - [ - -73.577175066099954, - 45.493531586092416 - ], - [ - -73.577155260010443, - 45.493522044555796 - ], - [ - -73.577159344870608, - 45.493515111558168 - ], - [ - -73.577160414480929, - 45.493511362982431 - ], - [ - -73.57716148409105, - 45.493507614406731 - ], - [ - -73.577161499345038, - 45.49350004670243 - ], - [ - -73.577159416418723, - 45.493492552403076 - ], - [ - -73.577157377332014, - 45.493489053384508 - ], - [ - -73.577155338245532, - 45.493485554365954 - ], - [ - -73.577152429669866, - 45.493482442867858 - ], - [ - -73.577149521094555, - 45.493479331369684 - ], - [ - -73.577142093044998, - 45.493473982310384 - ], - [ - -73.577132926251622, - 45.493469579261692 - ], - [ - -73.577123390486193, - 45.493466688200478 - ], - [ - -73.577112794532511, - 45.493465075633708 - ], - [ - -73.577102034254096, - 45.493464929923725 - ], - [ - -73.57709135278003, - 45.493466277901788 - ], - [ - -73.577081325733687, - 45.493469029195019 - ], - [ - -73.577072170569721, - 45.493473147662947 - ], - [ - -73.57706445394426, - 45.493478333991824 - ], - [ - -73.577046577128002, - 45.493469727522019 - ], - [ - -73.577027899330076, - 45.493488915886296 - ], - [ - -73.576907760425357, - 45.49343107915648 - ], - [ - -73.576898276422085, - 45.493440825460823 - ], - [ - -73.576894294282425, - 45.493438920982065 - ], - [ - -73.576887226721908, - 45.493435542959816 - ], - [ - -73.576886431025287, - 45.493435158779668 - ], - [ - -73.576886360933869, - 45.493435124866934 - ], - [ - -73.576886029406964, - 45.493434940980059 - ], - [ - -73.576886267223088, - 45.493435054938189 - ], - [ - -73.576894294282425, - 45.493438920982065 - ] - ], - [ - [ - -73.576626505682356, - 45.493739900088293 - ], - [ - -73.576711108153575, - 45.493780624684057 - ], - [ - -73.576648400374353, - 45.493845068661699 - ], - [ - -73.576565462956907, - 45.493856543313072 - ], - [ - -73.576482525323016, - 45.493868017816332 - ], - [ - -73.57651063300267, - 45.493839140459372 - ], - [ - -73.576523767378404, - 45.493845457272585 - ], - [ - -73.576626505682356, - 45.493739900088293 - ] - ], - [ - [ - -73.577370464039547, - 45.494078574757161 - ], - [ - -73.577395986944893, - 45.494090942647261 - ], - [ - -73.577353355608139, - 45.494070462547015 - ], - [ - -73.577317608515969, - 45.494053288918849 - ], - [ - -73.577370464039547, - 45.494078574757161 - ] - ] - ] - ] - }, - "properties":{ - "OBJECTID_12":70, - "gml_id":"Groupe9998722", - "gml_parent":"fme-gen-57964590-baa9-48a7-99b0-fa11ca012d7c", - "citygml_ta":"http://www.opengis.net/citygml/building/2.0", - "citygml_fe":"cityObjectMember", - "citygml__1":" ", - "citygml__2":" ", - "gml_descri":" ", - "gml_name":" ", - "citygml_cr":" ", - "citygml_te":" ", - "externalRe":" ", - "external_1":" ", - "external_2":" ", - "citygml_ge":" ", - "citygml_re":" ", - "citygml__3":" ", - "citygml_ap":" ", - "citygml_cl":" ", - "citygml__4":" ", - "citygml_fu":" ", - "citygml__5":" ", - "citygml_us":" ", - "citygml__6":" ", - "citygml_ye":" ", - "citygml__7":" ", - "citygml_ro":" ", - "citygml__8":" ", - "citygml_me":67.984999999999999, - "citygml__9":"#m", - "citygml_st":" ", - "citygml_10":" ", - "citygml_11":" ", - "citygml_12":" ", - "citygml_13":" ", - "citygml_14":" ", - "citygml_ou":" ", - "citygml_in":" ", - "citygml_bo":" ", - "citygml_le":" ", - "citygml_15":" ", - "citygml_co":" ", - "citygml_ad":" ", - "Volume":"207664.807", - "parcelle":" ", - "OBJECTID":7094, - "gml_id_1":"bb732ee3-619a-4dbf-a279-f2da9375bca3", - "gml_pare_1":"Groupe9998722", - "citygml_16":"http://www.opengis.net/citygml/building/2.0", - "citygml_17":"boundedBy", - "citygml_18":" ", - "citygml_19":" ", - "gml_desc_1":" ", - "gml_name_1":" ", - "citygml_20":" ", - "citygml_21":" ", - "external_3":" ", - "external_4":" ", - "external_5":" ", - "citygml_22":" ", - "citygml_23":" ", - "citygml_24":" ", - "citygml_25":" ", - "citygml_26":" ", - "citygml_op":" ", - "Area":"12036.008", - "FID_":0, - "Join_Count":2, - "TARGET_FID":7099, - "gml_id_12":"Groupe9998722", - "gml_pare_2":"fme-gen-57964590-baa9-48a7-99b0-fa11ca012d7c", - "citygml_27":"http://www.opengis.net/citygml/building/2.0", - "citygml_28":"cityObjectMember", - "citygml_29":" ", - "citygml_30":" ", - "gml_desc_2":" ", - "gml_name_2":" ", - "citygml_31":" ", - "citygml_32":" ", - "external_6":" ", - "external_7":" ", - "external_8":" ", - "citygml_33":" ", - "citygml_34":" ", - "citygml_35":" ", - "citygml_36":" ", - "citygml_37":" ", - "citygml_38":" ", - "citygml_39":" ", - "citygml_40":" ", - "citygml_41":" ", - "citygml_42":" ", - "citygml_43":" ", - "citygml_44":" ", - "citygml_45":" ", - "citygml_46":" ", - "citygml_47":67.984999999999999, - "citygml_48":"#m", - "citygml_49":" ", - "citygml_50":" ", - "citygml_51":" ", - "citygml_52":" ", - "citygml_53":" ", - "citygml_54":" ", - "citygml_55":" ", - "citygml_56":" ", - "citygml_57":" ", - "citygml_58":" ", - "citygml_59":" ", - "citygml_60":" ", - "citygml_61":" ", - "Volume_1":"207664.807", - "Field":0, - "Field1":0, - "OBJECTID_1":7094, - "gml_id_12_":"bb732ee3-619a-4dbf-a279-f2da9375bca3", - "gml_pare_3":"Groupe9998722", - "citygml_62":"http://www.opengis.net/citygml/building/2.0", - "citygml_63":"boundedBy", - "citygml_64":" ", - "citygml_65":" ", - "gml_desc_3":" ", - "gml_name_3":" ", - "citygml_66":" ", - "citygml_67":" ", - "external_9":" ", - "externa_10":" ", - "externa_11":" ", - "citygml_68":" ", - "citygml_69":" ", - "citygml_70":" ", - "citygml_71":" ", - "citygml_72":" ", - "citygml_73":" ", - "Area_1":"12036.008", - "cityGML_hi":0, - "Z_Min":39.076500000000003, - "Z_Max":107.062, - "Shape_Leng":1255.13597263, - "ID_UEV":"05221230", - "CIVIQUE_DE":" 1190", - "CIVIQUE_FI":" 1200", - "NOM_RUE":"rue Guy (MTL)", - "MUNICIPALI":"50", - "ETAGE_HORS":3, - "NOMBRE_LOG":3, - "ANNEE_CONS":2012, - "CODE_UTILI":"6243", - "LIBELLE_UT":"Mausolée", - "CATEGORIE_":"Régulier", - "MATRICULE8":"9839-72-8598-6-000-0000", - "SUPERFICIE":511, - "SUPERFIC_1":165, - "NO_ARROND_":"REM19", - "Shape_Le_1":0.0080267092725800002, - "Shape_Ar_1":3.7307864896800001e-06, - "Z_Min_1":null, - "Z_Max_1":null, - "Shape_Length":1255.1359726342357, - "Shape_Area":9530.4447282550991 - } - } - ] -} \ No newline at end of file